Package org.goplanit.assignment.ltm.sltm
Class StaticLtmBushStrategyRootLabelled
- java.lang.Object
-
- org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
-
- org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase<RootedLabelledBush>
-
- org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyRootLabelled
-
- Direct Known Subclasses:
StaticLtmDestinationBushStrategy
,StaticLtmOriginBushDestLabelledStrategy
public abstract class StaticLtmBushStrategyRootLabelled extends StaticLtmBushStrategyBase<RootedLabelledBush>
Base implementation to support a rooted bush based solution for sLTM- Author:
- markr
-
-
Field Summary
-
Fields inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase
bushes, equalFlowDistributedPass, pasManager
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
StaticLtmBushStrategyRootLabelled(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 StaticLtmLoadingBushRooted
createNetworkLoading()
Create bush based network loading implementationprotected StaticLtmLoadingBushRooted
getLoading()
The network loading to applyprotected Collection<Pas>
updateBushPass(double[] linkSegmentCosts)
Match (new) PASs to improve existing bushes (origin) at hand.-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategyBase
createEmptyBushes, createInitialSolution, createNetworkShortestBushAlgo, createNetworkShortestPathAlgo, createPasFlowShiftExecutor, hasConverged, initialiseBush, initialiseBushes, isSolutionFlowEntropyMaximised, performIteration, syncBushFlowsToNetworkFlows, updateGap
-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
executeNetworkCostsUpdate, executeNetworkLoading, findCentroidVertex, getAssignmentId, getDescription, getIdGroupingToken, getInfrastructureNetwork, getOdDemands, getSettings, getTrafficAssignmentComponent, getTransportNetwork, setOdDemands, updateTimePeriod, verifyNetworkLoadingConvergenceProgress
-
-
-
-
Constructor Detail
-
StaticLtmBushStrategyRootLabelled
protected StaticLtmBushStrategyRootLabelled(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
-
updateBushPass
protected Collection<Pas> updateBushPass(double[] linkSegmentCosts) throws PlanItException
Match (new) PASs to improve existing bushes (origin) at hand.Note that in order to extend the bushes we run a shortest path rooted at each bush's origin, since this is costly, we utilise the result also to update the min-cost gap for each OD which requires the min-cost from each origin to each destination which is what the shortest path trees provide. The updating of the network's actual costs occurs elsewhere
- Specified by:
updateBushPass
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Parameters:
linkSegmentCosts
- to use to construct min-max path three rooted at each bush's origin- Returns:
- newly created PASs (empty if no new PASs were created)
- Throws:
PlanItException
- thrown if error
-
createNetworkLoading
protected StaticLtmLoadingBushRooted createNetworkLoading()
Create bush based network loading implementation- Specified by:
createNetworkLoading
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Returns:
- created loading implementation supporting bush-based approach
-
getLoading
protected StaticLtmLoadingBushRooted getLoading()
The network loading to apply- Overrides:
getLoading
in classStaticLtmBushStrategyBase<RootedLabelledBush>
- Returns:
- network loading
-
-