From b16250bf465db4bd4609cc836871d772101d0ce5 Mon Sep 17 00:00:00 2001 From: Stefan Schroeder <4sschroeder@gmail.com> Date: Sat, 14 Jun 2014 13:11:09 +0200 Subject: [PATCH 1/2] modified departure-time settings of core.algorithm.recreate.VehicleTypeDependentJobInsertionCalculator --- .../recreate/VehicleTypeDependentJobInsertionCalculator.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/VehicleTypeDependentJobInsertionCalculator.java b/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/VehicleTypeDependentJobInsertionCalculator.java index 3d4413fe..7257607e 100644 --- a/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/VehicleTypeDependentJobInsertionCalculator.java +++ b/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/VehicleTypeDependentJobInsertionCalculator.java @@ -107,7 +107,9 @@ final class VehicleTypeDependentJobInsertionCalculator implements JobInsertionCo relevantVehicles.addAll(fleetManager.getAvailableVehicles()); } for(Vehicle v : relevantVehicles){ - double depTime = v.getEarliestDeparture(); + double depTime; + if(v == selectedVehicle) depTime = currentRoute.getDepartureTime(); + else depTime = v.getEarliestDeparture(); InsertionData iData = insertionCalculator.getInsertionData(currentRoute, jobToInsert, v, depTime, selectedDriver, bestKnownCost_); if(iData instanceof NoInsertionFound) { if(bestIData instanceof NoInsertionFound) bestIData = iData; From c7724cc87057d1972a424de84804571c05704649 Mon Sep 17 00:00:00 2001 From: Stefan Schroeder <4sschroeder@gmail.com> Date: Sat, 14 Jun 2014 13:12:41 +0200 Subject: [PATCH 2/2] set departure-time when returning InsertionData in core.algorithm.recreate.ServiceInsertionOnRouteLevelCalculator --- .../recreate/ServiceInsertionOnRouteLevelCalculator.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionOnRouteLevelCalculator.java b/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionOnRouteLevelCalculator.java index ef98c37a..e943e7f9 100644 --- a/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionOnRouteLevelCalculator.java +++ b/jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionOnRouteLevelCalculator.java @@ -303,7 +303,9 @@ final class ServiceInsertionOnRouteLevelCalculator implements JobInsertionCostsC } } if(best_insertion_index == InsertionData.NO_INDEX) return InsertionData.createEmptyInsertionData(); - return new InsertionData(best_insertion_costs, InsertionData.NO_INDEX, best_insertion_index, newVehicle, newDriver); + InsertionData insertionData = new InsertionData(best_insertion_costs, InsertionData.NO_INDEX, best_insertion_index, newVehicle, newDriver); + insertionData.setVehicleDepartureTime(start.getEndTime()); + return insertionData; } /**