Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pushing bikes against oneways #78

Closed
emiltin opened this issue Jan 14, 2012 · 18 comments
Closed

pushing bikes against oneways #78

emiltin opened this issue Jan 14, 2012 · 18 comments
Milestone

Comments

@emiltin
Copy link
Contributor

emiltin commented Jan 14, 2012

for bike routing, osrm should be able to route against oneway street - but at a lower pedestrian speed.

if footway, pedestrian, etc is specified in the speedprofile (typically with a lower speed), this should be used to allow going against oneways - unless the way is tagged with pedestrain=no, bicycle=no, or it's implied (like on a motorway). with the oneway flow, normal rules apply.

in other words, oneways streets should be traverable in both directions on a bike, but at different speeds.

this feature is quite important, since otherwise crossing intersections often result in unrealistic detours.
also nobody on a bike would go around the block to go 10m up a oneway street - you would pull your bike.
there are also many small pedestrian shortcuts and connections that we would like osrm to suggest, even though it means pulling your bike a short way. of course the different speeds would mean that typically only short stretches of pulling would be suggested.

@emiltin
Copy link
Contributor Author

emiltin commented Jan 19, 2012

a small addition: it will be important to indicated in the driving instructions when you need to pull your bike

@DennisOSRM
Copy link
Collaborator

Yes, I see the need for such an addition. With a lower average speed, this makes sense. The special driving instruction should be fairly easy to integrate.

@emiltin
Copy link
Contributor Author

emiltin commented Feb 3, 2012

cool

@emiltin
Copy link
Contributor Author

emiltin commented Feb 19, 2012

i had a first shot at implementing this:

emiltin@b52682b

if you add a "contraflow = 5", osrm will route against oneways at speed 5.

but what's not working is that osrm is now using the speed 5 on all oneways, even when you're going with the normal flow. how would you make osrm use a different speed for the two directions?

also the driving instructions is missing. also - would it be possible to color the route differently on stretches where you you're going agaist normal oneway flow (pushing your bike)?

@emiltin
Copy link
Contributor Author

emiltin commented Feb 19, 2012

also the included test are not complete, since they don't yet check the speed of returned routes.

@emiltin
Copy link
Contributor Author

emiltin commented Feb 19, 2012

enabled testing of travel times in emiltin@5729091

@emiltin emiltin mentioned this issue Feb 20, 2012
@emiltin
Copy link
Contributor Author

emiltin commented Feb 25, 2012

any hints on how to make osrm use different speeds for the two directions of a way?

@DennisOSRM
Copy link
Collaborator

It is not yet implemented. Basically, there will be a global 'bike push' speed in the speed profile. Right now I am working very hard to get the new server up and running, so we can have an amazing demo for people to try.

@emiltin
Copy link
Contributor Author

emiltin commented Feb 25, 2012

i understand it's not yet implemented it. i was curious if you could provide hints how it could be implemented :-)

i started in the branch linked to above, but didn't know how to do different speeds in the two directions.

@emiltin
Copy link
Contributor Author

emiltin commented Feb 25, 2012

and cool with the new server!

@emiltin
Copy link
Contributor Author

emiltin commented Mar 1, 2012

there's recently been discussion on the danish osm list on how to tag speed restriction that only apply in one direction. situations like these occur, for example close to roundabouts.

this seems to be another situation where it would be useful to have different speeds in the two directions.

@DrVanScott
Copy link

if footway, pedestrian, etc is specified in the speedprofile (typically with a lower speed), this should be used to allow going against oneways - unless the way is tagged with pedestrain=no, bicycle=no

pushing bike may also be useful where "bicycle=no". Dangerous places (e.g. narrow bridges) are often tagged "bicycle=no", though they connect two cycleways.

@emiltin
Copy link
Contributor Author

emiltin commented Mar 4, 2012

it's unfortunately, but there seems to be some inconsistency in how the bicycle=no and bicycle=dismount tags are used.

bicycle=dismount means that you're not allowed to bike, but can push
bicycle=no means bicycle are not allowed, even if pushed.

but as you note, bicycle=no is often used where pushing bikes is in fact allowed.

@DrVanScott
Copy link

Often is is used to describe that a ways surface is not suitable for biking (e.g. path). Mapping error.

@emiltin
Copy link
Contributor Author

emiltin commented Oct 14, 2012

i think we need to extend the lua profile system, so you can return different speed/weight for each direction. maybe the way can be split into two oneways internally if the settings are different, otherwise it could be stored as a single way.

currently there's no way to handle pushing of bikes agains oneways with 20km/h in one direction, and 5km/h in the other.

@emiltin
Copy link
Contributor Author

emiltin commented Oct 14, 2012

usually you can't push a bike agains the flow on a motorway. determining when you can push the bike essentially requires pedestrian profiling. perhaps the bike profile could be subclassed from the foot profile?

@karme
Copy link

karme commented Nov 13, 2012

Emil Tin [email protected] writes:

i think we need to extend the lua profile system, so you can return
different speed/weight for each direction. maybe the way can be spit
into two oneways internally if the settings are different, otherwise
it could be stored as a single way.

This is needed for speeds depending on elevation, too

@emiltin
Copy link
Contributor Author

emiltin commented Jan 29, 2013

osrm can now handle it, but i think the bicycle profile needs a bit of work

@emiltin emiltin closed this as completed Mar 16, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants