algorithms
Class StateManagerImpl

java.lang.Object
  extended by algorithms.StateManagerImpl
All Implemented Interfaces:
StateManager, InsertionEndsListener, InsertionListener, InsertionStartsListener, IterationStartsListener, JobInsertedListener, RuinListener, SearchStrategyModuleListener, VehicleRoutingAlgorithmListener

public class StateManagerImpl
extends java.lang.Object
implements StateManager, IterationStartsListener, RuinListener, InsertionStartsListener, JobInsertedListener, InsertionEndsListener


Nested Class Summary
static class StateManagerImpl.StateImpl
           
 
Nested classes/interfaces inherited from interface algorithms.StateManager
StateManager.State, StateManager.StateId
 
Constructor Summary
StateManagerImpl()
           
 
Method Summary
 void addActivityVisitor(ActivityVisitor activityVistor)
          Adds an activityVisitor.
 void addActivityVisitor(ReverseActivityVisitor activityVistor)
          Adds an reverseActivityVisitor.
 void addListener(InsertionListener insertionListener)
           
 void addListener(RuinListener ruinListener)
           
 void addRouteVisitor(RouteVisitor routeVisitor)
           
 void clear()
           
 StateManager.State getActivityState(TourActivity act, StateManager.StateId stateId)
           
 StateManager.State getRouteState(VehicleRoute route, StateManager.StateId stateId)
           
 void informInsertionEnds(java.util.Collection<VehicleRoute> vehicleRoutes)
           
 void informInsertionStarts(java.util.Collection<VehicleRoute> vehicleRoutes, java.util.Collection<Job> unassignedJobs)
           
 void informIterationStarts(int i, VehicleRoutingProblem problem, java.util.Collection<VehicleRoutingProblemSolution> solutions)
           
 void informJobInserted(Job job2insert, VehicleRoute inRoute, double additionalCosts, double additionalTime)
           
 void putActivityState(TourActivity act, StateManager.StateId stateId, StateManager.State state)
           
 void putRouteState(VehicleRoute route, StateManager.StateId stateId, StateManager.State state)
           
 void removed(Job job, VehicleRoute fromRoute)
          informs if a Job has been removed from a VehicleRoute.
 void removeListener(InsertionListener insertionListener)
           
 void removeListener(RuinListener ruinListener)
           
 void ruinEnds(java.util.Collection<VehicleRoute> routes, java.util.Collection<Job> unassignedJobs)
          informs about ruin-end.
 void ruinStarts(java.util.Collection<VehicleRoute> routes)
          informs about ruin-start.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StateManagerImpl

public StateManagerImpl()
Method Detail

addListener

public void addListener(RuinListener ruinListener)

removeListener

public void removeListener(RuinListener ruinListener)

addListener

public void addListener(InsertionListener insertionListener)

removeListener

public void removeListener(InsertionListener insertionListener)

clear

public void clear()

getActivityState

public StateManager.State getActivityState(TourActivity act,
                                           StateManager.StateId stateId)
Specified by:
getActivityState in interface StateManager

putActivityState

public void putActivityState(TourActivity act,
                             StateManager.StateId stateId,
                             StateManager.State state)

getRouteState

public StateManager.State getRouteState(VehicleRoute route,
                                        StateManager.StateId stateId)
Specified by:
getRouteState in interface StateManager

putRouteState

public void putRouteState(VehicleRoute route,
                          StateManager.StateId stateId,
                          StateManager.State state)

informJobInserted

public void informJobInserted(Job job2insert,
                              VehicleRoute inRoute,
                              double additionalCosts,
                              double additionalTime)
Specified by:
informJobInserted in interface JobInsertedListener

informInsertionStarts

public void informInsertionStarts(java.util.Collection<VehicleRoute> vehicleRoutes,
                                  java.util.Collection<Job> unassignedJobs)
Specified by:
informInsertionStarts in interface InsertionStartsListener

addActivityVisitor

public void addActivityVisitor(ActivityVisitor activityVistor)
Adds an activityVisitor.

This visitor visits all activities in a route subsequently in two cases. First, if insertionStart (after ruinStrategies have removed activities from routes) and, second, if a job has been inserted and thus if a route has changed.

Parameters:
activityVistor -

addActivityVisitor

public void addActivityVisitor(ReverseActivityVisitor activityVistor)
Adds an reverseActivityVisitor.

This reverseVisitor visits all activities in a route subsequently (starting from the end of the route) in two cases. First, if insertionStart (after ruinStrategies have removed activities from routes) and, second, if a job has been inserted and thus if a route has changed.

Parameters:
reverseActivityVistor -

addRouteVisitor

public void addRouteVisitor(RouteVisitor routeVisitor)

informIterationStarts

public void informIterationStarts(int i,
                                  VehicleRoutingProblem problem,
                                  java.util.Collection<VehicleRoutingProblemSolution> solutions)
Specified by:
informIterationStarts in interface IterationStartsListener

ruinStarts

public void ruinStarts(java.util.Collection<VehicleRoute> routes)
Description copied from interface: RuinListener
informs about ruin-start.

Specified by:
ruinStarts in interface RuinListener

ruinEnds

public void ruinEnds(java.util.Collection<VehicleRoute> routes,
                     java.util.Collection<Job> unassignedJobs)
Description copied from interface: RuinListener
informs about ruin-end.

Specified by:
ruinEnds in interface RuinListener

removed

public void removed(Job job,
                    VehicleRoute fromRoute)
Description copied from interface: RuinListener
informs if a Job has been removed from a VehicleRoute.

Specified by:
removed in interface RuinListener

informInsertionEnds

public void informInsertionEnds(java.util.Collection<VehicleRoute> vehicleRoutes)
Specified by:
informInsertionEnds in interface InsertionEndsListener