Английская Википедия:GraphHopper

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Infobox software

GraphHopper is an open-source routing library and server written in Java and provides a web interface called GraphHopper Maps[1]Шаблон:Better source as well as a routing API over HTTP. It runs on the server, desktop, Android, iOS or Raspberry Pi.[2][3] By default OpenStreetMap data for the road network and elevation data from the Shuttle Radar Topography Mission is used.

GraphHopper can be configured to use different algorithms such as Dijkstra, A* and its bidirectional versions. To make routing fast enough for long paths (continental size) and avoid heuristical approaches GraphHopper uses contraction hierarchies by default. In the Java Magazine from Oracle, the author, Peter Karich, describes the techniques necessary to make the system memory efficient and fast.[4] Furthermore, GraphHopper is built on a large test suite including unit, integration and load tests.[5]

Version 1.0 was released in May 2020.[6]

The Apache License allows everyone to customize and integrate GraphHopper in free or commercial products, and together with the query speed and OpenStreetMap data this makes GraphHopper a possible alternative to existing routing services and GPS navigation software.[7]

Besides point-to-point routing for different vehicles GraphHopper can be used to calculate distance matrices which are then used as an input for vehicle routing problems.[8] Other use cases are:

Users

Notable users of GraphHopper are Rome2rio, Deutsche Bahn, Komoot, Gnome[13] and Flixbus. Since February 2015, GraphHopper has been one of the APIs powering routing on the official OpenStreetMap website and version 0.4 was released shortly afterwards in March 2015.[14][15]

Company

In January 2016, the developers of GraphHopper and jsprit formed the company GraphHopper GmbH.

GraphHopper Directions API

The GraphHopper Directions API is an offering of the GraphHopper GmbH and includes a Geocoding API, a Distance Matrix API, a Map Matching API, an Isochrone API and a Route Optimization API besides the Routing API[16]

See also

References

Шаблон:Reflist