Multidimensional vehicle loads and capacities for Demand Responsive Transport in MATSim
Tarek Chouaki, Sebastian Hörl
13 June 2025
MATSim User Meeting 2025
Introduction
Existing work
DRT Algorithm
Pickup R2
Pickup R1
Dropoff R1
Dropoff R2
Modifications
int
Modifications
Modifications
Initializes the load of a vehicle (= empty)
Modifications
Set up the load of a request or the capacity of a vehicle
Modifications
Check whether a request can be inserted given the current load of a vehicle along the schedule
requestLoad.fitsIn(currentVehicleCapacity)
Modifications
Calculate the load after picking up a request
newOccupancy = occupancy.add(request.getLoad())
Modifications
Calculate the load after dropping off a request
newOccupancy = occupancy.subtract(request.getLoad())
Implementations
fitsIn:
Usage
Usage
A list of slot names can be provided in configuration when adding the load parameter set to the DRT mode configuration.
Usage
Option 1: As a single string-based attribute
Option 2: As individual attributes per slot
Option 3: If no attributes are specified, one agent equals one capacity unit in the slot that is by default configured as "passengers"
Usage
fleet.xml
Usage
Option 1: As a single string-based attribute
Option 2: As individual attributes per slot
Usage
Bonus: Capacity changes
Impact on performance
Example
Example
Questions?
tarek.chouaki@irt-systemx.fr