Opened 13 years ago

Closed 10 years ago

Last modified 10 years ago

#582 closed enhancement/feature request (Incomplete/Missing infos)

Distinguish between legal and routing speed / Add "maxspeed:practical" tag support

Reported by: Owned by: KaZeR
Priority: minor Milestone: version 0.2.1
Component: core Version: git master
Severity: Keywords:


As I understand currently "maxspeed" tag is used, which is "official speed limitation". In OSM there is also "maxspeed:practical" which is used to describe usual speed, which can be achieved on the way. It is widely used, when speed is limited due to poor road quality. However it can be higher, than "maxspeed" if official limitation is small and everybody on that road drives faster, than allowed. This situation is quite usual too. Actually, this tag is used when it is needed to adjust road graph to get correct routing, but there are no official limitations. So it should be used instead "maxspeed", where available.

Change History (6)

comment:1 follow-up: Changed 13 years ago by polarbear_n

  • Cc added
  • Component changed from tools to core
  • Milestone set to version 0.2.0

It appears that ${tracking.item.route_speed}, when used with OSM data, shows the legal limit if such is defined by "maxspeed", and the roadprofile speed setting when there is no maxspeed.

These are two different things and should be represented differently. "maxspeed" would be needed for speed warnings, the roadprofile speed is mostly important for timing.

comment:2 in reply to: ↑ 1 Changed 13 years ago by polarbear_n

More clearly speaking, I propose to introduce a new variable, ${tracking.item.legal_speed} which gets the value e.g. from OSM maxspeed. Value 0 would indicate that no maxspeed exist in the map data.

That would also be a prerequisite for a correct speed_warner as currently implemented in

${tracking.item.route_speed} would be used for route timing calculations, getting its value from the maxspeed:practical, maxspeed or the road classification in the order of existence.

comment:3 Changed 13 years ago by polarbear_n

  • Summary changed from Add "maxspeed:practical" tag support to Distinguish between legal and routing speed / Add "maxspeed:practical" tag support

comment:4 Changed 12 years ago by kibergus -2-

I want to point to a fact, that speed for different directions can differ. The same road (route graph element) can have different speed indexes for different directions. This applies both for official and practical limitations. This is also useful if one day traffic jams support would be implemented.

comment:5 Changed 10 years ago by usul

  • Priority changed from major to minor
  • Resolution set to Incomplete/Missing infos
  • Status changed from new to closed

@kiberius this is a good point. From my experience at OSM, this is currently not considered in the wild, but there are some approaches to realize lane specific mapping

@all Maybe I'm just not that experienced with car navigation, but I don't see the point to offer a different than the legal oppposed speed limit? The conditions may vary, but a navi is just to get from A to B and not about telling how to drive every minute?
Please don't misunderstand my POV, it would be great, if you could provide some more details or a usecase where in your eyes, this would be a usefull feature?

comment:6 Changed 10 years ago by kibergus

but a navi is just to get from A to B and not about telling how to drive every minute?

To accomplish this task navigator has to find the best route from A to B. To find this route it has to assign weights to road graph edges and transition from one edge to another. The truth is that legal speed limits are not a good choice for such weights for several reasons

1) You can't adjust them to get correct routing. They are defined by roadsigns.

2) There are many places where you are allowed to drive fast but can't because of bar road quality. Good navigator should avoid such roads if there is longer but better way which can be passed in shorter period of time.

3) There are places with strange legal speed limits which people do not respect.

So you just can't implement good routing on basis of legal speed limits.

And beside building good routes navigators do predict time needed for travel. Correct practical (not legal) speed limits are needed for this too.

Note: See TracTickets for help on using tickets.