One-off optimization (Swimlane view)


One-off optimization is useful when the workforce and demand is sporadic or unpredictable, or when responding to unplanned changes to an existing optimized schedule, such as someone calling in sick.

One-off optimization runs can provide a near real-time response by passing a smaller query volume than scheduled runs support, resulting in a shorter solve time.

This is still a background process where the solver returns the results on completion, so the process and results are not immediate or instantaneous.


One-off optimization supports up to 2000 jobs and 200 resources per region from the swimlane. Larger queries can be run using scheduled optimization.

See Scheduled optimization for more information.

Configuring optimization settings from the swimlane

Schedulers can override global optimization settings and scope one-off optimization runs on the swimlane by defining settings in the Optimize settings modal.

Schedulers will only need to make adjustments to these settings when the optimization objectives or parameters for a one-off or ad hoc optimization run are different to those defined in the Settings > Scheduling > Optimization settings page. 

Creating a one-off schedule

  1. In the Skedulo web app, open the Schedule > Swimlane page. 
  2. Select the scheduling window using the calendar and time block selectors at the top of the swimlane panel.
    If Working hours is active, it will only consider those periods displayed Define resource working hours.
  3. Select the jobs you want to include in your one-off optimized schedule from the list of work to the left of the swimlane. 
  4. Click the Optimize button in the upper-left of the swimlane (lightningbutton.png). This opens the Optimize settings modal.
    optimize settings modal
  5. Provide a name for the one-off optimization. This name can be any string and will be displayed in the Optimization history and Background tasks.
  6. (optional) De-select Use default scheduling settings to choose alternate settings to use for this one-off optimization run.
    The following alternative optimization options can be configured using the modal:
    • Set the scheduling goal. 
    • Determine how the solver should treat jobs that are already scheduled.
    • (Optional) Set the maximum amount of travel time for resources between jobs.
    • (Optional) Choose to ignore travel times between jobs.
    • (Optional) Set Snap and Padding times.
    • Choose the scheduling window.
    • Choose how you would like to receive the results. 
      Results can be either applied to your swimlane automatically when they are ready, or you can choose to preview them first. 
      optimize modal, use default scheduling settings de-selected
  7. Click Start to start the one-off optimization run.
    The Background tasks notification panel opens to show the status of the optimization operation as it runs in the background.
    background tasks in progress
  8. When the one-off optimization has been completed, click View results in the Background tasks panel to open the results page. 
  9. Click Apply to schedule the jobs according to the optimize scheduling results, or Reject to discard the results.
    Rejecting the results of an optimization run prevents them from being applied to the schedule later.
    Results that are neither rejected or applied can be viewed on the Optimization History page and applied or rejected later. 

How long does one-off optimization take?

The time the solver takes to find an optimized scheduling solution depends on the size of the scheduling problem.

In general, you should allow for one second per element in the optimization equation.

For example, to optimize 20 resources and 500 jobs, you can expect the solver to take approximately eight and a half minutes. 

Optimization is an asynchronous process, so you can continue to use the Skedulo web app while optimization runs in the background. 

Accessing the optimization results 

Click View results on any of the optimization runs from the last seven days in the Background tasks.

You can also view any optimization runs, including scheduled runs and runs older than seven days from the Optimization history page under Manage > Optimizations on the global navigation bar.