basics.costs
Interface VehicleRoutingActivityCosts

All Known Implementing Classes:
DefaultVehicleRoutingActivityCosts

public interface VehicleRoutingActivityCosts

Interface for overall routing and operation costs.

This calculates activity and leg-based costs. If you want to consider for example costs incurred by missed time-windows, you can do it here.

Author:
schroeder

Nested Class Summary
static interface VehicleRoutingActivityCosts.Parameter
           
static class VehicleRoutingActivityCosts.Time
           
 
Method Summary
 double getActivityCost(TourActivity tourAct, double arrivalTime, Driver driver, Vehicle vehicle)
          Calculates and returns the activity cost at tourAct.
 

Method Detail

getActivityCost

double getActivityCost(TourActivity tourAct,
                       double arrivalTime,
                       Driver driver,
                       Vehicle vehicle)
Calculates and returns the activity cost at tourAct.

Here waiting-times, service-times and missed time-windows can be considered.

Parameters:
tourAct -
arrivalTime - is actually the arrival time at this tourActivity, which must not nessecarrily be the operation start time. If the theoretical earliest operation start time at this activity is later than actualStartTime, the driver must wait at this activity.
driver - TODO
vehicle - TODO
earliestStartTime, - this is the practical earliest operation start time which considers also previous activities.
latestStartTime, - this is the practical latest operation start time which consider also future activities in the tour. if earliestStartTime > latestStartTime activity operations cannot be conducted within the given time-window.
Returns: