Conflict-Free Schedule Generation
Course scheduling is a constraint problem disguised as a registration chore.
Site connection
Scarlet Sync generates Rutgers schedules around desired courses, unavailable times, campus constraints, and degree requirements.
Visual model
A constraint grid for semester planning
Adjust campus travel and gap avoidance to see how preferences reshape the feasible schedule space.
Interactive
A schedule generator balances conflicts, gaps, and travel constraints
What Counts as a Conflict?
The obvious conflict is two sections at the same time. The less obvious conflicts are back-to-back sections on different campuses, labs that require a paired lecture, sections that reserve seats, degree requirements that need a specific course number, and personal blocks for work or commuting.
Generate Then Rank
One practical approach is to enumerate combinations of sections, reject invalid combinations, and score the survivors. For large course sets, pruning must happen early because combinations grow quickly.
A more formal approach models each section as a variable assignment and each rule as a constraint. The best schedule is then the feasible assignment with the best objective score.
User Trust
Students need to see why a schedule was produced. A black-box generator is less useful than a system that explains which constraints were binding and what tradeoff created the recommendation.
Good scheduling UI should expose the reason for rejection: time overlap, campus travel, unavailable block, missing prerequisite, or no open sections.
| Constraint | Hard or soft | Explanation shown to user |
|---|---|---|
| No time overlap | Hard | Sections meet at the same time |
| Campus travel | Usually soft | Back-to-back travel may be too tight |
| Unavailable block | Hard | User blocked this time |
| Professor preference | Soft | Lower score, but still feasible |
| Degree progress | Hard or soft | Depends on graduation requirement urgency |
Common Pitfalls
- Treating every preference as a hard rule and finding no schedules.
- Hiding why a schedule failed.
- Ignoring linked recitations, labs, or cross-listed sections.
- Optimizing compactness while creating impossible campus transitions.
Quick check
Quiz
What is the difference between a hard and soft constraint?
- Hard constraints must be satisfied; soft constraints affect ranking
- Soft constraints are always ignored
- Hard constraints are visual only
- They are the same thing
Hard rules define feasibility; soft rules define preference quality.