Technical Specifications

General Technical Specifications

The Scheduling Optimizer directly processes input files (r999run.spi, r999dat.spi and r999xxx.sms) generated by a standard Schedule Pro simulation (Run Scheduler Simulation atom) and produces a student schedules output file (r999xxx.sss) with optimized loading results. The student schedules output file replaces the one previously generated by Schedule Pro, if one is present. The resulting .sss file can be directly processed by the SASI Results Update atom. The program generates a set of report files suitable for viewing in a browser. Internet Explorer (MSXML ActiveX component from Microsoft must be installed) or Firefox are required to view the reports.

Note: The Scheduling Optimizer is compatible with SASI versions 7.0 and higher.

Supported Features

The Scheduling Optimizer features described below are compatible with standard Schedule Pro and, where applicable, with Mass Scheduling.

Full and Partial Simulations

The program automatically recognizes whether input files define a full or partial simulation and processes the data accordingly.

Master Schedule

The master schedule may be based on up to 30 periods per day, up to 26 terms and up to 14 days. Sections may meet for any combination of times that can be generated by the Schedule Pro Builder or entered in the Scheduling Sections atom. The Scheduling Optimizer recognizes the Schedule Pro simulation option specifying whether or not the simulation is to ignore section limits.

Student Course Requests

The program honors prescheduled sections, term overrides and teacher preferences in student course requests. At the user's option, each student course request may include an associated alternate course request. The program recognizes the Schedule Pro simulation loader parameter specifying whether or not to use alternates and the Mass Scheduling option specifying whether or not to use teacher preferences. In SQL Server and Oracle database environments, course request data must be exported to dBASE IV files to enable use of teacher preferences.

Student Prioritization by Grade

Students are sorted in descending order by grade prior to scheduling to give students in the higher grades first access to seats in classes which may later become become full.

Course-link Relationships

