I need to be able to have an initial “setup” time when a vehicle arrives at any site. Think of it as finding a car park or dealing with the paper work. It is kind of an “activity” level constraint although it only occurs on the first activity on the site if multiple activities are scheduled. So regardless of how many activities are scheduled for that vehicle at that site at that time there will be just one setup time added at the start.
This was approached by @braktar in “Setup time at activity level” but it never made it into the live version.
Would it be possible for that approach to added to the main version please @stefan . Alternatively is there another way to provide for this ?
Another of performing this, is to edit the time matrix in order to simulate this extra time between two points which are not at the same position.
I had a similar problem and did what @braktar suggested.
You can even manage more complext scenarios with it like having a
- Preparation time before tour start
- Rework time at tour end
- Load / unload time at depots
- Setup times at services (individually or generally)
Create your own AbstractForwardVehicleRoutingTransportCosts. Have a look at the FastVehicleRoutingTransportCostsMatrix.java for a high performant implementation. Overwrite the getTransportTime / getTransportCost methods and add your specific times on top depening on the current Location.