Experimental

Builds paired pickup-delivery routes with precedence and capacity constraints using a deterministic nearest-neighbour baseline.

vector network routing optimization pickup-delivery

## Parameters

Name | Description | Required | Default
--- | --- | --- | ---
`network` | Input line network layer (validated for contract parity). | Required | `network.gpkg`
`depot_points` | Depot point layer; first point is used as the active depot in this baseline implementation. | Required | `depots.gpkg`
`stop_points` | Stop point layer containing paired pickup and delivery records. | Required | `stops.gpkg`
`request_id_field` | Request identifier field in stop_points used to pair pickup and delivery records (default: request_id). | Optional | `request_id`
`stop_type_field` | Stop type field in stop_points containing pickup/delivery labels (default: stop_type). | Optional | `stop_type`
`demand_field` | Numeric demand field in stop_points; pickup demand is loaded and delivered demand is ignored (default: demand). | Optional | `demand`
`vehicle_capacity` | Per-vehicle capacity (> 0). | Required | `100.0`
`max_vehicles` | Optional maximum number of vehicles/routes to construct. | Optional | —
`output` | Output route line vector path. | Required | —
`assignment_output` | Optional stop assignment point output with request and precedence diagnostics. | Optional | —

## Examples

Builds baseline pickup-delivery routes and writes route lines.

    wbe.vehicle_routing_pickup_delivery(demand_field='demand', depot_points='depots.gpkg', network='network.gpkg', output='pickup_delivery_routes.gpkg', request_id_field='request_id', stop_points='stops.gpkg', stop_type_field='stop_type', vehicle_capacity=100.0)

## Project Links

WbW Homepage User Manual Support WbW