SimDriver  0.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
AgentModel Class Reference

The agent model main class. More...

#include <AgentModel.h>

Inheritance diagram for AgentModel:
Inheritance graph
[legend]
Collaboration diagram for AgentModel:
Collaboration graph
[legend]

Public Member Functions

 AgentModel ()=default
 
 ~AgentModel () override=default
 
void init ()
 
void step (double simulationTime)
 
- Public Member Functions inherited from agent_model::Interface
 Interface ()=default
 
virtual ~Interface ()=default
 
InputgetInput ()
 
const InputgetInput () const
 
StategetState ()
 
const StategetState () const
 
MemorygetMemory ()
 
const MemorygetMemory () const
 
ParametersgetParameters ()
 
const ParametersgetParameters () const
 

Protected Member Functions

void decisionProcessStop ()
 
void decisionLaneChange ()
 
void decisionLateralOffset ()
 
void consciousVelocity ()
 
void consciousStop ()
 
void consciousFollow ()
 
void consciousLaneChange ()
 
void consciousLateralOffset ()
 
void consciousReferencePoints ()
 
double subconsciousLateralControl ()
 
double subconsciousFollow ()
 
double subconsciousStop ()
 
double subconsciousSpeed ()
 
double subconsciousStartStop ()
 

Protected Attributes

agent_model::StopHorizon _stop_horizon {}
 attribute to store the stop points
 
agent_model::VelocityHorizon _vel_horizon {}
 attribute to store the stop points
 
agent_model::Filter _filter {}
 attribute to store the speed reaction filter
 
agent_model::DistanceTimeInterval _lateral_offset_interval
 attribute to store the lateral offset interval
 
agent_model::DistanceTimeInterval _lane_change_process_interval
 attribute to store the lane change interval
 
- Protected Attributes inherited from agent_model::Interface
Input _input {}
 The input of the agent model.
 
State _state {}
 The state of the agent model.
 
Memory _memory {}
 The memory of the agent model.
 
Parameters _param {}
 The parameters of the agent model.
 

Additional Inherited Members

- Public Types inherited from agent_model::Interface
typedef agent_model::Input Input
 
typedef agent_model::State State
 
typedef agent_model::Memory Memory
 
typedef agent_model::Parameters Parameters
 

Detailed Description

The agent model main class.

Constructor & Destructor Documentation

◆ AgentModel()

AgentModel::AgentModel ( )
default

Default constructor

◆ ~AgentModel()

AgentModel::~AgentModel ( )
overridedefault

Default destructor

Member Function Documentation

◆ consciousFollow()

void AgentModel::consciousFollow ( )
protected

Calculates the net distance to the relevant following traffic participants

◆ consciousLaneChange()

void AgentModel::consciousLaneChange ( )
protected

Calculates the lane change process

◆ consciousLateralOffset()

void AgentModel::consciousLateralOffset ( )
protected

Calculates the offset to be added to the reference points

◆ consciousReferencePoints()

void AgentModel::consciousReferencePoints ( )
protected

Calculates the reference points for the lateral motion control

◆ consciousStop()

void AgentModel::consciousStop ( )
protected

Calculate the process of the stop maneuver

◆ consciousVelocity()

void AgentModel::consciousVelocity ( )
protected

Calculates the target speed based on rules, the curvature of the track

◆ decisionLaneChange()

void AgentModel::decisionLaneChange ( )
protected

Calculates the decision to perform a lane change

◆ decisionLateralOffset()

void AgentModel::decisionLateralOffset ( )
protected

Calculates the decision to perform a lateral offset

◆ decisionProcessStop()

void AgentModel::decisionProcessStop ( )
protected

Calculates process of stopping and starting

◆ init()

void AgentModel::init ( )

Initializes the driver model. Shall be ran before the the first step is executed.

◆ step()

void AgentModel::step ( double  simulationTime)

Performs a driver model step. The driver model must be initializes (

See also
init()).
Parameters
simulationTimeThe current simulation time

◆ subconsciousFollow()

double AgentModel::subconsciousFollow ( )
protected

Calculates the reaction to follow other traffic participants

Returns
The reaction value to follow

◆ subconsciousLateralControl()

double AgentModel::subconsciousLateralControl ( )
protected

Calculates the reaction for the lateral motion control based on the reference points

Returns
The reaction value for lateral motion control

◆ subconsciousSpeed()

double AgentModel::subconsciousSpeed ( )
protected

Calculates the reaction to reach the desired speed, including predictive control

Returns
The reaction value to control speed

◆ subconsciousStartStop()

double AgentModel::subconsciousStartStop ( )
protected

Calculates the pedal behavior when starting or stopping for sub-microscopic simulations

Returns
The pedal value

◆ subconsciousStop()

double AgentModel::subconsciousStop ( )
protected

Calculates the reaction to stop the vehicle at the desired point

Returns
The reaction value to stop

The documentation for this class was generated from the following files: