Open Source Routing Machine

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The Open Source Routing Machine or OSRM is a C++ implementation of a high-performance routing engine for shortest paths in road networks. Licensed under the permissive 2-clause BSD license, OSRM is a free network service. OSRM supports Linux, FreeBSD, Windows, and Mac OS X platform.


It combines sophisticated routing algorithms with the open and free road network data of the OpenStreetMap (OSM) project. Shortest path computation on a continental sized network can take up to several seconds if it is done without a so-called speedup-technique. OSRM uses an implementation of Contraction Hierarchies and is able to compute and output a shortest path between any origin and destination within a few milliseconds, whereby the pure route computation takes much less time. Most effort is spent in annotating the route and transmitting the geometry over the network.

Since it is designed with OpenStreetMap compatibility in mind, OSM data files can be easily imported. A demo installation is sponsored by Karlsruhe Institute of Technology and previously by Geofabrik. OSRM is under active development.

OSRM was part of the 2011 Google Summer of Code class.[1]


  • 'Click-to-drag' dynamic routing, in the manner of Google Maps
  • Alternative routes
  • Free-to-use API
  • Free and open-source under the simplified two-clause BSD license

See also[edit]


Further reading[edit]

External links[edit]

As of 2012 May 18, this article is derived in whole or in part from Open Source Routing Machine. The copyright holder has licensed the content utilized under CC-By-SA and GFDL. All relevant terms must be followed.