Constraint recipe
Room restrictions decide which spaces may host a lesson. A must-have restriction means the lesson cannot run elsewhere, for example a science practical in a lab. A preference means you would rather use room 12 but could use room 14. Wrong-type placements are a leading cause of infeasible timetables, and preferences promoted to requirements create failures where a valid room existed all along.
Key takeaways
- Must-have room types block wrong placements; preferences guide choice.
- Check capacity and equipment together with room type.
- Preferred rooms marked as mandatory create false clashes.
- Set room rules in the master data before generation.
Requirements versus preferences
A chemistry practical in a standard classroom is not the same lesson, so a slot in the wrong room type is not a solution at all. That is a hard rule. A preference for a familiar room near the staff base is a quality choice the generator can trade away, which is a soft rule.
When every preferred room becomes mandatory, the timetable can fail even though a valid room exists. The generator reports no solution, and the cause is the classification, not the building.
A worked example: who can host the Year 9 practical?
Twenty-six students need a chemistry practical. Room type alone does not decide it; capacity and equipment sit in the same check.
| Room | Type | Seats | Equipment | Verdict |
|---|---|---|---|---|
| Chem lab 1 | Laboratory | 24 | Fume hood | No. 26 students need 26 places. |
| Chem lab 2 | Laboratory | 28 | Fume hood | Yes. Type, size, and equipment all pass. |
| Room 12 | Classroom | 30 | None | No. A practical cannot run in a standard room. |
| Physics lab | Laboratory | 28 | No fume hood | No, for this practical. Fine for dry labs. |
One eligible room out of four. That number, not the total count of labs, is the room supply this lesson competes for. If a second class needs a fume-hood lab in the same period, one of them moves, and no generator setting changes that.
Record the rules before generation
- List the subjects and activities that require a specialist room type, and mark everything else as a preference.
- Record capacity, equipment, and availability for each eligible room, as in the table above.
- Count each lesson's eligible rooms and periods. One eligible room means the lesson is placed early or not at all.
- If generation fails, relax preferred-room rules first and keep specialist requirements intact.
- After moving any lesson to a new room, recheck teacher and class clashes in the receiving slot.
Room-rule mistakes
- Making every teacher's favorite room mandatory
- Ignoring capacity on an otherwise correct room type
- Adding room restrictions after generation instead of in the master data
In Smootables
Room restrictions are per placement: in the placement form, Allowed rooms overrides which rooms that lesson can use, with the options Any room or Specific rooms. Restrict a chemistry practical to the labs, and the generator only considers those rooms; the analysis summary confirms the Room allowed list check on the result. Each room also carries a Capacity value, the maximum number of students, which is checked against your groups.
The general advice about separating must-have from preferred rooms translates directly: put genuine requirements in Allowed rooms, and leave mere preferences unrestricted so the generator keeps its options.
- Set Allowed rooms to Specific rooms only for lessons with a real specialist need.
- Fill in room Capacity so size problems surface in validation instead of on the first day of term.
Quick answers
When is a room restriction mandatory?
When the lesson cannot run in the wrong room type or without required equipment. A slot in the wrong room is not a solution.
What should stay a preference?
Familiar rooms, proximity, and comfort choices usually belong in the preference set.