I am experiencing inconsistent network topology generation when using netconvert with OSM data across different bounding box sizes. The same roads produce different edge structures depending on the area size.
Problem:
Test Bounding Boxes (osmget.py):
-
large area - '77.288818359375,12.769113855469314,77.74200439453125,13.149194131932646'
-
small area - '77.56663933167825,13.005436732714667,77.56823663763048,13.005741560926017'
Issues like :- edge id "36777680#0" having forming differently
Current netconvert command:
netconvert \
--osm-files input.osm \
--ramps.guess \
--junctions.join \
--junctions.scurve-stretch 1.0 \
--tls.guess-signals \
--tls.join \
--tls.uncontrolled-within \
--geometry.remove \
--output.street-names \
--output.original-names \
--keep-edges.by-vclass passenger \
-t typemap.xml \
--output-file output.net.xml
Attempted Solutions (all failed):
-
Disabled all heuristics:
--geometry.remove false --junctions.join false --ramps.guess false
-
Used fixed thresholds:
--junctions.join-dist 10
-
Removed typemap completely
-
Added
--roundabouts.guess false
and --edges.join false
Question: Why does netconvert produce different edge topologies for the same OSM roads when the bounding box size changes? Is there a scale-dependent algorithm that can be disabled to ensure consistent edge formation regardless of network area?
Expected Behavior: Identical road topology regardless of bounding box size - same OSM ways should always produce the same SUMO edge structure.
Environment:
-
SUMO Version: 1.23.1
-
OS: windows
-
Data Source: OpenStreetMap
Thank you for your assistance.
Best regards,
Manohar