Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [sumo-user] Cooperative lane changing in SL2015

cooperative behavior is actually guided by three parameters that can be controlled separately:
- lcCooperative: whether to perform a cooperative lane change if decreases ego speed, See Line 1375
- lcCooperativeSpeed (defaults to lcCooperative): whether to adapt the ego speed to help other vehicles with lane changing. This is the code you already found
- lcCooperativeRoundabout (defaults to lcCooperative): whether to use the inside lane on a multi-lane roundabout. See Line 1230

lcCooperativeSpeed (myCooperativeSpeed) actually controls speed adaptions for the vehicle that wants to merge as well as the vehicle that wants to help (there is a known problem with this:

The 'getSlowest' code is for preventing overtaking on the right where this is forbidden. This is unrelated to cooperative behavior.
To understand the speed adaptations that are advised (myLCAccelerationAdvices), activate the 'DEBUG_INFORM' flag in line 95 and then select vehicles in the simulation. (debug console output requires the debug build when on windows).


Am So., 13. März 2022 um 12:14 Uhr schrieb Hriday Sanghvi via sumo-user <sumo-user@xxxxxxxxxxx>:

I am trying to understand the cooperative actions taken by vehicles in SL2015 LC model. I am going through the C++ code and the start of this line: seems to have the crux of the cooperative actions taken. seems to be the selection of speed for the vehicle that is cooperating to let another vehicle onto its lane? OR is the selection of speed for the vehicle that is changing lane into another one? - Not sure how wanted (variable) is calculated. tells me that the speed above is also in some way related to checking the speed of the slowest leaders on the neighbouring lanes?

Please advise on where I could read more to understand in-depth - both the lane changing and the speed change that is required by the cooperative action? (For example, if I set the lcCooperative parameter to 1.0 (max))

Thank you.

sumo-user mailing list
To unsubscribe from this list, visit

Back to the top