abstreet/sumo
Dustin Carlino 18ff0eefc0 Store Turns per Intersection, instead of a massive BTreeMap. #368
Minimal file size savings, but substantial runtime improvement!
2021-06-11 09:40:44 -07:00
..
src Store Turns per Intersection, instead of a massive BTreeMap. #368 2021-06-11 09:40:44 -07:00
Cargo.toml Update dependencies (#656) 2021-05-22 16:23:06 -07: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