This article is designed to help users understand the advanced parameters of the HERE optimizer and their impact.
Important:
Please note that updating the HERE configuration can have significant effects on the nature of your future rounds. Please consult with your dedicated Customer Success Manager (CSM) on this topic.
Configuring HERE
How to activate HERE as optimizer
Please note that this option is only available to Urbantz employees. Please contact your CSM for this step.
- Go to ADMINISTRATION > ADMIN > OPTIMIZATION & MAPS
- Choose HERE as
Default Optimizerand asOptimizer in Round Editor - Scroll down to the bottom of the screen and enable
HERE configurationif you want to modify the objectives of the optimizer.
Some limitations with HERE optimiser (asynchronous):
- max 7000 task locations
- max 150 vehicles types
- max 350 per vehicle type
General Settings
Once the HERE configuration setup is enabled, you will have access to the General Settings.
Max time (seconds): Specify themaxTimeparameter to define the maximum time, in seconds, the algorithm is allowed to run for solving the problem. If the algorithm cannot find any solution within the givenmaxTime, it stops whenmaxTimeis reached.(Max 3600sec)
Stagnation time (seconds): Specify the parameterstagnationTime, in seconds, to stop the optimization algorithm if it cannot find an improved solution over a period ofstagnationTime. (Max 3600sec)Ignore route violations: Ignores all routing violations, such as closed roads, no-through zones, or other route restrictions.
Traffic toggles
Profile traffic: Defines what traffic data should be used for route shape and travel duration calculation.- Default: Traffic data is considered
- Disabled: All traffic data, including long-term closures, is ignored
Traffic mode: Thetrafficsetting configures what kind of traffic information should be considered for routing--: Traffic mode disabledAutomatic: The same asliveOrHistorical, if all coordinates are within a radius of 490 km; otherwise, the same ashistoricalOnly. Choose this setting if you want the service to decide automatically what is the best option.Live or Historical: For departure times in the future, either live or historical traffic data are applied depending on how far in the future the departure time is. For departure times in the past, only historical traffic data are applied. The departure time of a vehicle type can be configured via the vehicle profile's optional departureTime property. In case this property is omitted when defining a vehicle profile, the earliest shift start time of all vehicle types sharing that same vehicle profile is used as that profile's departure time. Choose this setting if all locations are within a radius of 490 km and you want to use live traffic data whenever possible.Historical only: Only free-flow speeds based on historical traffic data are applied. Choose this setting if you want to avoid live traffic data usage.
What is the difference, and what does it mean?
Profile Traffic is the setting that determines whether traffic conditions (such as congestion and closures) are taken into account when calculating routes and travel times, while Traffic Mode is the setting that determines which type of traffic data (live, historical, or automatic selection) is used when traffic is enabled for routing calculations.
Avoid features
Here is the list of all avoid features :
When one (or more) toggle is activated, then the optimizer will avoid routes that violate these properties.
Supported advanced objectives
Here is the list of supported advanced objectives and their explanation:
minimizeUnassigned
Minimizes the number of orphan tasks in the overall routing problem
minimizeCostMinimizes the total solution cost (based on the cost schema in the fleet as shown below)
Fixed cost to start using the vehicle
Distance cost per meter
Time cost per second
minimizeToursMinimizes the number of used vehicles in the overall problem
maximizeToursMaximizes the number of used vehicles in the overall problem
optimizeTaskPositionControls position of job task activities in the tour. When specified, the task position is considered as a soft constraint and the solver tries to minimize the number of its violations
minimizeDistanceMinimizes total distance in the overall problem
minimizeDurationMinimizes total duration calculated as the sum of all tour durations
balanceMaxLoadBalances max load across all tours, meaning that this objective tries to reduce the difference in workload between vehicles. You can specify a threshold [0..1] for this objective.
What does threshold mean?
Threshold defines how far each vehicle’s load is allowed to deviate from the mid (average) value. It creates a tolerance band around the average.
balanceActivities
Balances activities across all tours, meaning that this objective tries to reduce the difference in number of tasks between vehicles. You can specify a threshold [0..1] for this objective.
balanceDistance
Balances distance across all tours, meaning that this objective tries to reduce the difference in total distance between vehicles. You can specify a threshold [0..1] for this objective.
balanceDuration
Balances duration across all tours, meaning that this objective tries to reduce the difference in total duration between vehicles. You can specify a threshold [0..1] for this objective.
maximizePriorityJobs
Maximizes assignment of prioritized jobs. This objective is directly linked to the optimisationPriority field value that can be set on each task. This objective is to make sure that high-priority tasks will effectively be assigned to a round while low-priority tasks might end up as orphans.
You can specify the priority of a task with 1 for high-priority tasks and 5 for normal tasks. Tasks without any priority will be treated as tasks with priority 5.maximizeTerritoryJobsAchieves desired jobs distribution between vehicles considering the territories in which these vehicles operate and is based on the
zonesconfigured in the platform
visuallyAppealingTours
Produces more visually appealing tours in contrast to cost/balancing considerationsminimizeTourOverlap
Ensures that the optimization algorithm assigns routes to different vehicles without covering the same areas. The optimizer produces less overlapping tours that are more geographically separated and more compact
What does overlap mean?
⚠️ Using this objective can impact such tour parameters as costs, distance, or duration because the optimization algorithm tries to separate the tours more distinctly.
A tolerance value can be set for this objective [0...1]:
- If
tolerance = 0then zero tolerance → penalise overlap immediately- Even small shared segments (e.g., both drivers using the same main road out of the depot) become something the solver tries to avoid.
- Result: very “territory-like” routes, but potentially longer total distance/time because the solver avoids shared corridors even when they’re the most efficient.
- If
tolerance = 1then full tolerance → overlap is basically acceptable- The solver doesn’t really push drivers into separate territories.
- Result: routes look like a normal cost/time optimization (distance/time wins), and overlap can be common.
maxClusterRadiusSpecifies a radius in meters in which job locations are clustered. Jobs in the same cluster are served consecutively before moving on the next cluster. Suitable values for the parameter depend on the job distribution and need to be tuned until satisfactory results are achieved.
minimizeSoftTimeWindowViolationsThe solver will try to serve jobs closer to their preferred time windows.
Note: We ask you to sync with your dedicated CSM after covering this article if you wish to have any of your platform's configuration adjusted.
Comments
0 comments
Please sign in to leave a comment.