Class Lmrs
java.lang.Object
org.opentrafficsim.road.gtu.lane.tactical.AbstractLaneBasedTacticalPlanner
org.opentrafficsim.road.gtu.lane.tactical.lmrs.AbstractIncentivesTacticalPlanner
org.opentrafficsim.road.gtu.lane.tactical.lmrs.Lmrs
- All Implemented Interfaces:
Serializable
,TacticalPlanner<LaneBasedGtu,
,LanePerception> Blockable
,DesireBased
,LaneBasedTacticalPlanner
,Synchronizable
public class Lmrs
extends AbstractIncentivesTacticalPlanner
implements DesireBased, Synchronizable, Blockable
Implementation of the LMRS (Lane change Model with Relaxation and Synchronization). See Schakel, W.J., Knoop, V.L., and Van
Arem, B. (2012), LMRS: Integrated Lane Change Model
with Relaxation and Synchronization, Transportation Research Records: Journal of the Transportation Research Board, No.
2316, pp. 47-57. Note in the official versions of TRB and TRR some errors appeared due to the typesetting of the papers (not
in the preprint provided here). A list of errata for the official versions is found
here.
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
- Author:
- Wouter Schakel
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.opentrafficsim.road.gtu.lane.tactical.Synchronizable
Synchronizable.State
-
Field Summary
Fields inherited from class org.opentrafficsim.road.gtu.lane.tactical.lmrs.AbstractIncentivesTacticalPlanner
ACCELERATION, MANDATORY, VOLUNTARY
Fields inherited from class org.opentrafficsim.road.gtu.lane.tactical.AbstractLaneBasedTacticalPlanner
DT, LOOKAHEAD, TACTICAL_PLANNER
-
Constructor Summary
ConstructorDescriptionLmrs
(CarFollowingModel carFollowingModel, LaneBasedGtu gtu, LanePerception lanePerception, Synchronization synchronization, Cooperation cooperation, GapAcceptance gapAcceptance, Tailgating tailgating) Constructor setting the car-following model. -
Method Summary
Modifier and TypeMethodDescriptionfinal OperationalPlan
generateOperationalPlan
(org.djunits.value.vdouble.scalar.Time startTime, org.djutils.draw.point.OrientedPoint2d locationAtStartTime) final Desire
getLatestDesire
(Class<? extends Incentive> incentiveClass) Returns the latest desire from the specified incentive.Returns the synchronization state.boolean
Returns whether the GTU is blocking conflicts.final String
toString()
Methods inherited from class org.opentrafficsim.road.gtu.lane.tactical.lmrs.AbstractIncentivesTacticalPlanner
addAccelerationIncentive, addMandatoryIncentive, addVoluntaryIncentive, getAccelerationIncentives, getMandatoryIncentives, getVoluntaryIncentives, setDefaultIncentives
Methods inherited from class org.opentrafficsim.road.gtu.lane.tactical.AbstractLaneBasedTacticalPlanner
buildLanePathInfo, buildLanePathInfo, buildLinkListForward, concatenateNull, connectsToPath, determineNextSplit, getCarFollowingModel, getGtu, getPerception, noLaneDrop, setCarFollowingModel
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opentrafficsim.road.gtu.lane.tactical.LaneBasedTacticalPlanner
chooseLaneAtSplit, okDistance
-
Constructor Details
-
Lmrs
public Lmrs(CarFollowingModel carFollowingModel, LaneBasedGtu gtu, LanePerception lanePerception, Synchronization synchronization, Cooperation cooperation, GapAcceptance gapAcceptance, Tailgating tailgating) Constructor setting the car-following model.- Parameters:
carFollowingModel
- CarFollowingModel; Car-following model.gtu
- LaneBasedGtu; GTUlanePerception
- LanePerception; perceptionsynchronization
- Synchronization; type of synchronizationcooperation
- Cooperation; type of cooperationgapAcceptance
- GapAcceptance; gap-acceptancetailgating
- Tailgating; tail gating
-
-
Method Details
-
generateOperationalPlan
public final OperationalPlan generateOperationalPlan(org.djunits.value.vdouble.scalar.Time startTime, org.djutils.draw.point.OrientedPoint2d locationAtStartTime) throws OperationalPlanException, GtuException, NetworkException, org.opentrafficsim.base.parameters.ParameterException - Specified by:
generateOperationalPlan
in interfaceTacticalPlanner<LaneBasedGtu,
LanePerception> - Throws:
OperationalPlanException
GtuException
NetworkException
org.opentrafficsim.base.parameters.ParameterException
-
getLatestDesire
Returns the latest desire from the specified incentive.- Specified by:
getLatestDesire
in interfaceDesireBased
- Parameters:
incentiveClass
- Class<? extends Incentive>; incentive class- Returns:
- latest desire from the specified incentive
-
getSynchronizationState
Returns the synchronization state.- Specified by:
getSynchronizationState
in interfaceSynchronizable
- Returns:
- State; synchronization state
-
isBlocking
public boolean isBlocking()Returns whether the GTU is blocking conflicts.- Specified by:
isBlocking
in interfaceBlockable
- Returns:
- boolean; whether the GTU is blocking conflicts
-
toString
-