Class Fuller
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.perception.mental.Fuller
-
- All Implemented Interfaces:
Mental
public class Fuller extends Object implements Mental
Task-capability interface in accordance to Fuller (2011). Task demand is the sum of demands described by individualTask
s. These take exogenous information to describe the workload in fundamental relations. Task demand is divided by task capability to arrive at a task saturation. Task saturation is input toBehavioralAdaptation
s which alter parameters describing personal traits, such as desired headway and desired speed. In this way, task demand is kept at an equilibrium as described by Fuller.A
BehavioralAdaptation
may also determine what the level of situational awareness is, which includes determining reaction time. Both situational awareness and reaction time parameters can be used in perception to model deteriorated perception due to a task demand imbalance.Fuller, R., Driver control theory: From task difficulty homeostasis to risk allostasis, in Handbook of Traffic Psychology. 2011. p. 13-26
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 3 apr. 2018
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Fuller.BehavioralAdaptation
Behavioral adaptation by changing parameter values.
-
Field Summary
Fields Modifier and Type Field Description static ParameterTypeDouble
TC
Task capability in nominal task capability units, i.e.static ParameterTypeDouble
TS
Task saturation.static ParameterTypeDouble
TS_CRIT
Critical task saturation.static ParameterTypeDouble
TS_MAX
Maximum task saturation, pertaining to maximum deterioration.
-
Constructor Summary
Constructors Constructor Description Fuller(Set<? extends Task> tasks, Set<Fuller.BehavioralAdaptation> behavioralAdapatations)
Constructor with custom situational awareness.Fuller(Set<? extends Task> tasks, Set<Fuller.BehavioralAdaptation> behavioralAdapatations, TaskManager taskManager)
Constructor with custom situational awareness.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addTask(Task task)
Adds a task.void
apply(LanePerception perception)
Apply mental model on perception.double
getAnticipationReliance(String taskId)
Returns the anticipation reliance of the given task id.double
getTaskDemand(String taskId)
Returns the demand of the given task id.ImmutableSet<Task>
getTasks()
Returns the tasks.void
removeTask(Task task)
Removes a task.String
toString()
-
-
-
Field Detail
-
TC
public static final ParameterTypeDouble TC
Task capability in nominal task capability units, i.e. mean is 1.
-
TS_CRIT
public static final ParameterTypeDouble TS_CRIT
Critical task saturation.
-
TS_MAX
public static final ParameterTypeDouble TS_MAX
Maximum task saturation, pertaining to maximum deterioration.
-
TS
public static final ParameterTypeDouble TS
Task saturation.
-
-
Constructor Detail
-
Fuller
public Fuller(Set<? extends Task> tasks, Set<Fuller.BehavioralAdaptation> behavioralAdapatations)
Constructor with custom situational awareness.- Parameters:
tasks
- Set<? extends Task>; tasksbehavioralAdapatations
- Set<BehavioralAdaptation>; behavioralAdapatations
-
Fuller
public Fuller(Set<? extends Task> tasks, Set<Fuller.BehavioralAdaptation> behavioralAdapatations, TaskManager taskManager)
Constructor with custom situational awareness.- Parameters:
tasks
- Set<? extends Task>; tasksbehavioralAdapatations
- Set<BehavioralAdaptation>; behavioralAdapatationstaskManager
- TaskManager; task manager
-
-
Method Detail
-
addTask
public void addTask(Task task)
Adds a task.- Parameters:
task
- Task; task to add
-
removeTask
public void removeTask(Task task)
Removes a task.- Parameters:
task
- Task; task to remove
-
getTasks
public ImmutableSet<Task> getTasks()
Returns the tasks.- Returns:
- ImmutableSet<Task> tasks
-
apply
public void apply(LanePerception perception) throws ParameterException, GTUException
Apply mental model on perception.- Specified by:
apply
in interfaceMental
- Parameters:
perception
- LanePerception; perception- Throws:
ParameterException
- if a parameter is missing or out of boundsGTUException
- exceptions pertaining to the GTU
-
getAnticipationReliance
public double getAnticipationReliance(String taskId)
Returns the anticipation reliance of the given task id.- Parameters:
taskId
- taskId; task id to return the anticipation reliance for.- Returns:
- double; anticipation reliance of given task id,
NaN if not present
-
getTaskDemand
public double getTaskDemand(String taskId)
Returns the demand of the given task id.- Parameters:
taskId
- taskId; task id to return the demand for.- Returns:
- double; demand of given task id,
NaN if not present
-
-