Leave enough lane changing space
Hello! The following model of a car is IDM. How to use the vehicle in the adjacent lane as the leading vehicle for longitudinal control. In other words, how to cooperate and leave enough lane changing space for the vehicle in the adjacent lane.
The lane-change models in SUMO allow to configure cooperative behaviour between drivers on adjacent lanes with the parameter lcCooperative. However this is already active by default.
How ego vehicle to identify the front vehicle in the adjacent lane to change lanes . Ego vehicle is configured with IDM and LC2013,but the front vehicle in the adjacent lane is configured with others.
each vehicle in SUMO "knows" the model and gap requirements of the adjacent vehicles so it shouldn't be a problem if they have different models.
How do ego vehicle "knows" the lane changing intention of the front vehicle in the adjacent lane? Then the ego vehicle starts to slow down or change lanes for cooperation. What is the signal?
the lead vehicle will set the blinker when it wants to change lane but the gap is not sufficient. However, internally the vehicles can simply "read" the intentions of the neighboring vehicles.
I have some doubts about how a vehicle(IDM) can obtain the lane change intention of other vehicles. If other vehicles set singal as VEH_SIGNAL_BLINKER_LEFT,then will the vehicle(IDM) brake to leave enough lane changing space?
There is a potential misunderstanding here:
- in reality a vehicle will use blinker signaling to alert surrounding traffic to it's intentions and other drivers will estimate the required gap based on their own assumptions on safety
- in SUMO, a vehicle will communication its gap requirements directly to surrounding traffic and they will comply (based on their parameters for cooperativeness). Setting a blinker is only a means of conveying this process to the user and doesn't impact traffic behavior. This implementation strategy aims at replicating the observed cooperative behavior without replicating the though processes of drivers (which would require more compute). See https://elib.dlr.de/89233/
Sorry, I'm still a bit confused. How does a vehicle to communicate with others? How does a vehicle know the front vehicle in the adjacent lane wants to change lane?
mainly with
- https://github.com/eclipse-sumo/sumo/blob/2acc5e435983ab3bcecf541a0d50328e692ab3b1/src/microsim/lcmodels/MSAbstractLaneChangeModel.cpp#L1103
- https://github.com/eclipse-sumo/sumo/blob/2acc5e435983ab3bcecf541a0d50328e692ab3b1/src/microsim/lcmodels/MSLCM_LC2013.cpp#L1988
Is the role of this parameter lcAssertive the same in both LC2013 and LS2015 models?
default: 1, range: positive reals ?
or default: 0, range 0 to 1
the same for both models: default 1, range positive reals.