In many schools, one or more special groups of students, Special Ed students for example, may be identified for special scheduling treatment. It is often a goal to distribute the special group students evenly in courses where they are assigned to some or all of the same sections as other students.
The Scheduling Optimizer attempts to balance the total number of students in each section of a course but extra steps are required to enforce balancing of a specific group of students across their sections. This document outlines a procedure using partial simulations to effectively balance a special group of students as well as overall class loading totals within courses.
The examples used in this document assume that the special group of students who are to be balanced within their courses all belong to student group "S01". The procedure also uses the student "House" field as a selection field in partial simulations. Adjust the student group code(s) and, if necessary, the student data field used for selecting students to be scheduled in partial simulations as required to work with your school's data.
Specify shared sections.
The following screen sample shows a 12-section course in which the first 8 sections are not available to the special group and the last 4 sections are combined.

Identify students as belonging or not belonging to the special group.
Only certain student fields can be used to select students for inclusion in partial simulations (you cannot select students by student group). This example defines the House field, one of the available selection fields, based on student group.
[CHANGE] ASTU House='A'
[CHANGE] ASTU ASGR House='S' IF GroupCode = 'S01'
Prepare to run partial simulations.
[CHANGE] ASSS ClassLink = 0
Schedule students in the special group by themselves.
Run a partial simulation which includes only students in the special group. Since these are the only students in the simulation, the Scheduling Optimizer will tend to distribute them evenly across their available classes. For details on how to run a partial simulation, see Partial Simulations on the web site or the section "Partial Simulations" in the User Documentation.

Schedule the remaining students.

It is not necessary to follow the procedure outlined in this document for every simulation.
For convenience, schedule the whole school as normal until your scheduling is close to final. You may want to do an occasional simulation as described above in the course of scheduling to verify that the special group of students is balancing acceptably.
Before you transfer simulation results to Basic Scheduling, be sure to lock in the schedules produced for the special group from a partial simulation as described above. You can do this by running a last simulation using the procedure described in this document or by running a CHANGE Query to lock the special group's schedules by prescheduling the current section assignments. This can be done with a CHANGE Query as follows:
[CHANGE] ASTU ASSS PreClsLink = ClassLink IF House = 'S'
Subsequent full simulations will leave the special group's schedules unchanged, revising only schedules for students who are not in the special group.
Because partial simulations include only selected student and master schedule data, the procedure described in this document doesn't provide Scheduling Optimizer reports reflecting results for the overall school.
Reports available from SASIxp should correctly reflect the combined results. You can get a combined set of reports from the Scheduling Optimizer by locking in all schedules as prescheduled (use the above CHANGE Query without the "IF House = 'S'" part), then running a full simulation with the Scheduling Optimizer. If you do this, be sure to do it only at the very end of scheduling, just before results are moved into Basic Scheduling; once you run this Query you will no longer be able to restore course requests to their original state of prescheduled or not prescheduled.