![]() |
SUMO - Simulation of Urban MObility
|
Class for low-level platoon policy. More...
#include <MSSOTLPlatoonPolicy.h>
Public Member Functions | |
void | addParameter (const std::string &key, const std::string &value) |
Adds a parameter. More... | |
void | addParameter (const std::map< std::string, std::string > &mapArg) |
Adds all given parameter. More... | |
void | addParameter (const Parameterised &p) |
Adds all given parameter. More... | |
bool | canRelease (SUMOTime elapsed, bool thresholdPassed, bool pushButtonPressed, const MSPhaseDefinition *stage, int vehicleCount) |
void | clearParameter () |
Clears the parameter map. More... | |
SUMOReal | computeDesirability (SUMOReal vehInMeasure, SUMOReal vehOutMeasure, SUMOReal vehInDispersionMeasure, SUMOReal vehOutDispersionMeasure) |
Computes the desirability of this policy, necessary when used in combination with an high level policy. More... | |
SUMOReal | computeDesirability (SUMOReal vehInMeasure, SUMOReal vehOutMeasure) |
virtual int | decideNextPhase (SUMOTime elapsed, const MSPhaseDefinition *stage, int currentPhaseIndex, int phaseMaxCTS, bool thresholdPassed, bool pushButtonPressed, int vehicleCount) |
MSSOTLPolicyDesirability * | getDesirabilityAlgorithm () |
const std::map< std::string, std::string > & | getMap () const |
Returns the inner key/value map. More... | |
std::string | getName () |
const std::string & | getParameter (const std::string &key, const std::string &defaultValue) const |
Returns the value for a given key. More... | |
virtual SUMOReal | getThetaSensitivity () |
bool | knowsParameter (const std::string &key) const |
Returns whether the parameter is known. More... | |
MSSOTLPlatoonPolicy (const std::map< std::string, std::string > ¶meters) | |
MSSOTLPlatoonPolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm) | |
MSSOTLPlatoonPolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm, const std::map< std::string, std::string > ¶meters) | |
virtual void | setThetaSensitivity (SUMOReal val) |
Protected Member Functions | |
void | init (std::string prefix, const Parameterised *parameterised) |
void | init () |
void | init (std::string prefix, const Parameterised *parameterised) |
bool | pushButtonLogic (SUMOTime elapsed, bool pushButtonPressed, const MSPhaseDefinition *stage) |
bool | sigmoidLogic (SUMOTime elapsed, const MSPhaseDefinition *stage, int vehicleCount) |
Protected Attributes | |
SUMOReal | m_k |
std::string | m_prefix |
std::string | m_prefix |
SUMOReal | m_pushButtonScaleFactor |
bool | m_useSigmoid |
Class for low-level platoon policy.
Definition at line 43 of file MSSOTLPlatoonPolicy.h.
MSSOTLPlatoonPolicy::MSSOTLPlatoonPolicy | ( | const std::map< std::string, std::string > & | parameters | ) |
Definition at line 25 of file MSSOTLPlatoonPolicy.cpp.
References init().
MSSOTLPlatoonPolicy::MSSOTLPlatoonPolicy | ( | MSSOTLPolicyDesirability * | desirabilityAlgorithm | ) |
Definition at line 30 of file MSSOTLPlatoonPolicy.cpp.
References MSSOTLPolicy::getDesirabilityAlgorithm(), init(), and MSSOTLPolicyDesirability::setKeyPrefix().
MSSOTLPlatoonPolicy::MSSOTLPlatoonPolicy | ( | MSSOTLPolicyDesirability * | desirabilityAlgorithm, |
const std::map< std::string, std::string > & | parameters | ||
) |
Definition at line 36 of file MSSOTLPlatoonPolicy.cpp.
References MSSOTLPolicy::getDesirabilityAlgorithm(), init(), and MSSOTLPolicyDesirability::setKeyPrefix().
|
inherited |
Adds a parameter.
[in] | key | The parameter's name |
[in] | value | The parameter's value |
Definition at line 53 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by SUMORouteHandler::addParam(), NLHandler::addParam(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NBTrafficLightDefinition::compute(), NIImporter_OpenDrive::loadNetwork(), NIImporter_MATSim::EdgesHandler::myStartElement(), TraCIServerAPI_Edge::processSet(), TraCIServerAPI_TLS::processSet(), TraCIServerAPI_POI::processSet(), TraCIServerAPI_Polygon::processSet(), and TraCIServerAPI_Lane::processSet().
|
inherited |
Adds all given parameter.
[in] | mapArg | The keys/values to insert |
Definition at line 59 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
Adds all given parameter.
[in] | p | The keys/values to insert |
Definition at line 67 of file Parameterised.cpp.
References Parameterised::myMap.
|
virtual |
Implements MSSOTLPolicy.
Definition at line 43 of file MSSOTLPlatoonPolicy.cpp.
References DBG, MSPhaseDefinition::maxDuration, MSPhaseDefinition::minDuration, PushButtonLogic::pushButtonLogic(), SigmoidLogic::sigmoidLogic(), and WRITE_MESSAGE.
|
inherited |
Clears the parameter map.
Definition at line 91 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
Computes the desirability of this policy, necessary when used in combination with an high level policy.
Definition at line 106 of file MSSOTLPolicy.cpp.
References MSSOTLPolicyDesirability::computeDesirability(), DBG, MSSOTLPolicy::getName(), MSSOTLPolicy::myDesirabilityAlgorithm, and WRITE_MESSAGE.
|
inherited |
Definition at line 115 of file MSSOTLPolicy.cpp.
References MSSOTLPolicyDesirability::computeDesirability(), DBG, MSSOTLPolicy::getName(), MSSOTLPolicy::myDesirabilityAlgorithm, and WRITE_MESSAGE.
|
virtualinherited |
Reimplemented in MSSOTLCongestionPolicy.
Definition at line 124 of file MSSOTLPolicy.cpp.
References MSSOTLPolicy::canRelease(), DBG, MSPhaseDefinition::isCommit(), MSPhaseDefinition::isDecisional(), MSPhaseDefinition::isTransient(), time2string(), and WRITE_MESSAGE.
Referenced by MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), and MSSwarmTrafficLightLogic::decideNextPhase().
|
inlineinherited |
Definition at line 128 of file MSSOTLPolicy.h.
References SUMOReal.
Referenced by MSSOTLCongestionPolicy::MSSOTLCongestionPolicy(), MSSOTLMarchingPolicy::MSSOTLMarchingPolicy(), MSSOTLPhasePolicy::MSSOTLPhasePolicy(), MSSOTLPlatoonPolicy(), MSSOTLRequestPolicy::MSSOTLRequestPolicy(), and MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic().
|
inlineinherited |
Returns the inner key/value map.
Definition at line 107 of file Parameterised.h.
References Parameterised::myMap.
Referenced by NBTrafficLightDefinition::compute(), GUIPerson::getParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), TraCIServerAPI_TLS::processGet(), ROVehicle::saveAsXML(), ROPerson::saveAsXML(), SUMOVTypeParameter::write(), PointOfInterest::writeXML(), and SUMO::Polygon::writeXML().
|
inlineinherited |
Definition at line 125 of file MSSOTLPolicy.h.
Referenced by MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicy::computeDesirability(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), and MSSwarmTrafficLightLogic::updateSensitivities().
|
inherited |
Returns the value for a given key.
[in] | key | The key to ask for |
[in] | defaultValue | The default value to return if no value is stored under the key |
Definition at line 81 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), MSDevice_Example::buildVehicleDevices(), MSDevice_Battery::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), MSSOTLTrafficLightLogic::getDecayConstant(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSSOTLTrafficLightLogic::getThreshold(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), TraCIServerAPI_Edge::processGet(), TraCIServerAPI_POI::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_Polygon::processGet(), TraCIServerAPI_Route::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_Lane::processGet(), MSSOTLPolicyDesirability::readParameter(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), and TraCIServerAPI_Vehicle::vtdMap().
|
inlinevirtualinherited |
Definition at line 119 of file MSSOTLPolicy.h.
Referenced by MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), and MSSwarmTrafficLightLogic::updateSensitivities().
|
protectedinherited |
Definition at line 28 of file MSSOTLPolicy.cpp.
References TplConvert::_2SUMOReal(), Parameterised::getParameter(), PushButtonLogic::m_prefix, PushButtonLogic::m_pushButtonScaleFactor, and WRITE_MESSAGE.
Referenced by MSSOTLPhasePolicy::init(), MSSOTLMarchingPolicy::init(), and init().
|
protectedvirtual |
Reimplemented from MSSOTLPolicy.
Definition at line 69 of file MSSOTLPlatoonPolicy.cpp.
References PushButtonLogic::init(), and SigmoidLogic::init().
Referenced by MSSOTLPlatoonPolicy().
|
protectedinherited |
Definition at line 48 of file MSSOTLPolicy.cpp.
References TplConvert::_2SUMOReal(), Parameterised::getParameter(), PushButtonLogic::m_prefix, and WRITE_MESSAGE.
Referenced by MSSOTLPhasePolicy::init(), and init().
|
inherited |
Returns whether the parameter is known.
[in] | key | The key to ask for |
Definition at line 75 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by MSDevice_Example::buildVehicleDevices(), and MSDevice::equippedByDefaultAssignmentOptions().
|
protectedinherited |
Definition at line 34 of file MSSOTLPolicy.cpp.
References MSPhaseDefinition::duration, PushButtonLogic::m_prefix, PushButtonLogic::m_pushButtonScaleFactor, and WRITE_MESSAGE.
Referenced by MSSOTLPhasePolicy::canRelease(), MSSOTLMarchingPolicy::canRelease(), and canRelease().
|
inlinevirtualinherited |
Definition at line 122 of file MSSOTLPolicy.h.
Referenced by MSSwarmTrafficLightLogic::updateSensitivities().
|
protectedinherited |
Definition at line 64 of file MSSOTLPolicy.cpp.
References MSPhaseDefinition::duration, PushButtonLogic::m_prefix, RandHelper::rand(), SUMOReal, and WRITE_MESSAGE.
Referenced by MSSOTLPhasePolicy::canRelease(), and canRelease().
|
protectedinherited |
Definition at line 63 of file MSSOTLPolicy.h.
|
protectedinherited |
Definition at line 53 of file MSSOTLPolicy.h.
Referenced by PushButtonLogic::init(), SigmoidLogic::init(), PushButtonLogic::pushButtonLogic(), and SigmoidLogic::sigmoidLogic().
|
protectedinherited |
Definition at line 64 of file MSSOTLPolicy.h.
|
protectedinherited |
Definition at line 52 of file MSSOTLPolicy.h.
Referenced by PushButtonLogic::init(), and PushButtonLogic::pushButtonLogic().
|
protectedinherited |
Definition at line 62 of file MSSOTLPolicy.h.