Re: [OSRM-talk] Allowing trunk roads for foot and bicycle directions in the British Isles.

2021-04-25 Thread Daniel Patterson via OSRM-talk
The missing piece is OSRM following the guidelines outlined here:
https://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Access_restrictions

Practically, here's what needs to happen:

  1. Someone needs to make a GeoJSON file with these country boundaries,
and set properties on them that describe the access defaults.
  2. Use the `--location-dependent-data` flag to `osrm-extract` so the
properties are available to the Lua scripts setting access rules
  3. Update the Lua scripts to know what to do when the location-dependent
properties are present.

I have enough time to write this down as a guideline for someone, but not
enough spare time to actually go ahead and do it :-/

daniel

On Sat, Apr 24, 2021 at 1:15 PM ika-chan!  wrote:

> Hello,
>
> Last week, VictorIE and I came into conflict about the use of
> "access=yes" on trunk roads ("highway=trunk" and "highway=trunk_link")
> in the Republic of Ireland
> (https://www.openstreetmap.org/changeset/93624048).
>
> In the Republic of Ireland, Greece, and the United Kingdom, trunk roads
> are all-purpose roads that all users can legally use, unless
> specifically prohibited (with the use of the tags "motorroad=yes" or
> "foot=no", etc.): in Greece, "highway=trunk" means an all-purpose
> National Road on an E-Road network
> (https://wiki.openstreetmap.org/wiki/Greece#Highways_in_Greece).
>
> VictorIE believes that it is currently necessary to use "access=yes" on
> trunk roads, because your router does not allow pedestrian and bicycle
> journeys to use trunk roads, even though it is legal to do so
> (
> https://www.openstreetmap.org/directions?engine=fossgis_osrm_foot=51.98803%2C-7.74369%3B51.98943%2C-7.74110).
>
> My belief is that using "access=yes" on trunk roads in IE, GR and GB is
> redundant, and my belief appears to be backed by Osmose
> (
> http://osmose.openstreetmap.fr/en/map/#zoom=12=53.2952=-6.4592=3220=1%2C2%2C3).
>
>
>
> Therefore, I have to write to ask you if you can find a way to update
> the router so that pedestrian and bicycle journeys can use trunk roads
> in Republic of Ireland, Greece and the United Kingdom. If OSRM can
> already recognise left- and right-hand traffic, I do not think that the
> updates will be too hard.
>
> Best,
>
> -- ika-chan!
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] How to set speed values back to lua after using speed updates

2020-11-19 Thread Daniel Patterson via OSRM-talk
The way to do this is to keep a copy of the original files - when you run
`osrm-customize`, do it on a *copy* of the originals, then load that
modified copy with `osrm-datastore`.

daniel

On Thu, Nov 19, 2020 at 9:09 AM S O  wrote:

>
> Dear all:
>
> I am using the osrm-datastore and osrm-routed -s to update the speeds
> without restarting the server and route with different traffic scenarios
> (MLD routing).
>
> Is there a way to restore/reset the speeds back to default values within
> the same instance after I updated the speeds of some segments with a CSV
> file?
>
> Once again, thank you for the help!!
>
> --
> Silvia O.
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Comparing OSRM with the car routing by OpenTripPlanner

2020-11-03 Thread Daniel Patterson via OSRM-talk
I would verify that OSRM considers the highway routable at all - if OSRM
has excluded it for some reason (e.g. HOV-only, under construction, etc),
then it'll be forced to find the next best thing.

Also remember - OSRM is just guessing on the travel speeds based on the
tags present on ways in OSM - these guesses may not always be accurate.
OTP is making the same guesses, but has different opinions on how to
interpret the OSM tags.  Google generates a travel speed model from other
sources which is more realistic than OSM+OSRM out of the box.

Try moving the start/end coordinates around and see if you can confirm that
the desired highway is even routable with OSRM.  The osrm-frontend project (
https://github.com/Project-OSRM/osrm-frontend/) is handy for doing this.
You can also visualize OSRM's view of the routing graph using the debug
viewer: https://github.com/Project-OSRM/osrm-frontend/tree/gh-pages/debug
(modify index.html to point to your own OSRM server) - if the highways have
no coloring, then they're not routable.

daniel

On Tue, Nov 3, 2020 at 12:48 PM Xavier Prudent 
wrote:

> Dear all,
>
> I am comparing two routing machines: openTriplanner and OSRM on the OSM
> map of Québec city (Canada) when looking for the best route by car.
>
> I get very puzzling differences, just running the default versions and
> configurations of OSRM and OTP for these coordinates:
>
> origin
> 46.793187,-71.183014
> destination
> 46.770641,-71.285499
> at 8am, mode car.
>
> The best route by OSRM is a 16km (18min) long, while the OTP
> recommandation is a 20km (24min) one.
> Google map recommends the 20km one (21min), the 16km road having a
> duration of 25 min.
>
> The 20km route goes along a highway, while the 16km one uses a primary
> road, I don't get why OSRM thinks this road is faster, while OTP points the
> opposite.
>
> Are you able to reproduce this discrepancy? Does that make sense to you?
>
> Thanks,
>
> Xavier
>
> --
>
> *Xavier Prudent *
>
> *Data Scientist  - Data Mining - Machine Learning*
>
> Web:* www.xavierprudent.com *
> Tel (Québec)  : (514) 668 76 46
> Skype : xavierprudent
>
>
>
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] pont de Québec not in the routing steps of OSRM

2020-11-02 Thread Daniel Patterson via OSRM-talk
The "steps" that OSRM emits are roughly intended to be human consumable
instructions.  We often collapse "obvious" maneuvers where it'd be annoying
to receive a visual/verbal prompt.  For this reason, "steps" aren't great
objects to use for data analysis, unless you're specifically interested in
the heuristics of ideal navigation instructions.

The alternative I'd suggest would be to find a couple of OSM node IDs that
are on the way you're interested in, and use the `annotations=nodes`
parameter to return the list of nodes along the path - search that list for
your well-known-nodes and you should have confirmation that a path
traversed the geometry you care about.

daniel

On Mon, Nov 2, 2020 at 2:12 PM Xavier Prudent 
wrote:

> Dear OSRMers,
>
> I use OSRM to determine through which bridge a car would cross the river
> St Laurent in Quebec city (Canada).
> When running on the default OSM map, and using steps=true in the API call,
>
> curl -s
> http://127.0.0.1:4040/route/v1/driving/-71.2429112,46.7469116;-71.3315801,46.7701873?steps=true=true=full
>
> I get all steps and street names for the itinerary, except for the Pont of
> Québec. When doing the same with openTripPlanner I find its name in the
> steps sequence.
>
> Why cannot I see this bridge in the OSRM routing steps?
>
> Thank you,
>
> regards,
>
> Xavier Prudent
>
>
> --
>
> *Xavier Prudent *
>
> *Data Scientist  - Data Mining - Machine Learning*
>
> Web:* www.xavierprudent.com *
> Tel (Québec)  : (514) 668 76 46
> Skype : xavierprudent
>
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] New v5.23.0 release

2020-10-15 Thread Daniel Patterson via OSRM-talk
Dammit, sorry Julien, I'd forgotten about that issue - I'm not using the
libosrm bindings directly, so this change slipped my mind.

If someone has time to fix the interface, we can release 5.24.0 to address
it, and mark 5.23.0 as a dud.  The interface change clearly breaks semver
rules as it's not backward compatible.  The alternative would be to release
OSRM 6.0.0, but this feels like much too small a change to justify doing
that.

While I managed to find time to work through the release process, I do not
have time to do any significant refactoring work :-/

daniel

On Thu, Oct 15, 2020 at 12:38 AM Julien Coupey  wrote:

> Hi Daniel and all
>
> Thanks for your work on this release, and all the various recent
> contributions that made it possible. It's great to see a new OSRM
> version, first one in a long time!
>
> I'd like to ask for a clarification though, if possible, on the status
> of libosrm regarding this new version and possible future ones. There
> are a couple of reports about the API breaking changes ([1] and [2]). It
> means that projects relying on libosrm v5.* no longer compile with
> v5.22, and now v5.23. This is a major problem for downstream users and
> maintainers, especially since the OSRM release process has long been
> adhering to the semver scheme. I only see two ways out:
>
> 1. The new v5.23 release somehow endorses the API change (after all a
> fix now would also be a new change from the last two releases). In which
> case downstream users will have to fiddle with adjustments based on
> libosrm minor version.
>
> 2. This is considered as something that must be fixed at some point in
> the future. Then no action is required downstream, except stating that
> current libosrm versions are no longer compatible until a patch or new
> minor version is released.
>
> Knowing which option is the most likely would definitely help.
>
> [1] https://github.com/Project-OSRM/osrm-backend/issues/5548
> [2] https://github.com/Project-OSRM/osrm-backend/issues/5741
>
> Regards
> Julien
>
> On 14/10/2020 23:14, Daniel Patterson via OSRM-talk wrote:
> > Hello all,
> >
> >Well, after a long hiatus, I've finally had time to cut a new
> > release.  I've bundled up a bunch of the changes that have been
> > submitted over the last couple of years, and tagged 5.23.0, and cleaned
> > up the changelog/master branch which had been left dangling in an
> > unclear state for a while.  Build/publish of the various binaries is
> > underway and should be complete soon.  Here's what's changed - mostly
> > bugfixes, but a few small features as well.
> >
> >- Changes from 5.22.0
> >  - Build:
> >- FIXED: pessimistic calls to std::move
> > [#5560](https://github.com/Project-OSRM/osrm-backend/pull/5561)
> >  - Features:
> >- ADDED: new API parameter - `snapping=any|default` to allow
> > snapping to previously unsnappable edges
> > [#5361](https://github.com/Project-OSRM/osrm-backend/pull/5361)
> >- ADDED: keepalive support to the osrm-routed HTTP server
> > [#5518](https://github.com/Project-OSRM/osrm-backend/pull/5518)
> >- ADDED: flatbuffers output format support
> > [#5513](https://github.com/Project-OSRM/osrm-backend/pull/5513)
> >- ADDED: Global 'skip_waypoints' option
> > [#5556](https://github.com/Project-OSRM/osrm-backend/pull/5556)
> >- FIXED: Install the libosrm_guidance library correctly
> > [#5604](https://github.com/Project-OSRM/osrm-backend/pull/5604)
> >- FIXED: Http Handler can now deal witch optional whitespace
> > between header-key and -value
> > [#5606](https://github.com/Project-OSRM/osrm-backend/issues/5606)
> >  - Routing:
> >- CHANGED: allow routing past `barrier=arch`
> > [#5352](https://github.com/Project-OSRM/osrm-backend/pull/5352)
> >- CHANGED: default car weight was reduced to 2000 kg.
> > [#5371](https://github.com/Project-OSRM/osrm-backend/pull/5371)
> >- CHANGED: default car height was reduced to 2 meters.
> > [#5389](https://github.com/Project-OSRM/osrm-backend/pull/5389)
> >- FIXED: treat `bicycle=use_sidepath` as no access on the tagged
> > way. [#5622](https://github.com/Project-OSRM/osrm-backend/pull/5622)
> >- FIXED: fix table result when source and destination on same
> > one-way segment.
> > [#5828](https://github.com/Project-OSRM/osrm-backend/pull/5828)
> >- FIXED: fix occasional segfault when swapping data with
> > osrm-datastore and using `exclude=`
> > [#5844](https://github.com/Project-OSRM/osrm-backend/pull/5844)
> >- FIXED: fix crash in MLD alternative search if source or 

[OSRM-talk] New v5.23.0 release

2020-10-14 Thread Daniel Patterson via OSRM-talk
Hello all,

  Well, after a long hiatus, I've finally had time to cut a new release.
I've bundled up a bunch of the changes that have been submitted over the
last couple of years, and tagged 5.23.0, and cleaned up the
changelog/master branch which had been left dangling in an unclear state
for a while.  Build/publish of the various binaries is underway and should
be complete soon.  Here's what's changed - mostly bugfixes, but a few small
features as well.

  - Changes from 5.22.0
- Build:
  - FIXED: pessimistic calls to std::move [#5560](
https://github.com/Project-OSRM/osrm-backend/pull/5561)
- Features:
  - ADDED: new API parameter - `snapping=any|default` to allow snapping
to previously unsnappable edges [#5361](
https://github.com/Project-OSRM/osrm-backend/pull/5361)
  - ADDED: keepalive support to the osrm-routed HTTP server [#5518](
https://github.com/Project-OSRM/osrm-backend/pull/5518)
  - ADDED: flatbuffers output format support [#5513](
https://github.com/Project-OSRM/osrm-backend/pull/5513)
  - ADDED: Global 'skip_waypoints' option [#5556](
https://github.com/Project-OSRM/osrm-backend/pull/5556)
  - FIXED: Install the libosrm_guidance library correctly [#5604](
https://github.com/Project-OSRM/osrm-backend/pull/5604)
  - FIXED: Http Handler can now deal witch optional whitespace between
header-key and -value [#5606](
https://github.com/Project-OSRM/osrm-backend/issues/5606)
- Routing:
  - CHANGED: allow routing past `barrier=arch` [#5352](
https://github.com/Project-OSRM/osrm-backend/pull/5352)
  - CHANGED: default car weight was reduced to 2000 kg. [#5371](
https://github.com/Project-OSRM/osrm-backend/pull/5371)
  - CHANGED: default car height was reduced to 2 meters. [#5389](
https://github.com/Project-OSRM/osrm-backend/pull/5389)
  - FIXED: treat `bicycle=use_sidepath` as no access on the tagged way.
[#5622](https://github.com/Project-OSRM/osrm-backend/pull/5622)
  - FIXED: fix table result when source and destination on same one-way
segment. [#5828](https://github.com/Project-OSRM/osrm-backend/pull/5828)
  - FIXED: fix occasional segfault when swapping data with
osrm-datastore and using `exclude=` [#5844](
https://github.com/Project-OSRM/osrm-backend/pull/5844)
  - FIXED: fix crash in MLD alternative search if source or target are
invalid [#5851](https://github.com/Project-OSRM/osrm-backend/pull/5851)
- Misc:
  - CHANGED: Reduce memory usage for raster source handling. [#5572](
https://github.com/Project-OSRM/osrm-backend/pull/5572)
  - CHANGED: Add cmake option `ENABLE_DEBUG_LOGGING` to control whether
output debug logging. [#3427](
https://github.com/Project-OSRM/osrm-backend/issues/3427)
  - CHANGED: updated extent of Hong Kong as left hand drive country.
[#5535](https://github.com/Project-OSRM/osrm-backend/issues/5535)
  - FIXED: corrected error message when failing to snap input
coordinates [#5846](https://github.com/Project-OSRM/osrm-backend/pull/5846)
- Infrastructure
  - REMOVED: STXXL support removed as STXXL became abandonware. [#5760](
https://github.com/Project-OSRM/osrm-backend/pull/5760)

daniel
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] OSRM does not use date restrictions in conditional access?

2020-10-13 Thread Daniel Patterson via OSRM-talk
Michael,

  You can pass the `--parse-conditionals-from-now` option to
`osrm-contract`, and it will enable/disable access to `access:conditional`
ways according to the timestamp you type in.  Not so useful for time-of-day
restrictions, but for longer time spanning restrictions, it should do the
trick.

daniel

On Tue, Oct 13, 2020 at 12:39 AM michael spreng 
wrote:

> Hi Maarten
>
> It currently does not. There is an update cycle of about 4 days. I think
> such date ranges would make sense to use at the time of generation
> (however day time ranges would still be ignored). But that is not yet
> implemented as far as I know. It could be implemented in the lua
> profile, so probably no deeper knowledge of osrm is necessary to
> implement this.
>
> Michael
>
> On 13.10.20 08:20, Maarten Deen wrote:
> > Conditional access rules for time and date restrictions follow the same
> > syntax as opening hours rules, see
> > https://wiki.openstreetmap.org/wiki/Conditional_restrictions#Condition
> >
> > I have way https://www.openstreetmap.org/way/96440420 with
> > highway=cycleway+access:conditional=no @ (2019 Okt 07-2021 Apr 29)
> > This cycleway is inaccessible from october 7th 2019 until april 29th
> > 2021, so currently it should not be routed over.
> > But OSRM cycle routing does use this road:
> >
> https://www.openstreetmap.org/directions?engine=fossgis_osrm_bike=51.9792%2C4.2676%3B51.9835%2C4.2554#map=17/51.98019/4.26387
> >
> >
> > Does OSRM not use conditional restrictions?
> >
> > Regards,
> > Maarten
> >
> > ___
> > OSRM-talk mailing list
> > OSRM-talk@openstreetmap.org
> > https://lists.openstreetmap.org/listinfo/osrm-talk
>
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Recreating the same route in another dataset

2020-10-08 Thread Daniel Patterson via OSRM-talk
Take the route geometry you obtained from your 2020 dataset, and use the
`/matching`  service to match that to your older dataset.

If it's impossible to match (e.g. because roads disappeared), well, then
it's impossible to match.  The `/matching` service allows for some
coordinate imprecision, so it should take care of roads that were moved a
bit.

daniel

On Thu, Oct 8, 2020 at 8:11 AM Martin Schmidl  wrote:

> Hi,
>
> I am calculating a route with OSRM on my dataset of a city in 2020. I want
> to try if I can do exactly the same route on an older dataset of the same
> city (e.g in 2014). At the moment I am computing the route in 2020 and
> extracting the nodes of the fastest route. I check which of the nodes did
> not exist back in 2014 with Overpass and delete those from the list of
> nodes which i have to visit. Now the list of nodes gets converted to their
> respective coordinates in 2014. However, when I want to route over all the
> segments in order (by iteratively routing segments between those nodes in
> OSRM), I sometimes get loops, which I can't seem to prevent because a node
> in 2020 and 2014 might exist, but might not be exactly on a road in 2014
> (screenshot of an example attached).
>
> Maybe someone worked on something similar before and got an idea how to
> solve this, i'd appreciate it!
>
>
> Best regards
> Martin
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Table request still running even though requesting server has already timed-out the request

2020-07-06 Thread Daniel Patterson via OSRM-talk
No - OSRM doesn't have any code to interrupt a thread that's working on a
calculation.  We'd need to add code that periodically checks if it should
cancel a long-running algorithm.

daniel

On Mon, Jul 6, 2020 at 9:50 AM ryan.bis...@etruckbiz.com <
ryan.bis...@etruckbiz.com> wrote:

> So I have a server that request a table of 100+ locations this can take a
> bit of time so when the server gets overloaded it times out on waiting for
> the response, but as far as I’m aware that doesn’t stop the table from
> continuing to process or from being removed from the queue. Is there a way
> I can do this?
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Kilometers in /table route

2020-06-09 Thread Daniel Patterson via OSRM-talk
You need to add `?annotations=duration,distance` to your API call - then
you'll get metres back as well.

daniel

On Tue, Jun 9, 2020 at 7:24 AM Aurélien   wrote:

> Hi,
>
> Can someone explain me why there is no kilometers in the /table route ?
>
> Is it a technical problem or a functional non sense ?
>
> Thank you very much,
>
> Kin
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Need help: Customizing weights in Profile shows inconsistent results with Dijsktra

2020-04-14 Thread Daniel Patterson via OSRM-talk
I would say that the first thing to do to diagnose the problem is to find
the shortest possible path (fewest edges) that exhibit this problem for you.

At first glance, I'd say that your BPR values aren't what you think they
are somewhere along your route, but it's impossible to say exactly where
they might be incorrect.

daniel

On Tue, Apr 14, 2020 at 2:39 AM Niharika Shrivastava <
chunnushrivast...@gmail.com> wrote:

> Hello, I'm new to OSRM and I went through previous issues and couldn't
> find much related to this, hence posting it here.
>
> I had used a python library OSMnx to extract Singapore's data and changed
> certain edge attributes for it. I calculated an edge attribute `"BPR"`
> (float) and stored it in the graph (This is travel time in case of real
> traffic data). I then converted this modified graph into a shapefile and
> then converted the shapefile into OSM XML using JOSM. I fed this to OSRM in
> order to use CH. I want to find the shortest route between two points
> wherein my weights (or cost) are the BPR value I had calculated. I
> understand I have to specify that in the car profile. This is how I
> specified it:
>
> ```
> function setup()
>   return {
> properties = {
>   ...
>   weight_name = 'congestion',
>   ...
> },
>   ...
> }
>
>
> function process_way(profile, way, result, relations)
>   local data = {
> -- prefetch tags
> ...
> BPR = way:get_value_by_key('BPR')
>   }
>
>   result.weight = data.BPR
>   ...
> }
> ```
>
> This is the JSON response I get for a certain query:
> ```
> {'code': 'Ok',
>  'routes': [{'geometry': 's}gG{ijyReEnNdm@|Wpl@~}@b\\lfAw\\twAbFjt@wM
> `ZwSpAGnNgN|Dvm@fWwHhb@bErz@qFxeAzVfkAfr@b{Ak_@rr@ocA~dAgCda@ji@dz@`j@di
> @`Sfi@PfQcRpc@ySyCgw@~XjEx]dHDkEl\\ju@lf@ii@n}@oVqEiKlR_Elw@bJd[lc@wFdKf
> [',
>'legs': [{'steps': [],
>  'distance': 32298.2,
>  'duration': 2308.4,
>  'summary': '',
>  'weight': 2179.6}],
>'distance': 32298.2,
>'duration': 2308.4,
>'weight_name': 'congestion',
>'weight': 2179.6}],
>  'waypoints': [{'hint':
> 'YwYBgG8GAYALAQAAHN-XQWpx4j0AAA0BAAAJyOIxBiSzFADI4jEGJLMUzwFqJcKJ',
>'distance': 0,
>'name': 'Tampines Avenue 8',
>'location': [103.932616, 1.35658]},
>   {'hint':
> 'EAYBgBcGAYAUPzfZQQAAABkJ6oIuBlR3FADqgi4GVHcULwpqJcKJ',
>'distance': 0,
>'name': 'Boon Lay Drive',
>'location': [103.711466, 1.341268]}]}
> ```
>
> Looking at this part from the JSON:
>  ```
>  'duration': 2308.4,
>   'weight': 2179.6}],
> ```
> As I understand, weight is the summation of BPR values for each edge.
> Duration is estimated free flow time:` length/max_speed for each edge`. The
> `value of weight should be >= duration` which is true when I use Dijkstra
> for routing using edge weights as BPR value (`3155.27`). But over here,
> thats not the case.
>
> BPR = duration*(some delay based on traffic) >= duration in case of no
> traffic
>
> Can someone please point out if my Profile is wrongly written or if I've
> missed any steps?
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Nondeterminism in OSRM response

2020-04-06 Thread Daniel Patterson via OSRM-talk
Yeah - osrm-routed uses the SO_REUSEPORT socket option (see
https://lwn.net/Articles/542629/), which means you can run two copies of
osrm-routed, and the operating system will round-robin incoming connections
between the two processes.
Handy if you want to do lossless handover from one process to another, but
can cause some confusion if you forget you've already got osrm-routed
running.

daniel

On Mon, Apr 6, 2020 at 2:52 PM Rohit Sivakumar  wrote:

> Please ignore the previous email.
>
> It appears an older osrm server on my machine had not terminated properly,
> causing the nondeterminism.
>
> On Mon, Apr 6, 2020 at 10:34 AM Rohit Sivakumar  wrote:
>
>> Hi,
>>
>> I've been trying to build a profile for large vehicles on osrm. Since I
>> couldn't find out-of-the-box solutions to disable all the via-way u-turns
>> using just the vehicle profiles, I wrote a script last week to detect and
>> add u-turn restrictions wherever possible to an .osm file passed as input.
>>
>> The problem is, osrm respects these restrictions sometimes, but not
>> always. What's even odd is that the same Distance API call (same endpoint
>> and input parameters, same profile) sometimes returns a route with u-turns
>> and at other times it without the u-turns.
>>
>> Has anyone encountered nondeterminism in osrm before ? I can provide more
>> information if this would help.
>>
>> Here's an osrm-frontend screenshot of one such instance where the exact
>> same api-call is made to my local server, but returns two different routes:
>> https://pasteboard.co/J2yZmbX.png
>>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


[OSRM-talk] OSRM Demoserver - call for hosting volunteers

2020-01-24 Thread Daniel Patterson via OSRM-talk
Hi all,

On Mar 09, 2020, the TLS certificate for router.project-osrm.org is going
to expire.  At the same time, Mapbox is going to shutdown our hosting of
that service.  As many of you have probably noticed, our investment in the
OSRM codebase has greatly decreased over the last year.

This is a call to the community to see if someone else is willing to take
up the mantle for running the demo server.  If nobody steps up, then the
service will stop working on Mar 09, 2020.

The demoserver currently hovers at around 10k requests/minute with peaks up
to about 50k.

I've also posted a ticket about this at
https://github.com/Project-OSRM/osrm-backend/issues/5655

daniel
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] 403 when installing the node.js bindings

2020-01-21 Thread Daniel Patterson via OSRM-talk
We haven't published binaries for newer node versions - you'll need to
compile them yourself.

IIRC, there should be working published binaries for Node 8 and 10, but
nothing newer at this stage.

Unfortunately, I'm not in a position to spend any time doing a new release,
so I can't say when it might magically get fixed.

daniel

On Mon, Jan 20, 2020 at 6:44 PM Stephen Downward <
laptopdud...@stephendownward.ca> wrote:

> Hi,
>
> I am trying to install the Node.js bindings for osrm so that I can write
> a production ready server. However, running "npm install osrm" returns
> "node-pre-gyp ERR! stack Error: 403 status code downloading tarball
>
> https://mapbox-node-binary.s3.amazonaws.com/osrm/v5.22.0/Release/node-v79-linux-x64.tar.gz
> ".
> Looking on the github, I can't find any up-to-date issues on the topic.
>
> I am running node v13.6.0.
>
> Thanks,
>
> Stephen
>
>
> ___
> OSRM-talk mailing list
> osrm-t...@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
osrm-t...@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Bicycle routing, crossing large roads: how to get information on the roads crossed

2019-12-26 Thread Daniel Patterson via OSRM-talk
There are a few old tickets that discuss this:

  https://github.com/Project-OSRM/osrm-backend/issues/96
https://github.com/Project-OSRM/osrm-backend/issues/477
https://github.com/Project-OSRM/osrm-backend/issues/592

Ultimately, what needs to happen is we need to make the `turn_function`
smarter - it needs to grow new parameters when called that allow you to
explore more of the maneuver (i.e. discover other attached roads that are
being crossed, etc), so you can appropriately penalize things like crossing
large roads.

Currently, no information about intersecting roads are included in the
parameters to the turn function.  A while back, properties of the incoming,
and outgoing roads at a turn were added, which was a big improvement, but
further work needs to be done to expose other intersecting parts of the
graph.

daniel

On Mon, Dec 23, 2019 at 8:17 AM Michal Palenik 
wrote:

> I've tried it as well. no success...
>
> similar case is for pedestrian (crossing a major, unroatable road; or
> a railway; or a river with no bridge)
> wheelchair users, strollers
> or nordic skiing users crossing a car road
>
> a next step would be to have a custom penalty on a node, toll booth,
> stop sign, kerb (or any semi accessible barrier, stile),..
> https://github.com/Project-OSRM/osrm-backend/issues/3862
>
>
> michal
> On Mon, Dec 23, 2019 at 07:42:44AM -0800, Spencer Gardner wrote:
> > Unfortunately, I don't have a good solution to offer, but I wanted to add
> > my two cents. I did a ton of research on this exact problem a couple of
> > years ago and virtually none of the open source routing platforms I came
> > across were properly equipped to handle it. It seems to be an issue that
> > only bicycle-oriented folks think about. The solution for my problem was
> to
> > implement in pgRouting where I can do additional processing to assign
> costs
> > as you've described. It's not the way I'd prefer to do it but until
> bicycle
> > routing becomes more sophisticated on other routing platforms that's what
> > I've settled on.
> >
> > I don't have the technical expertise to contribute code to OSRM but I'd
> be
> > more than happy to share my experience with bicycle network planning with
> > anyone looking to improve OSRM's handling of bicycles on this and other
> > questions.
> >
> > Spencer
> >
> > On Mon, Dec 23, 2019 at 6:35 AM Richard Fairhurst 
> > wrote:
> >
> > > Jeroen Hook wrote:
> > >
> > > Is there another way to find out what type of road(s) I am crossing?
> > >
> > >
> > > I think the easiest solution would be to allow bicycles on your
> > > highway=primary, but set it to be a restricted access road (or just to
> have
> > > a really high cost). That way you’d still call process_turn, but in
> reality
> > > the primary road wouldn't be used for routing.
> > >
> > > My private cycle.travel fork does something like this in its
> equivalent
> > > of process_turn (e.g.
> > > https://cycle.travel/map?from=51.7546,-1.2612=51.7554,-1.2616),
> though
> > > it’s a (pretty extensive) fork of 4.9.x so not directly comparable.
> > >
> > > Alternatively, you could do some preprocessing to mark intersections,
> > > depending on the size of your source data. For a different project I
> wrote
> > > https://github.com/systemed/intersector which identifies junctions in
> an
> > > .osm.pbf. If you were to patch it to output node IDs, then look up
> those
> > > node IDs in process_node, you could assign crossing penalties that way.
> > >
> > > Richard
> > > ___
> > > OSRM-talk mailing list
> > > OSRM-talk@openstreetmap.org
> > > https://lists.openstreetmap.org/listinfo/osrm-talk
> > >
>
> > ___
> > OSRM-talk mailing list
> > OSRM-talk@openstreetmap.org
> > https://lists.openstreetmap.org/listinfo/osrm-talk
>
>
> --
> michal palenik
> www.freemap.sk
> www.oma.sk
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Map matching for live data-streams, one point at a time

2019-12-06 Thread Daniel Patterson via OSRM-talk
1.  Supply the coordinates in the order travelled:
/match/v1/oldest;second-oldest;second-newest;newest

2.  Hints aren't quite so helpful for the /matching API - reading the code
I actually think there might be a bug here.  If you pass in a hint, it'll
only use the first snapped candidate from the previous response, instead of
many candidates within range.  Much of the time this will work fine, but
won't if your GPS data is inaccurate and you're closer to an incorrect
road.  Don't pass in hints at all to avoid this bug.

daniel

On Fri, Dec 6, 2019 at 4:52 PM Alex R  wrote:

> Thank you for the fast, detailed and reassuring response.
>
> I have some additional questions:
> 1. In what order must the list of coordinates be given? (i.e.,
>
> http://127.0.0.1:5000/match/v1/driving/most-recent;second-most-recent;third-most-recent
> OR is it the other way around, and the "most-recent" coordinates are in the
> end?)
>
> 2. If I provide a "hint" value (taking it from a previous request), would
> that simplify OSRM's calculations? (or is the "hint" only useful when
> querying different endpoints?)
>
>
> Alex
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Map matching for live data-streams, one point at a time

2019-12-06 Thread Daniel Patterson via OSRM-talk
Hi Alex,

  If you simply want to find the nearest road to a GPS coordinate, the
/nearest service is simpler.  The /match service is specifically designed
to match a sequence of GPS coordinates *with error* to the most likely path.

  The problem with using /nearest is that it has no context - if your GPS
position has a large error value (10+ metres), then it may snap you to some
nearby road that's not actually where the vehicle is.

  The /match service fixes this - if you supply, say, the last 60 seconds
of coordinates, it will use the prior coordinates to select the most likely
path, and snap the final coordinate to what is probably the right location,
even if there is some error in the GPS value.

  For your specific case - the "NoSegment" error means there was no road to
snap to within 15m of the coordinates - either the OSM map is bad, or your
GPS coordinates have quite a large error in them.  Adding `radiuses=15m`
increases the search range out to 45m (the 15m value is 1 standard
deviation of expected error, we search out to 3 standard deviations).

  1.  Yes, OSRM is suitable for this, if you use the /match service as I
suggested (provide several previous points for context).
  2.  No, but see description above.  Supply a trace to /match, and look at
the last value in the result for the "current" point.
  3.  You'll have to test - I'd guess based on your description that the
last 6 samples would work pretty well.
  4.  It could handle 50 req/sec as long as you:
  1. Give it sufficient CPUs to work with
  2. Don't supply *too* many coordinate to /matching, and keep the
`radiuses=` parameter to the smallest value that works
  3. Test it to determine throughput.
  50 req/sec is not out of the question at all.
  5. See above
  6. If you can be confident about the routes, then you can reduce the size
of your map data (and increase matching performance) by giving OSRM a very
limited road network to work with (just your bus routes).  You'd need to
figure out how to construct that yourself however, and ensure that all
roads are properly connected.  The advantage to using the whole city is
that it will properly follow any deviations from the normal route.
  If you can come up with a road network of just your bus routes, you
can increase the `radiuses=` parameter significantly so things would still
properly snap even in the case where a bus deviates from a route.

Hope that helps.


daniel



On Fri, Dec 6, 2019 at 3:16 PM Alex R  wrote:

> Hi,
>
> I ask for advice in using OSRM with a live stream of data. The examples
> I've seen relate to tracks that can be passed into OSRM and it will apply
> "map matching" to snap all points to the roads, in one move.
>
>  My scenario is different, I am trying to understand whether it is
> feasible with in circumstances:
>  - a fleet of 500 public transport vehicles
>  - each vehicle sends telemetry every 10s
>  - all of this is happening within a 120 km^2 city
>  - the vehicles move on fixed routes that I know in advance
>
> I followed the Docker guide instructions and downloaded the map data for
> my country, then I sent a HTTP request to the matching API, with one
> data-point (note, in the examples below, the order is lon/lat, as mentioned
> in the FAQ):
> curl 'http://127.0.0.1:5000/match/v1/driving/28.8260977,47.0231816'
> OSRM replied with "Number of coordinates needs to be at least two."
>
> So I did: curl '
> http://127.0.0.1:5000/match/v1/driving/28.8260977,47.0231816;28.8260977,47.0231816
> '
> and got {"message":"Could not find a matching segment for any
> coordinate.","code":"NoSegment"}
>
> What worked out in the end was:
> curl '
> http://127.0.0.1:5000/match/v1/driving/28.8260977,47.0231816;28.8260977,47.0231816?radiuses=15;15
> '
>
>
>  My questions are:
>  1. Is OSRM's matching suitable for such scenarios?
>  2. Did I correctly understand and apply the matching API?
>  3. What is the recommended number of points for a match query?
>  4. In what circumstances would it be able to handle a rate of 50
> requests/s?
>  5. What techniques can I apply to increase throughput?
>  6. Instead of using the map of an entire country, or even a city - can I
> tell OSRM to match to a specific route that I know for sure the vehicle is
> on?
>
>
>  I look forward to your to your feedback,
> Alex
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Reasonable use of public server

2019-11-03 Thread Daniel Patterson via OSRM-talk
The public server is rate limited to 5000 requests/minute.  If you flood it
with requests, likely many of yours won't work, and you'll block other
people from using it.

For this volume of work, you should investigate running a local server.  We
provide Docker images to run OSRM locally - these should be usable on
Windows (although I have not personally tested it).

daniel

On Sun, Nov 3, 2019 at 6:19 PM Taylor Moseley 
wrote:

> HI My name is Taylor, and I'm exploring orsmr. I was wondering how many
> viaroute requests would be considered too many, as I have quite a lot of
> data to process, on the order of 15-17 million trips. Not all at once,
> maybe a million at a time. I imagine that's too much for the public server,
> but my options as far as non-windows machines are likely to be very limited
> as I work for the state on a small grant.
> I may be able to cut this down my limiting the maximum distance via
> geosphere or other packages
>
> A windows backend would be ideal but that's apparently not supported
> anymore.
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Compiling OSRM Code

2019-07-30 Thread Daniel Patterson via OSRM-talk
Looking through the repo history, the function `AddCoordinate` only
appeared for a brief time between the 4.9.1 and the 5.0.0 release.  It was
never part of a tagged version.

Bateesh - you have three options:

  1) Downgrade your OSRM version to 4.9.1, and use `addCoordinate` instead
of `AddCoordinate`
  2) Find the exact gitsha that you previously used to build against OSRM.
I'm guessing you just grabbed the latest code at the time.  That function
was removed in f3e72623e9ec9764c6be1f2aa81a4523f9647077, so somewhere
before that, but after the 4.9.1 tag would be close.
  3) Do as Mateusz suggest, and upgrade to the latest version.  Check the
`examples/` directory for how to hit the current API interface.

daniel

Bateesh


On Tue, Jul 30, 2019 at 3:07 AM Mateusz Loskot  wrote:

> On Tue, 30 Jul 2019 at 10:43, BATEESH .  wrote:
> >
> > I am trying to compile project which uses osrm libraries and was written
> in 2017.
>
> Likely, you will have to update your application to catch it up with any
> changes
> that happened in the OSRM C++ API (which, AFAIK, gives no promise on
> stability/compatibility).
>
> Best regards,
> --
> Mateusz Loskot, http://mateusz.loskot.net
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] Docker pre-processing from a python script

2019-07-10 Thread Daniel Patterson via OSRM-talk
It'd be something like this (untested):

subprocess.run(["docker","run","-t","-v", "%s:/data" % os.getcwd(),
"osrm/osrm-backend", "osrm-extract -p /opt/car.lua
/data/berlin-latest.osm.pbf"])

daniel

On Wed, Jul 10, 2019 at 7:22 AM Silvia Oviedo  wrote:

>
> Hi all,
>
> I would like to run the pre-process of the car profile from a python
> script. I have checked the documentation of subprocess library and  docker
> SDK for python but I don´t know how to properly make the request. For
> example, how could I transform the sh request:
>
> docker run -t -v "${PWD}:/data" osrm/osrm-backend osrm-extract -p 
> /opt/car.lua /data/berlin-latest.osm.pbf
>
> So it can be done from python. Is that possible?
>
>
> Thank you in advance
>
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] OSRM docker error

2019-06-27 Thread Daniel Patterson via OSRM-talk
Very likely you ran out of memory - I'd check your system logs to see if
the Linux kernel OOM killer terminated your process.  The process suddenly
stopping like this with no error is typical of that scenario.

Check that your docker install doesn't have some hard memory limits in
place - if so, you will probably need to increase them.

daniel

On Thu, Jun 6, 2019 at 10:42 AM Fabio Fraga Machado  wrote:

> Hi, folks.
>
> I'm trying to change from osrm VM to osrm docker, but i cant go to next
> step after extract my pbf file.
>
> # docker run -ti -v "${PWD}:/data" osrm/osrm-backend osrm-extract  -p
> /opt/car.lua /data/brazil-latest.osm.pbf
> [info] Parsed 0 location-dependent features with 0 GeoJSON polygons
> [info] Using script /opt/car.lua
> [info] Input file: brazil-latest.osm.pbf
> [info] Profile: car.lua
> [info] Threads: 2
> [info] Parsing in progress..
> [info] input file generated by osmium/1.8.0
> [info] timestamp: 2019-06-05T20:14:02Z
> [info] Using profile api version 4
> [info] Found 3 turn restriction tags:
> [info]   motorcar
> [info]   motor_vehicle
> [info]   vehicle
> [info] Parse relations ...
> [info] Parse ways and nodes ...
> [info] Using profile api version 4
> [info] Parsing finished after 438.765 seconds
> [info] Raw input contains 102476783 nodes, 9400271 ways, and 6367
> relations, 53330 restrictions
> [info] Sorting used nodes... ok, after 5.26049s
> [info] Erasing duplicate nodes   ... ok, after 0.097733s
> [info] Sorting all nodes ... ok, after 24.2996s
> [info] Building node id map  ... ok, after 34.9726s
> [info] Confirming/Writing used nodes ... ok, after 36.7284s
> [info] Writing barrier nodes ... ok, after 0s
> [info] Writing traffic light nodes ... ok, after 0s
> [info] Processed 26706858 nodes
> [info] Sorting edges by start... ok, after 107.493s
> [info] Setting start coords  ... ok, after 129.864s
> [info] Sorting edges by target   ... ok, after 170.663s
> [info] Computing edge weights... ok, after 194.645s
> [info] Sorting edges by renumbered start ... ok, after 194.499s
> [info] Writing used edges   ... ok, after 116.735s -- Processed
> 29423534 edges
> [info] Writing way meta-data ... ok, after 1.72054s -- Metadata
> contains << 3446120 entries.
> [info] Sorting used ways ... ok, after 3.74104s
> [info] Collecting start/end information on 0 maneuver overrides...ok,
> after 0.040274s
> [info] Collecting start/end information on 0 maneuver overrides...ok,
> after 0s
> [info] Collecting start/end information on 53330 restrictions...ok, after
> 1.82737s
> [info] Collecting start/end information on 53330 restrictions...ok, after
> 10.3571s
> [info] writing street name index ... ok, after 1.52269s
> [info] extraction finished after 1553.41s
> [info] Generating edge-expanded graph representation
> [info] . 10% . 20% . 30% . 40% . 50% . 60% . 70% . 80% . 90% . 100%
> [info] Node compression ratio: 0.230783
> [info] Edge compression ratio: 0.301608
>
> When i run partition, I receive this message:
> # docker run -t -v "${PWD}:/data" osrm/osrm-backend osrm-partition
> /data/brazil-latest.osrm
> [error] Input file "/data/brazil-latest.osrm.ebg" not found!
>
> And i cant go on. What i did wrong?
> The files created after the extract is:
>
> # ls -la
> total 2090112
> drwxr-xr-x  2 root root166 Jun  6 14:00 .
> dr-xr-x---. 7 root root268 Jun  4 14:54 ..
> -rw-r--r--  1 root root  726801691 Jun  6 13:33 brazil-latest.osm.pbf
> -rw-r--r--  1 root root 1396580352 Jun  6 14:00 brazil-latest.osrm
> -rw-r--r--  1 root root   16878080 Jun  6 14:00 brazil-latest.osrm.names
> -rw-r--r--  1 root root   6144 Jun  6 14:00
> brazil-latest.osrm.properties
> -rw-r--r--  1 root root   3584 Jun  6 13:35
> brazil-latest.osrm.timestamp
>
>
> My docker version is:
> # docker version
> Client:
>  Version:   18.09.6
>  API version:   1.39
>  Go version:go1.10.8
>  Git commit:481bc77156
>  Built: Sat May  4 02:34:58 2019
>  OS/Arch:   linux/amd64
>  Experimental:  false
>
> Server: Docker Engine - Community
>  Engine:
>   Version:  18.09.6
>   API version:  1.39 (minimum version 1.12)
>   Go version:   go1.10.8
>   Git commit:   481bc77
>   Built:Sat May  4 02:02:43 2019
>   OS/Arch:  linux/amd64
>   Experimental: false
>
>
> My OS is: CentOS 7
> Fabio Fraga Machado
> *SRE / DevOPs* @ iTER IOT Solutions
> 48  991862005 • www.iter.net.br
> Av. Josué di Bernardi, 23 - Campinas, São José - SC
> CEP 88101-200
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


Re: [OSRM-talk] how to enter multiple stops with mouse click

2019-03-06 Thread Daniel Patterson via OSRM-talk
Click two times to make your start and end points.  Once you have a route,
you can divide it up by clicking on the routeline to add additional
waypoints that you can then move around.

daniel

On Wed, Mar 6, 2019 at 3:48 PM Aykut Ucar  wrote:

> Hi,
> in the demo
> http://map.project-osrm.org/
> How do you drop multiple stops with mouse click?
> I tried right click, holding ctrl and alt keys.
> Any help would be appreciated.
> Thanks.
> ___
> OSRM-talk mailing list
> OSRM-talk@openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk