🎯 Introduction - Why it matters?
Efficient schedule editing is crucial for any organization working with shift-based schedules. The ShiftGo.site system provides two powerful mechanisms for schedule modification: forced shifts and preferred shifts.
💡 Key insight
Understanding the difference between "what MUST happen" (forced) and "what we WANT to happen" (preferred) is the foundation of effective schedule optimization.
According to industry research, organizations that use intelligent constraint systems reduce schedule planning time by up to 85% while improving worker satisfaction through fairer shift distribution.
🧠 Basic concepts and differences
🔴 Forced shifts
Definition: Hard constraints that the solver MUST satisfy
Visual indicator: Red border in the table
Behavior: Cannot be changed by the optimizer
Use case: Vacations, training, mandatory assignments
Risk: Too many can lead to INFEASIBLE solutions
🟢 Preferred shifts
Definition: Soft constraints the solver tries to maintain
Visual indicator: Green border in the table
Behavior: Can be changed if necessary
Use case: Maintaining current schedule stability
Benefit: Provides flexibility while minimizing changes
🔄 How the system processes constraints
- Hard constraints first: The solver ensures all forced shifts are satisfied
- Soft optimization: Among valid solutions, it minimizes penalties for changing preferred shifts
- Balancing: It considers other constraints (weekends, shift balance) within the remaining flexibility
🔴 Forced shifts (Hard constraints)
Forced shifts represent absolute requirements that cannot be violated. The optimization engine treats these as immutable facts when generating schedules.
🎯 When to use forced shifts:
- Vacations and leaves: When an employee is unavailable
- Training sessions: Mandatory attendance requirements
- Special assignments: Specific worker needed for particular shift
- Past days: Already worked shifts that cannot be changed
- Legal requirements: Compliance-driven assignments
⚠️ Important: INFEASIBLE risk
Too many conflicting forced shifts can make the schedule impossible to solve. Always verify that your hard constraints are compatible with workforce capacity and other system requirements.
🛠️ How to set forced shifts:
- Click on the table cell you want to constrain
- Click multiple times until you see a red border
- The cell will show the forced assignment (R/E/N/-)
- Run the solver - it will respect this constraint
🟢 Preferred shifts (Soft constraints)
Preferred shifts are the system's way of maintaining schedule stability. They tell the optimizer "try to keep this assignment, but change it if necessary for a better overall solution."
🎯 When to use preferred shifts:
- Current schedule preservation: When making minor adjustments
- Worker preferences: Accommodating (non-mandatory) requests
- Historical patterns: Maintaining proven shift distributions
- Gradual changes: Implementing modifications step by step
- Experimentation: Testing schedule variations safely
💡 The "Prefer Entire Table" feature:
This powerful button converts your current schedule into preferred shifts for all cells. Perfect for when you want to make targeted changes while keeping most of the schedule intact.
🔄 Workflow tip
1. Set forced shifts for absolute requirements
2. Click "Prefer Entire Table" to preserve current assignments
3. Run solver to get optimal solution with minimal disruption
⚖️ Penalty system and optimization
The system uses a sophisticated penalty matrix to calculate the "cost" of changing preferred shifts. Lower penalties make changes more likely, higher penalties make the system work harder to avoid them.
📊 Penalty matrix for shift changes:
From Shift | To Shift | Penalty | Explanation |
---|---|---|---|
Morning | Morning | 0 | No change - no penalty |
Evening | Evening | 0 | No change - no penalty |
Night | Night | 0 | No change - no penalty |
Free | Free | 0 | No change - no penalty |
Evening | Night | 3 | Low cost - natural progression |
Morning | Evening | 5 | Moderate cost |
Evening | Morning | 5 | Moderate cost |
Night | Evening | 8 | Medium cost |
Morning | Night | 15 | High cost - major change |
Night | Morning | 15 | Very high cost - worst change |
Morning | Free | 2 | Low cost for giving up shift |
Evening | Free | 2 | Low cost for giving up shift |
Night | Free | 2 | Low cost for giving up shift |
Free | Morning | 10 | Medium cost for adding shift |
Free | Evening | 10 | Medium cost for adding shift |
Free | Night | 10 | Medium cost for adding shift |
🧮 Penalty matrix logic:
- No change (0): Keeping the same shift costs nothing
- Natural progressions (3): Evening → Night is natural sequence
- Moderate changes (5): Morning ↔ Evening
- Difficult transitions (15): Morning ↔ Night is the biggest jump
- Giving up work (2): Low cost for freeing up worker
- Adding work (10): Medium cost for additional shift
⚙️ Penalty weight configuration
The global penalty multiplier can be adjusted in the constraints configuration. Higher weight = greater emphasis on maintaining preferred shifts.
🔄 Practical workflow for editing schedules
📋 Scenario: Modifying existing schedule
Step 1: Secure the past
For all days that have already been worked (e.g., May 1-15), set forced shifts by clicking cells to red borders. This locks past changes.
Step 2: Force new requirements
For future days where you MUST introduce changes (vacations, training), set forced shifts with red borders.
Step 3: Prefer current schedule
Click "Prefer Entire Table" - system will set current schedule as preferred shifts (green borders) for all remaining cells.
Step 4: Optimize
Run solver. It will find solution that:
- ✅ Satisfies all forced shifts (red)
- 🎯 Minimizes changes to preferred shifts (green)
- ⚖️ Balances other constraints (weekends, shift balance)
Step 5: Analyze report
After generation, check the differences report - shows which workers were affected by changes and what type. Use this to communicate changes to team.
💡 Use case examples
🔴 Forced shifts example
Situation: Unexpected leave
Problem: John Smith suddenly fell ill and cannot work May 10-12.
Solution:
- Click John's cells for days 10-12 May
- Set red border with "-" (all shifts forbidden)
- Press "Prefer Entire Table"
- Run solver
Result: System finds new schedule without assigning John any work on those days, even if it requires reorganizing other workers.
🟢 Preferred shifts example
Situation: Minor schedule adjustments
Problem: June schedule is OK, but need to add one worker to June 15 morning shift.
Solution:
- Set forced shift (red) for additional worker on 15.06 morning
- Press "Prefer Entire Table"
- Run solver
Result: System changes minimal number of assignments to add required worker, preserving as much of current schedule as possible.
🎯 Key difference in results
Forced shifts: "Must happen, regardless of consequences"
Preferred shifts: "We want it to happen, but can change if needed"
🏆 Best practices
✅ Do:
- Use forced shifts: Only for absolute requirements
- Lock the past: Always set forced shifts for already worked days
- Test step by step: Add constraints gradually
- Check differences report: Analyze what changes were made
- Communicate changes: Inform workers about modifications
- Backup schedule: Save schedule before major changes
❌ Avoid:
- Over-constraining: Too many forced shifts can lead to INFEASIBLE
- Ignoring penalties: Check change costs in report
- Frequent rewrites: Better to modify than start from scratch
- Mixing modes: System won't allow using both preferred and forced on same cell
- Forgetting validation: Check if schedule meets all legal requirements
⚠️ Troubleshooting: What to do when INFEASIBLE?
- Check conflicts: Are forced shifts contradictory?
- Count resources: Do you have enough workers for required days?
- Check weekends: Do weekend constraints conflict with forced shifts?
- Reduce forced shifts: Temporarily remove some red constraints
- Increase flexibility: Change some forced shifts to preferred
🎯 Golden rule
"Forced shifts for what MUST happen, preferred shifts for what you WANT to happen"
This simple rule will help you avoid most configuration problems with schedules.
📚 Related articles
⚖️ Excel vs shift scheduling systems
Comparison of traditional methods with modern systems
Read more🚀 Schedule optimization
Advanced techniques for creating efficient schedules
Coming soon⚖️ Labor law and schedules
Legal compliance in shift work planning
Coming soon🚀 Ready to create the perfect schedule?
Try advanced editing features in the ShiftGo.site system
Start planning Contact us