Package org.goplanit.assignment.ltm.sltm
Class StaticLtmDestinationBushStrategy
- java.lang.Object
-
- org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
-
- org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase<RootedLabelledBush>
-
- org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyRootLabelled
-
- org.goplanit.assignment.ltm.sltm.StaticLtmDestinationBushStrategy
-
public class StaticLtmDestinationBushStrategy extends StaticLtmBushStrategyRootLabelled
Implementation to support a destination-based bush solution for sLTM.- Author:
- markr
-
-
Field Summary
-
Fields inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase
bushes, equalFlowDistributedPass, pasManager
-
-
Constructor Summary
Constructors Constructor Description StaticLtmDestinationBushStrategy(IdGroupingToken idGroupingToken, long assignmentId, TransportModelNetwork transportModelNetwork, StaticLtmSettings settings, TrafficAssignmentComponentAccessee taComponents)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DestinationBush[]
createEmptyBushes()
Create destination bushes for all destination with non-zero flow from any origin, remaining entries in raw array will be null and they are placed in the array by zone idprotected PasFlowShiftExecutor
createPasFlowShiftExecutor(Pas pas, StaticLtmSettings settings)
String
getDescription()
Description of the chosen sLTM strategy for equilibrationprotected void
initialiseBush(RootedLabelledBush bush, Zoning zoning, OdDemands odDemands, ShortestBushGeneralised shortestBushAlgorithm)
Loop over all origins for bush' destination and apply demand proportionally across available shortest path(s) based on given demand and shortest path algorithm used-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyRootLabelled
createNetworkLoading, getLoading, updateBushPass
-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase
createInitialSolution, createNetworkShortestBushAlgo, createNetworkShortestPathAlgo, hasConverged, initialiseBushes, isSolutionFlowEntropyMaximised, performIteration, syncBushFlowsToNetworkFlows, updateGap
-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
executeNetworkCostsUpdate, executeNetworkLoading, findCentroidVertex, getAssignmentId, getIdGroupingToken, getInfrastructureNetwork, getOdDemands, getSettings, getTrafficAssignmentComponent, getTransportNetwork, setOdDemands, updateTimePeriod, verifyNetworkLoadingConvergenceProgress
-
-
-
-
Constructor Detail
-
StaticLtmDestinationBushStrategy
public StaticLtmDestinationBushStrategy(IdGroupingToken idGroupingToken, long assignmentId, TransportModelNetwork transportModelNetwork, StaticLtmSettings settings, TrafficAssignmentComponentAccessee taComponents)
Constructor- Parameters:
idGroupingToken
- to use for internal managed idsassignmentId
- of parent assignmenttransportModelNetwork
- to usesettings
- to usetaComponents
- to use for access to user configured assignment components
-
-
Method Detail
-
initialiseBush
protected void initialiseBush(RootedLabelledBush bush, Zoning zoning, OdDemands odDemands, ShortestBushGeneralised shortestBushAlgorithm)
Loop over all origins for bush' destination and apply demand proportionally across available shortest path(s) based on given demand and shortest path algorithm used- Specified by:
initialiseBush
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Parameters:
bush
- to usezoning
- to useodDemands
- to useshortestBushAlgorithm
- to use
-
createEmptyBushes
protected DestinationBush[] createEmptyBushes()
Create destination bushes for all destination with non-zero flow from any origin, remaining entries in raw array will be null and they are placed in the array by zone id- Specified by:
createEmptyBushes
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Returns:
- created destination bushes
-
createPasFlowShiftExecutor
protected PasFlowShiftExecutor createPasFlowShiftExecutor(Pas pas, StaticLtmSettings settings)
- Specified by:
createPasFlowShiftExecutor
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Parameters:
pas
- to create flow shift executor forsettings
- to use- Returns:
- created executor
-
getDescription
public String getDescription()
Description of the chosen sLTM strategy for equilibration- Specified by:
getDescription
in classStaticLtmAssignmentStrategy
- Returns:
- String
-
-