Optimization results
Overview
The Results page provides a summary of an optimization run, which helps schedulers to understand the details of the optimization run, such as average work time, travel time, and distance traveled in relation to the overall schedule.
Results pages are available from both the Background tasks button and the Optimization history page.
Note
Contact your Skedulo Customer Success representative to request access to this feature.Use the optimization results page
Optimization results are shown for each optimization run, including both one-off and scheduled optimization runs.
For one-off optimization, you can click View results in the Background tasks menu to view the results page of any optimization run from the past seven days.
Schedule preview
The Schedule preview tab is available as a beta feature for schedulers to preview an optimization run before committing to it. When enabled, this tab allows schedulers to view a preview of optimization results for a given optimization run, including previous optimization runs in the Background tasks menu or the Optimization history page.
To enable the Schedule preview tab, do the following:
- Navigate to Settings > System administration > Beta features.
- Select the
Displays the Schedule Preview in the optimization results page. Requires Optimization feature. (browser refresh required)
checkbox. - Click Save.
- Refresh your browser to apply the change.
When enabled, the Schedule preview tab will be the default tab of the Optimization results page, and appears as follows:
Schedulers can apply or reject the results from the Schedule preview tab.
- If the results are rejected, they cannot be applied to the schedule later, but they can still be viewed from the Optimization history page.
- If the results are accepted, they are applied to the schedule and can be viewed on the swimlanes.
Note
Job cards cannot be moved on the Schedule preview swimlane. To make minor changes to the schedule, schedulers can apply the schedule and make adjustments from the swimlanes under Schedule on the global navigation bar.Routes (Beta)
The Routes tab is available as a beta feature for schedulers and shows a day-by-day view of their allocations plotted on a map with the suggested routes they may make as they travel and undertake their allocated work.
This is a beta feature
-
Beta features should be considered “in development” and may not be fully supported or complete.
-
Beta programs are invaluable for helping to validate the value and impact of features through feedback and insights. If you would like to participate in beta programs and access this feature, please contact your Customer Success representative.
To enable the Routes tab, do the following:
- Navigate to Settings > System administration > Beta features.
- Select the
Displays Suggested Routes in the optimization results page
checkbox. - Click Save.
- Refresh your browser to apply the change.
When enabled, the Routes tab will be available on the Optimization results page, and appears as follows:
Use the Routes tab
The default view shows the first day of the schedule window. Move between any date within the schedule window using the date picker.
Each resource scheduled to work for the selected day will appear on the map. Resources are represented by their personal avatars, which are placed on their home address.
Work allocations are represented by small nodes that are placed on the road outside the address given. The node that represents the resource’s first allocation of the day is labeled with a 1
.
Hover the cursor over an avatar or node to display more information.
The table to the right of the map displays a summary of the selected day in terms of the number of jobs undertaken, the travel time, and the distance traveled along with the total travel and distance for the whole schedule window optimized.
Summary and map view
The results page provides a summary of how successful the optimization run was in achieving the scheduling objectives. This includes averages for the following metrics at both a schedule level and an individual resource level:
- The average amount of work time allocated.
- The average amount of time spent traveling to assigned work.
- The average distance traveled during the schedule.
Details tab
The Details tab provides schedulers with basic information about the jobs that were scheduled, left unscheduled, or excluded from the optimization run.
Scheduled jobs
Jobs that were scheduled in the optimization run are listed with their job number and type, start times, and allocated resources.
Unscheduled jobs
Jobs that were unscheduled during the run are listed with the reason that the job was unscheduled.
There are a number of reasons why a job may have been unscheduled. See Unscheduled reasons, below, for the full list of reasons a job may have been unscheduled.
In the example below, the job was excluded from the optimization scope. We can view the Excluded tab for more information about why the job was excluded.
Excluded jobs
Excluded jobs are those that cannot be considered in the optimization problem.
This can be for a number of reasons, the most common being that they have an attribute that could constrain them in a way that optimization does not support.
For example, this can include jobs with multiple resource requirements or job dependencies.
In the following example, the job had resource requirements with job time set.
Unscheduled reasons
Jobs that remain unscheduled after the optimization run are listed in the Unscheduled tab of the Details page.
Unscheduled reasons fall into two categories – job reasons and resource reasons.
Job reasons are non-resource specific, such as job time constraints.
Resource reasons are resource specific, such as having a missing skills or resource tag. All resource reasons will have a resourceId associated with them.
Job reasons
Reason | Reason template |
---|---|
Job is excluded | Job was excluded from the optimization scope. |
Job Time Constraints are too strict and force the job to be scheduled before the scheduling window | Job must start before the schedule window. |
Job Time Constraints are too strict and force the job to be scheduled after the scheduling window | Job must start after the schedule window. |
Schedule window does not overlap sufficiently with any Job Time Constraints (multiple time constraints both in front and behind the scheduling window) | Schedule window does not sufficiently overlap with any Job Time Constraints. |
Resource reasons
Reason | Reason template |
---|---|
Resource has exhausted availability (no time constraint or job time constraint is within their availability window) | Resource <Resource.Name> does not have enough availability to be allocated to the job. |
Resource has for no availability in job time constraint window | Resource <Resource.Name> does not have availability for the window(s) of time the job can be scheduled in. |
Resource is missing critical skills to do the job | Resource <Resource.Name> is missing the following required skill tags: <Tag.Name> |
Resource is blacklisted or not whitelisted from the account (and a whitelist exists) | Resource Resource |
Resource is blacklisted or not whitelisted from the location (and a whitelist exists) | Resource Resource |
Excluded reasons
Some jobs are excluded from optimization for various reasons, usually due to job attributes or contraints that mean the solver is unable to schedule them.
There are two levels of exclusions: product level and solver level.
Product level exclusions are where there are constraints outside of the optimization that could be broken if the job is included in the optimization problem. For example, if a job has resource requirements without a job time locked in place.
Solver level exclusions indicate that the optimization problem is highly constrained and that the scope may be difficult to solve, where the inevitable result is that some jobs are unable to be scheduled. For example, there are too many jobs and/or not enough resources to schedule all of the work within the scheduling window.
Product level exclusions
Exclusion type |
Description |
Behavior |
---|---|---|
Job dependencies | The job has job dependencies and therefore has constraints that aren’t supported by optimization. | If already scheduled, allocations will be locked in place otherwise they will be removed from the pool of schedulable allocations. |
Unscheduled with Resource Requirements | The job has resource requirements without a job time that’s locked in place (respectAllocationTimes setting is on) |
Allocations will be removed from the pool of schedulable allocations. |
Job has Resource Requirements | The job has resource requirements without a job time that’s locked in place (respectAllocationTimes setting is off). |
If already scheduled, allocations will be locked in place otherwise they will be removed from the pool of schedulable allocations. |
Out of region | The job was included in the optimization scope via a resource who exists in multiple regions. | If already scheduled, allocations will be locked in place otherwise they will be removed from the pool of schedulable allocations. |
Job requires synchronized allocations | The job has multiple allocation requirements and does not have a start time (respectAllocationTimesOverTime Constraints setting is on). |
Jobs that in any way require more than one allocation and do not have a start time with the respectAllocationTimesOverTime Constraints setting will be excluded. |
Solver level exclusions
Exclusion type | Description | Behavior |
---|---|---|
No valid date windows | The allocation has a time constraint that does not leave enough time within the scheduling window for the allocation to be scheduled. | The allocation is ignored, if already scheduled the logic evaluating differences will leave it scheduled. |
Feedback
Was this page helpful?