Dustin Carlino
0357ae0a23
Tidy up the new UK census gen code. #556
2021-03-05 16:51:02 -08:00
Dustin Carlino
8ffd249558
Get the new UK scenario generation working everywhere. #556
...
If a study area exists for the map, make a copy of the base/active
scenarios with the background traffic mixed in. Also remove people
living in the site, since they're redundant.
Ran it like this: for city in `ls data/system/gb/`; do ./import.sh
--scenario --city=gb/$city || break; done
2021-03-05 16:26:29 -08:00
Dustin Carlino
14ccddf15e
Create people that live or work (or both) off-map. #556
2021-03-05 15:50:56 -08:00
Dustin Carlino
9610b69de4
Remove zones without homes or shops. Found one in London. This can
...
happen when the overlap with the map is tiny. #556
2021-03-05 14:53:29 -08:00
Dustin Carlino
d2b25f9340
Use choose_weighted to sample homes/workplaces proportionally, instead of worrying about how many employees per store there might be. #556
2021-03-05 12:33:04 -08:00
Dustin Carlino
89f317c79d
Add in normal distributions for trip departure times. #556
2021-03-05 12:24:17 -08:00
Dustin Carlino
c7042eda06
Create simple people for UK scenarios. #556
...
Can't quite debug yet, because for Poundbury, the matching zones (like
E02004277) have no entries in the census data...
2021-03-05 11:59:20 -08:00
Dustin Carlino
1f33916502
Match houses/workplaces to zones. #556
2021-03-05 11:27:25 -08:00
Dustin Carlino
aa59677ad2
Transform the UK OD and zone data from raw input into a clean structure. #556
2021-03-05 10:47:48 -08:00
Michael Kirk
4b665c871d
update geo related deps. ( #508 )
...
geo-types to 0.7
geo to 0.17 which removes redundant old geo used by polylabel
geojson to 0.22
2021-02-08 16:34:56 -08:00
Michael Kirk
7cd4329866
fix census driven activity model ( #507 )
...
It was failing because the version of flatgeobuf we were using was not
compatible with the recent tokio update. Now we point to the unreleased
flatgeobuf which is compatible.
2021-02-08 14:15:58 -08:00
Dustin Carlino
73e405e382
Upgrade most dependencies
2021-02-03 18:13:06 -08:00
Dustin Carlino
d49c6c5d7d
Refactor the logic of distributing N people to K buildings. This was
...
duplicated between the Berlin importer and the new census-based popdat
crate, and I suspect some form of it might get used for the actdev
integration. #424
2021-01-13 11:18:51 -08:00
Dustin Carlino
e99def9124
Switch all error handling to anyhow. Nothing consumes our code as a
...
library yet, so this is a step forward from string errors. Manually
tested how errors show up (including the nice with_context bit).
2021-01-05 11:35:03 -08:00
Dustin Carlino
d529ae2e5c
Upgrade usvg and rand
2021-01-04 09:19:54 -08:00
Dustin Carlino
965d999199
Upgrade misc other dependencies
2021-01-03 20:01:27 -08:00
Dustin Carlino
2945913fb3
Upgrade rand
2021-01-03 19:48:03 -08:00
Michael Kirk
147c36d8fe
remove broken popdat main ( #441 )
...
I broke this in acadad8bd
We could fix this by making main async and fetching CensusAreas and
passing them into the generate function... but it doesn't seem like
we're using this any longer anyway.
2021-01-01 21:37:45 -08:00
Michael Kirk
acadad8bdf
fetch US census data from a hosted FlatGeoBuf ( #432 )
2020-12-31 16:20:32 -08:00
Dustin Carlino
32a3159d19
Express AmenityType as a proper enum.
2020-12-28 12:18:29 -08:00
Dustin Carlino
2b4b92664e
Much needed refactor: map.pathfind() returns a Result, stating the failed request. Many call sites were cloning the request and doing this anyway.
2020-12-16 10:06:12 -08:00
Michael Kirk
375e0caeb8
integrate census scenario ( #426 )
...
#424
2020-12-14 20:27:57 -08:00
Michael Kirk
8b9b3ce2b1
census areas import ( #425 )
...
#424
2020-12-14 17:48:47 -08:00
Michael Kirk
5c09e24225
Correlate some more activities with OSM tags. ( #423 )
...
Thanks to Tom Skinner (@trskinner) for the patch!
2020-12-10 21:55:56 -08:00
Dustin Carlino
634b6ad375
Get more pieces of popdat working: ( #421 )
...
- adapt the Berlin logic for disaggregating people to buildings
- start some person -> activity -> schedule mappings
- clean up all the unused var warnings
2020-12-10 16:44:42 -08:00
Dustin Carlino
fb9635e8c8
Copy some pieces of the proletariat robot model into the new popdat pipeline: ( #419 )
...
- mode choice
- going off-map when there's no building on-map to satisfy a particular
activity
2020-12-10 14:51:36 -08:00
Dustin Carlino
7e376de03f
Start transforming an abstract schedule into a specific list of trips
2020-12-10 12:28:12 -08:00
Michael Kirk
d445ca386a
fix typo ( #418 )
2020-12-10 09:41:14 -08:00
Dustin Carlino
77a37f897b
Wire together a UI to generate census-based scenarios
2020-12-10 09:35:50 -08:00
Dustin Carlino
f23dacbde7
Start some skeleton code for tomorrow's hackathon
2020-12-09 22:11:05 -08:00
Dustin Carlino
8be319300b
fold the popdat crate into importer; nothing else should have any dependencies on it
2020-04-25 13:14:48 -07:00
Dustin Carlino
dd1c9f936d
plumb through exact off-map locations from popdat->scenario
2020-04-24 22:05:33 -07:00
Dustin Carlino
a25751ea43
add more sanity checks for schedules, because every other map is
...
crashing
and fix the problem -- SpawnTrip -> TripSpec MUST succeed. auto-abort
some trips, to still warp the person to the right spot.
2020-04-23 13:20:25 -07:00
Dustin Carlino
6ef3a180a3
start to simplify the dynamic nabbing of parked cars
2020-04-22 14:39:02 -07:00
Dustin Carlino
2a98f4ea27
Person now has a fixed pedestrian, car, and bike ID. <start massive breakage>
2020-04-22 09:43:03 -07:00
Dustin Carlino
a39d19f36a
remove the tiny fraction of people with non-continuous schedules from
...
the PSRC scenarios
2020-04-20 17:55:26 -07:00
Dustin Carlino
0574d4316c
add some stuff to match people in scenarios with the raw input
2020-04-20 16:52:54 -07:00
Dustin Carlino
8b975f5083
validation was wrong, and also panicking is bad right now
2020-04-20 16:12:09 -07:00
Dustin Carlino
d80513235d
defer choosing a starting lane for borders in scenarios, to respond to lane edits
2020-04-19 10:51:23 -07:00
Dustin Carlino
35c193eebc
associated parked cars with people, not buildings
...
pt1: scenario layer
2020-04-15 15:01:49 -07:00
Dustin Carlino
70875d104d
Scenario should just have specific trips. split a different structure for generating Scenarios. has the happy side effect of removing lots of weird old spawning code, duplicated checks
2020-04-01 13:50:36 -07:00
Dustin Carlino
bf8c35788b
moving popdat+precompute into the new unified importer
2020-03-26 10:26:01 -07:00
Dustin Carlino
41ce8fe8f3
force trips per person to be time ordered
2020-03-18 14:01:03 -07:00
Dustin Carlino
0bcbac1fee
upgrade a few misc packages
2020-03-17 10:35:37 -07:00
Dustin Carlino
fa013f70d4
woops, have to skip the gdal dependency in wasm
2020-03-15 14:20:05 -07:00
Dustin Carlino
41f37f666c
switch popdat from cs2cs binary to gdal bindings. cleaner and will likely need gdal for elevation data anyway. also fix synthetic maps, which i accidentally broke few days ago with elevation
2020-03-15 12:34:23 -07:00
Dustin Carlino
87e9431f91
rearrange people/trips in the Scenario layer
2020-03-12 15:38:58 -07:00
Dustin Carlino
b835f8a6f7
unused deps
2020-03-06 08:27:00 -08:00
Dustin Carlino
bd2cb6ddd1
first steps towards representing people, not just trips
2020-03-05 17:28:57 -08:00
Dustin Carlino
f97918ff04
fixing the bug with grouping PSRC trips by unique person -- thanks to
...
folks at PSRC for helping track this down
2020-03-05 11:19:32 -08:00