Globaler Valhalla Server online

12.11.2021 von Nils Nolde

Zusätzlich zum bereits existierenden und viel genutzten OSRM Server hat der FOSSGIS e.V. nun einen Förderantrag genehmigt für die Bereitstellung einer globalen und freien Server Instanz der FOSS Routing Software Valhalla.

Ein interaktiver Router ist auf https://valhalla.openstreetmap.de verfügbar.

Was ist Valhalla?

Valhalla ist ein ursprüngliches Mapzen Projekt das 2015 gestartet wurde: ein C++ Framework für hoch-dynamisches und effizientes Openstreetmap Routing.

Valhalla baut, im Gegensatz zu den meisten vergleichbaren FOSS Lösungen, auf einem gekachelten Graphen auf, der, ähnlich wie Map Vector Tiles, in eine Hierarchie gegliedert ist. Damit wird der RAM Verbrauch beim Betrieb eines Servers relativ gering gehalten, gleichzeitig können alle Bewegungsprofile auf dem gleichen Graphen agieren. Daher kann man Valhalla problemlos auch offline auf Mobilgeräten laufen lassen. Aufgrund der hoch flexiblen Routingalgorithmen und der reichhaltigen Attribution in den Kacheln, lässt sich die Routenfindung mit vielen Einstellungsmöglichkeiten bei jeder Routenanfrage anpassen, u.a.:

  • Polygone vermeiden, z.Bsp. bei großen Events oder temporären Baustellen
  • Fahrzeugdimensionen einhalten, z.Bsp. Höhe und Gewicht des Autos/LKWs
  • Höhenmeter vermeiden oder begünstigen für Fahrrad/Fußgänger
  • jede Menge anderer “Costing” Optionen wie Maut/Autobahn/Spielstraßen/Grenzübergänge/Fähren vermeiden/begünstigen
  • multimodales Routing (noch nicht verfügbar auf dem FOSSGIS Server)
  • Verkehrseinbindung, live & historisch (nicht verfügbar auf dem FOSSGIS Server)

Eine vollständige Liste aller Optionen findet man in der Dokumentation.

Eine weitere Besonderheit von Valhalla ist, dass die meisten obigen Optionen für alle Endpunkte gelten, also kann man sogar eine Matrix berechnen die die Vehikeldimensionen bei der Routenfindung beachtet.

Valhalla Isochrone Berlin

Valhalla Isochrone in Berlin
© Data by OpenStreetMap Contributors, © Position base map by Carto

Wie nutzt man Valhalla?

Ein interaktiver Router ist auf https://valhalla.openstreetmap.de verfügbar.

Die HTTP Schnittstelle ist erreichbar auf https://valhalla1.openstreetmap.de (beachte die 1). Die folgenden Endpunkte sind freigeschaltet (Links führen zur entsprechenden Dokumentation):

Es gibt auch eine Reihe unterstützender FOSS für Valhalla um den Einstieg zu erleichtern:

Es gelten die aktuellen Nutzungsbedingungen der FOSSGIS e.V. Dienste.

Vergleich Valhalla & OSRM

Man könnte annehmen dass es sich bei beiden um Konkurrenten handelt. Tatsächlich erfüllen sie recht unterschiedliche Aufgaben in ihrem derzeitigen Entwicklungsstadium und ergänzen sich funktional hervorragend: während OSRM sich über riesige Matrizen in Rekordzeit freut, ist Valhalla feinfühliger und kann auch sehr spezielle Routingoptionen wunderbar umsetzen.

Ein paar zusätzliche Vergleiche:

  • OSRM erfordert eine riesige Menge RAM für den Graphen, während Valhalla auf einem alten Smartphone (theoretisch) den ganzen Planeten laufen lassen kann
  • Valhalla benötigt relativ viel zusätzlichen RAM für individuelle Anfragen, während OSRM wenig extra RAM braucht für selbst sehr große Anfragen
  • Die Matrix API (und in geringerem Maße auch die Routing API) ist Größenordnungen schneller bei OSRM, Valhalla ist dafür vielseitiger einsetzbar (funktional und Hardware)