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

Allow penalties for arbitrary nodes #1490

Open
TheMarex opened this issue May 24, 2015 · 8 comments

Comments

Projects
None yet
5 participants
@TheMarex
Copy link
Member

commented May 24, 2015

Currently penalties are limited to traffic lights. That is overly restrictive as we could also use it for traffic calming and mini-roundabouts are mentioned in this PR #534.

Brain dump on how to do this:

  • Replace bool ExtractionNode::traffic_lights with short ExtractionNode::penalty
  • Adapt graph_loader.cpp to load nodes with penalty > 0 in a separate array
  • Adapt m_traffic_lights in EdgeBasedGraphFactory
@emiltin

This comment has been minimized.

Copy link
Contributor

commented May 25, 2015

a related issue is how to group multiple nodes, likes a single intersection with mulitple traffic signal nodes, which should only incur the penalty once.

@derTobsch

This comment has been minimized.

Copy link

commented Jan 21, 2016

Sounds interesting. We need a mechanism to simulate border crossing penalties to add for e.g. 4h when a border between Germany and Swiss would be crossed.

@yuryleb

This comment has been minimized.

Copy link
Contributor

commented Feb 20, 2017

It's really necessary to find the way to group nearest traffic lights together. Please look at this square in St Petersburg:
Austrian Square
There are really 8 traffic lights but all they work synchronized as single one. IMHO this is typical case worldwide.

Maybe it's possible to treat all traffic lights points on the way as single if they're in 20 meters (for example)?

@danpat

This comment has been minimized.

Copy link
Member

commented Feb 20, 2017

@yuryleb Why do you think these need to be grouped? What problem are you trying to solve?

@yuryleb

This comment has been minimized.

Copy link
Contributor

commented Feb 20, 2017

Routing problem of course 😉 Actually I'm preparing an issue to increase traffic lights penalty to more realistic value than current 2 seconds and preliminary experiments with local OSRM show that such traffic lights "clusters" could be always ignored by router.

@emiltin

This comment has been minimized.

Copy link
Contributor

commented Feb 20, 2017

what do you mean they can be ignored?
my original comment on traffic signal clusters was based on the fact that the time you wait for red light at an intersection doesn't depend on how many signals are mounted in the intersections, but rather on the green time distribution.

@yuryleb

This comment has been minimized.

Copy link
Contributor

commented Feb 21, 2017

ignored = bypassed, skipped, excluded from routes.
I extremely agree with your suggestion. I hope I could describe this router behavior in case of traffic lights penalty increasing more detailed if I get more promising results than "don't touch if it works" as now.

@emiltin

This comment has been minimized.

Copy link
Contributor

commented Feb 21, 2017

if you mean that additional signals can be ignored then i agree. of course a group of signals should incur a delay, but only once.
the challenge is that it would require a geometric processing of nodes before or during extraction, which currently doesn't happen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.