Commit Graph

89 Commits

Author SHA1 Message Date
Dustin Carlino
b4c39a0850 An initial script to mass import cities. #326 2020-10-26 17:46:53 -07:00
Dustin Carlino
c018de86b1 new release 2020-10-25 17:29:42 -07:00
Dustin Carlino
47fa997f72 Refactor a proper Amenity struct. Leave room for optional raw OSM tags.
Don't expose the tags in the UI yet. [rebuild]
2020-10-25 11:49:46 -07:00
Dustin Carlino
22ae06c3a4 Remove the --pathfinding_upfront option. #312 and #258
Originally, all trips in the entire scenario had their paths calculated
at the beginning of a simulation. The sum time is faster than
calculating them individually, because we could use multiple threads.
But a while ago, this was disabled by default to improve the startup
latency. Especially if a player isn't making it through an entire day
anyway, calculating all of the paths upfront is a waste and slows down
their initial experience.

Now I'm hitting all sorts of bugs with live map edits, because the map
change between initial planning and when a trip starts. Previously, the
PathRequest was calculated up-front and resolved when a trip starts. But
even this PathRequest can become stale. So now always calculate it when
a trip actually starts, looking at the current map. To do this sanely,
totally rip out support for --pathfinding_upfront.

If we really want it later for performance, we could add it back in, and
be very careful about detecting stale PathRequests and recomputing. But
for now, there's no use case for this, so it'd needlessly complicate the
code.
2020-10-22 13:47:03 -07:00
Dustin Carlino
8bc6b09b10 Upgrade to rust 1.47. No relevant changes except that stack traces hide some useless boilerplate now. 2020-10-21 10:25:55 -07:00
Dustin Carlino
422882c03b Ditch cpuprofiler in favor of cargo flamegraph. Add a tool that just
runs a scenario headlessly, since that's easier than sending a few curl
commands to the API. #368
2020-10-15 17:12:38 -05:00
Dustin Carlino
39ec4a13de Import forests as park areas (for Salzburg) and add a warning about JOSM. #366 2020-10-15 15:10:12 -05:00
Dustin Carlino
20b4f15e86 Another attempt to write down a sort of roadmap for modularizing abst 2020-10-14 13:14:53 -05:00
Dustin Carlino
c0513a3d64 Reduce time to park/unpark offstreet when --infinite_parking is used.
Downtown forms gridock just from everyone pouring into Harborview! The
point of --infinite_parking is to simplify the sim by not modelling the
impact of parking. #368
2020-10-14 12:40:26 -05:00
Dustin Carlino
84a65c293b Make it easier to test scenario modifiers by specifying them on the CLI 2020-10-14 12:16:38 -05:00
Dustin Carlino
eb7ee6d57d Fix a few build warnings and breaks, and document the headless server a
bit more
2020-10-14 10:46:18 -05:00
Dustin Carlino
aee053312d Document strategy for resolving gridlock 2020-10-13 11:44:13 -05:00
Dustin Carlino
4d549f80df A fresh attempt at overviewing the map model docs 2020-10-11 12:54:17 -07:00
Dustin Carlino
b9c8e2231e new release 2020-10-10 14:02:34 -07:00
Dustin Carlino
a2d36274a2 Prep for release [rebuild] 2020-10-10 13:11:11 -07:00
Dustin Carlino
94449e49e0 Launch the web version! #21 2020-10-09 22:55:13 -07:00
Dustin Carlino
69c8ce4cbe Before the .wasm loads, display "Loading" 2020-10-07 23:02:10 -07:00
Dustin Carlino
2c3fd09378 Add an example Python tool that works with the JSON map export. Support
specifying trip endpoints by building or intersection when importing
traffic demand data.
2020-10-07 15:37:59 -07:00
Dustin Carlino
f258c50595 Organize import blocks using https://github.com/dabreegster/organize_rust_imports 2020-10-05 20:29:22 -07:00
Dustin Carlino
5b84ac897c new release 2020-10-04 15:34:54 -07:00
Dustin Carlino
50de6b191f prep for new release [rebuild] 2020-10-04 14:58:44 -07:00
Dustin Carlino
9ccbf40dba Merge the concept of cancelled and aborted trips, in preparation for storing the reason for cancellation, for #312 2020-10-03 10:41:53 -07:00
Dustin Carlino
cfa203a4d3 Add an API call to dump all traffic signals' current state 2020-10-02 21:03:29 -07:00
Dustin Carlino
f73d9da080 Conjure Traffic Seitan, a tool to make byzantine live map edits, to cause chaos and flush out bugs... 2020-10-01 18:24:35 -07:00
Dustin Carlino
afa27e0903 Just adjusting dark colorscheme 2020-10-01 16:36:00 -07:00
Dustin Carlino
ac5aa927db Test turn generation via goldenfiles instead. Revert the "import from a
raw string" stuff from the previous commit.

