In this article, you will learn how to optimize tasks based on Onfleet's powerful route optimization tool, your organization must enable route optimization to use this feature.
Note: Your organization can also opt to auto-create Route Plans using Route Optimization.
- Overview
- Select Tasks to Optimize
- Configure Optimization Options
- Predictive ETA
- Error And Warning Handling
Overview
First, click here to confirm all necessary setup has been completed before choosing to optimize tasks. Take a look at this quick video to get you started with the basics of our powerful route optimization tool.
Select Tasks to Optimize
To begin, multi-select tasks you would like to optimize from the Unassigned section of the sidebar. You can use standard selection behavior including ⇧ Shift and Ctrl (⌘ Cmd or ⌘ Cmd + A in Apple) to select your tasks. Currently, a maximum of 2000 tasks can be considered in a single optimization request.
Note: If you use Linked Tasks, the paired pickup/dropoff tasks must be included in the same optimization run. A single optimization run can include a mix of paired and non-paired tasks.
Then, right-click and select optimize tasks...
Configure Optimization Options
There are 3 Optimization Types:
- Service Area: If one or more Route Zones are configured. Routes will be assigned to drivers, but can be reassigned before the route has been started.
- Drivers: Select drivers by team or individually. Routes can be reassigned before the route has been started.
- Vehicles: Select vehicle type(s) for Route Optimization. Routes are assigned to a team and can be assigned to drivers at the start of driver shifts.
Service Area Optimization
Date: Choose a date to optimize. By default, your current dashboard filter date will be used. If your routes cross a day boundary, the date shown will be the first day in the route.
Service area: Choose the route zone service area to be optimized.
Service Time: A global setting for the expected minutes a driver may spend at each pickup/dropoff destination in the route. This global value will not overwrite any service times set for individual tasks.
Max allowed delay per task: Maximum amount of minutes a task can be delayed based on the Estimated Time of Arrival.
Finally, choose between three optimization modes:
Always arrive on time: Routes are created which strictly adhere to a task's Complete After and Complete Before times. Tasks that cannot be added to a route without violating times will not be included in the returned route solution. You will need to re-optimize or assign these tasks to a driver manually. Note that there may be other solutions with shorter drive time, but this mode strictly adheres to the delivery window limitations.
Balance driving time and arrival times: Routes are created balancing the other two options. This mode doesn't necessarily return the route with the shortest drive time and does not guarantee that every task completes without violations in your delivery window, but both factors were taken into consideration in the optimization.
Minimize drive time: Routes are created which minimize the total number of miles driven by your workers. This will reduce the overall cost to complete the route, however, it allows for violations in your Complete Before and Complete After windows.
Drivers Optimization Type Settings
Date: Choose a date to optimize. By default, your current dashboard filter date will be used. If your routes cross a day boundary, the date shown will be the first day in the route.
Timezone: Timezone defaults to the dispatcher's current timezone. Dispatchers can edit the timezone for the Route Optimization by selecting the drop-down option for the timezone located beside "Date".
Drivers: Select one or more drivers for whom to create routes. If drivers have individual schedules, they will be used in the routing solution. If individual schedules have not been defined, the driver will be considered using the default schedule (when enabled). If you wish to update a driver's schedule before optimization, click the pencil icon and adjust it in the resulting window (see Update Driver Schedule).
Note: a maximum of 100 drivers can be selected for a single optimization.
Next, specify maximum number of tasks per route (which sets an upper limit to the number of tasks assigned to each driver)
Service Time: A global setting for the expected minutes a driver may spend at each pickup/dropoff destination in the route. This global value will not overwrite any service times set for individual tasks.
Max allowed delay per task: Maximum amount of minutes a task can be delayed based on the Estimated Time of Arrival.
Next, define the start from and end at points of the route. The following options are available:
- Driver's Location (formerly "Anywhere")
- Team's hub
- Driver's address
- Specific hub (pending availability to the dispatcher running the optimization)
Note: A route cannot both start 'Anywhere' and end 'Anywhere'. These options will influence the shape of the resulting optimized routes that are generated. To start from 'hub' and end at 'another hub', at least 2 hubs are required for the dispatcher operating the optimization.
Finally, choose between three optimization modes:
Always arrive on time: Routes are created which strictly adhere to a task's Complete After and Complete Before times. Tasks that cannot be added to a route without violating times will not be included in the returned route solution. You will need to re-optimize or assign these tasks to a driver manually. Note that there may be other solutions with shorter drive time, but this mode strictly adheres to the delivery window limitations.
Balance driving time and arrival times: Routes are created balancing the other two options. This mode doesn't necessarily return the route with the shortest drive time and does not guarantee that every task completes without violations in your delivery window, but both factors were taken into consideration in the optimization.
Minimize drive time: Routes are created which minimize the total number of miles driven by your workers. This will reduce the overall cost to complete the route, however, it allows for violations in your Complete Before and Complete After windows.
When you are finished configuring your optimization options, click
.
Vehicles Optimization Type Settings
Date: Choose a date to optimize. By default, your current dashboard filter date will be used. If your routes cross a day boundary, the date shown will be the first day in the route.
Timezone: Timezone defaults to the dispatcher's current timezone. Dispatchers can edit the timezone for the Route Optimization by selecting the drop-down option for the timezone located beside "Date".
Start time: Required setting to indicate the planned start time of the route. Tasks will be assigned after the starting time.
End time: Optional setting to indicate the planned end time for the route. Tasks will not be assigned after the ending time.
Next, define the start from and end at points of the route. The following options are available:
- Driver’s Location (formerly ‘Anywhere’)
- Team's hub
- Driver's address
- Specific Hub Another team's hub (pending availability to the dispatcher running the optimization)
Assigned team: Optional, but recommended. Select the team where these routes will be assigned. Routes should be assigned to available drivers from the dashboard.
Next, select the vehicle(s) type to be routed during the optimization. The supported vehicle type options are:
Walking, Bicycle, Morotocycle, Car, and Truck.
Note: Standard routing allows for one vehicle type to be selected per route optimization (e.g. Trucks may be routed in one optimization and Motorcycles routed in a separate optimization). Advanced routing, with the v3 Engine, allows for selecting multiple vehicle types per route optimization (e.g. Trucks and Motorcycles may be routed in the same optimization).
Per vehicle type, following can be specified:
- Number of routed vehicles (required)
- Maximum number of tasks per route (which sets an upper limit to the number of tasks assigned to each driver)
- Capacity (which sets the capacity limit of the vehicle and will be compared to the task quantity field during route optimization)
Service Time: A global setting for the expected minutes a driver may spend at each pickup/dropoff destination in the route. This global value will not overwrite any service times set for individual tasks.
Max allowed delay per task: Maximum amount of minutes a task can be delayed based on the Estimated Time of Arrival.
Finally, choose between three optimization modes:
Always arrive on time: Routes are created which strictly adhere to a task's Complete After and Complete Before times. Tasks that cannot be added to a route without violating times will not be included in the returned route solution. You will need to re-optimize or assign these tasks to a driver manually. Note that there may be other solutions with shorter drive time, but this mode strictly adheres to the delivery window limitations.
Balance driving time and arrival times: Routes are created balancing the other two options. This mode doesn't necessarily return the route with the shortest drive time and does not guarantee that every task completes without violations in your delivery window, but both factors were taken into consideration in the optimization.
Minimize drive time: Routes are created which minimize the total number of miles driven by your workers. This will reduce the overall cost to complete the route, however, it allows for violations in your Complete Before and Complete After windows.
When you are finished configuring your optimization options, click Proceed.
Completing Route Optimization and Assigning Drivers
If there are no errors, the routes will be optimized across your selected area, drivers or vehicles. This might take some time, depending on the number of tasks you are optimizing.
Once the optimization has been completed you will be able to view a summary of the route that includes:
- Total tasks assigned.
- A total number of tasks.
- Total distance of the routes.
- Total time on duty for each route
If you would like to retry the optimization, select "Edit Optimization Selection" to return to the Route Optimization modal and make changes.
Once the route optimization is completed, if optimization type was by Service Area or Drivers, tasks are automatically assigned to the Drivers. If the optimization type was by Vehicles, tasks are assigned to routes on the selected team (or in the Global Unassigned container). These tasks should be assigned to drivers report for work.
If your drivers had assigned tasks before the optimization, the newly optimized tasks will be considered against the previously existing route.
The completion date of the route is considered when the tasks are added to a driver. For example, if your team optimizes routes for future dates, the tasks are assigned based on the completion date and not the day of optimization.
Predictive ETA
Predictive ETA is generated for optimized tasks, even if the driver is off-duty at the time of optimization. The Predictive ETA will use an offline driver's schedule to determine the time to start the route or if routes were optimized by vehicle, the selected start time will be used for the Predictive ETA.
If you are finding that no Predictive ETA is being generated for your optimized tasks, then it may be due to the following conditions all being met:
- The worker's scheduled start time for the day has already passed.
- The worker is not on duty at the time of optimization.
- The optimized tasks are scheduled to be completed the same day you have run the optimization.
- Older, pending tasks from a previous date are still assigned to the driver.
Error and Warning Handling
If there are errors and/or warnings discovered after configuration, you may fix them in-line by clicking on the Fix button to the right of each remark. Errors must all be corrected before proceeding. Warnings should be reviewed, but will not block you from proceeding.