Dustin Carlino
87e605a119
prototype a live dot map in debug mode
2020-03-18 19:17:54 -07:00
Dustin Carlino
41ce8fe8f3
force trips per person to be time ordered
2020-03-18 14:01:03 -07:00
Dustin Carlino
e47d5f7917
fix parking markings and where pedestrians walk for left-hand maps for #27
2020-03-17 10:09:44 -07:00
Dustin Carlino
8f285be4fe
jump from agent or trip to person, and from person to building and trips
2020-03-13 18:41:49 -07:00
Dustin Carlino
7775546a7e
really awkward manual way of going from building to people inside
2020-03-13 12:36:55 -07:00
Dustin Carlino
10a8466d5d
represent people in sim layer, track their state transitions
2020-03-12 16:28:47 -07:00
Dustin Carlino
5c8529a201
argh, fix bug in prev commit. seed_parked_car happens in the middle of the TripSpawner existing.
2020-03-12 15:53:06 -07:00
Dustin Carlino
87e9431f91
rearrange people/trips in the Scenario layer
2020-03-12 15:38:58 -07:00
Dustin Carlino
d852d69535
make TripSpawner a temporary setup object, not something permanently stored in Sim
2020-03-12 15:00:50 -07:00
Dustin Carlino
78407dd529
upgrade to rust 1.42 for better unwrap() errors and use of matches!
2020-03-12 12:55:48 -07:00
Dustin Carlino
4eae0c8394
trip timeline shows relative duration of each phase [rebuild]
2020-03-06 08:58:52 -08:00
Dustin Carlino
bd2cb6ddd1
first steps towards representing people, not just trips
2020-03-05 17:28:57 -08:00
Dustin Carlino
cc1ee8384a
enum for trip phases
2020-03-03 12:42:51 -08:00
Dustin Carlino
08cd956faa
filling out the trip timeline a bit more
2020-03-03 12:12:42 -08:00
Dustin Carlino
52eba43522
stop and warp to gridlock in jump-to-time
2020-02-28 15:19:37 -08:00
Dustin Carlino
e5d9d80c14
make sim stepping way more precise, doing minimal amount of time
...
advancement in the innermost layer
tested by making sure prebaked results don't budge
2020-02-28 14:52:41 -08:00
Dustin Carlino
e19f88cd40
experiment with finding sources of gridlock, exposed as a new heatmap
2020-02-26 12:13:28 -08:00
Dustin Carlino
0ee45bd0e7
track total time agents spend blocked vs moving. be more precise with
...
tracking blocked_since in the FSMs.
2020-02-26 09:56:57 -08:00
Dustin Carlino
db69dbd4df
fix the active agents calculation. buckets... don't make any sense.
2020-02-20 17:50:42 -08:00
Dustin Carlino
d29839fa27
display a plot of activity over the day. the windowing is incorrect! but
...
it's some kind of start
2020-02-20 15:11:50 -08:00
Dustin Carlino
848347a9b5
change up agent meters
2020-02-19 08:23:06 -08:00
Dustin Carlino
d112707261
more info about trips to/from bldgs and intersections [rebuild]
2020-02-18 15:15:31 -08:00
Dustin Carlino
0f0924ac56
restore an old debug tool to spot what agents are blocking an intersection. optional mode to avoid some gridlock... seemingly working for a few cases, but breaking other stuff, so disabled.
2020-02-18 08:40:05 -08:00
Dustin Carlino
d56803a12a
include ongoing trips in measured trip times. adjust wording of
...
"finished trips" things.
2020-02-17 15:58:27 -08:00
Dustin Carlino
d292e29ad0
get the game crate running in wasm. bundle in lots of data files, fake out a few more IO things, glue timer println's to console log
2020-02-15 16:44:06 -08:00
Dustin Carlino
9a9619ec32
moving game assets to data/system, to more easily bundle in wasm
...
[rebuild]
2020-02-15 16:19:23 -08:00
Dustin Carlino
b2c92ab8f9
upstreaming some changes for wasm here
...
- use instant crate
- bring in the wasm ezgui backend and necessary setup tweaks
- upgrade stdweb
but no map editor build magic yet
2020-02-14 14:28:25 -08:00
Dustin Carlino
1f0b225b6b
cleaning up trip_details
2020-02-12 16:17:41 -08:00
Dustin Carlino
691dcdfbbc
also revamp panels for other objects, except for the trip details part
2020-02-12 12:22:43 -08:00
Dustin Carlino
b033c4f720
round of quick fixes to avoid crashes
2020-02-11 16:13:42 -08:00
Dustin Carlino
a3149d2219
no_edits -> untitled edits
2020-02-06 13:15:09 -08:00
Dustin Carlino
872cd0cba6
'save as' feature for map edits. autosave otherwise.
2020-02-06 12:31:06 -08:00
Dustin Carlino
91234bf49a
slow day. prototype a dot map from scenarios
2020-02-04 16:30:44 -08:00
Dustin Carlino
79de16a840
get the sim crate to build to wasm. a small step towards #21
2020-01-30 17:28:52 -08:00
Dustin Carlino
b2216bb482
not all lanes have to be the same width. make sidewalks a bit thinner.
2020-01-28 17:26:14 -08:00
Dustin Carlino
8a966395af
prevent a crash with spawning agents around intersections. tiny tutorial tweaks
2020-01-28 14:33:55 -08:00
Dustin Carlino
8d3f58f214
whoa, time_limited_step always jumped too much
2020-01-28 09:07:09 -08:00
Dustin Carlino
07995fb060
starting a tutorial for bus lanes too
2020-01-27 12:38:51 -08:00
Dustin Carlino
426ebdc606
let vehicles spawn on all lanes from a border. lets the bike tutorial have a better solution
2020-01-27 11:54:36 -08:00
Dustin Carlino
2747ca5181
bike trips were counting as driving trips
2020-01-27 11:01:02 -08:00
Dustin Carlino
5f82c855ed
slidey windows for thruput plots
2020-01-25 14:19:03 -08:00
Dustin Carlino
a45405055a
start a tutorial stage to justify bike lanes
2020-01-24 16:04:58 -08:00
Dustin Carlino
89e27b5e3d
associate cars with owner buildings
2020-01-24 13:10:24 -08:00
Dustin Carlino
95a84fd26a
tweaking rustfmt options; the long literal string vecs in tutorial look awful
2020-01-21 15:20:02 -08:00
Dustin Carlino
e9d40fe494
just kidding, use two counters in meters panel
2020-01-19 15:34:53 -08:00
Dustin Carlino
7ce3d5dd24
adjust agent meters panel (move info button there, display (un)finished
...
trips more succinctly)
2020-01-19 15:20:19 -08:00
Dustin Carlino
ad49e37706
gracefully exit info panels for agents that go away
2020-01-16 16:13:21 -08:00
Dustin Carlino
f85ca54a44
bail out of spawning parked cars if we're totally out of space. still
...
horribly slow in maps without enough onstreet parking.
also fix the name of github artifacts [rebuild]
2020-01-16 11:27:15 -08:00
Dustin Carlino
f28029c69f
dont crash when peds are waiting for a bus that isnt spawned, and dont walk in place while waiting
2020-01-13 09:21:23 -08:00
Dustin Carlino
53f33a31e4
hide IDs unless in dev mode
2020-01-09 11:50:56 -06:00
Dustin Carlino
c049221743
add a timeline showing bus location
2020-01-08 13:59:01 -06:00
Dustin Carlino
0439e05e4e
start a panel for showing live passenger delay
2020-01-04 10:52:25 -06:00
Dustin Carlino
05888357ea
generalize that into a prebaked analytics thing. undo the previous
...
thing. (i forgot even live stuff should be in analytics)
2020-01-04 10:30:57 -06:00
Dustin Carlino
fd2fbf6a5e
info panel for bus stop has number of people waiting currently, time spent waiting
2020-01-04 10:11:22 -06:00
Dustin Carlino
3755d9b858
proper clone for Sim
2019-12-24 14:47:07 -08:00
Dustin Carlino
fbbb59f6a5
add option to preview traffic signal edits with the live sim results
2019-12-24 14:34:50 -08:00
Dustin Carlino
e46ae7d734
fix #29 -- make sure when looking for parking on the same lane, dont go
...
backwards
2019-12-19 16:15:43 -08:00
Dustin Carlino
585cdfea63
express pedestrian pathfinding costs as time. this lets us more realistically model riding a bus as a time cost. as a nice side-effect, computing the CH for the walk_with_transit graph for huge_seattle drops from 10 minutes to 25s.
2019-12-19 12:41:53 -08:00
Dustin Carlino
75fa084884
fixing one instance of #28 and making it a bit easier to debug next time
2019-12-19 12:07:20 -08:00
Dustin Carlino
d9a68332e5
make all crates build (sim.save became mut)
2019-12-18 16:31:10 -08:00
Dustin Carlino
959a89e81c
dont serialize paths of yet-to-be-spawned stuff. drastically reduces savestate size.
2019-12-17 18:08:59 -08:00
Dustin Carlino
a1ff95e80a
exploring the feasibility of recording prebaked savestates (to use for
...
quick previews in edit mode). reduced size of savestates significantly
by ommitting analytics...
2019-12-17 16:36:29 -08:00
Dustin Carlino
b1da0f0284
get rid of unzoomed_radius, used to highlight agents stuck in intersections. there are better gridlock debug tools now, and this complicates the minimap
2019-12-16 18:51:29 -08:00
Dustin Carlino
201c0edaab
moving some debug info from the info panel to the console log
2019-12-12 16:09:01 -08:00
Dustin Carlino
dc2cc81249
make Timer methods and ModalMenu take &str or String
2019-12-12 10:25:48 -08:00
Dustin Carlino
ee598b6ae4
round of clippy. not fixing everything.
2019-12-11 16:17:15 -08:00
Dustin Carlino
2afa2ef43f
experimenting with tracking and visualizing demand at traffic signals
2019-12-09 15:23:30 -08:00
Dustin Carlino
954ac97a9f
started a histogram to show relative trip durations for fixing traffic
...
signals. lots of work needed.
2019-12-09 12:50:55 -08:00
Dustin Carlino
3a745f563a
make cars briefly pause before doing a yield turn at signals
2019-12-07 13:34:13 -08:00
Dustin Carlino
7434ff44e1
hide savestating controls in debug mode. they interact poorly with map edits.
2019-12-07 09:38:06 -08:00
Dustin Carlino
89a3d1cf5f
one generic prebake method to rule them all
2019-12-06 13:45:15 -08:00
Dustin Carlino
1753a40a25
prebake results for tutorial levels too, really manually. load prebaked
...
results more manually, since it now depends on map and scenario.
2019-12-04 16:36:01 -08:00
Dustin Carlino
e4ab4739df
squeezing in a challenge for the first traffic signal tutorial.
...
prototyping some new abstractions for specifying demand.
2019-12-04 15:12:18 -08:00
Dustin Carlino
3501aa6d72
reviving some way of saving and using purely synthetic maps. creating a
...
few for the traffic signal tutorial.
2019-12-04 12:19:17 -08:00
Dustin Carlino
a654f7ddc7
be able to show intersection delay over time
2019-12-04 11:15:10 -08:00
Dustin Carlino
d0cdf2412d
record intersection delays in analytics
2019-12-04 10:48:36 -08:00
Dustin Carlino
db8bc73ddd
finally grouping system data too. forgot some data/input things...
2019-12-03 12:22:59 -08:00
Dustin Carlino
2a103d0a21
also group raw_maps in data/input
2019-12-03 12:06:49 -08:00
Dustin Carlino
a043a9ba05
clean up more of abstutil path/filesystem API
2019-12-03 09:59:43 -08:00
Dustin Carlino
720f9b8b30
similar for writing
2019-12-02 20:41:09 -08:00
Dustin Carlino
808c3da141
panic early with a nice error if we cant read a binary or json file
2019-12-02 20:35:20 -08:00
Dustin Carlino
3267ec4068
switch some UI stuff to use new analytics, get rid of the old FinishedTrips cruft. remove the a/b test scoreboard for now; not sure what info is needed, and a/b test mode is a bit dormant anyway now
2019-12-02 14:55:47 -08:00
Dustin Carlino
a0956995c9
start to display more detailed breakdown of active agents
2019-12-02 14:44:03 -08:00
Dustin Carlino
27213995e5
split out a histogram for percentages. for now, duplicate code
2019-12-02 14:19:50 -08:00
Dustin Carlino
f483d7ea85
some analytics on how long people spend parking. need a histogram still
2019-12-02 12:15:38 -08:00
Dustin Carlino
00403332b2
more accurate end positions on driving phases
2019-12-01 15:25:21 -08:00
Dustin Carlino
ae272c27fd
show bus ride as trip phase
2019-12-01 15:13:16 -08:00
Dustin Carlino
ea378c25f3
recording parking phase
2019-12-01 13:54:48 -08:00
Dustin Carlino
dbd83d0805
draw trip phase paths as traces, not with road colorer, to get that vital detail
2019-11-29 14:58:56 -08:00
Dustin Carlino
8a93265a4b
draw phases of a trip route
2019-11-29 14:04:09 -08:00
Dustin Carlino
8d34759b7c
start tracking and debugging phases of a trip
2019-11-29 13:15:10 -08:00
Dustin Carlino
3d614ed763
helper for duration to make real-time seconds
2019-11-27 13:16:49 -08:00
Dustin Carlino
2c49d68a0f
last lingering cleanups for Duration / Time types
2019-11-27 13:12:19 -08:00
Dustin Carlino
c6bfab7cde
cutover scenrio-layer stuff to use Time
2019-11-27 12:50:52 -08:00
Dustin Carlino
a5dab493cd
cutover internal sim time to Time
2019-11-27 12:40:49 -08:00
Dustin Carlino
819e27aa5d
cutover sim time (via the API) to time
2019-11-27 11:49:57 -08:00
Dustin Carlino
e109c6b5a4
switch sim analytics to use Time
2019-11-27 11:06:57 -08:00
Dustin Carlino
3ca998b08e
properly fix the crashing border intersection
2019-11-23 20:27:00 -08:00
Dustin Carlino
640fcae07e
temporary workarounds for the hackathon, will revert later
2019-11-23 12:03:23 -08:00
Dustin Carlino
3ee73d40f0
guarantee protected turns actually get first dibs in the scheduler
2019-11-22 18:56:39 -08:00
Dustin Carlino
1145bbc8e6
overhaul ControlTrafficSignal to natively understand TurnGroups. but
...
it... didn't solve the problem of a left turn yield going first?!
2019-11-22 18:42:44 -08:00
Dustin Carlino
715fc80e04
make stop signs and traffic signals behave a bit more correctly -- protected turns get first dibs. problem is now that we need to make turn groups be the primitive, so conflict makes more sense
2019-11-22 16:14:04 -08:00
Dustin Carlino
aa1d7faa00
prototyping turn grouping for editing and understanding traffic signals.
...
half-baked, but worth moving forwards. starting to rip out old turn icon
stuff (oops, accidentally squished into this commit)
2019-11-21 15:09:57 -08:00
Dustin Carlino
f39bb7c6cb
center pedestrians on bldg front paths, and group them into crowds when
...
appropriate
2019-11-21 09:57:01 -08:00
Dustin Carlino
81dc3b6fea
report trip mode accurately for peds trying to drive!
2019-11-20 17:30:00 -08:00
Dustin Carlino
aa4805cfeb
some tools to debug why prebaked analytics arent matching
2019-11-20 17:01:12 -08:00
Dustin Carlino
8b76c2d6e6
stop crashing in downtown -- change pointless bike trip to walking
2019-11-19 18:33:07 -08:00
Dustin Carlino
ba2206d02a
be able to start and end bike trips on bike lanes. use driving
...
blackholes for now.
2019-11-19 14:10:02 -08:00
Dustin Carlino
463ed7022e
small fixes/cleanups to map layer:
...
- print highest cost in heatmap over all turns
- rm defunct label support for roads/bldgs
- trim out unused methods from Map
- making spawner go through sim layer to get paths, consolidating a bit
2019-11-18 10:33:36 -08:00
Dustin Carlino
accc344054
use scoreboard tool to show comparison for all trips
2019-11-15 13:19:57 -08:00
Dustin Carlino
22397b93a7
NOW ban bikes from motorways. popdat trip filtering needed to handle
...
some impossible-to-fulfill requests involving borders
2019-11-15 10:48:33 -08:00
Dustin Carlino
f73e0c15af
clean up dupe logic in popdat for figuring out path from a trip. instead just repeat the main path used in simulation layer
2019-11-15 10:32:49 -08:00
Dustin Carlino
8ed42e9fb6
can_use can ban bikes from highways... disabled because it's breaking
...
psrc scenario, about to dig in
2019-11-15 10:11:31 -08:00
Dustin Carlino
59913d79e9
also switch some border-related methods to use PathConstraints
2019-11-14 20:37:03 -08:00
Dustin Carlino
2dea662fa0
rip out old methods in map for filtering turns
2019-11-14 20:24:54 -08:00
Dustin Carlino
4c9975f8b0
be a little more precise with PathRequest
2019-11-14 19:18:22 -08:00
Dustin Carlino
c0eeb8848a
still start a scenario, even if theres not enough room for all the parked cars or if some bike trips are impossible
2019-11-11 17:00:45 -08:00
Dustin Carlino
1ff80b2e20
start figuring out what impact edits have on trips in a scenario. also,
...
count trips with the first path failing as aborted.
2019-11-11 14:14:19 -08:00
Dustin Carlino
b24100caba
collect and draw info on road throughput per some bucket of time. much
...
work needed.
2019-11-10 14:38:26 -08:00
Dustin Carlino
5bb8e0a83b
overhaul stop signs. can only toggle which roads have a stop sign or
...
not. no more granular control of individul turns
2019-11-09 14:20:31 -08:00
Dustin Carlino
7b2a0b87b3
just use 3 turn priorities, interpret them a bit differently.
...
temporarily kinda breaking stop signs
2019-11-09 13:35:55 -08:00
Dustin Carlino
965037ce77
mvp of visualizing interactive sources/sinks
2019-11-08 13:16:22 -08:00
Dustin Carlino
8fa813f5c2
match agents spawning somewhere on a lane as a border intersection, so trip counting works. much simpler than the full refactor attempted in another branch.
2019-11-08 12:23:55 -08:00
Dustin Carlino
b7dd4d5ec0
stop flipping colors of cars based on stuck/moving when zoomed in
2019-11-08 09:38:38 -08:00
Dustin Carlino
6a5b312a07
same for correct end lanes
2019-11-07 16:32:26 -08:00
Dustin Carlino
b0dde63e57
make bulk spawner use correct start lanes
2019-11-07 16:16:04 -08:00
Dustin Carlino
e82abafb70
change gridlock score to use number of finished trips
2019-11-07 08:59:29 -08:00
Dustin Carlino
c326017883
make sim analytics invariant of the step() sizes called. prebaked vs
...
live sims were artifically different.
2019-11-06 12:31:13 -08:00
Dustin Carlino
1a28768df3
displaying bus delay data over time. needs work, but solid start to a
...
general plotting mechanism
2019-11-05 13:00:51 -08:00
Dustin Carlino
c54842faff
get rid of DurationStats, just beef up DurationHistogram slightly
2019-11-04 14:31:40 -08:00
Dustin Carlino
ec956f5b13
turning PrebakedResults into just sim analytics
2019-11-04 14:24:06 -08:00
Dustin Carlino
974ad24ec3
refactoring some TripMode enum stuff
2019-11-04 13:51:25 -08:00
Dustin Carlino
7eeebb72ec
displaying different bus arrival info, and experimenting with storing the data differently. no prebaking yet.
2019-11-04 10:41:50 -08:00
Dustin Carlino
8d32671834
dont spawn buses by default in scenarios
2019-11-04 09:59:52 -08:00
Dustin Carlino
7c6f2c62b6
compare faster trips by baseline over time
2019-11-03 17:17:47 -08:00
Dustin Carlino
3ba33e4bd0
add some initial info on trips to/from different locations to info panel
2019-11-02 16:34:10 -07:00
Dustin Carlino
facd9c68b3
remove old gridlock detector, in favor of a tool to find the front of a
...
chain of blockage
2019-11-01 15:31:26 -07:00
Dustin Carlino
d187332734
prototype a new challenge to create gridlock
2019-11-01 09:59:39 -07:00
Dustin Carlino
abf14e1fac
track when map edits are dirty
2019-10-31 14:51:35 -07:00
Dustin Carlino
ef01501509
overhaul finished trips graph. record times in order, build the graph later
2019-10-31 13:46:26 -07:00
Dustin Carlino
1d5064ca1b
track all bus arrivals, show distribution. track total number of
...
passengers per route
2019-10-29 22:11:56 -07:00
Dustin Carlino
a5892daedb
add a new lane type for road closures
2019-10-29 17:04:57 -07:00
Dustin Carlino
75e155fec6
filter out parking lanes without any sidewalks at all nearby (and also
...
warn about them)
2019-10-26 17:53:09 -07:00
Dustin Carlino
ee02ff9944
display when a bus last served a stop. move some of these analytics to
...
be owned by sim
2019-10-26 12:33:00 -07:00
Dustin Carlino
1e903c6cee
pass a flag to disable using mapfixes, since it's annoying to keep temporarily deleting these
2019-10-25 10:09:47 -07:00
Dustin Carlino
2d02f90d9b
another easy one -- one phase per road
2019-10-22 14:29:58 -07:00
Dustin Carlino
c9db056c3a
start representing shared left turn lanes. nothing uses them yet,
...
just draw them (without the left turn markings)
2019-10-21 16:14:16 -07:00
Dustin Carlino
c9a6f0a7d8
call out agents that've been blocked in an intersection for a while.
...
this is basically a fast gridlock detector
2019-10-20 12:49:25 -07:00
Dustin Carlino
8c826a870c
try waking up people at intersections in waiting-order, for proper fairness
2019-10-19 21:41:53 -07:00
Dustin Carlino
d04b6a240e
when trip starts from a garage, dont walk down the front path uselessly first
2019-10-19 20:18:06 -07:00