Add tests of a few interesting intersections. The results right now
aren't ideal, but this sets things up for fast iteraton.
2020-10-01 15:34:43 -07:00
Dustin Carlino
ec114e51e1 Prototype an idea for unit testing the turn generation code. Hardcode a
simple .osm, turn it into a full Map, and inspect the results.
2020-09-30 16:30:28 -07:00
Dustin Carlino
68b8276879 Start a doc brainstorming the platformification of map_model. Very
tentative ideas from recent conversations with different groups
2020-09-30 15:15:49 -07:00
Dustin Carlino
6aba65ec47 new release 2020-09-27 14:45:05 -07:00
Dustin Carlino
371d26f707
Bring in alleyways from OSM! [rebuild] (#351) 2020-09-27 12:20:27 -07:00
Dustin Carlino
2ddd9a62ff Cleanups for #346:
- Add Distance::min()/max()
- Bring in log crate everywhere
- Consolidate traffic signal validation
2020-09-26 10:11:08 -07:00
Dustin Carlino
0b99207427 Fix more broken links. Sadly can't enable linkcheck, because it has two false positives. 2020-09-24 19:37:16 -07:00
Dustin Carlino
86d47016be Fix some broken mdbook links 2020-09-24 19:18:45 -07:00
Dustin Carlino
c9fbf67989 Rearrange headless API to explicitly apply edits at the same time as
specifying the scenario to run. #325
2020-09-24 13:14:49 -07:00
Dustin Carlino
07a8a21fec Cap the busiest road. Not actually working yet, because all the commands
to manage edits are stomping on each other. #325
2020-09-24 12:08:46 -07:00
Dustin Carlino
47061fcb6c Expose road throughput through the API. Start a second Python
experiment, refactor a bit. #325
2020-09-24 11:23:19 -07:00
Dustin Carlino
566f6a9e13 Port the Go experiment to Python 2020-09-23 15:00:38 -07:00
Dustin Carlino
e1de43b75c Add a /map/set-edits API call 2020-09-21 10:18:02 -07:00
Dustin Carlino
d402cedeb1 new release 2020-09-20 13:19:43 -07:00
Dustin Carlino
8e32314979 Style the loading screen and add tips/news. Closes #180 [rebuild] 2020-09-20 13:02:27 -07:00
Michael Kirk
c0e2a611a0
introduce textures to rendering pipeline (#333) 2020-09-17 18:38:55 -07:00
Dustin Carlino
c0e530645b Handle blackholes and reserving 2020-09-15 13:27:56 -07:00
Dustin Carlino
2aec7045cf new release 2020-09-13 16:28:25 -07:00
Dustin Carlino
8ffb42b73f prep for new release [rebuild] 2020-09-13 15:34:18 -07:00
Dustin Carlino
037e22e69e Cleanup last few things for left-hand maps. Fixes #311! 2020-09-11 14:17:31 -07:00
Dustin Carlino
84e682adc7 Document all ongoing/tentative collaborations 2020-09-10 20:40:16 -07:00
Dustin Carlino
2d24bb4a36 Add an API example in Go to measure trip times with different
percentages of people cancelled.
2020-09-10 11:44:11 -07:00
Dustin Carlino
8cc61aafc8 Add a method to the API to modify a scenario. No callers/tests yet. 2020-09-09 19:52:15 -07:00
Dustin Carlino
9844eeecc8 Improve error messages for old EditIntersections, for #319 2020-09-09 16:01:29 -07:00
Dustin Carlino
39290f899c Handle some of the live changes to parking by deleting parked cars on
edited lanes. #312
2020-09-09 15:03:14 -07:00