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 and view the source code, design documents, or content of the product. The open source model is a decentrali ...
routing Routing is the process of selecting a path for traffic in a Network theory, 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 ...
library and server written in
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
and provides a routing API over HTTP. It runs on the server, desktop, Android,
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
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 collaboration with Broadcom Inc., Broadcom. To commercialize the product and support its growing demand, the ...
. By default
OpenStreetMap OpenStreetMap (abbreviated OSM) is a free, Open Database License, open geographic database, map database updated and maintained by a community of volunteers via open collaboration. Contributors collect data from surveying, surveys, trace from Ae ...
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 56th parallel south, 56°S to 60th parallel north, 60°N, to generate the most complete high-resol ...
is used. The front-end is open-source too and called GraphHopper Maps. 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 An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination. Descript ...
, 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. The
Apache License The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software ...
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 GNSS navigation software a category of software that provide positioning services by utilizing data from satellite navigation systems. Key functions of satellite navigation software usually includes: # Positioning: ...
e.g. using the Maplibre Navigation SDK. 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 ...
s. Other use cases are: * Track vehicles via map matching - i.e. 'snap' real world GPS points to digital road network * Assist
urban planning Urban planning (also called city planning in some contexts) is the process of developing and designing land use and the built environment, including air, water, and the infrastructure passing into and out of urban areas, such as transportatio ...
*
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 Simulation, simulated experience that employs 3D near-eye displays and pose tracking to give the user an immersive feel of a virtual world. Applications of virtual reality include entertainment (particularly video gam ...
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 London boroughs, 32 boroughs. Its name derives from the location of the original ...


Users

Notable users of GraphHopper are Rome2rio,
Deutsche Bahn (, ; abbreviated as DB or DB AG ) is the national railway company of Germany, and a state-owned enterprise under the control of the German government. Headquartered in the Bahntower in Berlin, it is a joint-stock company ( AG). DB was fou ...
, Komoot,
Gnome A gnome () is a mythological creature and diminutive spirit in Renaissance magic and alchemy, introduced by Paracelsus in the 16th century and widely adopted by authors, including those of modern fantasy literature. They are typically depict ...
and
Flixbus FlixBus (; styled FLiXBUS) is a German brand that offers low-cost Intercity bus service, intercity coach services in Europe, North America, South America and Asia. It is owned by , which also operates FlixTrain, FlixCar, , and Greyhound Lines. F ...
. Since February 2015, GraphHopper has been one of the APIs powering routing on the official
OpenStreetMap OpenStreetMap (abbreviated OSM) is a free, Open Database License, open geographic database, map database updated and maintained by a community of volunteers via open collaboration. Contributors collect data from surveying, surveys, trace from Ae ...
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, a Cluster API, a Profiles 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