From afead682433cec6e52d2ea78bacbafd1997a4372 Mon Sep 17 00:00:00 2001 From: Iris Date: Tue, 6 Mar 2018 13:40:35 +0200 Subject: [PATCH] Update max time in vehicle use vehicle index --- .../algorithm/state/UpdateMaxTimeInVehicle.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/UpdateMaxTimeInVehicle.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/UpdateMaxTimeInVehicle.java index 9ae37d36..a5659c14 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/UpdateMaxTimeInVehicle.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/UpdateMaxTimeInVehicle.java @@ -93,7 +93,7 @@ public class UpdateMaxTimeInVehicle implements StateUpdater, ActivityVisitor{ vehicles = vehiclesToUpdate.get(route); this.route = route; for(Vehicle v : vehicles){ - int vehicleIndex = v.getVehicleTypeIdentifier().getIndex(); + int vehicleIndex = v.getIndex(); openPickupEndTimesPerVehicle.put(vehicleIndex, new HashMap()); slackTimesPerVehicle.put(vehicleIndex, new HashMap()); actStartTimesPerVehicle.put(vehicleIndex, new HashMap()); @@ -108,10 +108,10 @@ public class UpdateMaxTimeInVehicle implements StateUpdater, ActivityVisitor{ double maxTime = getMaxTimeInVehicle(activity); for(Vehicle v : vehicles) { - int vehicleIndex = v.getVehicleTypeIdentifier().getIndex(); + int vehicleIndex = v.getIndex(); Location prevActLocation = prevActLocations[vehicleIndex]; - double prevActEndTime = prevActEndTimes[v.getVehicleTypeIdentifier().getIndex()]; - double activityArrival = prevActEndTimes[v.getVehicleTypeIdentifier().getIndex()] + transportTime.getTransportTime(prevActLocation,activity.getLocation(),prevActEndTime,route.getDriver(),v); + double prevActEndTime = prevActEndTimes[v.getIndex()]; + double activityArrival = prevActEndTimes[v.getIndex()] + transportTime.getTransportTime(prevActLocation,activity.getLocation(),prevActEndTime,route.getDriver(),v); double activityStart = Math.max(activityArrival,activity.getTheoreticalEarliestOperationStartTime()); memorizeActStart(activity,v,activityStart); double activityEnd = activityStart + activityCosts.getActivityDuration(prevTourActivity, activity, activityArrival, route.getDriver(), v); @@ -145,13 +145,13 @@ public class UpdateMaxTimeInVehicle implements StateUpdater, ActivityVisitor{ } private void memorizeActStart(TourActivity activity, Vehicle v, double activityStart) { - actStartTimesPerVehicle.get(v.getVehicleTypeIdentifier().getIndex()).put(activity, activityStart); + actStartTimesPerVehicle.get(v.getIndex()).put(activity, activityStart); } @Override public void finish() { for(Vehicle v : vehicles) { - int vehicleIndex = v.getVehicleTypeIdentifier().getIndex(); + int vehicleIndex = v.getIndex(); //!!! open routes !!! double routeEnd; @@ -194,7 +194,7 @@ public class UpdateMaxTimeInVehicle implements StateUpdater, ActivityVisitor{ public void finish(List activities, Job ignore) { for (Vehicle v : vehicles) { - int vehicleIndex = v.getVehicleTypeIdentifier().getIndex(); + int vehicleIndex = v.getIndex(); //!!! open routes !!! double routeEnd; @@ -236,7 +236,7 @@ public class UpdateMaxTimeInVehicle implements StateUpdater, ActivityVisitor{ } private double actStart(TourActivity act, Vehicle v) { - return actStartTimesPerVehicle.get(v.getVehicleTypeIdentifier().getIndex()).get(act); + return actStartTimesPerVehicle.get(v.getIndex()).get(act); } private double minSlackTime(Map openDeliveries) {