Suggestion: economical routing in navigation

103 views
Skip to first unread message

G mithrandir

unread,
Dec 21, 2013, 5:03:49 PM12/21/13
to osm...@googlegroups.com
In addition to option to choose the fastest or shortest route, economical routing could be added where a sensible (possibly configurable) trade-off between time and cost is used.

For example, to some nearby destinations I have the option to take main road (faster but longer, both incurring higher fuel use) or secondairy roads (slower, 60% of distance for the faster route, and in all taking 3 minutes more than the fastest route).
In my experience the shortest route is often not a viable alternative since it will take me through residential areas including many turns or through narrow/less safe roads. Thus shortest often is uncomfortable and since it may include many stops and turns not as economical.

The economical setting might even be enhanced with providing the information on reduced distance and added time.

Nelson A. de Oliveira

unread,
Dec 21, 2013, 5:30:02 PM12/21/13
to osm...@googlegroups.com

Rodolfo

unread,
Dec 22, 2013, 9:58:15 AM12/22/13
to osm...@googlegroups.com
Yes, I miss that option too.
The main developer marked it half a year ago as a "nice to have" feature, so I expected it to be implemented already, because imho it is not so much work to code and it would please lots of users.

Rodolfo

Harry van der Wolf

unread,
Dec 23, 2013, 6:03:30 AM12/23/13
to osmand
Hi,

Economic is what some applications also call optimal.

I don't think the coding inside OsmAnd is the big problem, but the "master data" in the routing.xml (1) and the possible map extensions. This latter requires coding in OsmAndMapCreator.
One of the suggestions is to drive around cities. This would require a setting to tag whether a street is inside a city or not. That's not in OSM (directly) so it requires a tagging of having the coordinates within an admin boundary of a city/town/village/etc.
And you need to check that even if it is in a city, do I need it to get to my destination (no other road) or that street is my destination inside that city.

So I think it's a bit more complicated.

my 2 cents.

Harry


2013/12/22 Rodolfo <rodo...@gmail.com>

--
You received this message because you are subscribed to the Google Groups "Osmand" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osmand+un...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Rodolfo

unread,
Dec 23, 2013, 10:08:16 AM12/23/13
to osm...@googlegroups.com
@Harry: You are right, there need to be several changes, also in OsmandMapcreator, although I think, the currently available OSM tags are sufficient to feed this new routing mode.
Above all, there needs to be a new calculation scheme with a new unit: the price.
The "fastest route" calculated road segments in seconds, the "shortest route" calculated the distance (all this apart from road restrictions of course), but the "economic route" should calculate in money units.

Just fantasizing a bit more (spontaneously, this is NOT a proposal!)
Every road segment has its price:
- the price base could be the length divided by maximum speed with a maximum value of 100km/h for fuel economy. So a road segment of 1000m with maxspeed=50 costs 20 units and 1000m with a maxspeed of 130 costs 10 units (not 7,69!).
So the length is the calculation variable, but the handicaps should be calculated first:
-- crossroads without priority rules add a length of 3 times the maximum speed to the road segment. So, a crossroad in a city with maxspeed=50 adds 150 meters to the road segment.
-- crossroads where you have right of way add a length of 1 time the maximum speed to the road segment. So, this crossroad in a city with maxspeed=50 adds 50 meters to the road segment.
-- crossroads where you have to yield add a length of 5 times the maximum speed to the road segment. So, this crossroad in a city with maxspeed=50 adds 250 meters to the road segment.
-- traffic lights add 10 times the maxspeed. (so in a city with maxspeed = 50, this adds 500 meters.
(this way, the routing engine would probably avoid city centres naturally, because of the sheer number of crossroads and traffic lights)
- Toll roads add a price: In my region (Western Europe) toll roads cost about 0,10 to 0,15 euro/km, so this would globally translate into 2 times the distance. A 50 km toll road costs 100 km.
- There are many more factors, which influence the calculation, like ferries, toll tunnels & bridges (expensive per km!), congestion charge, etc...

This is only a rough idea on how this routing mode could work, please share your own ideas!

Rodolfo

sympa

unread,
Dec 29, 2013, 2:35:30 PM12/29/13
to osm...@googlegroups.com
Shortest routing minimizes distance.

Fastest routing minimizes time.

"Optimal" routing minimizes (p * distance) + (q * time), where p/q are set according to user's wish (for example a route 10 km shorter may take 2 minutes  more).

So it is indeed simple to implement with just an add and a multiply for every hop. And it allows a natural way to calculate diverse routes; actually it allows a slider from fastest route to shortest route.

A feature with similar effect is limiting the maximum speed. Some routers like to take long detours to Germany with "unlimited speed", which can be prevented that way.

Ik Beweeg

unread,
Sep 25, 2019, 3:06:58 PM9/25/19
to Osmand
Years ago this feature was discussed, and as I understand it is quite doable. Nevertheless, almost 6 years later - still missing.
Am I missing something here??


Op zondag 29 december 2013 20:35:30 UTC+1 schreef sympa:
Reply all
Reply to author
Forward
0 new messages