Class IncentiveCourtesy
java.lang.Object
org.opentrafficsim.road.gtu.lane.tactical.lmrs.IncentiveCourtesy
- All Implemented Interfaces:
Supplier<IncentiveCourtesy>,Stateless<IncentiveCourtesy>,Incentive,VoluntaryIncentive
public final class IncentiveCourtesy
extends Object
implements VoluntaryIncentive, Stateless<IncentiveCourtesy>
Determines lane change desire for courtesy lane changes, which are performed to supply space for other drivers. In case
drivers in adjacent lanes have desire to change to the current lane, the driver has desire to change to the other adjacent
lane. The level of desire depends on lane change courtesy, as well as the distance of the leading vehicle for which desire
exists. This desire exists for only a single vehicle, i.e. the one giving maximum desire. A negative desire may also result
for leaders in the 2nd adjacent lane desiring to change to the 1st adjacent lane. By not changing to the 1st adjacent lane,
room is reserved for the leader on the 2nd adjacent lane.
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
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final ParameterTypeAccelerationComfortable deceleration parameter type.static final IncentiveCourtesySingleton instance.protected static final ParameterTypeDoubleSocio-speed sensitivity parameter. -
Method Summary
Modifier and TypeMethodDescriptiondetermineDesire(Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) Determines level of lane change desire for a lane change incentive.get()toString()
-
Field Details
-
B
Comfortable deceleration parameter type. -
SOCIO
Socio-speed sensitivity parameter. -
SINGLETON
Singleton instance.
-
-
Method Details
-
get
- Specified by:
getin interfaceStateless<IncentiveCourtesy>- Specified by:
getin interfaceSupplier<IncentiveCourtesy>
-
determineDesire
public Desire determineDesire(Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, Desire mandatoryDesire, Desire voluntaryDesire) throws ParameterException, OperationalPlanException Description copied from interface:VoluntaryIncentiveDetermines level of lane change desire for a lane change incentive.- Specified by:
determineDesirein interfaceVoluntaryIncentive- Parameters:
parameters- parametersperception- perceptioncarFollowingModel- car-following modelmandatoryDesire- level of mandatory desire at current timevoluntaryDesire- level of voluntary desire at current time, of voluntary incentives calculated before- Returns:
- level of lane change desire for this incentive
- Throws:
ParameterException- if a parameter is not given or out of boundsOperationalPlanException- in case of a perception exception
-
toString
-