The current program version handles most, but not all, of the course-link relations defined in SASI/Schedule Pro. Tabby ignores all builder rules (as does Schedule Pro's loader). The program processes loader rules related to:

  • terms (same/different terms, A before/after B, sequential terms)
  • terms+ (assign A ending before or in same term as B: Tabby-enabled extension)
  • days (same/different days)
  • periods (same/different periods, A before/after B, sequential periods)
  • teachers (same/different teacher, same/different teacher group)
  • rooms (same/different room, same/different room group)
  • students (assign sections to same students)

Section Load Restrictions

The program complies with standard Section Load Restrictions (SLR's) included in the Schedule Pro data and adds an additional operation type.

  • Restrict (exclude selected students from designated classes)
  • Allocate (allow selected students in designated class, exclude others)
  • Override Restrict+ (permit specified students in designated class, overriding any applicable Restrict, and also allow other students not explicitly excluded: Scheduling Optimizer-enabled extension)

Reports

The program generates a set of reports based on current simulation results. These reports are suitable for viewing in a browser (Internet Explorer 5.5 or later and MSXML 3.0 or later are required). Reports include:

  • Simulation Loading Summary - summary report showing the number of students input to the simulation run and the number fully scheduled by grade
  • Simulation Run Log - a listing of messages generated by the Scheduling Optimizer during the current simulation run
  • Master Schedule Lists - a group of reports displaying the master schedule with loading information from the current simulation sorted in various user-selectable orders
  • Master Schedule Grids - a group of reports showing the classes placed in each period for teachers, rooms and courses in a grid, or matrix, format
  • Unscheduled Period Summaries - a group of reports showing the number of students with no class assigned for each term, period and day in a grid, or matrix, format
  • Free Resource Reports - reports displaying available teachers and rooms by schedule meeting time
  • Resource Schedule Grids - printable individual teacher and room schedules in a grid, or matrix, format
  • Request Conflict Pairs - a group of reports showing the number of students requesting each course and each course pair in a list format
  • Course Request Tallies - reports showing the number of student course requests for each course with subtotals by gender and by grade

Term Load Balancing (Tabby-enabled extension)

The program recognizes a special Course Group code to define a list of courses to be balanced over master schedule terms in individual student schedules.

Scheduling Optimizer/Standard SASI Scheduling Differences

Features in the Scheduling Optimizer that work differently from standard SASI Scheduling (both Schedule Pro and Mass Scheduling) are outlined below.

Musts and Trys: The Scheduling Optimizer handles both "Must" and "Try" specifications in the same simulation run. It first schedules as many students as possible applying rules at both "Must" and "Try" levels. The program then drops rules at the "Try" level and, applying only the "Must" rules, reprocesses students who could not be fully scheduled with both levels of rules in effect.

Term Load Balancing: The Scheduling Optimizer balances a user-specified list of "balancer" courses over terms in individual student schedules. The data for term load balancing can be defined using standard SASIxp screens. This feature is an extension of SASI scheduling available only with the Scheduling Optimizer installed.

Reports: The Scheduling Optimizer's browser based reports display final loading results for a simulation. Some of these reports have no equivalent in either Schedule Pro or Mass Scheduling: Free Teachers, Free Rooms, Master Schedule Grids and Unscheduled Period Summaries. The Scheduling Optimizer's Request Conflict Pairs report provides a more compact representation of the Schedule Pro and Mass Scheduling Conflict Matrix reports.

Reserving Student Schedule Times: Defining unavailable times for students through the use of PARs (Schedule Pro) and beginning/ending period ranges (Mass Scheduling) is not supported directly; these operations should be done by scheduling the students to courses (e.g. Late Start, Early Finish) which block out the necessary schedule times.

Scheduling Optimizer/Schedule Pro Differences

Features in the Scheduling Optimizer that work differently from Schedule Pro are outlined below.

Corequisite Rule: The Scheduling Optimizer provides a Course Link loader rule specifying that a course is to be assigned earlier than or in the same term as another course. This feature is an extension of Schedule Pro available only with the Scheduling Optimizer installed.

SLR Extension: The Scheduling Optimizer provides a Section Load Restriction type specifying that selected students may be allocated on a non-exclusive basis to a designated class. This feature is an extension of Schedule Pro available only with the Scheduling Optimizer installed.

Teacher Preferences: The Scheduling Optimizer recognizes and observes teacher preferences in student course requests. This feature is an extension of Schedule Pro available only with the Scheduling Optimizer installed.

Reports: The Scheduling Optimizer's browser based loading reports display final loading results for a simulation. The Simulation Loading Summary replaces the Schedule Pro Student Attribute Statistics (ID 65) and the Master Schedule Lists and Master Schedule Grids replace the Schedule Pro Master Schedule (ID 10) and include additional views of the master schedule for analysis. The Master Schedule Lists, Master Schedule Grids, and Resource Schedule Grids provide alternate teacher and room schedules (ID 20 and 30).

Section Limits: The Scheduling Optimizer uses master schedule section maximums as student limits for each section regardless of room or teacher limits which may be specified in SASI.

Loader Rules: Loader rules of the following types have no effect:

  • Section overlap (allow section overlap)
  • Global alternate (use A as a global alternate for B)
  • Request/scheduled section manipulation (add/drop/replace B with A)
  • Sessions (same/different sessions)
  • Suppress implied rules

Reserving Student Lunch Times: Reserving a required amount of time for student lunch is not supported directly; this should be done by scheduling the students to Lunch courses with sections which occupy the allowable lunch periods.

Scheduling Optimizer/Standard Mass Scheduling Differences

Features in the Scheduling Optimizer that work differently from Mass Scheduling are outlined below.

Reports: The Scheduling Optimizer's browser based reports augment the standard Mass Scheduling reports which are available as well after simulation results have been posted to the SASI database.

Course Links and Class Loader Rules: The Scheduling Optimizer does not observe Mass Scheduling's mechanisms for limiting which sections of requested course pairs may be scheduled together for a student. Opposite term, team and house definitions entered in the Scheduling Sections atom and prerequisite course definitions entered in the Course atom are ignored. These relationships, as well as others which can not be specified with standard Mass Scheduling, are defined for the Scheduling Optimizer using the Course Links and associated Class Loader Rules implemented in Schedule Pro.

Section Loading Restrictions: The Scheduling Optimizer does not observe Mass Scheduling's mechanisms for restricting classes to specified students. Grade range and gender restrictions entered in the Course and/or Scheduling Sections atom as well as house and team definitions entered in the Scheduling Sections atom are ignored. These criteria for allowing and disallowing categories of students in certain classes, as well as additional ones not available in standard Mass Scheduling, are defined for the Scheduling Optimizer using the Section Loading Restrictions implemented in Schedule Pro and extended by the Scheduling Optimizer.

Scheduling Options: The Scheduling Optimizer recognizes options to use or not use course request alternates and to observe or ignore section limits. However, these options must be defined in the Scheduler Simulations atom; data entered for the corresponding options in the Mass Scheduling Scheduling Options atom are ignored.

Back to Top