Class AbstractInsertionCalculator
java.lang.Object
com.graphhopper.jsprit.core.algorithm.recreate.AbstractInsertionCalculator
- All Implemented Interfaces:
JobInsertionCostsCalculator
- Direct Known Subclasses:
ShipmentInsertionCalculatorFlex
public abstract class AbstractInsertionCalculator
extends Object
implements JobInsertionCostsCalculator
Enhanced AbstractInsertionCalculator with more common functionality moved up
to simplify implementation of concrete calculators.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddActivitiesAndVehicleSwitch(InsertionData insertionData, VehicleRoute route, Vehicle vehicle, TourActivity firstActivity, int firstActivityIndex, TourActivity secondActivity, int secondActivityIndex, double departureTime) Adds events to insertion data for a job that requires two activities (like Shipment)protected voidaddActivityAndVehicleSwitch(InsertionData insertionData, VehicleRoute route, Vehicle vehicle, TourActivity activity, int activityIndex, double departureTime) Adds events to insertion data for a job that requires a single activity (like Service)protected InsertionDatacheckRouteConstraints(JobInsertionContext insertionContext, ConstraintManager constraintManager) Check if route constraints are fulfilledprotected EndcreateEndActivity(Vehicle vehicle) Creates an End activity for a vehicleprotected InsertionDatacreateNoInsertionFoundResult(Collection<HardConstraint> failedConstraints) Creates a NoInsertionFound result with failed constraint informationprotected StartcreateStartActivity(Vehicle vehicle, double departureTime) Creates a Start activity for a vehicle at a given departure timeprotected HardActivityConstraint.ConstraintsStatusfulfilled(JobInsertionContext iFacts, TourActivity prevAct, TourActivity newAct, TourActivity nextAct, double prevActDepTime, Collection<HardConstraint> failedActivityConstraints, ConstraintManager constraintManager) Check if activity constraints are fulfilledMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.graphhopper.jsprit.core.algorithm.recreate.JobInsertionCostsCalculator
getAllInsertionPositions, getAllInsertionPositions, getInsertionData
-
Constructor Details
-
AbstractInsertionCalculator
public AbstractInsertionCalculator()
-
-
Method Details
-
checkRouteConstraints
protected InsertionData checkRouteConstraints(JobInsertionContext insertionContext, ConstraintManager constraintManager) Check if route constraints are fulfilled -
fulfilled
protected HardActivityConstraint.ConstraintsStatus fulfilled(JobInsertionContext iFacts, TourActivity prevAct, TourActivity newAct, TourActivity nextAct, double prevActDepTime, Collection<HardConstraint> failedActivityConstraints, ConstraintManager constraintManager) Check if activity constraints are fulfilled -
createStartActivity
Creates a Start activity for a vehicle at a given departure time -
createEndActivity
Creates an End activity for a vehicle -
createNoInsertionFoundResult
Creates a NoInsertionFound result with failed constraint information -
addActivitiesAndVehicleSwitch
protected void addActivitiesAndVehicleSwitch(InsertionData insertionData, VehicleRoute route, Vehicle vehicle, TourActivity firstActivity, int firstActivityIndex, TourActivity secondActivity, int secondActivityIndex, double departureTime) Adds events to insertion data for a job that requires two activities (like Shipment) -
addActivityAndVehicleSwitch
protected void addActivityAndVehicleSwitch(InsertionData insertionData, VehicleRoute route, Vehicle vehicle, TourActivity activity, int activityIndex, double departureTime) Adds events to insertion data for a job that requires a single activity (like Service)
-