Performing Schedule25 Optimizer Runs

After you prepare your environment by following the instructions in Optimizer Setup, you're ready to place classes with the Optimizer. Each of these steps is described in greater detail below.



Create event and location searchesDecide which sections need to be placed by the Optimizer and which rooms are appropriate for them.
Start a new runChoose a name for your Optimizer run and configure its settings.
Run the Prepare Data stepThe Optimizer uses your event and location searches to capture data. You should not make any changes in 25Live after this point.
Run the Optimization stepThe Optimizer makes recommendations based on departmental preferences, individual class requirements, and overall placement.
Use the Meeting Pattern GridUse a drag and drop grid to adjust these recommendations to your satisfaction.
Accept and assign Optimizer resultsFinalize the results by assigning them in 25Live.

Create Event and Location Searches

Every Optimizer run requires two searches:

  • An event search consisting of all the sections you want to place
  • A location search consisting of all the valid rooms for these sections

Save these searches in 25Live before continuing with the Optimizer. See the "Using Advanced Search Options" section in Searching for Events, Locations, Organizations, Resources, and Contacts for instructions on how to create and save searches.

Best Practices for Event and Location Searches

Your event search should include only the sections that need placement. Consider using "missing location assignment" in your search terms to filter out anything that has already been assigned a location.

Typically your location search should only include general assignment classrooms and not specialized facilities like laboratories unless you are using the Optimizer to place lab classes.

Start a New Run

1. In X25 Analytics, go to Optimizer > Manage Runs

2. Click the Add a Run Button

Image: Click Add a Run in the Optimizer tab under Manage Runs.

3. Enter a Name and Configure the Run

In the screen that opens, enter a name for the run and configure the rest of the settings as described in Schedule25 Optimizer Settings.

A screen to define Optimizer run settingsImage: Details when adding a new run.

4. Click Save

Run the Prepare Data Step

The Optimizer functions by taking a snapshot of data from 25Live and making calculations based on that snapshot. The "Prepare Data" step is when you create that snapshot.

Once you perform this step, all schedulers should freeze their work. You should avoid making any changes to these classes in 25Live or your SIS so that they don't get out of sync with the snapshot you just took. Otherwise, the calculations will be inaccurate.

1. Start the Run

On the Manage Runs page, select the run you just created and click Start.

2. Run Prepare

With the Prepare screen open, click Run Prepare. The Optimizer will take a short time to analyze the event and location searches you specified. Usually, this lasts under a minute.

Count of fatal errors, errors, and warningsImage: Schedule25 preparation results display any fatal errors and/or warnings.

3. Review the Run Results

When it is finished, you are presented with a list of errors and warnings based on your input data including, potentially, any of the following:

  • Fatal errors must be resolved before the run can proceed. Fatal errors include problems with your event/location searches or an issue with your Schedule25 license.
  • Errors that won't prevent the run from continuing but will affect your results. Errors include things like location preferences or requirements that can't be met by any location in your location search results.
  • Warnings that won't prevent the run from continuing but may affect your results. Warnings include potential problems that may or may not be intentional, such as sections with zero headcounts.

4. Make Adjustments and Rerun

Make adjustments in 25Live to your events, locations, and organizations as necessary, then run the Prepare Data step again.

Run the Optimization Step

In this step, the Optimizer will perform its calculations. No assignments will be made in 25Live and nothing will be sent back to the SIS yet.

1. Start a Run

On the Manage Runs page, select your desired run and click Start.

2. Click Optimize

Click the Optimize button at the top of the pop-up window to move to the Optimization step.

Then click the Optimize button on the right to perform the optimization calculations. Usually, this lasts under a minute.

Optimize viewImage: Schedule25 results summary

3. Review Results

When the optimization is finished, you will see a summary of the placement results.

  • Placed classes include the Optimizer's suggested assignments.
  • Not placed includes classes that potentially could have been placed, but there were not enough available rooms.
  • Impossible to place indicates classes whose preferences were so strict that there were zero available rooms.

4. View the Report

Click View Report. This will download the availability report, a summary of what location availability would be after all placements are accepted.

(Optional) Use the Meeting Pattern Grid

You can adjust the results of the Optimizer's suggested placements before you accept them using the Meeting Pattern Grid in 25Live. Visit that page for detailed instructions on navigating and using this tool.

As with the Optimize step, the actions you take here are not final. Nothing will be assigned in 25Live and nothing will be sent to the SIS until you accept the results.

1. Open the Meeting Pattern Grid

In 25Live, open the Meeting Pattern Grid from the More menu in the top-right.

2. Select a run to Edit

Select the run whose results you wish to alter. The events will be displayed in a grid-like the one below.

Meeting Pattern GridImage: 25Live's Meeting Pattern Grid.

3. Click and Drag Events to new Locations 

Take special note of the UNASSIGNED row at the top of locations, which contains all events which were marked Not Placed or Impossible to Place in the previous step.

4. Send to Optimizer

When you are satisfied, use the Send to Optimizer button to save your changes. These will be reflected in the Assign step of the Optimizer,

Accept and Assign Optimizer Results

Up to this point, the Optimizer's results are just suggestions. In this step, you'll finalize the assignments and make them real in 25Live.

1. Start a Run

On the Manage Runs page, select your desired run and click Start.

2. Tap Assign

Click the Assign button at the top of the pop-up window to move to the assignment step.

The results of the Optimizer's suggestions will be summarized below. If you edited the run using the Meeting Pattern Grid, your changes are included. results include:

  • Suggested Assignments
  • Accepted Assignments
  • Not Placed
  • Impossible to Place
  • Messages

3. (Optional) Click View Report 

This will download the placement report, a spreadsheet of all the Optimizer results grouped by their status.

4. Select Results and Accept Placements

Click any of the result totals to display a list of matching classes. Select Suggested Assignments to begin accepting results.

Assign step suggested assignments

Image: Schedule25 placement results.

Select the placements you wish to accept by checking individual classes with the checkbox on the left or highlighting multiple items by holding SHIFT or CTRL on your keyboard to highlight them, then clicking Check List to select the highlighted rows.

Alternatively, you can select all of the results by clicking Check All.

5. Complete the Assignments

Click Assign to make assignments in 25Live. Depending on the number of classes selected, this may take some time.

After their assignments are made, classes appear in the Accepted Assignments results area. You may click Unassign in that area to remove the assignment in 25Live.

A Note About Numbers

You might notice a slight discrepancy in the total number of classes on this step compared to the results on the Optimize step.

When two events are bound together (as is the case for cross-listed or back-to-back sections) the Optimizer treats them as a unit and they count as a single "placement" for purposes of the algorithm's calculations.

On the Assign step, each event is listed separately regardless of whether it is bound to another event. Therefore, the number of events listed in those lists is greater than the "placed classes" displayed in the optimization step summary.