I'm looking for a routing server/library with minimal hardware requirements. The software needs to be run offline on user's PC (preferably 4GB RAM and mediocre CPU).It doesn't need to be the most accurate nor the fastest. I just need snapping feature and 'best' route between two coordinates as a list of waypoints. I won't use adresses, turn by turn navigation etc...

For my webservice I use OSRM, it's great and robust but running it on the user machine would be a huge overkill and it would require enormous amounts of RAM (like 64GB for Europe) to even start it.

asked 11 Mar, 00:22

adamsc's gravatar image

adamsc
26113
accept rate: 0%


Graphhopper has a variant that should work on mobile devices https://github.com/graphhopper/graphhopper/ However this seems to be no longer actively maintained.

permanent link

answered 12 Mar, 08:06

SimonPoole's gravatar image

SimonPoole ♦
42.6k13310671
accept rate: 19%

You can use https://github.com/Tristramg/osm4routing2 to extract the routing graph from OSM, then any A* library to do reasonable point-to-point routing - pretty much every language has an A* implementation somewhere.

permanent link

answered 12 Mar, 09:25

Richard's gravatar image

Richard ♦
30.0k44267401
accept rate: 19%

edited 12 Mar, 09:26

BRouter was made to run on smartphones (Android), so it has low memory requirements by design. It has a server component (requires Java runtime) and can also be embedded in a Java application.

For a quick start, see the standalone bundle with the BRouter-Web client.

As routing profiles are evaluated at runtime, the data files can be used for all modes of transport. This flexibility comes at the cost of speed, it's way slower than OSRM.

[Disclaimer: I'm a maintainer of the BRouter-Web client]

permanent link

answered 13 Mar, 14:53

ikonor's gravatar image

ikonor
1.2k2918
accept rate: 21%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×115
×102
×1

question asked: 11 Mar, 00:22

question was seen: 408 times

last updated: 13 Mar, 14:53

powered by OSQA