Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

emergency braking before roundabout in subsecond simulation #13292

Closed
namdre opened this issue May 22, 2023 · 5 comments
Closed

emergency braking before roundabout in subsecond simulation #13292

namdre opened this issue May 22, 2023 · 5 comments

Comments

@namdre
Copy link
Contributor

namdre commented May 22, 2023

somewhat similar to #13290:

  • vehicle A and B approach the roundabout from different arms with the same speed and distance (B enters upstream of A)
  • both commit to enter at the same time and start to accelerate
  • vehicle A must yield to B which has priority inside the roundabout and performs emergency braking
@namdre
Copy link
Contributor Author

namdre commented May 22, 2023

a possible solution (also for #13290) would be to treat committed vehicles in the same way as junction leaders even before they have entered the junction.

@namdre
Copy link
Contributor Author

namdre commented May 24, 2023

while using junction leaders has the structural advantage of working with the current right-of-way matrix, it still doesn't solve the problem: the approachInformation only becomes available in the next step after both vehicles have stated to accelerate.
The only mechanism that can resolve simultaneous decisions during planMove is MSLink::opened during executeMove

@namdre
Copy link
Contributor Author

namdre commented May 24, 2023

diff.workOn13292a0.txt
diff.workOn13292a.txt

diff.workOn13292b.txt (some attempt for handling this as a reference). Note: trying to add to external vehicles to the anyVehicle-iteration fails in subsequent code via getBackPositionOnLane.

@namdre
Copy link
Contributor Author

namdre commented Jun 19, 2023

in iTETRIS_acosta/no_internal_links, this is actually causing a collision: both vehicles start accelerate while already close to the roundabout. In the next step, they are unable to stop and the upstream vehicle crashes.

@namdre
Copy link
Contributor Author

namdre commented Jun 19, 2023

The problem stems from #1847 (842eec6): vehicles on approach to a roundabout that have gone past the visibility distance still don't put in a request for the next downstream link. There are two cases that would need to be distinguished:

  1. the upstream vehicle actually starts to accelerate because it may enter the roundabout (request is needed to avoid downstream collision)
  2. the upstream vehicle must wait for a vehicle within the roundabout (no request should be given so that a downstream vehicle may enter))

namdre added a commit that referenced this issue Jun 19, 2023
@namdre namdre closed this as completed in 7c88c04 Jun 19, 2023
namdre added a commit that referenced this issue Jun 19, 2023
namdre added a commit that referenced this issue Jun 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants