Experimental

Builds capacity-constrained multi-depot delivery routes with heterogeneous fleet controls, objective modes, and optional local optimization.

vector network routing optimization

Parameters

NameDescriptionRequiredDefault
networkInput line network layer (validated for contract parity).Requirednetwork.gpkg
depot_pointsDepot point layer; each point can contribute one or more vehicles.Requireddepots.gpkg
stop_pointsDelivery stop point layer.Requiredstops.gpkg
demand_fieldNumeric demand field in stop_points (default: demand).Optionaldemand
priority_fieldOptional stop priority field using values like required/high/normal/low or numeric ranks.Optionalpriority
allowed_vehicle_profiles_fieldOptional stop field listing compatible vehicle profiles (comma/semicolon/pipe-delimited).Optional
allowed_route_classes_fieldOptional alias of allowed_vehicle_profiles_field for route-class compatibility rules.Optional
depot_id_fieldOptional depot ID field used in route/assignment outputs.Optional
vehicle_count_fieldOptional depot field for number of vehicles spawned at each depot.Optional
vehicle_capacity_fieldOptional depot field overriding vehicle_capacity per depot/vehicle template.Optional
vehicle_fixed_cost_fieldOptional depot field overriding vehicle_fixed_cost per depot/vehicle template.Optional
travel_speed_fieldOptional depot field overriding travel_speed per depot/vehicle template.Optional
max_route_distance_fieldOptional depot field overriding max_route_distance per depot/vehicle template.Optional
max_route_time_fieldOptional depot field overriding max_route_time per depot/vehicle template.Optional
vehicle_profile_fieldOptional depot field defining vehicle profile/category token used for stop compatibility.Optional
vehicle_route_class_fieldOptional alias of vehicle_profile_field for route-class compatibility rules.Optional
vehicle_capacityPer-vehicle capacity (> 0).Required100.0
vehicle_fixed_costOptional fixed cost charged per dispatched vehicle/route (default: 0).Optional0.0
max_vehiclesOptional maximum number of vehicles/routes to construct.Optional
max_route_distanceOptional maximum travel distance per route, including return to depot.Optional
travel_speedTravel speed in coordinate-units per time unit (default: 1).Optional
max_route_timeOptional maximum route duration in model time units, including return to depot.Optional
max_stops_per_vehicleOptional maximum number of stops assigned to each vehicle route.Optional
objective_modeRoute-construction objective: minimize_distance, minimize_vehicles, or minimize_cost.Optionalminimize_distance
apply_local_optimizationWhen true, applies a deterministic 2-opt local improvement pass to each constructed route (default: true).OptionalTrue
apply_simulated_annealingWhen true, applies a seeded simulated annealing refinement pass per route after greedy/local optimization (default: false).OptionalFalse
sa_iterationsMaximum simulated annealing iterations per route when apply_simulated_annealing=true (default: 1500).Optional1500
sa_initial_temperatureInitial simulated annealing temperature (> 0, default: 1.0).Optional1.0
sa_cooling_rateSimulated annealing cooling multiplier in (0, 1); default 0.995.Optional0.995
sa_seedOptional deterministic random seed for simulated annealing (default: 42).Optional42
outputOutput route line vector path.Required
assignment_outputOptional stop assignment point output with visit order/load diagnostics.Optional

Examples

Builds CVRP routes and writes route lines with deterministic local optimization and optional simulated annealing controls.

wbe.vehicle_routing_cvrp(apply_local_optimization=True, apply_simulated_annealing=False, demand_field='demand', depot_points='depots.gpkg', network='network.gpkg', objective_mode='minimize_distance', output='cvrp_routes.gpkg', priority_field='priority', sa_cooling_rate=0.995, sa_initial_temperature=1.0, sa_iterations=1500, sa_seed=42, stop_points='stops.gpkg', vehicle_capacity=100.0, vehicle_fixed_cost=0.0)

Project Links

WbW Homepage User Manual Learn More