HOME

TheInfoList



OR:

GraphHopper is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
routing Routing is the process of selecting a path for traffic in a network or between or across multiple networks. Broadly, routing is performed in many types of networks, including circuit-switched networks, such as the public switched telephone netw ...
library and server written in
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
and provides a web interface called GraphHopper Maps as well as a routing API over HTTP. It runs on the server, desktop, Android,
iOS iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also includes ...
or
Raspberry Pi Raspberry Pi () is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in association with Broadcom. The Raspberry Pi project originally leaned towards the promotion of teaching basic ...
. By default
OpenStreetMap OpenStreetMap (OSM) is a free, open geographic database updated and maintained by a community of volunteers via open collaboration. Contributors collect data from surveys, trace from aerial imagery and also import from other freely licensed g ...
data for the road network and elevation data from the
Shuttle Radar Topography Mission The Shuttle Radar Topography Mission (SRTM) is an international research effort that obtained digital elevation models on a near-global scale from 56°S to 60°N, to generate the most complete high-resolution digital topographic database of Ea ...
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 In computer science, the method of contraction hierarchies is a speed-up technique for finding the shortest-path in a graph. The most intuitive applications are car-navigation systems: a user wants to drive from A to B using the quickest possible ...
by default. In the Java Magazine from
Oracle An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination. Description The word '' ...
, the author, Peter Karich, describes the techniques necessary to make the system memory efficient and fast. Furthermore, GraphHopper is built on a large test suite including unit, integration and load tests. Version 1.0 was released in May 2020. 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 Satellite navigation software or GPS navigation software usually falls into one of the following two categories: # Navigation with route calculation and directions from the software to the user of the route to take, based on a vector-based map, n ...
. 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 problem The vehicle routing problem (VRP) is a combinatorial optimization and integer programming problem which asks "What is the optimal set of routes for a fleet of vehicles to traverse in order to deliver to a given set of customers?" It generalises t ...
s. Other use cases are: * Track vehicles via
map matching Map matching is the problem of how to match recorded geographic coordinates to a logical model of the real world, typically using some form of Geographic Information System. The most common approach is to take recorded, serial location points (e.g. ...
- i.e. 'snap' real world GPS points to digital road network * Assist
urban planning Urban planning, also known as town planning, city planning, regional planning, or rural planning, is a technical and political process that is focused on the development and design of land use and the built environment, including air, water, ...
*
Traffic simulation Traffic simulation or the simulation of transportation systems is the computer simulation, mathematical modeling of transportation systems (e.g., freeway junctions, arterial routes, roundabouts, downtown grid systems, etc.) through the application o ...
* Isochrone calculation - i.e. determining the reachability for cars, pedestrians or bikes * Indoor routing like for warehouse optimizations or tradeshow planning * Eco-efficient routing *
Virtual reality Virtual reality (VR) is a simulated experience that employs pose tracking and 3D near-eye displays to give the user an immersive feel of a virtual world. Applications of virtual reality include entertainment (particularly video games), educ ...
games like
Scotland Yard Scotland Yard (officially New Scotland Yard) is the headquarters of the Metropolitan Police, the territorial police force responsible for policing Greater London's 32 boroughs, but not the City of London, the square mile that forms London's ...


Users

Notable users of GraphHopper are
Rome2rio Rome2rio is an Australian online multimodal transport journey planner offering traveling services globally. The company is based in Melbourne, Australia. It is owned by the German online travel comparison and booking website Omio. History Rome ...
,
Deutsche Bahn The (; abbreviated as DB or DB AG) is the national railway company of Germany. Headquartered in the Bahntower in Berlin, it is a joint-stock company ( AG). The Federal Republic of Germany is its single shareholder. describes itself as the se ...
, Komoot,
Gnome A gnome is a mythological creature and diminutive spirit in Renaissance magic and alchemy, first introduced by Paracelsus in the 16th century and later adopted by more recent authors including those of modern fantasy literature. Its characte ...
and Flixbus. Since February 2015, GraphHopper has been one of the APIs powering routing on the official
OpenStreetMap OpenStreetMap (OSM) is a free, open geographic database updated and maintained by a community of volunteers via open collaboration. Contributors collect data from surveys, trace from aerial imagery and also import from other freely licensed g ...
website and version 0.4 was released shortly afterwards in March 2015.


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


See also

* Open Source Routing Machine


References

{{Reflist Java (programming language) 2015 software Route planning software