Skip to content

Commit

Permalink
MSCFModel_CC: override getSecureGap() to enable platoon lane changes …
Browse files Browse the repository at this point in the history
…without disruptions
  • Loading branch information
michele-segata authored and namdre committed May 2, 2024
1 parent f796ea3 commit 17f664f
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 0 deletions.
23 changes: 23 additions & 0 deletions src/microsim/cfmodels/MSCFModel_CC.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,29 @@ MSCFModel_CC::performPlatoonLaneChange(MSVehicle* const veh) const {
}
}

double
MSCFModel_CC::getSecureGap(const MSVehicle* const veh, const MSVehicle* const pred, const double speed, const double leaderSpeed, const double leaderMaxDecel) const
{
CC_VehicleVariables* vars = (CC_VehicleVariables*)veh->getCarFollowVariables();

const double tolerance = 0.8;
switch (vars->activeController) {
case Plexe::CACC:
case Plexe::FAKED_CACC:
return vars->caccSpacing * tolerance;
case Plexe::ACC:
return (vars->accHeadwayTime * speed + 2) * tolerance;
case Plexe::PLOEG:
return (vars->ploegH * speed + 2) * tolerance;
case Plexe::CONSENSUS:
return d_i_j(vars->vehicles, vars->h, 1, 0) * tolerance;
case Plexe::FLATBED:
return (vars->flatbedD - vars->flatbedH * (speed - leaderSpeed)) * tolerance;
case Plexe::DRIVER:
return myHumanDriver->getSecureGap(veh, pred, speed, leaderSpeed, leaderMaxDecel);
}
}

double
MSCFModel_CC::finalizeSpeed(MSVehicle* const veh, double vPos) const {
double vNext;
Expand Down
1 change: 1 addition & 0 deletions src/microsim/cfmodels/MSCFModel_CC.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ class MSCFModel_CC : public MSCFModel {
/// @brief Destructor
~MSCFModel_CC();

virtual double getSecureGap(const MSVehicle* const veh, const MSVehicle* const /*pred*/, const double speed, const double leaderSpeed, const double leaderMaxDecel) const;

/// @name Implementations of the MSCFModel interface
/// @{
Expand Down

0 comments on commit 17f664f

Please sign in to comment.