User Tools

Site Tools


routing_in_transportation_networks

This is an old revision of the document!


Graphenintegrationsplatform (GIP)

Official, intermodal traffic reference system for Austria.

Download

Downloads are available as part of the Open Government Data initiative here.

The dataset contains geographical and routing data, as Intrest Data Format (IDF) export.

Routing

Download this part of the dataset for routing purposes.

OSRM

Server API

Doc

Time and distance

# from Timisoara to Sevilla
curl http://10.101.21.34:5000/route/v1/driving/21.2250,45.7557;-5.9251,37.3682?overview=false
# coordinates are always lon/lat

Geometries

# from Graz to Vienna

curl "http://10.101.21.34:5000/route/v1/driving/9.7303,47.4174;15.4571,47.0503?overview=false"

Future work

Admin

Preprocess

Hardware

You will need a resourceful server with at least

  • 200G RAM for planet
  • 60G RAM for Europe.

I used flexo for preprocessing CH.

Software

Prerequisites

git clone https://github.com/Project-OSRM/osrm-backend.git
cd osrm-backend/
mkdir -p build
cd build/
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .

wget http://planet.osm.org/pbf/planet-latest.osm.pbf

Profiles define routing behaviour (turn restrictions etc).

Then decide which routing type you want: Dijkstra or Contraction hierarchies:

Contraction Hierarchies (CH)

osrm-extract -p profiles/car.lua the.osm.pbf
osrm-contract the.osrm

Preprocessing the planet file takes about

  • ~3 hours for extracting planet data
  • ~10 for contracting planet data

Multi-Level Dijkstra (MLD)

osrm-extract -p profiles/car.lua  the.osm.pbf
osrm-partition the.osrm
osrm-customize the.osrm

Deploy service

Hardware

A tinier server is sufficient here.

For planet you'll need > 100G RAM.

For Europe I used one with 64G RAM.

Software

Prerequisites

git clone https://github.com/Project-OSRM/osrm-backend.git
cd osrm-backend/
mkdir -p build
cd build/
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .

# and install

sudo cmake --build . --target install

# uninstall is possible too

sudo cmake –build . –target uninstall

Contraction Hierarchies (CH)

osrm-routed --algorithm=ch  --max-table-size=1000  the.osrm # to allow for bigger distance matrix

Multi-Level Dijkstra (MLD)

osrm-routed –algorithm=MLD the.osrm
routing_in_transportation_networks.1534930916.txt.gz · Last modified: 2018/08/22 11:41 by mantis