How the Routine Engine Works
The routine solver uses a sophisticated algorithm to create optimal schedules:1. Create Fixed Blocks
The engine first locks in your non-negotiable commitments:
- School/Classes - From your class schedule (Monday-Friday)
- Training Sessions - Main and secondary activities
- Events - Exams, matches, competitions
- Sleep - Your bedtime as a visual anchor
isLocked: true and cannot be moved.2. Find Free Time Slots
The system identifies gaps between fixed blocks:
- Starts from your wake time
- Ends at your bedtime
- Minimum gap size: 15 minutes
- Filters out unusable tiny gaps
3. Create Task Queue
The engine generates a prioritized list of tasks:Academic Tasks:
- One study task per subject
- Duration =
difficulty × 20 minutes(minimum 30 min) - Priority = difficulty level (1-5)
- Energy cost =
difficulty + 5
- Reading habit (30 minutes, priority 5)
- Low energy cost (2 units)
4. Allocate Tasks with Energy Management
The solver places tasks into free slots using a first-fit strategy:Energy Budget:
- Maximum daily cognitive load: 5500 units
- Load =
duration × energyCost - High-difficulty tasks consume more energy
- Take the highest priority task
- Check if it fits within energy budget
- Find the first slot with enough time
- If task is too large, fragment it across multiple slots
- Apply focus strategy (Pomodoro, 50-10, or 90-15)
- Update slot availability and energy consumed
- Repeat until energy depleted or no slots remain
If a task would exceed the daily energy limit, the engine reduces its duration to fit the remaining energy budget.
5. Expand Sessions with Breaks
Each study task is expanded into focus/break cycles:Pomodoro (Default):
- 25 minutes focus + 5 minutes break
- Long break (15 min) after 4 sessions
- 50 minutes focus + 10 minutes break
- Long break (30 min) after 3 sessions
- 90 minutes focus + 15 minutes break
- Long break (45 min) after 2 sessions
Understanding Routine Blocks
Your routine consists of different block types:Fixed Blocks
Immutable commitments from your profile:- School/Classes - ACADEMIC, cost: 7
- Main Training - SPORT, cost: 9
- Secondary Training - SPORT, cost: 9
- Events - SPORT, cost: 10
- Sleep - HEALTH, cost: 0
Flexible Blocks
Generated study sessions that can be adjusted:- Appear in focus/break pairs
- Can be marked complete
- Subject to energy budget
Buffer Blocks
Short breaks between focus sessions:Energy Load System
The engine carefully manages your daily energy:Cognitive Load
Cognitive Load
Mental energy consumed by academic and leisure tasks.Calculation:
duration × energyCostExample:- Math (difficulty 5) for 100 minutes =
100 × 10 = 1000 units - Reading habit for 30 minutes =
30 × 2 = 60 units
- School classes
- Study sessions
- Academic events
- Leisure activities
Physical Load
Physical Load
Energy consumed by sports and physical activities.Calculation: Same formula as cognitiveSources:
- Main training sessions
- Secondary activities
- Sports events/matches
High physical load on a given day reduces the cognitive work that can be scheduled.
Daily Energy Budget
Daily Energy Budget
Maximum combined load: 5500 unitsWhen this limit is reached:
- No more academic tasks are scheduled
- Remaining tasks are skipped
- Or task durations are reduced to fit
Task Fragmentation
When a task doesn’t fit completely in a free slot:- The engine calculates how much can fit
- Creates a partial task labeled “(Parte 1)”
- Schedules that fragment in the current slot
- Pushes the remainder “(Parte 2)” back to the queue
- Continues with the next slot
Customizing Your Routine
Change Focus Strategy
Update your focus preferences in Settings:- Pomodoro - Short, frequent breaks (25/5)
- 50-10 - Medium sessions for steady flow
- 90-15 - Long deep work sessions (advanced)
- Custom - Define your own focus/break durations
Adjust Subject Difficulty
In your profile settings:- Navigate to Subjects
- Edit a subject’s difficulty rating
- Save changes
- Routine regenerates with new allocations
- Higher difficulty = More study time allocated
- Higher difficulty = More energy consumed
- Higher priority in task queue
Update Commitments
Modify your schedules in Settings:- Class Schedule - Add/remove school hours
- Training Schedule - Adjust activity times
- Events - Add upcoming exams or matches
Routine Generation Triggers
Your routine is automatically regenerated when:- ✅ You complete onboarding
- ✅ You update your profile in Settings
- ✅ You add/edit/delete calendar events
- ✅ You change your focus strategy
- ✅ A new day begins (daily refresh)
Regenerations are instant and happen in the background. The dashboard updates automatically.
Working with Generated Routines
Viewing Your Routine
The daily routine appears on your dashboard:- Timeline View - Chronological list of blocks
- Progress Bars - Cognitive and physical load visualization
- Completion Status - Mark tasks as done
Marking Tasks Complete
Click the checkbox on flexible blocks to mark them complete:- Visual confirmation with strikethrough
- Progress tracking
- XP rewards (if achievements enabled)
Handling Conflicts
If your schedule changes mid-day:- Update your profile or calendar
- The routine will regenerate
- Review the new schedule
- Adjust as needed
Understanding Solver Behavior
Why didn't all my subjects get scheduled?
Why didn't all my subjects get scheduled?
Possible reasons:
- Daily energy budget reached (5500 units)
- Not enough free time slots
- High physical load from sports reducing cognitive capacity
- Very high difficulty subjects consuming all energy
Why are tasks fragmented?
Why are tasks fragmented?
Fragmentation happens when continuous blocks don’t fit in available gaps.Example: You have a 90-minute study task but only two 50-minute gaps. The engine creates:
- Part 1: 50 minutes in first gap
- Part 2: 40 minutes in second gap
Can I manually edit the routine?
Can I manually edit the routine?
Not directly. The routine is auto-generated. However, you can:
- Adjust the inputs (profile, schedule, difficulty)
- Change focus strategies
- Mark blocks complete to skip them
What if I prefer manual planning?
What if I prefer manual planning?
Estudio Three is designed for automated optimization. If you prefer manual control:
- Use the Calendar feature for events
- Use the Pomodoro timer standalone
- Set very low difficulty ratings to minimize auto-scheduling
Best Practices
- Start with accurate data - Garbage in, garbage out
- Review daily - Check your routine each morning
- Track completion - Mark tasks done for accurate progress
- Adjust gradually - Fine-tune difficulty ratings over time
- Respect energy limits - Don’t override the 5500 unit cap mentally
- Use focus mode - Activate Zen mode during study blocks
- Sync events - Keep calendar up to date with exams/matches
Next Steps
Focus Mode
Activate Zen mode during study sessions
Calendar Events
Manage exams, matches, and important dates