Logo

The Open Source Routing Machine (OSRM) is a C++ implementation of a high-performance routing engine for shortest paths in road networks. 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 is able to compute and output a shortest path between any origin and destination within a few miliseconds. Since it is designed with OpenStreetMap compatibility in mind, OSM data files can be easily imported. A demo installation is provided by our friends at Geofabrik. OSRM is under active development.

The key features of OSRM are:


Support

Bugs should be reported by filing a ticket in the Bug Tracker

License

OSRM is free, open source, and available under the GNU Affero General Public License. Companies with concerns about the AGPL should contact us to work something out.

Platforms supported

Operating Systems Compilers Third Party dependencies
Linux (kernel >= 2.6.25)
FreeBSD
Windows
Mac OS X (more or less)
g++ 4.2.3 (with warnings and unsupported)
g++ 4.3+
llvm-g++/dragonegg 2.8+
Boost 1.41+
libxml2 2.7+
scons 2.10+
stxxl 1.3.1+
libprotobuf 2.30+

Current version

Version 0.1 (July 10, 2010) is a baseline release. It has basic features. Version 0.2 (March 2011) is much faster and resource friendly. While it is safe to use this version, the code in git master branch is much more advanced.

Major improvements in version 0.3

  • Better heuristics for preprocesssing
  • Turn costs and restrictions
  • Windows support (and Mac in principle)
  • OSM file preprocessing multi-threaded
  • Support for GCC 4.2 and also for systems not supporting OpenMP
  • User-definable speed profile
  • Better and more efficient polyline generalization
  • many, many bug fixes
  • many under-the-hood improvements
  • For a detailed list, please read the Timeline.

Links/Download

Current Stable Version Previous Stable Version Development Version
Download: [v0.3b tarball]
Git repository: [see above] [Browse] [Checkout] [Browse] [Checkout]