Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
Go to file
Dustin Carlino 5528f19f87 Split pathfinder struct into an enum to make room for a variation that
just does Dijkstra's. This has a few uses:

- When you import with --skip_ch, the resulting map will still work,
  just more slowly
- For congestion capping experiments, we sometimes want to route around
  a zone. Regenerating the contraction hierarchy for every combination
  of zone being open/closed is likely more complex and expensive than
  just falling back to A* for trips that cut through at least one closed
  zone.

Not regenerating yet
2020-08-22 09:54:02 -07:00
.github/workflows Fix the rustdoc workflow (handle ezgui feature import clash, and 2020-08-20 16:46:08 -07:00
abstutil Use alternate language building names and amenities, when available. Fixes #271. 2020-08-20 10:39:28 -07:00
book Record throughput through a traffic signal by direction, expose through 2020-08-22 09:13:16 -07:00
convert_osm Use alternate language building names and amenities, when available. Fixes #271. 2020-08-20 10:39:28 -07:00
data Record throughput through a traffic signal by direction, expose through 2020-08-22 09:13:16 -07:00
ezgui Remove the glium backend, now that @michaelkirk has gotten the glow native/wasm backends ship-shape. Got rid of the glutin fallback behavior for now; need to ideally upstream something there for #103 2020-08-20 16:59:54 -07:00
game Record throughput through a traffic signal by direction, expose through 2020-08-22 09:13:16 -07:00
geom A humble start to a Percent type for #274. There are so many places to 2020-08-20 11:01:59 -07:00
headless Record throughput through a traffic signal by direction, expose through 2020-08-22 09:13:16 -07:00
importer Split pathfinder struct into an enum to make room for a variation that 2020-08-22 09:54:02 -07:00
iotool Make a tool to dump the map in JSON. 2020-08-19 12:49:30 -07:00
kml bring in planning area KML for berlin, #119 2020-07-16 11:15:22 -07:00
map_editor Remove the glium backend, now that @michaelkirk has gotten the glow native/wasm backends ship-shape. Got rid of the glutin fallback behavior for now; need to ideally upstream something there for #103 2020-08-20 16:59:54 -07:00
map_model Split pathfinder struct into an enum to make room for a variation that 2020-08-22 09:54:02 -07:00
release finishing the consolidation of docs 2020-08-10 14:56:39 -07:00
sim Record throughput through a traffic signal by direction, expose through 2020-08-22 09:13:16 -07:00
updater updater was missing xian 2020-08-20 08:22:13 -07:00
.gitignore Regularly import Xi'an 2020-08-17 19:37:34 -07:00
Cargo.lock The JSON format for the map edits changes occasionally. Be backwards 2020-08-22 09:14:01 -07:00
Cargo.toml Make a tool to dump the map in JSON. 2020-08-19 12:49:30 -07:00
clippy.sh round of clippy. not fixing everything. 2019-12-11 16:17:15 -08:00
format_md.sh finishing the consolidation of docs 2020-08-10 14:56:39 -07:00
import.sh detect the data/ dir more intelligently. fixes #73. still need to 2020-07-07 11:09:35 -07:00
LICENSE Initial import of A/B Street prototype. 2018-03-13 08:06:03 -07:00
README.md Remove the glium backend, now that @michaelkirk has gotten the glow native/wasm backends ship-shape. Got rid of the glutin fallback behavior for now; need to ideally upstream something there for #103 2020-08-20 16:59:54 -07:00
rgrep.sh widget replacement keeps margins from the old 2020-07-19 11:28:12 -07:00
rustfmt.toml tweaking rustfmt options; the long literal string vecs in tutorial look awful 2020-01-21 15:20:02 -08:00

A/B Street

Ever been stuck in traffic on a bus, wondering why is there legal street parking instead of a dedicated bus lane? A/B Street is a game exploring how small changes to a city affect the movement of drivers, cyclists, transit users, and pedestrians.

Show, don't tell

Alpha release trailer

Find a problem:

exploring_traffic

Make some changes:

editing_map

Measure the effects:

evaluating_impacts

Documentation

Roadmap and contributing

See the roadmap for current work, including ways to help. If you want to bring this to your city or if you're skilled in design, traffic simulation, data visualization, or civic/government outreach, please contact Dustin Carlino at dabreegster@gmail.com. Follow r/abstreet for weekly updates or @CarlinoDustin for occasional videos of recent progress.

Project mission

If you fix some traffic problem while playing A/B Street, my ultimate goal is for your changes to become a real proposal for adjusting Seattle's infrastructure. A/B Street is of course a game, using a simplified approach to traffic modeling, so city governments still have to evaluate proposals using their existing methods. A/B Street is intended as a conversation starter and tool to communicate ideas with interactive visualizations.

Why not leave city planning to professionals? People are local experts on the small slice of the city they interact with daily -- the one left turn lane that always backs up or a certain set of poorly timed walk signals. Laura Adler writes:

"Only with simple, accessible simulation programs can citizens become active generators of their own urban visions, not just passive recipients of options laid out by government officials."

Existing urban planning software is either proprietary or hard to use. A/B Street strives to be highly accessible, by being a fun, engaging game. See here for more guiding principles.

Credits

Core team:

Others:

Data: