a-b-street / abstreet

Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
https://a-b-street.github.io/docs/
Apache License 2.0
7.37k stars 332 forks source link

Feature request: equity evaluation using census data #116

Open belt-drive opened 4 years ago

belt-drive commented 4 years ago

Overlay data source like U.S. Census American Community Survey to get demographic distributions by geographic region. Draw demographic characteristics for travelers as part of trip generation based on a given traveler's location. This could be used to show how travel time varies by income (or race) in a given street configuration. So, you could see whether a given modification made for a more (or less) equal distribution of travel times across demographic factors.

Side note: demographic data could also be paired with other data sources like PSRC's Household Travel Survey Data (Seattle-area only and not generalizable to other cities) to inform mode choice. Not sure if something like this is already incorporated into the mode choice model.

dabreegster commented 3 years ago

Dumping some notes here after a brainstorm with @tnederlof

Data sources

For Seattle, we import the activity model from Soundcast, which does a whole bunch of fancy modelling and disaggregation already. https://github.com/psrc/soundcast/wiki/Inputs#synthetic-population-hh_and_personsh5 has demographic info per person like age and income that we should be able to import.

For other demand models, I think we'd either have to blindly guess (like the proletariat robot that just uses OSM data and doesn't even know about population size) or do some disaggregation from US census data.

Storage / disaggregation

Where we stash this data depends how we want to use it. If we're just thinking about the 15m tool, maybe a list of (polygon area, aggregate stats for census block/tract) somewhere is fine. If we want to correlate it with people in the simulation, then in the Scenario. We try to keep this file small, so things on the web stay reasonable -- downtown Seattle is at 40MB right now, after some prior effort to trim it down. We can try baking in demographic attributes in and see how it affects size, and maybe consider using a separate optional file. But maybe loading the second file in the UI is more complexity than it's worth, not sure.

Exposing in the abst UI

Pretty easy to surface the data for an individual person. There are various aggregate dashboards that summarize changes to travel time (and WIP in #600, safety) for different groups, mostly sliced today by mode and origin/destination area. We could add more filters here for demographics.

Using demographics to influence simulation

Maybe age and other factors influence route choice for cycling -- willing to bike alongside high-speed traffic, or prefer quieter routes? And if we ever get around to trying congestion pricing of some sort, income likely affects value-of-time.