From 614b8b5e0110fc78984ca37e0b1b06f6d516a190 Mon Sep 17 00:00:00 2001 From: Iris Date: Tue, 6 Mar 2018 12:03:21 +0200 Subject: [PATCH] state manager use vehicle index --- .../core/algorithm/state/StateManager.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/StateManager.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/StateManager.java index 9d9fbb63..3dfaeb3f 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/StateManager.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/algorithm/state/StateManager.java @@ -252,7 +252,7 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart */ public boolean hasActivityState(TourActivity act, Vehicle vehicle, StateId stateId) { if (act.getIndex() == 0) throw new IllegalStateException("activity index is 0. this should not be."); - return vehicleDependentActivityStates[act.getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] != null; + return vehicleDependentActivityStates[act.getIndex()][vehicle.getIndex()][stateId.getIndex()] != null; } /** @@ -275,9 +275,9 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart if (act.getIndex() < 0) return null; //act.getIndex() < 0 indicates that act is either Start (-1) or End (-2) T state; try { - state = type.cast(vehicleDependentActivityStates[act.getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()]); + state = type.cast(vehicleDependentActivityStates[act.getIndex()][vehicle.getIndex()][stateId.getIndex()]); } catch (ClassCastException e) { - Object state_class = vehicleDependentActivityStates[act.getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()]; + Object state_class = vehicleDependentActivityStates[act.getIndex()][vehicle.getIndex()][stateId.getIndex()]; throw getClassCastException(e, stateId, type.toString(), state_class.getClass().toString()); } return state; @@ -333,8 +333,8 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart @SuppressWarnings("UnusedDeclaration") public boolean hasRouteState(VehicleRoute route, Vehicle vehicle, StateId stateId) { if (!vehicleDependentRouteStateMap.containsKey(route)) return false; - return vehicleDependentRouteStateMap.get(route)[vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] != null; -// return vehicle_dependent_route_states[route.getActivities().get(0).getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] != null; + return vehicleDependentRouteStateMap.get(route)[vehicle.getIndex()][stateId.getIndex()] != null; +// return vehicle_dependent_route_states[route.getActivities().get(0).getIndex()][vehicle.getIndex()][stateId.getIndex()] != null; } /** @@ -355,18 +355,18 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart T state = null; if(isIndexedBased){ try { - state = type.cast(vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()]); + state = type.cast(vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getIndex()][stateId.getIndex()]); } catch (ClassCastException e) { - throw getClassCastException(e, stateId, type.toString(), vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()].getClass().toString()); + throw getClassCastException(e, stateId, type.toString(), vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getIndex()][stateId.getIndex()].getClass().toString()); } } else { try { if (vehicleDependentRouteStateMap.containsKey(route)) { - state = type.cast(vehicleDependentRouteStateMap.get(route)[vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()]); + state = type.cast(vehicleDependentRouteStateMap.get(route)[vehicle.getIndex()][stateId.getIndex()]); } } catch (ClassCastException e) { - throw getClassCastException(e, stateId, type.toString(), vehicleDependentRouteStateMap.get(route)[vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()].getClass().toString()); + throw getClassCastException(e, stateId, type.toString(), vehicleDependentRouteStateMap.get(route)[vehicle.getIndex()][stateId.getIndex()].getClass().toString()); } } return state; @@ -422,7 +422,7 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart } void putInternalTypedActivityState(TourActivity act, Vehicle vehicle, StateId stateId, T state) { - vehicleDependentActivityStates[act.getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] = state; + vehicleDependentActivityStates[act.getIndex()][vehicle.getIndex()][stateId.getIndex()] = state; } /** @@ -473,13 +473,13 @@ public class StateManager implements RouteAndActivityStateGetter, IterationStart void putTypedInternalRouteState(VehicleRoute route, Vehicle vehicle, StateId stateId, T state) { if (route.isEmpty()) return; if(isIndexedBased){ - vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] = state; + vehicleDependentRouteStatesArr[route.getVehicle().getIndex()][vehicle.getIndex()][stateId.getIndex()] = state; } else { if (!vehicleDependentRouteStateMap.containsKey(route)) { vehicleDependentRouteStateMap.put(route, new Object[nuVehicleTypeKeys][stateIndexCounter]); } - vehicleDependentRouteStateMap.get(route)[vehicle.getVehicleTypeIdentifier().getIndex()][stateId.getIndex()] = state; + vehicleDependentRouteStateMap.get(route)[vehicle.getIndex()][stateId.getIndex()] = state; } }