Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [sumo-user] Different behavior when setting Lane change mode vs. setting lcParameters

Hello,

>>> To disable strategic laneChanging completely, you can either
- set laneChangeMode
- or set lcStrategic="-1"

If either of those options are valid, then the results I got previously for a lane change mode of 512 should all be the same value:
+-----------------+---------+------+
lc_params       | lc_mode | Time |
+-----------------+---------+------+
| Set to 1        | 512     | 241  |
+-----------------+---------+------+
| Unset (default) | 512     | 241  |
+-----------------+---------+------+
| Set to 0        | 512     | 172  |
+-----------------+---------+------+
| Set to 1        | 1621    | 204  |
+-----------------+---------+------+
| Unset (default) | 1621    | 204  |
+-----------------+---------+------+
| Set to 0        | 1621    | 218  |
+-----------------+---------+------+


So what I now understand is:

Only in the development version, if I set lane change mode to 512 (it disables everything else apart from safety), now it will behave as expected - that is, no strategic, speed gain or cooperative changes.
But if I use an older version before the changes have been implemented, I should also set lcStrategic to -1 and lcCooperative to -1.

Please confirm. Thank you.

Sincerely,
Hriday

On Tue, 17 May 2022 at 08:34, Jakob Erdmann <namdre.sumo@xxxxxxxxx> wrote:
 No.
To disable strategic laneChanging completely, you can either
- set laneChangeMode
- or set lcStrategic="-1"

because only setting lcStrategic="0" still allows changing at the end of the lane.

b)
lcSpeedGain="0"  still is equivalent to lcSpeedGain="0.001" in version 1.13.0 but disables changing for speedGain completely in the development version (https://github.com/eclipse/sumo/issues/10709)

c)
lcCooperative="0" prevents cooperative changing if there is any inconvenience. However, if you set lcSpeedGain="0" lcCooperative="0" a vehicle might still perform a cooperative change if the target lane affords higher speed. To achieve the same affect as disabled-via-lane-change-mode you can set lcCooperative="-1" (again, this requires the dev version)

regards,
Jakob




Am Do., 12. Mai 2022 um 08:49 Uhr schrieb Hriday Sanghvi via sumo-user <sumo-user@xxxxxxxxxxx>:
Hello Jakob,

Thank you for the update. So if I understand correctly: to completely disable strategic lane changing by SUMO, I have to
1. set the laneChangeMode bits 0 and 1 (for strategic lane changes) to 0
AND also
2. set lcStrategic to -1 in my routes files for the vType
Because only setting relevant laneChangeMode bits and then setting lcStrategic=1 may still allow strategic lane changes at the end of the lane?

Is this also true for lcSpeedGain and lcCooperative? Since there are also changes in behaviour when I isolate lcCooperative parameter (keeping lcStrategic and lcSpeedGain fixed at 1), i.e.,
a. when I set laneChangeMode bits 2 and 3 to 0, and set lcCooperative to 1,
vs.
b. when I set laneChangeMode bits 2 and 3 to 0, and set lcCooperative to 0,

I would have expected a. and b. to give me the same behaviour/time to complete the simulation, since I believe laneChangeMode completely disabled certain types of lane changes - but it seems that the lcParams still have some effect. Please advise.

Thank you.

Sincerely,
Hriday


On Thu, 12 May 2022 at 06:36, Jakob Erdmann <namdre.sumo@xxxxxxxxx> wrote:
The key difference is that the laneChangeMode completely disables strategic lane changing whereas lcStrategic="0" only sets the strategic lookahead distance to the minimum possible value. Vehicles will still perform a strategic laneChange when reaching the very end of their lane.
You can set lcStrategic to a negative value to disable strategic lane changing completely but this was (until now) undocumented.

regards,
Jakob

Am Di., 10. Mai 2022 um 19:11 Uhr schrieb Hriday Sanghvi via sumo-user <sumo-user@xxxxxxxxxxx>:
Hello again,

I use lc_params to refer to the 3 parameters lcStrategic, lcCooperative, and lcSpeedGain in the previous email, and lc_mode to refer to the lane changing mode. To clarify, here are some experimental results for each case for 100 vehicles on a 1000 m road with 2 free lanes (NO blockages):
+-----------------+---------+------+
lc_params       | lc_mode | Time |
+-----------------+---------+------+
| Set to 1        | 512     | 241  |
+-----------------+---------+------+
| Unset (default) | 512     | 241  |
+-----------------+---------+------+
| Set to 0        | 512     | 172  |
+-----------------+---------+------+
| Set to 1        | 1621    | 204  |
+-----------------+---------+------+
| Unset (default) | 1621    | 204  |
+-----------------+---------+------+
| Set to 0        | 1621    | 218  |
+-----------------+---------+------+

As seen from the table, Regardless of whether the lc_params are set to their default value (1) explicitly, or if they are unset (default value is used), the result (time in steps) of the simulation stays the same in both cases of the lc_mode (512 and 1621). This is in line with my understanding. However, when the lc_mode is set to 512, lc_params should in fact make no difference since the behaviour controlled by these lc_params were already deactivated - namely, do no strategic changes, do no cooperative changes and do no speed gain changes.

So what I gather is that there is some form of hierarchy - Which parameter do I set to overwrite the other no matter what? Or why would setting lc_params to 0 in the case of lc_mode = 512 make a difference?

Thank you.

Sincerely,
Hriday

On Tue, 10 May 2022 at 14:01, Hriday Sanghvi <sanghvih@xxxxxx> wrote:
Hello,

My belief: The lane change mode 512 is supposed to disable all autonomous lane-changing except for safety-gap enforcement and collision avoidance. So setting lcSpeedGain=0 or lcStrategic=0 should be pointless, since that is the same effect achieved by setting lane change mode to 512, since bits 0 through 6 are all set to 0 : do no strategic changes, do no cooperative changes, do no speed gain changes, do no right drive changes;

Discovery: When I set lcStrategic=0, lcCooperative=0, and lcSpeedGain=0  on my vType anyway as such:
<vType lcStrategic="0" lcCooperative="0" lcSpeedGain="0" carFollowModel="Krauss" color="0,1,0" id="veh" latAlignment="center" lcKeepRight="0" lcLookaheadLeft="1" lcOvertakeRight="1" lcSpeedGainRight="1" length="5" sigma="0" speedDev="0" speedFactor="1.0" />
The behaviour seems to have changed drastically.

With an LC mode of 512,
1. Without setting the 3 lcParams, it takes 100 vehicles 477s to reach the end of a 1000m road with 2 lanes, with a small blockage from (500 - 750m) on one of the lanes.
2. Setting the 3 lcParams, it takes the same only 262s

Doubt: Am I misunderstanding what autonomous lane-changing means? Or are the two: lcParams and lane change mode not equivalent in the way I have mentioned?

Please advise.

Thank you.

Sincerely,
Hriday
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user

Back to the top