Dustin Carlino
b5ea263fc1
Expose the blocked-by graph through the API, and add root-cause analysis
...
to the UI debugger. #392
2020-11-30 17:01:15 -08:00
Dustin Carlino
3eda17627b
Handle binary or JSON scenarios
2020-11-30 14:00:19 -08:00
Dustin Carlino
47d09d61f0
Plumb the intended TripMode for cancelled trips; instead make the trip duration optional. Breaking change for anyone using the API. Makes way more sense. [rebuild] [release]
2020-11-22 11:21:44 -08:00
Dustin Carlino
3905131fe4
Track and expose total trip distance in the API. #392
2020-11-19 10:40:00 -08:00
Dustin Carlino
915e12ff7e
Remove PersonID from Scenario; the simulation will assign IDs sequentially. They're redundant. #258
...
Slightly reduces scenario file size, and simpler code to construct
scenarios.
2020-11-18 14:13:25 -08:00
Dustin Carlino
7854823c28
Change the to/from permanent map edits APIs to be a little more ergonomic
2020-11-12 10:13:32 -08:00
Dustin Carlino
f30e1e2fff
Dump the entire map to geojson
2020-11-10 13:02:00 -08:00
Dustin Carlino
cda586dfc9
Cleanup by moving some methods to belong to MapName. #326
2020-11-05 14:18:13 -08:00
Dustin Carlino
e17273dc31
Expose distance crossed per agent in the API.
2020-11-05 12:19:58 -08:00
Dustin Carlino
67530bec07
Future-proof file organization by changing map_name from a string to a
...
struct. Whatever choices we make next about naming cities hierarchially
or not can be managed in just one place. #326
This is a pretty huge change, but the compiler gives reasonable
confidence it's correct. More bugs are likely to crop up in the next
step, when filenames start being namespaced by the city too.
2020-11-04 17:26:32 -08:00
Dustin Carlino
1707b6fe37
Consolidate some PolyLine geometry code, and refactor some geom->geojson
...
mappings
2020-10-29 12:23:39 -07:00
Dustin Carlino
f187cf4bd8
Add an API call to export intersection geometry to geojson, for experimental streetmix3d integration.
...
To get an example:
> cargo run --bin headless -- --port=1234
> curl http://localhost:1234/map/get-intersection-geometry?id=291
2020-10-29 12:00:34 -07:00
Dustin Carlino
3ed7e73aa8
Use a u64 RNG seed, not a u8
2020-10-29 09:25:07 -07:00
Dustin Carlino
a579cb4f74
Add a sanity check to catch live map edit bugs faster. Deleted turns
...
aren't getting cleaned up properly.
Also fix broken headless build, woops.
2020-10-21 10:23:56 -07:00
Dustin Carlino
c435d3fce2
Consolidate two scenario modifiers, allowing all walking trips to be cancelled, for #368
2020-10-19 18:03:17 -05: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
b3525f95a2
Enable profiling in the headless server. #368
...
(Although actually, I'm liking cargo flamegraph better than cpuprofiler.
Might rip out the support for cpuprofiler.)
2020-10-15 16:21:57 -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
6fd8422cf5
Woops, fix headless build break
2020-10-06 13:05:23 -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
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
4e4e11b404
A few documentation adjustments after
...
5de05a6fe3
2020-09-29 09:21:36 -07:00
Dustin Carlino
2c0f3a13f7
Distinguish capped/uncapped trips in experiment results. #325
2020-09-24 18:08:05 -07:00
Dustin Carlino
0d8ab143f9
Slightly better error handling in the API
2020-09-24 17:26:46 -07:00
Dustin Carlino
e1b079900a
Don't touch SimFlags in headless at all
2020-09-24 17:10:07 -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
fb377d3326
Fix headless --edits; was forgetting to fully apply the edits
2020-09-23 08:46:32 -07:00
Dustin Carlino
e1de43b75c
Add a /map/set-edits API call
2020-09-21 10:18:02 -07:00
Dustin Carlino
5dd761ceb9
Add an --edits flag to headless
2020-09-18 10:43:58 -07:00
Dustin Carlino
9e38eedaaf
Plumb sim flags through headless properly. Make the Go experiment print
...
comparison results ASAP.
2020-09-15 13:47:04 -07:00
Dustin Carlino
122bc82867
Add flags to Go example, use it to figure out if downtown can run with lots of people cancelled
2020-09-14 12:37:21 -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
5be4c2ca84
Add an API to add a new trip in the middle of the simulation. Fixes #313
...
[rebuild]
2020-09-06 13:53:31 -07:00
Dustin Carlino
74aca40c0c
Mechanicallyish rename TurnGroup -> Movement for #197 , as decided in ( #306 )
...
https://github.com/dabreegster/abstreet/pull/302#discussion_r479571931
2020-08-29 15:18:54 -07:00
Dustin Carlino
0eb1309ace
Add an API to get back all of the map edits so far
2020-08-28 14:09:44 -07:00
Dustin Carlino
83a5df7886
Add an API for the Xi'an group to get agent positions
2020-08-26 09:22:33 -07:00
Dustin Carlino
11832aa606
Record throughput through a traffic signal by direction, expose through
...
the API (#245 ), and beef up the Python example.
Impact to prebaked file size is tiny -- for lakeslice, the original
intersection_thruput is 2MB and the new traffic_signal_thruput is 435KB.
[rebuild]
2020-08-22 09:13:16 -07:00
Dustin Carlino
2783c3e180
Expose the granular delays through an API for reinforcement learning ( #245 ).
2020-08-20 16:21:52 -07:00
Dustin Carlino
02569b1642
Get an end-to-end sample experiment working through the API and Python client
2020-08-18 12:52:38 -07:00
Dustin Carlino
5c337e2e8e
Add some methods to the headless API for manipulating traffic signals, and start a Python client example. Everything still WIP.
2020-08-18 11:31:20 -07:00
Dustin Carlino
8ce2568280
turn the headless runner into a demo of a JSON API, for #245 ( #268 )
...
turn the headless runner into a demo of a JSON API, for #245
2020-08-11 16:44:19 -07:00
Dustin Carlino
5e8be61e6d
fix #158 , build break
2020-07-07 12:45:11 -07:00
Dustin Carlino
6696263a08
fix map_editor and headless build break, for #108
2020-06-30 13:49:24 -07:00
Dustin Carlino
90b556ac1f
carve out a way to modify the weekday scenario in the UI. express the 5 day repeat using this
2020-06-27 11:56:45 -07:00
Dustin Carlino
0aaf9a1487
workaround repeated scenario running out of parking
2020-04-28 10:12:08 -07:00
Dustin Carlino
0eaf33ff46
stop generating RNGs from entropy. use the prebaked seed by default. allow explicitly changing the rng, but no use for that yet
2020-04-26 11:38:32 -07:00
Dustin Carlino
6594de3000
remove a hack from multi-day trips and stumble upon the people needing
...
10 cars
also prebake data again
2020-04-23 12:37:21 -07:00