Package org.goplanit.assignment.ltm.sltm
Class StaticLtmBushStrategy
- java.lang.Object
-
- org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
-
- org.goplanit.assignment.ltm.sltm.StaticLtmBushStrategy
-
public class StaticLtmBushStrategy extends StaticLtmAssignmentStrategy
Implementation to support a bush absed solution for sLTM- Author:
- markr
-
-
Constructor Summary
Constructors Constructor Description StaticLtmBushStrategy(IdGroupingToken idGroupingToken, long assignmentId, TransportModelNetwork transportModelNetwork, StaticLtmSettings settings, TrafficAssignmentComponentAccessee taComponents)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcreateInitialSolution(double[] initialLinkSegmentCosts)Create initial bushes, where for each origin the bush is initialised with the shortest path onlyprotected StaticLtmLoadingBushcreateNetworkLoading()Create bush based network loading implementationStringgetDescription()Description of the chosen sLTM strategy for equilibrationprotected StaticLtmLoadingBushgetLoading()The network loading to applybooleanperformIteration(Mode theMode, double[] costsToUpdate, int iterationIndex)Perform an iteration by: 1.-
Methods inherited from class org.goplanit.assignment.ltm.sltm.StaticLtmAssignmentStrategy
executeNetworkCostsUpdate, executeNetworkLoading, getAssignmentId, getIdGroupingToken, getInfrastructureNetwork, getOdDemands, getSettings, getTrafficAssignmentComponent, getTransportNetwork, setOdDemands, updateTimePeriod, verifyNetworkLoadingConvergenceProgress
-
-
-
-
Constructor Detail
-
StaticLtmBushStrategy
public StaticLtmBushStrategy(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
-
createNetworkLoading
protected StaticLtmLoadingBush createNetworkLoading()
Create bush based network loading implementation- Specified by:
createNetworkLoadingin classStaticLtmAssignmentStrategy- Returns:
- created loading implementation supporting bush-based approach
-
getLoading
protected StaticLtmLoadingBush getLoading()
The network loading to apply- Overrides:
getLoadingin classStaticLtmAssignmentStrategy- Returns:
- network loading
-
createInitialSolution
public void createInitialSolution(double[] initialLinkSegmentCosts)
Create initial bushes, where for each origin the bush is initialised with the shortest path only- Specified by:
createInitialSolutionin classStaticLtmAssignmentStrategy- Parameters:
initialLinkSegmentCosts- costs to use
-
performIteration
public boolean performIteration(Mode theMode, double[] costsToUpdate, int iterationIndex)
Perform an iteration by: 1. Identify new PASs and shift flow from affected bushes 2. Conduct another loading update based on adjusted PASs and bushes 3. Update Bushes by shifting flow between existing PASs 4. Conducting a loading to obtain network costs- Specified by:
performIterationin classStaticLtmAssignmentStrategy- Parameters:
theMode- to usecostsToUpdate- to place updated costs in (output)iterationIndex- we're at- Returns:
- true when iteration could be successfully completed, false otherwise
-
getDescription
public String getDescription()
Description of the chosen sLTM strategy for equilibration- Specified by:
getDescriptionin classStaticLtmAssignmentStrategy- Returns:
- String
-
-