Optimization parameters reference
Last updated: August 20, 2026
This is the full input and parameter dictionary the optimizer solves against — the one place this KB goes to field-level depth. Most operators never need it: for how routing works day to day, start with optimization strategies and optimize orders into routes. This reference is for power users tuning how routes are built.
Where these live. Most of these are configured on an optimization
strategy (and on the contracts and store locations it draws from).
Others are advanced — set through the API or solver_overrides, and not
surfaced as a control in the strategy editor. Advanced fields are marked
(adv) below.
Note
This is the modeling surface — the union of what the optimizer can represent across engines, not the vocabulary of any single engine. Don't expect every field here as a portal toggle. Availability varies by organization and engine; reach out to Nash about anything you want to use that you don't see.
The Nash field column gives the exact field name the optimizer uses. Sections
below are grouped by what each parameter controls.
B1. Problem-level inputs
The top-level pieces of an optimization run.
| Parameter | Nash field | What it does |
|---|---|---|
| Plan start / horizon | time_window_start |
Reference anchor; time windows are absolute or relative to it. |
| Orders | orders |
The demand (B2). Up to ~20,000 per run. |
| Vehicles / fleet | vehicles |
The fleet (B3). |
| Depots & replenishment | depots / renewals |
Start/end, reload, and recharge locations (B6). |
| Breaks & hours-of-service | breaks |
Driver rest / HOS rules (B7). |
| Routing, map & geographic controls | map / solver_parameters |
Provider, traffic, avoidances, areas, balancing (B8). |
| Inter-order relationships | paired_order, precedences, … |
Pairing, precedence, sequencing, exclusion, compatibility, transitions (B5). |
| Objective / strategy | cost_params, objectives |
What's minimized and how (B4). |
| Solver run controls | solver_parameters |
Effort, time budget, quality, mode, seed (B9). |
| Units | units |
Distance and duration units. |
| Re-optimization (locked / seed routes) | locked_routes / current_routes / injected solution |
Preserve or warm-start existing routes. |
| Large-problem decomposition | cluster |
Geographic chunking of very large problems. |
| Custom validation rules | validation_specs |
Custom business-rule checks. |
| Custom travel matrix | od_location / matrices |
Supply your own distance/duration matrix. |
| Advanced / engine parameters | solver_overrides |
Pass-through for any specialized capability (B10). |
| Tags / scenario labels | user_tags |
Traceability, scenario comparison, audit. |
B2. Orders & demand
An order is up to two visits (a pickup and/or a dropoff). Common shapes: a paired pickup → dropoff transport, a depot-loaded delivery, a standalone collection, or a multi-source / alternative-location fulfillment.
Order-level
| Parameter | Nash field | What it does |
|---|---|---|
| Order ID | id |
Stable identifier across the plan and outputs. |
| Pickup / dropoff visit | pickup / dropoff |
The collection / delivery stop (each optional). |
| Required capabilities | capabilities |
Skills the serving vehicle/crew must (hard) or should (soft) have — e.g. home_theater_setup, washer_dryer_installation, liftgate, two_person. |
| Work type / shipment type | shipment_type |
Classifies the order for compatibility & requirement rules (B5). |
| Load category | load_category |
Goods category for co-loading prohibitions (B5). |
| Assignment priority / value | assignment_priority |
Importance of serving it; low-priority orders are dropped or overflowed first. |
| Sequence priority / group | sequence_priority / sequence_group |
Pull an order earlier/later; group orders sequenced together. |
| Forced position in route | position |
First, last, or a fixed ordinal position on the route. |
| Cluster label | cluster_label |
Pre-assign to a route/zone cluster (hard or soft). |
| Pickup → delivery time limit | pickup_to_delivery_time_limit |
Max elapsed time between an order's pickup and delivery. |
| Detour limits | absolute / relative detour | Cap how far a pickup → delivery may detour vs. direct. |
| Max time on vehicle | max_time_on_vehicle |
Max time goods may ride before delivery. |
| Custom cost metric | costs_by_metric / order_cost_metric |
Order-specific cost values selectable per vehicle. |
| Metadata | metadata |
Pass-through attributes (customer ref, SKU class, store, entitlement). |
Visit-level (pickup and dropoff each)
| Parameter | Nash field | What it does |
|---|---|---|
| Location | location (+ curb) |
Coordinates; curb-side / side-of-street access hint. |
| Quantities (demand) | quantities (pickup_quantities / dropoff_quantities) |
Load added/removed per dimension — e.g. [1 unit, 180 lb, 32 cuft]. |
| Service duration | service_duration |
On-site time (unload, install, signature); scalable by efficiency factors (B3). |
| Time window(s) | time_window |
When the visit may occur — one or more windows supported (e.g. 9–11am or 2–4pm). |
| Soft time window | preferred bounds + earliness/lateness cost | Preferred earliest/latest with a penalty for arriving before/after (linear or quadratic). |
| Window enforcement | end_type |
Whether the window applies to arrival or to service completion. |
| Lateness tolerance | max_late_time |
Max lateness past the window before the visit is infeasible. |
| Max wait | max_wait_time |
Max idle time the vehicle may wait before the window opens. |
| Parking / access time | parking_time |
Fixed access time before service, separate from service duration. |
| Alternative locations | alternative_order |
Interchangeable locations; at most one is served. |
| Co-location handling | merge_calc_for_colocated |
Treat multiple orders at one address as a single visit. |
| Metadata | metadata |
Pass-through stop attributes. |
B3. Fleet & vehicles
| Parameter | Nash field | What it does |
|---|---|---|
| Vehicle ID / count | id / count |
Type and how many identical units. |
| Profile | profile |
car, van, truck, bicycle, scooter, pedestrian, or straight-line/geodesic. Drives speeds, road restrictions, truck routing. |
| Truck attributes | dimensions + restrictions | Height / width / length, gross weight, weight-per-axle (& axle group), axle count, trailer count, hazardous-goods class, tunnel category. Used for truck routing and access feasibility (e.g. a 16-ft box truck on height/weight-restricted roads). |
| Capacity | capacity |
Max simultaneous load per dimension; a peak-load constraint along the route. Can be soft with an over-capacity penalty. |
| Alternate capacity sets | alternativeCapacities (adv) |
Vehicle may switch capacity profile between trips or at a stop. |
| Start/end load interval | startLoadInterval / endLoadInterval (adv) |
Require load to be within a range at route start/end. |
| Separate pickup / dropoff capacity | max_pickup_quantities / max_dropoff_quantities |
Independent caps on accumulated pickup vs. dropoff load (e.g. limited haul-away room). |
| Max distance | max_distance |
Max distance per route (hard, or soft via an over-distance penalty). |
| Max route time (on-duty) | max_total_time |
Max total elapsed shift time. |
| Max travel (driving) time | max_travel_time |
Max driving time, distinct from on-duty time. |
| Max orders / stops | max_orders_per_route / max_waypoints_per_route |
Caps on orders / unique stops; separate pickup-only / dropoff-only caps. |
| Min orders per route | min_orders_per_route |
Minimum before a vehicle is used (avoids tiny routes). |
| Max trips / dispatches | max_num_dispatches |
Multiple trips per shift (return to depot and reload). |
| Start / end depot(s) | start_depot / end_depot |
Begin/return points (can differ, be open-ended, "any", or "none"). |
| Breaks / HOS | break_ids |
Which rest / hours-of-service rules apply (B7). |
| Capabilities / equipment | capabilities / equipment |
What this vehicle/crew can do; matched to order requirements. |
| Earliest dispatch / latest dismissal | dispatch_after / dismiss_before |
Shift start/end bounds. |
| Speed | speed_factor / average_speed / constant_speed / travel_duration_multiple |
Scale modeled travel speed or set a fixed/average speed. |
| Service-time efficiency factors | order_service_factor / pickup_service_factor / dropoff_service_factor / depot_service_factor |
Scale service durations per crew (faster crews) or stop type. |
| Extra service by visit type | extra_visit_duration_for_visit_type (adv) |
Additional service time for specific visit/work types. |
| Geographic eligibility | allowed_polygons / disallowed_polygons / preferred_polygon / limit_to_single_polygon |
Areas the vehicle must stay within, must avoid, should prefer, or be confined to. |
| Preferred location | preferred_location |
Soft proximity bias for order assignment. |
| Territory | territory + priority (adv) |
Restrict/prefer a vehicle's territory with a priority order. |
| Hard assignment | per-order vehicle pin / allowed_vehicle_indices |
Pin specific orders to a specific vehicle/crew. |
| Unloading policy | unloading_policy (adv) |
Last-in-first-out / first-in-first-out loading order (for physical load/unload feasibility). |
| Cost model | cost_params |
Full cost structure (B4). |
| Minimize idle | avoid_wait_time |
Prefer routes with less waiting. |
| Use-all flag / used-if-empty | use_all_vehicles / used_if_route_is_empty |
Force every unit to be used (vs. as few as the objective prefers). |
| Metadata | metadata |
Pass-through bookkeeping (contract, provider, display name, dimensions). |
B4. Cost model (per vehicle) — cost_params
Every term is optional; together they form the objective. Threshold-plus-penalty terms express soft limits with escalating cost.
| Parameter | Nash field | What it does |
|---|---|---|
| Fixed cost | fixed_cost |
Incurred whenever the vehicle is used. Drives fleet size. |
| Cost per unit time | cost_per_unit_time |
Labor/time per unit of route duration. |
| Cost per traveled time | cost_per_traveled_time |
Cost per unit of driving-only time. |
| Cost per unit distance | cost_per_unit_distance |
Fuel/mileage per distance. |
| Cost per order / pickup / dropoff | cost_per_order / cost_per_pickup / cost_per_dropoff |
Per-stop costs by type. |
| Cost per unit quantity | cost_per_unit_quantity |
Cost scaling with load carried, per dimension. |
| Overtime threshold + cost | overtime_start + cost_per_unit_overtime |
Time beyond the threshold is penalized (linear; a quadratic option is available). |
| Over-distance threshold + cost | overdistance_start + cost_per_unit_overdistance |
Distance beyond the threshold is penalized. |
| Over-order threshold + cost | overorder_start + cost_per_overorder |
Orders beyond the threshold are penalized. |
| Earliness cost | cost-per-time-before-soft-start | Penalty for arriving before a preferred window. |
| Lateness cost | cost_per_unit_late_time |
Penalty per unit of lateness (enables soft windows). |
| Waiting-time cost | per-unit waiting cost | Penalty per unit of idle waiting. |
| Makespan / span cost | global-duration cost-per-hour | Penalty on the total span (last route end − first start). |
| Adjacent-distance cost | over_adjacent_distance_start + over_adjacent_distance_cost |
Penalize long legs between consecutive stops (compactness). |
| Distance / duration step costs | distance_step_costs / duration_step_costs |
Tiered/stepped pricing. |
| Skip / unassigned penalty | penalty_cost |
Cost of leaving an order unserved — the lever for drop/overflow decisions. |
| Per-vehicle order cost | costs_per_vehicle |
Make an order cheaper/dearer on specific vehicles (steer to preferred crews). |
| Transition / changeover cost | transition attributes (adv) |
Cost / delay / distance limit applied between consecutive stops of given tag pairs (e.g. crossing a boundary). |
B5. Inter-order relationships, sequencing & compatibility
| Parameter | Nash field | What it does |
|---|---|---|
| Pairing | paired_order |
A pickup and delivery served by the same vehicle. |
| Precedence | precedences |
One order completed before another (parts pickup before repair; delivery before install). Same-route or linked cross-route; optional minimum offset. |
| Requirement mode | requirement mode (adv) |
Whether a required type must be on the same vehicle, present at pickup time, or at delivery time. |
| Mandatory successor | next_order |
An order that must immediately follow another. |
| Sequencing groups | sequence_group |
Orders visited together / in a fixed relative order. |
| Synchronization (meetups) | relations / sync |
Two or more visits (delivery crew + install crew) arriving at the same location within the same window; first-of-day or most-optimal aligned time. |
| Mutual exclusion | mx_label / mx_order / disjoint_group |
Orders that must not share a route / be consecutive. |
| Work-type compatibility | shipment_type incompatibilities / requirements |
Which work types may or may not be mixed on a route (e.g. not same vehicle, not simultaneously). |
| Load-category co-loading prohibition | load_category + mixed-loading prohibitions |
Incompatible goods categories that may not share a vehicle. |
| Transition / changeover rules | transition attributes (adv) |
Tag-pair cost/delay/distance between consecutive stops. |
| Co-located consolidation | merge_calc_for_colocated |
Combine service / minimize duplicate visits at a shared location. |
B6. Depots, reload & recharge
Supports multi-depot fleets, distinct start vs. end depots, open routes, and node-level load-out rules.
| Parameter | Nash field | What it does |
|---|---|---|
| Depot ID / location | id / geometry (+ curb) |
Start, end, or reload location. |
| Time window | time_window |
Depot open hours for dispatch/return (load-out windows). |
| Service duration / parking | service_duration / parking_time |
Loading/check-in time. |
| Max adjacent distance | max_adjacent_distance |
Max distance from depot to first/last stop. |
| Reload / replenishment station | renewals + renewal_params (capacity, consumption per order/distance/duration) |
Mid-route restock — models stores that allow mid-day reloads and "flyby" inventory pickups, distinct from depots that don't permit reloads once a route departs. Supports a capacity change between trips. |
| EV recharge & range | recharge stations + max-range-before-recharge (adv) |
Electric-vehicle range limits and en-route charging stops (for an EV fleet). |
B7. Driver breaks & hours of service
A break can be window-driven, working-time-driven, or both; it's placed in its true mid-route position and counted in timing and shift limits.
| Parameter | Nash field | What it does |
|---|---|---|
| Break ID / duration | id / duration |
The rest and its length. |
| Max continuous working time | max_working_time |
Trigger a break after this much elapsed/working time. |
| Break time window | time_window |
Constrain the break to a clock window (e.g. lunch 11:30–13:30). |
| Paid flag | is_paid |
Whether the break counts toward cost/time. |
| Driving vs. working vs. duty rest | rest-time rules (adv) |
Separate limits for driving time, working time, and total duty before a required rest. |
| Regulatory HOS presets | working-hours preset (adv) |
Named hours-of-service regimes (e.g. EU driving-time / working-time directives; US HOS, including short-haul and multi-day variants). |
| Daily rest rule | daily-rest rule (adv) |
Minimum daily rest, with position (between trips / anywhere). |
| Carried-over logbook state | work logbook (adv) |
Accumulated driving/working time since the last break/rest, carried in from a prior shift. |
| Driver availability windows | driver availabilities (adv) |
When a specific driver/crew is available, independent of the vehicle. |
B8. Routing, map & geographic controls — map / solver_parameters
| Parameter | Nash field | What it does |
|---|---|---|
| Map / routing provider | map_provider |
Road network and travel-time source. Determines travel times, road restrictions, truck routing. |
| Traffic model | traffic_time / here_params |
Anchor to a departure time / day-of-week profile; live or historical traffic. |
| Travel-time / speed multipliers | market speed multiplier | Market-level adjustment to modeled travel times / truck speeds. |
| Avoidances | avoid_tolls / avoid_highways / avoid_ferries + tunnels, dirt roads, U-turns, car-shuttle trains, difficult turns, seasonal closures |
Routing avoidance preferences (vary by vehicle type and market). |
| Country / area exclusions | excluded countries / areas (adv) |
Hard exclusion of countries or bounding/polygon areas. |
| Restricted / priced zones | environmental / congestion / vignette zones (adv) |
Avoid or account for low-emission, congestion-charge, or vignette zones. |
| Service / eligibility areas | zones / polygons |
Serviceable geography per line of business; which fleets serve which areas. |
| Route-restriction areas | disallowed_polygons |
Hard or configurable "avoid" zones (commercial-vehicle-banned roads, bridges/parkways), per vehicle type and market. |
| Geodesic / straight-line distances | geodesic mode | Bypass the road network with straight-line distance + assumed speed. |
| Search effort level | search_level |
How hard the optimizer searches — trades solve time for quality. |
| Clustering level | clustering_level |
How strongly nearby stops group into one route (compactness). |
| Route balancing | balance_routes |
Balance work across routes (by stops / time / distance / load). |
| Minimize route crossing | minimize_crossing |
Prefer clean, non-overlapping routes. |
| Soft cluster labeling | soft_cluster_label |
Treat zone/cluster labels as a preference, not a hard partition. |
| Soft capabilities | soft_capabilities |
Capabilities treated as preferences rather than hard requirements. |
| Merge overlapping windows | merge_overlapping_time_windows |
Combine adjacent time windows on a stop. |
| Geocode resilience | snap_distance |
Handle bad/ambiguous geocodes; snap unroutable points. |
| Side-of-street / stopover hints | curb / side-of-road / heading (adv) |
Fine map-matching hints for arrival side and stopover behavior. |
| Reproducibility seed | seed |
Fix the random seed so a run is reproducible. |
B9. Solver run controls — solver_parameters
| Parameter | Nash field | What it does |
|---|---|---|
| Search effort / quality tier | search_level / quality / search mode |
Speed-vs-quality: return fast, or consume the full budget for a better plan. |
| Time budget | timeout |
Max compute time before returning. |
| Stagnation cutoff | stagnation time (adv) |
Stop early once no improvement is found for this long. |
| Solve mode | solve / validate-only / detect-infeasible |
Full solve, validate the request without solving, or surface obviously infeasible orders. |
| Warm-start / injected solution | injected routes / current_routes |
Seed with an existing solution (used for re-optimization). |
| Custom travel matrix | od_location / matrices |
Supply your own distance/duration data. |
| Reproducibility seed | seed |
Deterministic runs. |
B10. Advanced & solver-unique capabilities — via solver_overrides
Specialized features beyond the standard model, reached through Nash's advanced / extensibility layer so a unique need is never blocked. These are set through the API, not the strategy editor. Cataloged here for completeness:
- Hierarchical / multi-objective tuning — ordered objective lists, equal-priority pairs, tie-break thresholds.
- Visual & territory objectives — visually-appealing tours, minimize tour overlap, serve-in-clusters, maximize territory/priority/value jobs.
- Eager-delivery shaping, stop grouping (density-based) with shared service time, PUDO / job groups (assign at first/last).
- Capacity change at a stop (not just between trips), alternate capacity profiles.
- Fuel / CO₂ modeling (reporting), micro-routing hints (side-of-road, heading, stopover).
- Custom cost metrics per order/vehicle; per-transition cost/delay/distance limits with tag selectors.
- Any future engine-specific parameter — supplied as a structured override, applied without changing the canonical request.
For how strategies are built and scheduled, see optimization strategies; for running one against a set of orders, see optimize orders into routes.