Search code examples
routesopenstreetmaposrm

OSRM Traffic Prediction


I understand that I can load traffic data into OSRM via osrm-contract:
https://github.com/Project-OSRM/osrm-backend/wiki/Traffic

However, I want to perform a routing by time of day and day of week in the future. Eg:

  • From A to B next Wednesday at 8am
  • From A to B next Wednesday at 2pm
  • From A to B next Saturday at 8am

So I want it to consider rush hour, weekend traffic, etc.

I have lots of historical GPS data across cities that can be used to create the CSV file specified above for osrm-contract. However, it assumes traffic is the same across all days/hours and I need to have different "traffic profiles".

I thought about creating multiple different extractions with varying traffic patterns. Eg:

  • Weekday morning traffic
  • Weekday afternoon traffic
  • Weekday evening traffic
  • Weekend morning traffic
  • Weekend afternoon traffic
  • Weekend evening traffic

This would need 6 running instances of OSRM though.

Is there a better way to do this?

Thanks


Solution

  • Unfortunately, it looks like OSRM does not support it at this time.

    Valhalla may be a better option:
    https://valhalla.readthedocs.io/en/latest/thor/simple_traffic/