Class AbstractIncentivesTacticalPlanner
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.tactical.AbstractLaneBasedTacticalPlanner
-
- org.opentrafficsim.road.gtu.lane.tactical.lmrs.AbstractIncentivesTacticalPlanner
-
- All Implemented Interfaces:
Serializable
,TacticalPlanner<LaneBasedGTU,LanePerception>
,LaneBasedTacticalPlanner
- Direct Known Subclasses:
LMRS
public abstract class AbstractIncentivesTacticalPlanner extends AbstractLaneBasedTacticalPlanner
Copyright (c) 2013-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version 31 jul. 2019
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static ParameterTypeClassList<AccelerationIncentive>
ACCELERATION
Parameter type for acceleration incentives.static ParameterTypeClassList<MandatoryIncentive>
MANDATORY
Parameter type for mandatory lane change incentives.static ParameterTypeClassList<VoluntaryIncentive>
VOLUNTARY
Parameter type for voluntary lane change incentives.-
Fields inherited from class org.opentrafficsim.road.gtu.lane.tactical.AbstractLaneBasedTacticalPlanner
DT, LOOKAHEAD, TACTICAL_PLANNER
-
-
Constructor Summary
Constructors Constructor Description AbstractIncentivesTacticalPlanner(CarFollowingModel carFollowingModel, LaneBasedGTU gtu, LanePerception lanePerception)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAccelerationIncentive(AccelerationIncentive incentive)
Adds an acceleration incentive.void
addMandatoryIncentive(MandatoryIncentive incentive)
Adds a mandatory incentive.void
addVoluntaryIncentive(VoluntaryIncentive incentive)
Adds a voluntary incentive.ImmutableSet<AccelerationIncentive>
getAccelerationIncentives()
Returns the acceleration incentives.ImmutableSet<MandatoryIncentive>
getMandatoryIncentives()
Returns the mandatory incentives.ImmutableSet<VoluntaryIncentive>
getVoluntaryIncentives()
Returns the voluntary incentives.void
setDefaultIncentives()
Sets the default lane change incentives.-
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, toString, wait, wait, wait
-
Methods inherited from interface org.opentrafficsim.road.gtu.lane.tactical.LaneBasedTacticalPlanner
chooseLaneAtSplit, okDistance
-
Methods inherited from interface org.opentrafficsim.core.gtu.plan.tactical.TacticalPlanner
generateOperationalPlan
-
-
-
-
Field Detail
-
MANDATORY
public static final ParameterTypeClassList<MandatoryIncentive> MANDATORY
Parameter type for mandatory lane change incentives.
-
VOLUNTARY
public static final ParameterTypeClassList<VoluntaryIncentive> VOLUNTARY
Parameter type for voluntary lane change incentives.
-
ACCELERATION
public static final ParameterTypeClassList<AccelerationIncentive> ACCELERATION
Parameter type for acceleration incentives.
-
-
Constructor Detail
-
AbstractIncentivesTacticalPlanner
public AbstractIncentivesTacticalPlanner(CarFollowingModel carFollowingModel, LaneBasedGTU gtu, LanePerception lanePerception)
Constructor.- Parameters:
carFollowingModel
- CarFollowingModel; Car-following model.gtu
- LaneBasedGTU; GTUlanePerception
- LanePerception; perception
-
-
Method Detail
-
addMandatoryIncentive
public final void addMandatoryIncentive(MandatoryIncentive incentive)
Adds a mandatory incentive. Ignoresnull
.- Parameters:
incentive
- MandatoryIncentive; Incentive to add.
-
addVoluntaryIncentive
public final void addVoluntaryIncentive(VoluntaryIncentive incentive)
Adds a voluntary incentive. Ignoresnull
.- Parameters:
incentive
- VoluntaryIncentive; Incentive to add.
-
addAccelerationIncentive
public final void addAccelerationIncentive(AccelerationIncentive incentive)
Adds an acceleration incentive. Ignoresnull
.- Parameters:
incentive
- AccelerationIncentive; Incentive to add.
-
setDefaultIncentives
public final void setDefaultIncentives()
Sets the default lane change incentives.
-
getMandatoryIncentives
public final ImmutableSet<MandatoryIncentive> getMandatoryIncentives()
Returns the mandatory incentives.- Returns:
- ImmutableSet<MandatoryIncentive>; set of mandatory incentives
-
getVoluntaryIncentives
public final ImmutableSet<VoluntaryIncentive> getVoluntaryIncentives()
Returns the voluntary incentives.- Returns:
- ImmutableSet<VoluntaryIncentive>; set of voluntary incentives
-
getAccelerationIncentives
public final ImmutableSet<AccelerationIncentive> getAccelerationIncentives()
Returns the acceleration incentives.- Returns:
- ImmutableSet<AccelerationIncentive>; set of acceleration incentives
-
-