Improving Optimizer Results

If you want to get better results out of the Schedule25 Optimizer, try these tips! And remember the golden rule: the more options you give the Optimizer during setup, the more flexibility it has when making placements. 

Get Fewer "Impossible To Place" Sections

A section is classified as "impossible to place" if there are no locations where it can fit, according to the data presented to the Optimizer. This is addressed by relaxing the restrictions placed on it.

Use Fewer Feature Requirements

The Optimizer can only place a section into a room which matches all of the location features in its preferences. Too many of these, and you might end up with combinations that are very hard to find.

You can hide location features from the Optimizer by de-selecting the Schedule25 box next to the feature name in 25Live System Settings, which is faster to turn on and off than altering the preferences on each individual event.

Add "Last Choice" Partition Preferences

The Optimizer cannot place a section into a partition that isn't ranked by its subject code organization. Ensure that each organization has all acceptable locations represented in its partition preferences, not just the ones they want the most. The last tier of preferences (usually level 4) should include partitions which are "better than nothing", meaning instructors may not want to teach there but they will if they have to.

Relax Your Minimum Fill Ratio

The Optimizer will already do its best to find the highest possible utilization. Setting a minimum fill ratio (whether as part of the run settings individually on a location) is a safety net which prevents the Optimizer from assigning a section with low utilization. If that safety net is too high, you might miss out on placements which could otherwise work. Lowering the fill ratio may add more options for placement.

Check For Conflicts

If a specific section is marked as "impossible" and you know it shouldn't be, try opening up the 25Live Event Form and attempting to assign a location which should be available. Even a single conflict will prevent the Optimizer from making a placement. You may need to remove the blackout dates on that location or add holiday date exceptions to the extract set in LYNX. You can also tell the Optimizer to ignore blackouts when preparing data.

Get Fewer "Not Placed" Sections

A section is marked as "not placed" when all its potential locations are filled by other sections. This is addressed by increasing the number of locations available to each section.

Try Other Suggestions

Anything that helps reduce the number of "impossible to place" sections will also improve your overall placement and reduce the number of sections that go unplaced.

Flatten Your Partition Preferences

The Optimizer attempts to fill highest partition preferences first at all costs, meaning that it will assign an organization's sections into their most-preferred partition(s) until there are no remaining available locations. A "flatter" partition preference list is one with fewer levels, allowing more "first choice" options.

Increase Placement Priority

Change the Optimize Results For setting to "better placement" or "best placement". These will allow Schedule25 to take a slight hit to utilization (often a few percentage points) in exchange for more flexible placement options. In addition, the "best placement" setting will relax the restrictions on partition preferences and allow rooms to be assigned even if a higher-preferred partition is available.

Use Standard Time Schedules

Classes held at irregular times are harder to fit together. If you have an "A schedule" where most sections meet on the hour but some are held on a "B schedule" starting 15 minutes after the hour, any room where an "A class" is held will be incompatible with "B classes" and vice versa. Standardize the time blocks when classes are held to increase their interchangeability.

You can use X25's modeling feature to test out the effects of mapping classes to a different hypothetical schedule.

Get More Placements in a Specific Location

Check Blackouts and Other Conflicts

The Optimizer requires that a location be available for 100% of a section's meetings. Even a single conflict will make it ineligible for placement. If a location is unexpectedly receiving few (or zero) assignments from an Optimizer run, check the Weekly Availability Grid for the full duration of the term to see if there are any surprise conflicts. Likely culprits include blackouts, room-holds, or one-off meetings.

Eliminate the Minimum Fill Ratio

A location's Minimum Fill Ratio prevents the Optimizer from making any placements there that would result in low seat utilization, overriding the default Minimum Fill Ratio configured in the Optimizer settings. This is typically only necessary for large rooms such as auditoriums or lecture halls to ensure that "regular" classes are not assigned there.

Get Better Utilization

The Optimizer already tries to ensure the best utilization possible within the constraints given to it. To increase its decision-making power, reduce those constraints.

Try Other Suggestions

Most of the strategies listed to address other scenarios will also help utilization as a byproduct, because they increase Schedule25's ability to optimize within a set of constraints.

Increase Utilization Priority

Change the Optimize Results For setting to "best utilization", the default setting. This can result in fewer placements, but with a higher average utilization.

Other Strategies

Meeting Pattern Grid

After a run is completed but before you accept results, use the Meeting Pattern Grid in 25Live to make adjust them. You can drag and drop sections into locations which the Optimizer might not consider (due to partition or location preference requirements) or even change the meeting times if your SIS supports changes to this data from LYNX. 

Multiple Iterative Runs

Try running the Optimizer iteratively with multiple runs, accepting only the best results each time. When results are suggested, only accept those that meet specific needs (such as a high level of utilization). Once the results are accepted, make adjustments to class offerings in your SIS (or to your partition preferences and feature requirements) and run the Optimizer again.

Repeat these steps as many times as you wish, accepting only the best results each time and adjusting in between. This lets you use the Optimizer to shortcut many of the "easy" decisions you have to make in bulk before resorting to selecting locations manually or with the Meeting Pattern Grid.

Multiple Tiered Runs

To give priority to certain classrooms or departments, construct your event and location searches as subsets of your entire term. Run some through the Optimizer and accept their results before running the rest.

For example, if you want to reward academic departments for submitting their schedules on time, construct an event search which contains only those departments. Run it through the Optimizer, accept results, and then perform another run which includes all classes. You can perform a similar method with location searches, ensuring that certain buildings are filled before others.

Use the Enrollment Adjuster Effectively

Use the Enrollment Adjuster to compensate for inflated or inaccurate section enrollment estimates. For example, if you know that additional students may register for sections after you run the Optimizer, set the Enrollment Adjuster to 1.05 to pad the enrollments by 5%. (For example, a section with an enrollment of 100 would only be placed in a location that seats 105 or more.)

Conversely, if you want to give the Optimizer more "wiggle room," you could set the value at 0.95 (5% decrease) with the understanding that some sections might be placed in locations with insufficient capacity for their enrollment size. This will increase placement, but you'll need to be prepared to move some chairs from room to room.