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

Any suggestion on developing routing function for semi-tractor-trailer trucks with different dimensions? #5951

Closed
JetBelson opened this issue Feb 2, 2021 · 4 comments
Labels

Comments

@JetBelson
Copy link

Hi, OSRM teams.

It is not an issue, but an inquiry from a beginner.

I am doing a project that needs to plan routes for semi-tractor-trailer trucks with different dimensions at a city level.

For now, I have adopted some motion planning methods to develop an "index" that can assess whether a truck with specific dimensions can go through a turn with a certain degree of performance.

For example, when a truck with a length of 10.0m and a width of 2.5m go through a specific turn, it will have an index of 1.0; when a truck with a length of 12.0m and a width of 2.5m go through the same turn, it will have an index of 0.8. I have the road geometry data to calculate the "index" for each turn.

I would like to add this "index" to the turns so that a routine engine can use this information for routing.

I am considering using OSM and OSRM to realize this purpose.
After checking the documentation of OpenStreetMap and OSRM, my initial thoughts are:

  1. Customized OSM data by adding the "index table" to turns by using the features *:conditioal=(value)@ (condition), e.g restriction:conditional = 2.5 @(length=10.0 and width=2.5)
  2. Customized the turn penalty by configuring the process_node/process_way/process_turn to extract the index and then apply it to the turn penalty.

I really need to know whether the function I need can be developed by the current OSM and OSRM. Otherwise, I may need to look for another routine engine. Any suggestions on my designed function and initial thoughts.

Thank you!

@frodrigo
Copy link
Member

frodrigo commented Feb 2, 2021

@danpat
Copy link
Member

danpat commented Feb 2, 2021

This is doable, but note that you'll need to create a separate routing dataset for every truck configuration you support - OSRM can't customize the height/turn cost at query time.

@JetBelson
Copy link
Author

@JetBelson
Copy link
Author

This is doable, but note that you'll need to create a separate routing dataset for every truck configuration you support - OSRM can't customize the height/turn cost at query time.

Very useful reminders. Thank you!

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

No branches or pull requests

3 participants