Racingbike vs. bike

@ratrun do you know why we use

setHighwaySpeed(“residential”, 16);

for racing bike and

setHighwaySpeed(“residential”, 18);

for bike? Shouldn’t we always use a faster speed for racing bike? Same for path (10 vs 8), service (14 vs. 12) and track (12 vs. 2). And probably some more I overlooked.

Also path is added to the pushing_section list for racingbike but has not the pushing section speed and uses 8km/h instead.

It seems we mix the priority into the speed. I would prefer a separation (especially when we have more options with custom routing and for priority with issue 2333). Do you see a possibility to make this more consistent?

As far as I remember the lower speed limit for residential and service are attempts to reduce the number of artefacts where the route leaves highway=primary in favour of a highway=residential or highway=service for just a short segment because of higher priority.

On highway=path one needs to be extremely cautious with a racing bike, especially as I’m assuming that you do not have any bell. So I believe it is not unrealistic to estimate a slower speed compared to an ordinary bike, also because usually a path without more information probably goes along with a bad surface for a race bike. By the way, a simple highway=path results in PUSHING_SECTION_SPEED in the test for both bike and raceingbike, despite the speed set with setHighwaySpeed.

For the highway=track I intentionally used the lowest possible speed, as it is usually tagged together with a tracktype and if not we assume the worst condition for a race bike you can imagine. It is simply no fun riding there if you don’t have any information about the surface/tracktype. But for tracktype=grade1 we do use 20 km/h.

Summing up from my point of view up the inconsistency is only an issue for highway=residential or highway=service case. Maybe this can be solved when having issue 2333 by preferring highway=residential one step less as compared to what we currently do and by reducing the speed for highway=service to 16 for the bike profile.

Thanks for the explanation - this makes sense. Then I’ll create an issue to increase the speed for racingbike for residential roads and reducing the priority one step (plus reducing speed for service roads for normal bike and removing the explicit speed change in racing bike) (?)

It is simply no fun riding there if you don’t have any information about the surface/tracktype

I would argue that “fun” should go into priority :slight_smile: … so even if a road is very dangerous and/or unpleasant we should try to keep the speed assumption separate from this. But I understand that you probably (have to) ride more cautious/slower with a racing bike if the surface is ugly.

Just created Improve bike vs. racingbike speed · Issue #2339 · graphhopper/graphhopper · GitHub