eclipse-sumo / sumo

Eclipse SUMO is an open source, highly portable, microscopic and continuous traffic simulation package designed to handle large networks. It allows for intermodal simulation including pedestrians and comes with a large set of tools for scenario creation.
https://eclipse.dev/sumo
Eclipse Public License 2.0
2.55k stars 1.43k forks source link

highway.service has very limited permissions #6131

Open behrisch opened 5 years ago

behrisch commented 5 years ago

According to the OSM wiki https://wiki.openstreetmap.org/wiki/Tag:highway%3Dservice these streets are not different permission wise.

namdre commented 5 years ago

There are some negative side effects of expanding permissions:

I suggest we do not change the default at this time (Someone who needs it can easily substitute a custom typemap).

behrisch commented 5 years ago

I would vote then for not importing them at all by default. But importing with a reduced permission set which does not seem to be backed by what OSM means with this type looks strange to me.

behrisch commented 3 years ago

It just bit me again. Roads such as https://www.openstreetmap.org/way/376556836 and https://www.openstreetmap.org/way/54622157 connect "full size roads" to the rest of the net and apparently TAPAS wants to use them. Can we maybe invent an option which at least "upgrades" such connecting roads. This may deserve a separate issue but I would also love to solve this issue here at the same time. @namdre ideas?

namdre commented 3 years ago

Yes. I think it makes sense to keep these roads if they connect components that would otherwise be disconnected. However, this is still tricky: Not every service road with non-service roads on both ends is necessary and the condition is likely not sufficient either (but it would be very cheap). A graph theoretical analysis of connectedness would be expensive and not provide a unique solution. But if you want to implement something along those lines (maybe heuristic) go ahead.

namdre commented 3 years ago

Interestingly, the road https://www.openstreetmap.org/way/54622157 has type "service" and there is a gate at one end whereas https://www.openstreetmap.org/way/376556836 has sub-type driveway (<tag k="service" v="driveway"/>) Then there is the access tag <tag k="access" v="permissive"/> for the road with the gate and <tag k="access" v="private"/> for the driveway.

behrisch commented 3 years ago

I would go for the "non-service on both ends" solution and see how much it adds to the net. Should this be a command line option or an additional attribute in the typemap (I prefer the latter)?

namdre commented 3 years ago

Typemap attributes should reasonably be applicable to more than one type. Not sure if this is the case here. My gut feeling would be to make this into an --osm.something option.

alexrsanchez commented 3 years ago

Hello, I just found myself with this same problem: my public transport network does not work properly because of all the restrictions of highway.service (most of urban buses use this type of road), so I have to change it manually and it is quite tedious work. I think adding a --osm.something option that would allow change permissions of highway.service -as I think @namdre proposes- would be really helpful!

namdre commented 3 years ago

@alexrsanchez In your case, the simplest solution would be to load a custom typemap with

<type id="highway.service"        numLanes="1" speed="5.56"  priority="1"  oneway="false" allow="delivery pedestrian bicycle bus"/>

see https://sumo.dlr.de/docs/Networks/Import/OpenStreetMap.html#recommended_typemaps Also, you can change the permissions of all roads at once using netedit. (similar example is https://sumo.dlr.de/docs/Netedit/neteditUsageExamples.html#correcting_road_access_permissions but you can select edges by type instead).

alexrsanchez commented 3 years ago

That is certainly a simple solution, didn't think about modify the typemap... Thanks a lot!

behrisch commented 3 years ago

Nevertheless I think we should adopt permissions for streets which actually have busses driving on them. @namdre Shouldn't have #3437 fixed that? @alexrsanchez Did you use --ptline-output when converting the net?

namdre commented 3 years ago

Yes. #3437 should have fixed this.

alexrsanchez commented 3 years ago

Nevertheless I think we should adopt permissions for streets which actually have busses driving on them. @namdre Shouldn't have #3437 fixed that? @alexrsanchez Did you use --ptline-output when converting the net?

Yes, I use the --ptline-output when converting the net and then use the output file in pt2flows.py. So far, the only solution that worked for me was to load a custom typemap as @namdre proposed. Though I have to note that I'm using quite an old version of SUMO (v1.1)

Sorry it took me that long to reply!

behrisch commented 3 years ago

Ok that explains it #3437 has been solved after 1.1