abstreet/sumo
2021-04-06 17:03:24 -07:00
..
src Refactor: store Direction for a Lane, simplifying Lane->DirectedRoadID. #555 2021-04-06 17:03:24 -07:00
Cargo.toml Upgrade most dependencies 2021-02-03 18:13:06 -08:00
README.md The grand country split. #326 2021-02-13 15:45:59 -08:00

SUMO interoperability

The purpose of this crate is to explore possible interactions between A/B Street and SUMO. Some of the ideas:

  • Convert SUMO networks to ABST maps, to make use of SUMO's traffic signal heuristics and junction joining
  • Convert SUMO demand to ABST scenarios, to leverage all of the existing demand generation techniques
  • Prototype a new SUMO frontend by gluing ABST UI code to TraCI

Usage

A quick SUMO primer. To convert an OSM file into a SUMO network:

netconvert --osm-files data/input/us/seattle/osm/montlake.osm --output.street-names --keep-edges.components 1 -o montlake.net.xml

To generate random trips and compute the routes for them:

/usr/share/sumo/tools/randomTrips.py -n montlake.net.xml -r routes.xml

To simulate these in SUMO:

sumo-gui -r routes.xml -n montlake.net.xml

To convert the network into an ABST map:

cargo run --bin sumo montlake.net.xml

To view it in ABST:

cargo run --bin game -- --dev data/system/zz/sumo/maps/montlake.bin