Uses of Interface
org.opentrafficsim.road.gtu.lane.tactical.following.CarFollowingModel
Package
Description
Implementation of lane-based perception for the GTU.
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands.
Tactical planners for a lane-based GTU.
GTU (Car) following models such as IDM+.
Classes that implement the LMRS lane change model integrated with a car-following model forming a tactical planner.
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands.
Static methods for composition in tactical planners.
LMRS (Lane change Model with Relaxation and Synchronization) utilities for tactical planner.
-
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.perception
Modifier and TypeMethodDescriptionfinal CarFollowingModel
GtuTypeAssumptions.getCarFollowingModel
(GtuType gtuType) Return the car following model for a certain GtuType as an assumption for that GtuType.Modifier and TypeMethodDescriptionfinal void
GtuTypeAssumptions.setCarFollowingModel
(GtuType gtuType, CarFollowingModel carFollowingModel) Set the car following model for a certain GtuType as an assumption for that GtuType. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.perception.headway
Modifier and TypeMethodDescriptionHeadwayGtu.getCarFollowingModel()
Many models that observe a GTU need to predict the imminent behavior of that GTU.final CarFollowingModel
HeadwayGtuReal.getCarFollowingModel()
Many models that observe a GTU need to predict the imminent behavior of that GTU.final CarFollowingModel
HeadwayGtuRealCopy.getCarFollowingModel()
Many models that observe a GTU need to predict the imminent behavior of that GTU.final CarFollowingModel
HeadwayGtuSimple.getCarFollowingModel()
Many models that observe a GTU need to predict the imminent behavior of that GTU.final CarFollowingModel
HeadwayGtuType.getCarFollowingModel()
Many models that observe a GTU need to predict the imminent behavior of that GTU.ModifierConstructorDescription(package private)
HeadwayGtuRealCopy
(String id, GtuType gtuType, org.djunits.value.vdouble.scalar.Length overlapFront, org.djunits.value.vdouble.scalar.Length overlap, org.djunits.value.vdouble.scalar.Length overlapRear, org.djunits.value.vdouble.scalar.Length length, org.djunits.value.vdouble.scalar.Length width, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration, CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, SpeedLimitInfo speedLimitInfo, Route route, org.djunits.value.vdouble.scalar.Speed desiredSpeed, GtuStatus... gtuStatus) Protected constructor for moved copies or subclasses.(package private)
HeadwayGtuRealCopy
(String id, GtuType gtuType, org.djunits.value.vdouble.scalar.Length distance, org.djunits.value.vdouble.scalar.Length length, org.djunits.value.vdouble.scalar.Length width, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration, CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, SpeedLimitInfo speedLimitInfo, Route route, org.djunits.value.vdouble.scalar.Speed desiredSpeed, GtuStatus... gtuStatus) Protected constructor for moved copies or subclasses. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical
Modifier and TypeMethodDescriptionfinal CarFollowingModel
AbstractLaneBasedTacticalPlanner.getCarFollowingModel()
Returns the car-following model.LaneBasedTacticalPlanner.getCarFollowingModel()
Returns the car-following model.protected final CarFollowingModel
AbstractLaneBasedTacticalPlannerFactory.nextCarFollowingModel
(LaneBasedGtu gtu) Returns the next car following model.Modifier and TypeMethodDescriptionfinal void
AbstractLaneBasedTacticalPlanner.setCarFollowingModel
(CarFollowingModel carFollowingModel) Sets the car-following model.ModifierConstructorDescriptionAbstractLaneBasedTacticalPlanner
(CarFollowingModel carFollowingModel, LaneBasedGtu gtu, LanePerception lanePerception) Instantiates a tactical planner.ModifierConstructorDescriptionAbstractLaneBasedTacticalPlannerFactory
(CarFollowingModelFactory<? extends CarFollowingModel> carFollowingModelFactory, PerceptionFactory perceptionFactory) Constructor. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical.following
Modifier and TypeInterfaceDescriptioninterface
CarFollowingModelFactory<T extends CarFollowingModel>
Factory for car-following models.Modifier and TypeInterfaceDescriptioninterface
GTU following model interface.Modifier and TypeClassDescriptionclass
Default implementation where desired speed and headway are pre-calculated for car-following.class
Code shared between various car following models.class
Implementation of the IDM.class
Fixed GTU following model.class
Implementation of the IDM.class
The Intelligent Driver Model by Treiber, Hennecke and Helbing.class
Implementation of the IDM+.class
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands.class
IDMPlus implements the Integrated Lane Change Model with Relaxation and Synchronization as published by Wouter J.class
Extended version of FixedAccelerationModel.Modifier and TypeFieldDescriptionstatic final org.opentrafficsim.base.parameters.ParameterTypeClass<CarFollowingModel>
CarFollowingModel.CAR_FOLLOWING_MODEL
Parameter type for car-following model. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical.lmrs
Modifier and TypeMethodDescriptionfinal void
AccelerationBusStop.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.final void
AccelerationConflicts.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.void
AccelerationIncentive.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.void
AccelerationNoRightOvertake.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.final void
AccelerationSpeedLimitTransition.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.final void
AccelerationTrafficLights.accelerate
(SimpleOperationalPlan simplePlan, RelativeLane lane, org.djunits.value.vdouble.scalar.Length mergeDistance, LaneBasedGtu gtu, LanePerception perception, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo speedLimitInfo) Determine acceleration.IncentiveBusStop.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveCourtesy.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveDummy.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire) Determines level of lane change desire for a lane change incentive.IncentiveGetInLane.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveKeep.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.IncentiveQueue.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveRoute.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveSocioSpeed.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveSpeed.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.final Desire
IncentiveSpeedWithCourtesy.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.IncentiveStayRight.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.ModifierConstructorDescriptionAbstractIncentivesTacticalPlanner
(CarFollowingModel carFollowingModel, LaneBasedGtu gtu, LanePerception lanePerception) Constructor.Lmrs
(CarFollowingModel carFollowingModel, LaneBasedGtu gtu, LanePerception lanePerception, Synchronization synchronization, Cooperation cooperation, GapAcceptance gapAcceptance, Tailgating tailgating) Constructor setting the car-following model.ModifierConstructorDescriptionLmrsFactory
(CarFollowingModelFactory<? extends CarFollowingModel> carFollowingModelFactory, PerceptionFactory perceptionFactory) Constructor using default incentives and passive synchronization.LmrsFactory
(CarFollowingModelFactory<? extends CarFollowingModel> carFollowingModelFactory, PerceptionFactory perceptionFactory, Synchronization synchronization, Cooperation cooperation, GapAcceptance gapAcceptance, Tailgating tailgating, Set<MandatoryIncentive> mandatoryIncentives, Set<VoluntaryIncentive> voluntaryIncentives, Set<AccelerationIncentive> accelerationIncentives) Constructor with full control over incentives and type of synchronization. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical.toledo
Modifier and TypeClassDescriptionclass
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands.ModifierConstructorDescriptionToledo
(CarFollowingModel carFollowingModel, LaneBasedGtu gtu) Constructor. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical.util
Modifier and TypeMethodDescriptionstatic AnticipationInfo
AnticipationInfo.anticipateMovementFreeAcceleration
(org.djunits.value.vdouble.scalar.Length distance, org.djunits.value.vdouble.scalar.Speed initialSpeed, org.opentrafficsim.base.parameters.Parameters parameters, CarFollowingModel carFollowingModel, SpeedLimitInfo speedLimitInfo, org.djunits.value.vdouble.scalar.Duration timeStep) Returns info of the anticipation using free acceleration from car-following model.static org.djunits.value.vdouble.scalar.Acceleration
ConflictUtil.approachConflicts
(org.opentrafficsim.base.parameters.Parameters parameters, Iterable<HeadwayConflict> conflicts, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Length vehicleLength, org.djunits.value.vdouble.scalar.Length vehicleWidth, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration, SpeedLimitInfo speedLimitInfo, ConflictUtil.ConflictPlans conflictPlans, LaneBasedGtu gtu, RelativeLane lane) Approach conflicts by applying appropriate acceleration (or deceleration).static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.approachTargetSpeed
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo, org.djunits.value.vdouble.scalar.Length distance, org.djunits.value.vdouble.scalar.Speed targetSpeed) Returns an acceleration based on the car-following model in order to adjust the speed to a given value at some location ahead.static org.djunits.value.vdouble.scalar.Acceleration
SpeedLimitUtil.considerSpeedLimitTransitions
(org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitProspect speedLimitProspect, CarFollowingModel carFollowingModel) Acceleration for speed limit transitions.static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.constantAccelerationStop
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Length distance) Return constant acceleration in order to stop in specified distance.static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.followSingleLeader
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo, org.djunits.value.vdouble.scalar.Length distance, org.djunits.value.vdouble.scalar.Speed leaderSpeed) Follow a set of headway GTUs.static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.followSingleLeader
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo, HeadwayGtu leader) Follow a set of headway GTUs.static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.freeAcceleration
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo) Calculate free acceleration.static org.djunits.value.vdouble.scalar.Acceleration
TrafficLightUtil.respondToTrafficLight
(org.opentrafficsim.base.parameters.Parameters parameters, HeadwayTrafficLight headwayTrafficLight, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo) Returns an acceleration as response to a traffic light, being positive infinity if ignored.static org.djunits.value.vdouble.scalar.Acceleration
TrafficLightUtil.respondToTrafficLights
(org.opentrafficsim.base.parameters.Parameters parameters, Iterable<HeadwayTrafficLight> headwayTrafficLights, CarFollowingModel carFollowingModel, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo) Returns an acceleration as response to a set of traffic lights, being positive infinity if ignored.static org.djunits.value.vdouble.scalar.Acceleration
CarFollowingUtil.stop
(CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.Parameters parameters, org.djunits.value.vdouble.scalar.Speed speed, SpeedLimitInfo speedLimitInfo, org.djunits.value.vdouble.scalar.Length distance) Stop within given distance.static boolean
ConflictUtil.stopForGiveWayConflict
(HeadwayConflict conflict, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration, org.djunits.value.vdouble.scalar.Length vehicleLength, org.opentrafficsim.base.parameters.Parameters parameters, SpeedLimitInfo speedLimitInfo, CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.ParameterTypeAcceleration bType, org.djunits.value.vdouble.scalar.Length prevEnd) Approach a give-way conflict.static boolean
ConflictUtil.stopForStopConflict
(HeadwayConflict conflict, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration, org.djunits.value.vdouble.scalar.Length vehicleLength, org.opentrafficsim.base.parameters.Parameters parameters, SpeedLimitInfo speedLimitInfo, CarFollowingModel carFollowingModel, org.opentrafficsim.base.parameters.ParameterTypeAcceleration bType, org.djunits.value.vdouble.scalar.Length prevEnd) Approach a stop conflict. -
Uses of CarFollowingModel in org.opentrafficsim.road.gtu.lane.tactical.util.lmrs
Modifier and TypeMethodDescriptionboolean
GapAcceptance.acceptGap
(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, double desire, org.djunits.value.vdouble.scalar.Speed ownSpeed, org.djunits.value.vdouble.scalar.Acceleration ownAcceleration, LateralDirectionality lat) Determine whether a gap is acceptable.(package private) static boolean
LmrsUtil.acceptLaneChange
(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, double desire, org.djunits.value.vdouble.scalar.Speed ownSpeed, org.djunits.value.vdouble.scalar.Acceleration ownAcceleration, LateralDirectionality lat, GapAcceptance gapAcceptance, LaneChange laneChange) Determine whether a lane change is acceptable (gap, lane markings, etc.).org.djunits.value.vdouble.scalar.Acceleration
Cooperation.cooperate
(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, LateralDirectionality lat, Desire ownDesire) Determine acceleration for cooperation.MandatoryIncentive.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire) Determines level of lane change desire for a lane change incentive.VoluntaryIncentive.determineDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.static SimpleOperationalPlan
LmrsUtil.determinePlan
(LaneBasedGtu gtu, org.djunits.value.vdouble.scalar.Time startTime, CarFollowingModel carFollowingModel, LaneChange laneChange, LmrsData lmrsData, LanePerception perception, Iterable<MandatoryIncentive> mandatoryIncentives, Iterable<VoluntaryIncentive> voluntaryIncentives) Determines a simple representation of an operational plan.static org.djunits.value.vdouble.scalar.Acceleration
GapAcceptance.egoAcceleration
(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, double desire, org.djunits.value.vdouble.scalar.Speed ownSpeed, LateralDirectionality lat) Determine whether a gap is acceptable.static Desire
LmrsUtil.getLaneChangeDesire
(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Iterable<MandatoryIncentive> mandatoryIncentives, Iterable<VoluntaryIncentive> voluntaryIncentives, Map<Class<? extends Incentive>, Desire> desireMap) Determines lane change desire for the given GtU.static org.djunits.value.vdouble.scalar.Acceleration
LmrsUtil.singleAcceleration
(org.djunits.value.vdouble.scalar.Length distance, org.djunits.value.vdouble.scalar.Speed followerSpeed, org.djunits.value.vdouble.scalar.Speed leaderSpeed, double desire, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm) Determine acceleration from car-following with desire-adjusted headway.static org.djunits.value.vdouble.scalar.Acceleration
Synchronization.stopForEnd
(org.djunits.value.vdouble.scalar.Length xCur, org.djunits.value.vdouble.scalar.Length xMerge, org.opentrafficsim.base.parameters.Parameters params, org.djunits.value.vdouble.scalar.Speed ownSpeed, CarFollowingModel cfm, SpeedLimitInfo sli) Calculates acceleration to stop for a split or dead-end, accounting for infrastructure.org.djunits.value.vdouble.scalar.Acceleration
Synchronization.synchronize
(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, double desire, LateralDirectionality lat, LmrsData lmrsData, LaneChange laneChange, LateralDirectionality initiatedLaneChange) Determine acceleration for synchronization.static org.djunits.value.vdouble.scalar.Acceleration
Synchronization.tagAlongAcceleration
(HeadwayGtu leader, org.djunits.value.vdouble.scalar.Speed followerSpeed, org.djunits.value.vdouble.scalar.Length followerLength, org.djunits.value.vdouble.scalar.Speed tagSpeed, double desire, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm) Calculates acceleration by following an adjacent vehicle, with tagging along if desire is not very high and speed is low.