diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/box/Jsprit.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/box/Jsprit.java index 6c056e74..1b20a9da 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/box/Jsprit.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/box/Jsprit.java @@ -557,6 +557,7 @@ public class Jsprit { vra.addListener(noiseConfigurator); vra.addListener(noise); vra.addListener(clusters); + vra.addListener(new BreakScheduling(vrp,stateManager,constraintManager)); // vra.addListener(new RuinBreaks()); handleExecutorShutdown(vra); diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/recreate/BreakScheduling.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/recreate/BreakScheduling.java index c1f21907..a0fd66a4 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/recreate/BreakScheduling.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/recreate/BreakScheduling.java @@ -34,13 +34,11 @@ public class BreakScheduling implements JobInsertedListener, RuinListener { @Override public void informJobInserted(Job job2insert, VehicleRoute inRoute, double additionalCosts, double additionalTime) { Break aBreak = inRoute.getVehicle().getBreak(); -// if(job2insert == aBreak) return; if(aBreak != null){ boolean removed = inRoute.getTourActivities().removeJob(aBreak); if(removed){ stateManager.removed(aBreak,inRoute); stateManager.reCalculateStates(inRoute); - //updateRoute --> alles wichtiges states } if(inRoute.getEnd().getArrTime() > aBreak.getTimeWindow().getEnd()){ InsertionData iData = breakInsertionCalculator.getInsertionData(inRoute, aBreak, inRoute.getVehicle(), inRoute.getDepartureTime(), inRoute.getDriver(), Double.MAX_VALUE); @@ -48,12 +46,9 @@ public class BreakScheduling implements JobInsertedListener, RuinListener { for(Event e : iData.getEvents()){ eventListeners.inform(e); } - //inform job inserted stateManager.informJobInserted(aBreak,inRoute,0,0); } } - - } } diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/VehicleRoutingProblem.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/VehicleRoutingProblem.java index 645595dd..b39666db 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/VehicleRoutingProblem.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/VehicleRoutingProblem.java @@ -583,6 +583,7 @@ public class VehicleRoutingProblem { logger.info("setup problem: {}", this); } + @Override public String toString() { return "[fleetSize=" + fleetSize + "][#jobs=" + jobs.size() + "][#vehicles=" + vehicles.size() + "][#vehicleTypes=" + vehicleTypes.size() + "][" +