Uses of Class
org.goplanit.assignment.ltm.sltm.RootedLabelledBush
-
Packages that use RootedLabelledBush Package Description org.goplanit.algorithms.shortest Shortest Path algorithms for PlanItorg.goplanit.assignment.ltm.sltm org.goplanit.assignment.ltm.sltm.consumer org.goplanit.assignment.ltm.sltm.loading -
-
Uses of RootedLabelledBush in org.goplanit.algorithms.shortest
Methods in org.goplanit.algorithms.shortest with parameters of type RootedLabelledBush Modifier and Type Method Description static Function<DirectedVertex,Iterable<? extends EdgeSegment>>
ShortestPathSearchUtils. getEdgeSegmentsInDirectionLambda(RootedLabelledBush bush)
Based on the bush configuration we collect different edge segments from vertex (entry or exit segments) compatible with a (shortest) path search.static Function<DirectedVertex,Iterable<? extends EdgeSegment>>
ShortestPathSearchUtils. getEdgeSegmentsInDirectionLambda(RootedLabelledBush bush, boolean invertDirection)
Based on the bush configuration we collect different edge segments from vertex (entry or exit segments) compatible with a (shortest) path search.static Function<EdgeSegment,DirectedVertex>
ShortestPathSearchUtils. getVertexFromEdgeSegmentLambda(RootedLabelledBush bush)
Based on the bush configuration we collect different vertex direction from edge segment (up or downstream) compatible with a (shortest) path search.static Function<EdgeSegment,DirectedVertex>
ShortestPathSearchUtils. getVertexFromEdgeSegmentLambda(RootedLabelledBush bush, boolean invertDirection)
Based on the bush configuration we collect different vertex direction from edge segment (up or downstream) compatible with a (shortest) path search. -
Uses of RootedLabelledBush in org.goplanit.assignment.ltm.sltm
Subclasses of RootedLabelledBush in org.goplanit.assignment.ltm.sltm Modifier and Type Class Description class
DestinationBush
A destination bush is an (inverted) acyclic directed graph rooted at many origins going to a single destination representing all implicit paths along a network to the given destination.class
OriginBush
An origin bush is an acyclic directed graph comprising of implicit paths along a network rooted at a single origin to all destination with non-zero flow.Fields in org.goplanit.assignment.ltm.sltm with type parameters of type RootedLabelledBush Modifier and Type Field Description protected Map<RootedLabelledBush,Map<EdgeSegment,Pair<Double,Double>>>
PasFlowShiftExecutor. bushEntrySegmentS1S2SendingFlows
Track the desired sending flows for s1 and s2 per bush per entry segmentprotected Map<RootedLabelledBush,List<LinkedList<BushFlowLabel>>>
PasFlowShiftOriginBasedSmartLabelledExecutor. s1ReverseLabelChains
the label chains (list of list map value), per origin (map key) in reverse order (end to start) that traverse S1protected Map<RootedLabelledBush,List<LinkedList<BushFlowLabel>>>
PasFlowShiftOriginBasedSmartLabelledExecutor. s2ReverseLabelChains
the label chains (list of list map value), per origin (map key), in reverse order (end to start) that traverse S2Methods in org.goplanit.assignment.ltm.sltm that return RootedLabelledBush Modifier and Type Method Description abstract RootedLabelledBush
RootedLabelledBush. deepClone()
An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call.abstract RootedLabelledBush
RootedLabelledBush. shallowClone()
Create a shallow copy of this entityMethods in org.goplanit.assignment.ltm.sltm that return types with arguments of type RootedLabelledBush Modifier and Type Method Description Set<RootedLabelledBush>
Pas. getRegisteredBushes()
The registered bushesMethods in org.goplanit.assignment.ltm.sltm with parameters of type RootedLabelledBush Modifier and Type Method Description double
Pas. computeOverlappingAcceptedFlow(RootedLabelledBush bush, boolean lowCost, double[] linkSegmentFlowAcceptanceFactors)
Check if bush is overlapping with one of the alternatives, and if it is how much sending flow this sub-path currently representsstatic BushInitialiserHelper
BushInitialiserHelper. create(RootedLabelledBush bush, ACyclicSubGraph odDag, PasManager pasManager, boolean logNewPass)
Factory method for bush initialiserPas
PasManager. createAndRegisterNewPas(RootedLabelledBush bush, Collection<EdgeSegment> s1, Collection<EdgeSegment> s2)
create a new PAS for the given cheap and expensive paired alternative segments (subpaths) and register the origin bush on it that was responsible for creating itPas
PasManager. createAndRegisterNewPas(RootedLabelledBush bush, EdgeSegment[] s1, EdgeSegment[] s2)
create a new PAS for the given cheap and expensive paired alternative segments (subpaths) and register the origin bush on it that was responsible for creating itprotected void
PasFlowShiftDestinationBasedExecutor. executeBushFlowShift(RootedLabelledBush bush, EdgeSegment entrySegment, double bushFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush.protected abstract void
PasFlowShiftExecutor. executeBushFlowShift(RootedLabelledBush bush, EdgeSegment entrySegment, double bushEntrySegmentFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush.protected void
PasFlowShiftOriginBasedDestLabelledExecutor. executeBushFlowShift(RootedLabelledBush origin, EdgeSegment entrySegment, double bushFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush.protected void
PasFlowShiftOriginBasedSmartLabelledExecutor. executeBushFlowShift(RootedLabelledBush origin, EdgeSegment entrySegment, double bushFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush.Pas
PasManager. findFirstSuitableExistingPas(RootedLabelledBush bush, DirectedVertex referenceVertex, double[] flowAcceptanceFactors, double reducedCost)
find the first PAS which has the given merge vertex as end vertex and which if we would extend the bush with its least cost alternative would improve to the point it is considered effective enough compared to the upper bound (reduced cost) improvement provided as well as that the bush has sufficient flow on the high cost alternative of the PAS such that it can improve sufficiently by shifting flow towards the new low cost segment.boolean
Pas. hasRegisteredBush(RootedLabelledBush bush)
Verify if bush is registered on PASprotected void
StaticLtmDestinationBushStrategy. 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 usedprotected void
StaticLtmOriginBushDestLabelledStrategy. initialiseBush(RootedLabelledBush bush, Zoning zoning, OdDemands odDemands, ShortestBushGeneralised shortestBushAlgorithm)
Loop over all destinations for bush' origin and apply demand proportionally across available shortest path(s) based on given demand and shortest path algorithm usedboolean
PasManager. isRegisteredOnAnyPasAtReferenceVertex(RootedLabelledBush bush, DirectedVertex referenceVertex)
Verify if any PAS at given reference vertex is used by this origin bush.boolean
Pas. registerBush(RootedLabelledBush bush)
Register origin on the PASvoid
Pas. removeBush(RootedLabelledBush bush)
Remove bush from this PASMethod parameters in org.goplanit.assignment.ltm.sltm with type arguments of type RootedLabelledBush Modifier and Type Method Description void
Pas. removeBushes(List<RootedLabelledBush> bushes)
Remove bushes from this PASConstructors in org.goplanit.assignment.ltm.sltm with parameters of type RootedLabelledBush Constructor Description BushInitialiserHelper(RootedLabelledBush bush, ACyclicSubGraph odDag, PasManager pasManager, boolean logNewPass)
ConstructorRootedLabelledBush(RootedLabelledBush bush, boolean deepCopy)
Copy constructor -
Uses of RootedLabelledBush in org.goplanit.assignment.ltm.sltm.consumer
Methods in org.goplanit.assignment.ltm.sltm.consumer with parameters of type RootedLabelledBush Modifier and Type Method Description void
RootedBushFlowUpdateConsumerImpl. accept(RootedLabelledBush bush)
Update(increase) the (network) flows based on the bush at hand as dictated by the data configuration -
Uses of RootedLabelledBush in org.goplanit.assignment.ltm.sltm.loading
Methods in org.goplanit.assignment.ltm.sltm.loading that return types with arguments of type RootedLabelledBush Modifier and Type Method Description protected BushFlowUpdateConsumer<RootedLabelledBush>
StaticLtmLoadingBushRooted. createBushFlowUpdateConsumer(boolean updateTurnAcceptedFlows, boolean updateSendingFlows, boolean updateOutflows)
TODO: Create factory class for this
-