Class JobInsertionCostsCalculatorBuilder
java.lang.Object
com.graphhopper.jsprit.core.algorithm.recreate.JobInsertionCostsCalculatorBuilder
-
Constructor Summary
ConstructorsConstructorDescriptionJobInsertionCostsCalculatorBuilder(List<InsertionListener> insertionListeners, List<VehicleRoutingAlgorithmListeners.PrioritizedVRAListener> algorithmListeners) Constructs the builder. -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds the jobInsertionCalculator.considerFixedCosts(double weightOfFixedCosts) Deprecated.This method no longer has any effect.setActivityInsertionCostsCalculator(ActivityInsertionCostsCalculator activityInsertionCostsCalculator) setAllowVehicleSwitch(boolean allowVehicleSwitch) setBreakCalculatorFactory(JobInsertionCostsCalculatorFactory breakCalculatorFactory) setConstraintManager(ConstraintManager constraintManager) setLocalLevel(boolean addDefaultCostCalc) Sets a flag to build a calculator based on local calculations.setRouteLevel(int forwardLooking, int memory, boolean addDefaultMarginalCostCalc) Sets a flag to build a calculator that evaluates job insertion on route-level.setServiceCalculatorFactory(JobInsertionCostsCalculatorFactory serviceCalculatorFactory) setShipmentCalculatorFactory(JobInsertionCostsCalculatorFactory shipmentCalculatorFactory) setStateManager(RouteAndActivityStateGetter stateManager) Sets activityStates.setVehicleFleetManager(VehicleFleetManager fleetManager) Sets fleetManager.setVehicleRoutingProblem(VehicleRoutingProblem vehicleRoutingProblem) Sets routingProblem.
-
Constructor Details
-
JobInsertionCostsCalculatorBuilder
public JobInsertionCostsCalculatorBuilder(List<InsertionListener> insertionListeners, List<VehicleRoutingAlgorithmListeners.PrioritizedVRAListener> algorithmListeners) Constructs the builder.Some calculators require information from the overall algorithm or the higher-level insertion procedure. Thus listeners inform them. These listeners are cached in the according list and can thus be added when its time to add them.
- Parameters:
insertionListeners-algorithmListeners-
-
-
Method Details
-
setShipmentCalculatorFactory
public JobInsertionCostsCalculatorBuilder setShipmentCalculatorFactory(JobInsertionCostsCalculatorFactory shipmentCalculatorFactory) -
setServiceCalculatorFactory
public JobInsertionCostsCalculatorBuilder setServiceCalculatorFactory(JobInsertionCostsCalculatorFactory serviceCalculatorFactory) -
setBreakCalculatorFactory
public JobInsertionCostsCalculatorBuilder setBreakCalculatorFactory(JobInsertionCostsCalculatorFactory breakCalculatorFactory) -
setStateManager
Sets activityStates. MUST be set.- Parameters:
stateManager-- Returns:
-
setVehicleRoutingProblem
public JobInsertionCostsCalculatorBuilder setVehicleRoutingProblem(VehicleRoutingProblem vehicleRoutingProblem) Sets routingProblem. MUST be set.- Parameters:
vehicleRoutingProblem-- Returns:
-
setVehicleFleetManager
Sets fleetManager. MUST be set.- Parameters:
fleetManager-- Returns:
-
setLocalLevel
Sets a flag to build a calculator based on local calculations.Insertion of a job and job-activity is evaluated based on the previous and next activity.
- Parameters:
addDefaultCostCalc-
-
setActivityInsertionCostsCalculator
public JobInsertionCostsCalculatorBuilder setActivityInsertionCostsCalculator(ActivityInsertionCostsCalculator activityInsertionCostsCalculator) -
setRouteLevel
public JobInsertionCostsCalculatorBuilder setRouteLevel(int forwardLooking, int memory, boolean addDefaultMarginalCostCalc) Sets a flag to build a calculator that evaluates job insertion on route-level.- Parameters:
forwardLooking-memory-addDefaultMarginalCostCalc-
-
considerFixedCosts
Deprecated.This method no longer has any effect. Fixed costs are now handled viaIncreasingAbsoluteFixedCostsandDecreasingRelativeFixedCostswhich should be added as soft route constraints to theConstraintManager. SeeJsprit.Builderfor an example using FIXED_COST_PARAM.- Parameters:
weightOfFixedCosts- the weight (ignored)- Returns:
- this builder
-
build
Builds the jobInsertionCalculator.- Returns:
- jobInsertionCalculator.
- Throws:
IllegalStateException- if vrp == null or activityStates == null or fleetManager == null.
-
setConstraintManager
-
setAllowVehicleSwitch
-