Auto Generate / Manually Assign

Build the timetable: assign sections by hand, run the automatic generator, or combine both.

9.1 Right Click Function

Right clicking a section in the Timetable Output opens a context menu holding most of the actions used while generating and editing the timetable. Items shown in grey are unavailable for the section currently selected, and items with an arrow open a further submenu.

Right click context menu on a section in the Timetable Output
Figure 9.1.1: Right Click Function
Menu Item Description
Auto Generate from this LocationStarts automatic generation beginning from the selected slot.
HighlightHighlights related sections. See Section 9.5.4.
Section Lock/UnlockLocks or unlocks the selected section. See Section 9.5.2.
Section OutputControls how the section appears in the Timetable Output.
Section Include/ExcludeIncludes or excludes the section from generation. See Section 9.2.
Section PrioritySets the generation priority of the section.
Section InfoDisplays information about the selected section.
Section PropertiesOpens the Section Properties window for the section. See Section 6.2.2.
Update Capacity to Number of StudentsSets the section capacity to match its enrolled student count.
Move to GroupMoves the section into another group.
Move to Group by Class TypeMoves the section into a group according to its class type.
Remove Section Slot AssignmentRemoves the section from the slot it currently occupies.
TracingTraces why the section was placed as it was.
Group ActionsPerforms an action on the whole group rather than one section.
Auto Assign LecturerAssigns a lecturer to the section automatically.
Reorder Class NumberingRenumbers the classes in the group.
Rename GroupChanges the name of the group.
Student Information SystemOpens the Student Information System for the section.
Data EntryOpens the data entry options for the section. See Chapter 6.
Manual Merge SectionMerges the selected sections manually.
Manage StudentsOpens the student assignment window for the section.
ConstraintOpens the constraint settings for the section. See Chapter 7.
Print PreviewPreviews the section before printing. See Section 9.6.
CutRemoves the section, ready to be pasted elsewhere.
CopyCopies the selected section.
PastePastes the cut or copied section into the selected slot.
DeleteDeletes the selected section.
Locate SectionLocates the section in the tree or course list. See Section 9.5.5.

Table 9.1: Right Click Function Menu Items

Note: Section Info, Section Properties, Manual Merge Section, Manage Students, Print Preview and Paste appear greyed out when the current selection does not support them, for example, Paste is only available once a section has been cut or copied.

9.2 Include / Exclude (Section)

Include / Exclude (Section) decides which sections the generator may place. An included section takes part in generation; an excluded section is skipped and left unassigned.

Include / Exclude (Section)
Figure 9.2.1: Include / Exclude (Section)

Use it to generate in stages. Whatever runs first gets the widest choice of slots, so place the hardest sections first:

Step 1: Exclude all sections, then include only the hard ones listed above.

Step 2: Run the generator.

Step 3: Include the rest and generate again. Sections already placed stay where they are.

Note: Excluding a section does not delete it or change its data. It only tells the generator to ignore the section for now, and it can be included again at any time.

9.3 Include / Exclude (Slot)

Include / Exclude (Slot) controls the slots themselves rather than the sections. An excluded slot is closed off (the generator will not place any section in it) and it is shown in black in the Timetable Output. Use it to keep rooms or times free, for example a room under maintenance or an hour reserved for another activity.

Right click any slot and open Exclude Slot. The submenu offers six options, each covering a wider area than the one before it, all measured from the slot you right clicked.

Exclude in the Slot

Excludes only the slot you right clicked: that one room, at that one time, on that day. Every other slot is left untouched.

Exclude in the Slot option in the Exclude Slot submenu
Figure 9.3.1: Exclude in the Slot
A single slot shown in black after being excluded
Figure 9.3.2: Result of Exclude in the Slot

Exclude all in the Room

Excludes every time slot of the selected room for that day, so the whole row for that room is closed off.

Exclude all in the Room option in the Exclude Slot submenu
Figure 9.3.3: Exclude all in the Room
The full row for one room shown in black after being excluded
Figure 9.3.4: Result of Exclude all in the Room

Exclude all in the Time Slot

Excludes the selected time slot in every room for that day, so the whole column for that hour is closed off.

Exclude all in the Time Slot option in the Exclude Slot submenu
Figure 9.3.5: Exclude all in the Time Slot
The full column for one time slot shown in black after being excluded
Figure 9.3.6: Result of Exclude all in the Time Slot

Exclude all in the Time Slot and After

Excludes the selected time slot and every later time slot on the same day only, in every room. For example, excluding slot 202 closes that slot and everything after it until the end of that day, while the following days stay available as usual. Use it to stop scheduling from a certain hour onwards, such as after a certain time in the afternoon.

Exclude all in the Time Slot and After option in the Exclude Slot submenu
Figure 9.3.7: Exclude all in the Time Slot and After
All columns from the selected time slot onwards shown in black
Figure 9.3.8: Result of Exclude all in the Time Slot and After

Exclude All in the Day

Excludes every slot on the day currently shown, in every room and at every hour. Use it for a day with no classes, such as a public holiday.

Exclude All in the Day option in the Exclude Slot submenu
Figure 9.3.9: Exclude All in the Day
The entire grid for one day shown in black
Figure 9.3.10: Result of Exclude All in the Day

Exclude All

Excludes every slot on every day. Switching between the day tabs shows that each one is closed off. This is normally used as a starting point: close everything first, then include back only the slots you want the generator to use.

Exclude All option in the Exclude Slot submenu
Figure 9.3.11: Exclude All
Monday fully excluded after Exclude All
Figure 9.3.12: Result of Exclude All (Monday)
Tuesday also fully excluded after Exclude All
Figure 9.3.13: Result of Exclude All (Tuesday)
Note: Include Slot, directly below Exclude Slot in the same right click menu, reverses the exclusion using the matching set of options. Excluding a slot does not delete anything already placed in it; it only stops the generator from using that slot.

9.4 Auto Generate

Auto Generate lets the system build the timetable for you. It takes every section that is included, finds a slot and a room for each one, and places it without breaking the constraints you have set.

Before running it, make sure the earlier chapters have been completed in order: Database, Timetable Structure, Data Entry, Constraint and Pre-Generate Analysis. The database must hold the courses, rooms, lecturers and batches; the teaching days, time slots and breaks must be set; every section needs a lecturer, room type, class size and duration; the constraints must be applied; and the lists should be checked so missing records and capacity problems are fixed first.

9.4.1 Generate Button

Step 1: Open the Timetable Output tab and click the Generate Schedule icon on the toolbar.

Generate Schedule icon on the toolbar above the empty Timetable Output grid
Figure 9.4.1.1: Generate Schedule Icon

Step 2: The Generate Schedule window appears. Choose a Generate Quality and a Generate Order, then click Ok, or Cancel to close without generating.

Generate Schedule window showing the Generate Quality and Generate Order options
Figure 9.4.1.2: Generate Schedule Options

Generate Quality sets how hard the generator works on the result. A higher setting gives a better timetable but takes longer.

Option Description
Fast (Less Optimize) Quickest run. Use it for a first attempt or a quick check.
Average A balance between speed and quality.
Intensive (Higher Optimization but Slow) Best result, but the slowest to finish. Use it for the final run.
Custom (1 - 200) Set the optimisation level yourself in the box next to it. A higher number means more optimisation and a longer run.

Table 9.4.1: Generate Quality Options

Generate Order sets which sections the generator places first.

Option Description
Depth First Places all sections, working through them one branch at a time.
Apply Priority Scheduling Under Depth First. Follows the priority set on each section, so higher priority sections are placed first.
Ignore Priority Under Depth First. Treats every section the same and ignores the priority setting.
High Priority Sections Only Places only the sections marked as high priority and leaves the rest unassigned.

Table 9.4.2: Generate Order Options

Step 3: Wait for the Processing... progress bar to finish, or click Cancel to stop the run.

Progress bar showing the Processing status during generation
Figure 9.4.1.3: Generation in Progress

Step 4: When the run finishes, the placed sections appear in the Timetable Output grid. The Section Status Summary panel on the left lists the sections that were left Not Assigned.

Timetable Output filled with the generated sections and the Section Status Summary panel
Figure 9.4.1.4: Timetable After Generation

Step 5: To see why a section was not placed, open the Reports tab and select the Failure sub-tab. Each row shows the Code, Course Name, Section and the Reason of Failure, for example Cannot find room with suitable capacity or All qualified slots are occupied. Fix the data or loosen the constraint, then run the generator again.

Reports tab with the Failure sub-tab listing the unplaced sections and the reason for each
Figure 9.4.1.5: Failure Report

9.4.2 Generate Quality or Order

To be written
  • Choosing between quality-led and order-led generation
Generate Quality or Order
Figure 9.4.2.1: Generate Quality or Order

9.4.3 Failure Reasons

To be written
  • Why a section could not be placed
Failure Reasons
Figure 9.4.3.1: Failure Reasons

9.4.4 Failure & Report

To be written
  • Reading the generation failure report
Failure & Report
Figure 9.4.4.1: Failure & Report

9.4.5 Hide / Show Output

To be written
  • Controlling what the output view displays
Hide / Show Output
Figure 9.4.5.1: Hide / Show Output

9.5 Manually Assign

To be written
  • Placing and adjusting sections by hand on the workspace

9.5.1 Add / Remove Course

To be written
  • Placing a course into a slot and taking it out again
Add / Remove Course
Figure 9.5.1.1: Add / Remove Course

9.5.2 Lock / Unlock

To be written
  • Locking finalised placements so the generator cannot move them
Lock / Unlock
Figure 9.5.2.1: Lock / Unlock

9.5.3 Exclude / Include

To be written
  • Excluding a placement from generation
Exclude / Include
Figure 9.5.3.1: Exclude / Include

9.5.4 Highlight

To be written
  • Highlighting by batch or by student
Highlight
Figure 9.5.4.1: Highlight

9.5.5 Locate Section

To be written
  • Finding where a section sits in the workspace
Locate Section
Figure 9.5.5.1: Locate Section