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

[Question] Routing efficiency in LaneLet2 #6

Closed
msmcconnell opened this issue Jan 9, 2019 · 2 comments
Closed

[Question] Routing efficiency in LaneLet2 #6

msmcconnell opened this issue Jan 9, 2019 · 2 comments

Comments

@msmcconnell
Copy link
Contributor

LaneLet2 seems to nicely describe complex lane geometries and traffic rules, however, it also appears that there is no concept of a road or road network. This could pose an issue for routing on a large map.
As far as a can tell from the documentation, when a route is being determined to go from point A to point B, the user must search the entirety of lanelet network. This is in-efficient for large maps. Has this been addressed in some way?
If not, I would think a Road concept could be added where roads contain lanelets and each road has defined connections to other roads thus reducing the initial search space.

@poggenhans
Copy link
Contributor

That Lanelet2 has no concept of roads is intentional. In many situations it is difficult to define what a road actually is, where it begins and where it ends. Close to or within intersections or roundabouts, for example. Adding roads as a "collection of Lanelets that can be treated like one" would raise further potential problems:

  • It must be checked whether the roads are actually consistent from the point of view of all possible participants (what if at some point the road is no longer passable for trucks?).
  • That there is a road connecting A and B does not mean that it is possible to get from the entry Lanelet to the exit Lanelet. Maybe it is not possible to change lanes in between.

Regarding performance: if a map is really big, I would argue that the bottleneck will not be the routing itself (which, by the way, has to be done only once per trip), but everything that happens before: the parsing, the map interpretation, the pre-calculation of graphs and so on. This problem has not yet been addressed (since we are still far from having such large maps), but it could be solved in a similar way to other digital maps (e.g. by cutting the map data into tiles and then putting them together along the probable route).

It might be an idea to use the road concept by internally merging parts of the Lanelet graph where nothing changes into "meta" nodes. But that would rather be an internal optimization that remains hidden from the user.

@msmcconnell
Copy link
Contributor Author

Fair points though I think for the second bullet you would define roads as connected only where the lanes allow a connection. A road (road segment might be a better term) would simply be a collection of lanes so the lanes would define "connects to" relationships.

However, I'm not trying to define a new feature here and just wanted to hear your approach. For this system to be picked up for autonomous driving, map size will certainly be a factor.
Thank you for the detailed response.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants