Dustin Carlino
|
c7dc028601
|
Display for Traversable
|
2019-03-18 13:21:57 -07:00 |
|
Dustin Carlino
|
1a395d7e4f
|
clean up dead code
|
2019-03-17 20:31:48 -07:00 |
|
Dustin Carlino
|
7422877bcb
|
handle ending while clipping into stuff
|
2019-03-17 18:48:24 -07:00 |
|
Dustin Carlino
|
440ff358cd
|
option to headless to 'draw' everything, flush out all bugs
|
2019-03-17 18:13:30 -07:00 |
|
Dustin Carlino
|
ef4a4b18cf
|
handle short lanes for get_car_positions
|
2019-03-17 18:04:25 -07:00 |
|
Dustin Carlino
|
96785a3c5c
|
oops, considering somebody out of the way slightly early wasnt actually safe, it turns out
|
2019-03-17 17:55:24 -07:00 |
|
Dustin Carlino
|
652e01ba87
|
deal with short lanes. also dont mark turn_finished until the car is
totally out the intersection.
|
2019-03-17 17:13:28 -07:00 |
|
Dustin Carlino
|
b8c15b5ced
|
different formulation, where follower of laggy leader immediately at end of queue when laggy leader is out of the way. make get_car_positions recurse. great start!
|
2019-03-16 15:26:37 -07:00 |
|
Dustin Carlino
|
c40c4fdff4
|
eager impl to not hit the back of cars. no handling of short lanes, and
follower waits before starting to cross the end of a lane.
|
2019-03-16 14:53:46 -07:00 |
|
Dustin Carlino
|
db536a04d5
|
refactor an exact_slice for polylines
|
2019-03-15 14:02:43 -07:00 |
|
Dustin Carlino
|
961b70d1f4
|
kind of improved draw_unzoomed, except there are just tons of weird
situations to represent
|
2019-03-15 13:39:25 -07:00 |
|
Dustin Carlino
|
88c9630f7a
|
check for gridlock every 5m and savestate when it happens
|
2019-03-15 12:17:35 -07:00 |
|
Dustin Carlino
|
dd198bb37f
|
overly conservative gridlock detection, triggered kind of manually
|
2019-03-15 12:10:47 -07:00 |
|
Dustin Carlino
|
1ba7e5d325
|
woops, not so easy to figure out a proper retry for room_at_end
|
2019-03-14 16:05:07 -07:00 |
|
Dustin Carlino
|
e482e10666
|
show agent state in tooltips
|
2019-03-14 14:36:46 -07:00 |
|
Dustin Carlino
|
17ef2c5a3a
|
separate Queued and WaitingToTurn states for cars. populate
waiting_to_turn in DrawCar
|
2019-03-13 15:14:49 -07:00 |
|
Dustin Carlino
|
15f6981b1d
|
make tests pull events new way, stop returning from step(). fix termion
and test runner.
|
2019-03-12 13:29:58 -07:00 |
|
Dustin Carlino
|
505b0a9496
|
store events in Sim, not a plugin. switch tutorial mode.
|
2019-03-12 13:23:39 -07:00 |
|
Dustin Carlino
|
5711e343e8
|
spawn cars around an intersection
|
2019-03-12 11:06:42 -07:00 |
|
Dustin Carlino
|
5ca359998c
|
upgrade some dependencies and list data source licenses in README
|
2019-03-11 16:04:47 -07:00 |
|
Dustin Carlino
|
5bba5ce31e
|
track num_active_trips to speedup is_done query
|
2019-03-08 16:02:56 -08:00 |
|
Dustin Carlino
|
8f5dd61ce5
|
handle cars with one-step routes
|
2019-03-08 15:57:20 -08:00 |
|
Dustin Carlino
|
7adf7d4e27
|
print what paths fail in trip transitions, fix a tiny parking sim bug
|
2019-03-08 12:52:37 -08:00 |
|
Dustin Carlino
|
5013cae4f9
|
fixing tests
|
2019-03-08 12:19:05 -08:00 |
|
Dustin Carlino
|
6fd021be91
|
filter out nonsense trips
|
2019-03-08 11:06:55 -08:00 |
|
Dustin Carlino
|
1eebea8001
|
cutting over to new graph search in some cases. adding support for
one-step walking paths.
|
2019-03-08 10:47:39 -08:00 |
|
Dustin Carlino
|
08e54612b8
|
cache bus routes
|
2019-03-06 18:16:08 -08:00 |
|
Dustin Carlino
|
a975d0efd4
|
print progress while calculating paths in parallel
|
2019-03-06 17:41:28 -08:00 |
|
Dustin Carlino
|
4ae478a7a5
|
smarter estimate about cars queued on last step... but disabled it :(
|
2019-03-05 18:12:32 -08:00 |
|
Dustin Carlino
|
ce340f5668
|
more frequent status updates, based on real time passing, not sim time
|
2019-03-05 17:10:27 -08:00 |
|
Dustin Carlino
|
063fb85155
|
amp up BLIND_RETRY to something reasonable for the remaining, difficult cases. fix a race condition where a bus blips through the Queued state. and deal with idling state causing queued followers
|
2019-03-05 16:57:27 -08:00 |
|
Dustin Carlino
|
84d24da73d
|
decent retries for intersections
|
2019-03-05 15:32:36 -08:00 |
|
Dustin Carlino
|
2a7da98a09
|
give some control of retries to intersections
|
2019-03-05 14:32:33 -08:00 |
|
Dustin Carlino
|
1d0dca77b8
|
woops, was still advancing time in 0.1s chunks
|
2019-03-05 14:02:39 -08:00 |
|
Dustin Carlino
|
bc9a9aa360
|
histogram of how far events are in the future
|
2019-03-05 13:43:49 -08:00 |
|
Dustin Carlino
|
3567f2451f
|
count active agents better
|
2019-03-05 10:08:06 -08:00 |
|
Dustin Carlino
|
194d3b3b57
|
keep simple state when roaming for parking
|
2019-03-05 10:00:05 -08:00 |
|
Dustin Carlino
|
0bcb18b4b0
|
handle unreachable case
|
2019-03-05 09:36:48 -08:00 |
|
Dustin Carlino
|
0c824e8d0d
|
flag to headless to control sim size, roughly
|
2019-03-05 09:30:39 -08:00 |
|
Dustin Carlino
|
f866c99758
|
add some basic stats for how many events go through, how many are EPSILON in the future
|
2019-03-05 09:17:36 -08:00 |
|
Dustin Carlino
|
3047c67e2b
|
modest speedup using binary search
|
2019-03-04 21:08:45 -08:00 |
|
Dustin Carlino
|
b69c01ea5f
|
preps to swap out scheduler priority queue impl
|
2019-03-04 20:50:36 -08:00 |
|
Dustin Carlino
|
88ce753243
|
making one PriorityQueue for all of sim, doing dispatch
|
2019-03-04 14:56:38 -08:00 |
|
Dustin Carlino
|
434a4aa019
|
cutover driving sim to events!
|
2019-03-04 14:11:27 -08:00 |
|
Dustin Carlino
|
b58a4097b5
|
changing PriorityQueue to emit one item at a time
|
2019-03-04 13:12:38 -08:00 |
|
Dustin Carlino
|
6f0dffdc75
|
move all driving sim to per-car updates, by calculating distances only
when needed
|
2019-03-04 13:04:23 -08:00 |
|
Dustin Carlino
|
0cfbc2f7da
|
move the code to advance Queued head cars to next turn/lane into the
main per-car loop
|
2019-03-04 12:15:16 -08:00 |
|
Dustin Carlino
|
8e7cc2c11e
|
delete peds inline
|
2019-03-04 11:03:15 -08:00 |
|
Dustin Carlino
|
b52e7bd991
|
lift Idling handler to the loop that's trivially event-based
|
2019-03-04 10:47:20 -08:00 |
|
Dustin Carlino
|
385a9044db
|
store requests to intersections, as a prep for notifying them when to retry
|
2019-03-03 20:01:38 -08:00 |
|
Dustin Carlino
|
d8ad1675dc
|
handle sim running too damn fast ;)
|
2019-03-03 19:05:57 -08:00 |
|
Dustin Carlino
|
2ac973f245
|
properly update followers that're Crossing and become unblocked
|
2019-03-03 18:41:45 -08:00 |
|
Dustin Carlino
|
ab52e9ac38
|
stop returning borrows from get_car_positions
|
2019-03-03 18:19:12 -08:00 |
|
Dustin Carlino
|
b1dff917c9
|
make a new WaitingToTurn state for peds
|
2019-03-03 17:50:13 -08:00 |
|
Dustin Carlino
|
92fd802f83
|
vague cleanup before making driving sim be event-based
|
2019-03-03 16:05:17 -08:00 |
|
Dustin Carlino
|
5f08bfca0c
|
store Cars in DrivingSimState, not Queue
|
2019-03-03 15:12:25 -08:00 |
|
Dustin Carlino
|
f2b0468b8b
|
speed up tests by loading precomputed map
|
2019-03-03 14:40:59 -08:00 |
|
Dustin Carlino
|
348c7b2b35
|
making walking sim be (mostly) event-based
|
2019-03-03 14:39:39 -08:00 |
|
Dustin Carlino
|
8f3b2b8224
|
extract out a priority queue helper, still slow impl
|
2019-03-03 14:22:25 -08:00 |
|
Dustin Carlino
|
9d1bb00fbd
|
adding a test for bikes
|
2019-03-02 17:22:41 -08:00 |
|
Dustin Carlino
|
bcb0268f7a
|
refactoring TripManager
|
2019-03-01 22:43:27 -08:00 |
|
Dustin Carlino
|
0f71ee5210
|
make peds leave bus
|
2019-03-01 22:33:15 -08:00 |
|
Dustin Carlino
|
313841b9de
|
make peds board buses
|
2019-03-01 22:09:33 -08:00 |
|
Dustin Carlino
|
9c916e5d11
|
make sure buses dont block a sim from being considered done
|
2019-03-01 15:39:34 -08:00 |
|
Dustin Carlino
|
81d604367e
|
make buses cycle between stops. move the waiting at stop state to
CarState, since idling in Queued doesn't make sense
|
2019-03-01 15:25:42 -08:00 |
|
Dustin Carlino
|
c99d9f5138
|
bringing back skeleton of transit sim...
|
2019-03-01 13:30:41 -08:00 |
|
Dustin Carlino
|
5f6d7e1b66
|
fix sim nondet test failure by using BTreeMap in my MultiMap
|
2019-03-01 12:16:52 -08:00 |
|
Dustin Carlino
|
8d9a44fd76
|
making sure to call TripManager and publish events for most transitions
|
2019-02-28 19:07:40 -08:00 |
|
Dustin Carlino
|
05ffb18fbc
|
publishing an event to make the parking tests work
|
2019-02-28 10:54:03 -08:00 |
|
Dustin Carlino
|
e6ff4481e7
|
do ID allocation more up-front
|
2019-02-27 14:29:45 -08:00 |
|
Dustin Carlino
|
84c1a94f49
|
implement test helper for seeding parked cars
|
2019-02-27 13:23:13 -08:00 |
|
Dustin Carlino
|
50451b6120
|
make tests build again. cleanup sim::load
|
2019-02-27 13:16:28 -08:00 |
|
Dustin Carlino
|
dd6921323d
|
delete a little commented out code
|
2019-02-27 12:24:57 -08:00 |
|
Dustin Carlino
|
54935ab5de
|
draw unzoomed cars, color peds preparing bikes
|
2019-02-27 12:23:15 -08:00 |
|
Dustin Carlino
|
c6f64cbec5
|
clean up imports and visibility in sim
|
2019-02-27 12:19:38 -08:00 |
|
Dustin Carlino
|
f6a6bb888e
|
cleanup crate dependencies, fix spawning car from lane, reduce
mutability of debug_car
|
2019-02-27 12:06:29 -08:00 |
|
Dustin Carlino
|
11c549331e
|
finally, the big cutover! editor and headless work. tests dont compile.
|
2019-02-27 11:53:45 -08:00 |
|
Dustin Carlino
|
8e522e13dc
|
prepping helpers to spawn ala carte trips
|
2019-02-27 11:25:13 -08:00 |
|
Dustin Carlino
|
be797e7e6f
|
rearrange sim crate code to prep for easier cutover
|
2019-02-27 09:38:52 -08:00 |
|
Dustin Carlino
|
350428b6e9
|
impl remaining Sim methods
|
2019-02-27 09:33:49 -08:00 |
|
Dustin Carlino
|
b3b4f82f45
|
rename CarState enum
|
2019-02-26 16:41:32 -08:00 |
|
Dustin Carlino
|
b0abf7abff
|
make time private in Sim, force clear API
|
2019-02-26 14:23:59 -08:00 |
|
Dustin Carlino
|
76ee37c077
|
get rid of Tick externally
|
2019-02-26 14:21:57 -08:00 |
|
Dustin Carlino
|
42c7c21246
|
removing many external dependencies on Tick. moving time parsing to
Duration.
|
2019-02-26 14:09:08 -08:00 |
|
Dustin Carlino
|
d5181f6bf8
|
own time inside of Sim
|
2019-02-26 13:08:56 -08:00 |
|
Dustin Carlino
|
b6eb62aa62
|
give commands to spawn peds, but don't do anything with them yet
|
2019-02-23 11:48:42 -08:00 |
|
Dustin Carlino
|
6673807422
|
bring in parking code and some structures needed for it. dont use it yet. switch to Vehicle.
|
2019-02-22 11:09:33 -08:00 |
|
Dustin Carlino
|
a45b4510b6
|
speed up neighborhood<->building and road matching during scenario instantiation
|
2019-02-21 11:33:56 -08:00 |
|
Dustin Carlino
|
e4ef1ec79d
|
removing log from sim
|
2019-02-20 11:22:51 -08:00 |
|
Dustin Carlino
|
c2791a6ead
|
using Warn in all of geom
|
2019-02-20 10:36:58 -08:00 |
|
Dustin Carlino
|
46fb2c94b5
|
implement DrawAgents
|
2019-02-20 08:11:03 -08:00 |
|
Dustin Carlino
|
ad16247695
|
active agents per road in unzoomed mode
|
2019-02-16 17:55:02 -08:00 |
|
Dustin Carlino
|
2578219610
|
skip spawning vehicles when they wont fit in the requested spot. improve
some error messages related to spawning and add a timer for an
apparently very slow step
|
2019-02-16 11:51:42 -08:00 |
|
Dustin Carlino
|
ec01207369
|
try upgrading rand and serde again
|
2019-02-10 15:57:28 -08:00 |
|
Dustin Carlino
|
51399e19ed
|
organize convert_osm lib better. also make clippy build everything
again.
|
2019-02-10 15:52:21 -08:00 |
|
Dustin Carlino
|
f6a53797f0
|
manually glueing together some fixed intervals
|
2019-02-06 22:53:43 -08:00 |
|
Dustin Carlino
|
3bf4807364
|
thoughts on a different simulation model and a plugin skeleton to play
with it
|
2019-02-06 19:14:19 -08:00 |
|
Dustin Carlino
|
f454c691f0
|
making a profiler to breakdown what parts of sim are slowest
|
2019-02-05 14:04:03 -08:00 |
|
Dustin Carlino
|
6b29a2a38d
|
fixing issues with bikes spawning close to intersections, by making the
bound be really conservative
|
2019-02-05 09:56:07 -08:00 |
|
Dustin Carlino
|
6b3a77c9ec
|
solve the problem with bikes entering too short
|
2019-02-04 21:05:43 -08:00 |
|
Dustin Carlino
|
17a0b57644
|
squeeze in vehicle type to CarID, for debugging convenience
|
2019-02-04 20:26:22 -08:00 |
|
Dustin Carlino
|
acc298a6ab
|
dont spawn under vehicle length... but hmm, seeing another problem. need
easier debugging first.
|
2019-02-04 19:16:17 -08:00 |
|
Dustin Carlino
|
91ae32cd4a
|
dont spawn in front of turning agents
|
2019-02-04 18:32:55 -08:00 |
|
Dustin Carlino
|
84df699927
|
remove hack for cars winding up too close. if this is still happening, let's solve using the Intent stuff in a different way.
|
2019-02-04 15:49:39 -08:00 |
|
Dustin Carlino
|
be1735d715
|
just skip bike trips that are silly loops
|
2019-02-04 15:32:46 -08:00 |
|
Dustin Carlino
|
a0aed4f200
|
fix bugs where cars couldnt loop around to reach a building earlier on
the same lane
|
2019-02-04 14:58:27 -08:00 |
|
Dustin Carlino
|
09193d5f51
|
be able to spawn cars from buildings too
|
2019-02-04 13:58:23 -08:00 |
|
Dustin Carlino
|
13698cdb20
|
small fixes... debug buildings, spawn from headless, timer for
instantiating a scenario
|
2019-02-04 11:56:54 -08:00 |
|
Dustin Carlino
|
793410aa16
|
make peds on_exit intersections when they try to chain two turns. ALL
TESTS PASS.
|
2019-02-04 09:14:32 -08:00 |
|
Dustin Carlino
|
177f639f7b
|
make sure bikes can actually start moving
|
2019-02-03 22:38:21 -08:00 |
|
Dustin Carlino
|
2f812e6265
|
correct slight overshooting. investigate a bus reaching a stop with
non-zero speed
|
2019-02-03 18:47:47 -08:00 |
|
Dustin Carlino
|
7b045146da
|
ah, there are speeds low enough to round off to zero distance when applied with the timestep. systematically get rid of EPSILON_SPEED.
|
2019-02-03 18:10:29 -08:00 |
|
Dustin Carlino
|
bfd0465a3d
|
track the intent of chosen acceleration, to see why overshooting is happening
|
2019-02-03 09:41:29 -08:00 |
|
Dustin Carlino
|
f9ccecad26
|
fix spawning of vehicles on borders
|
2019-02-02 14:25:50 -08:00 |
|
Dustin Carlino
|
e330061b91
|
undo rendering hacks for tiny cars at borders, without fixing the spawning problem yet
|
2019-02-02 14:16:15 -08:00 |
|
Dustin Carlino
|
bc4ba647bc
|
caching Renderables for agents
|
2019-02-01 15:10:35 -08:00 |
|
Dustin Carlino
|
3451b65823
|
lazily compute SimStats
|
2019-02-01 14:31:35 -08:00 |
|
Dustin Carlino
|
58c4cb5e1b
|
dont look up full SimStats unless needed
|
2019-02-01 13:45:37 -08:00 |
|
Dustin Carlino
|
0a79b354b2
|
remove ability to create Map from InitialMap, now that we have a separate debugger
|
2019-02-01 11:09:22 -08:00 |
|
Dustin Carlino
|
097d1591e1
|
load previous/next initial map. refactor this functionality for sim
savestates
|
2019-02-01 11:03:57 -08:00 |
|
Dustin Carlino
|
0346166304
|
starting a generic viewer that works with InitialMap
|
2019-01-31 16:33:43 -08:00 |
|
Dustin Carlino
|
48a5556f17
|
improving debuggability of merged maps by printing intersections to look at
|
2019-01-31 14:54:30 -08:00 |
|
Dustin Carlino
|
2282c5658d
|
make geom types Ord now
|
2019-01-31 14:29:47 -08:00 |
|
Dustin Carlino
|
b9e96618da
|
stop abusing max distance for path tracing. disable some newly brokenish stuff
|
2019-01-31 13:09:15 -08:00 |
|
Dustin Carlino
|
23db7cc646
|
try really dumb trimming... it works :O
|
2019-01-31 08:53:30 -08:00 |
|
Dustin Carlino
|
7519fdf584
|
using strong Distance types in many more places
|
2019-01-30 15:54:54 -08:00 |
|
Dustin Carlino
|
3e00789960
|
allow a NaN in kinematics
|
2019-01-30 15:02:12 -08:00 |
|
Dustin Carlino
|
ac2b8f5a9a
|
switch to new units in sim... and editor, darnit, accidentally ammended
commit
|
2019-01-30 14:19:48 -08:00 |
|
Dustin Carlino
|
2a70efde5f
|
simplify: slice can fail. all the callers dont have to check for EPSILON_DIST
(also, disable not-so-useful geom unit tests that use randomness)
|
2019-01-29 18:53:04 -08:00 |
|
Dustin Carlino
|
ca058331e5
|
fixing path trace cases that wind up with points too squished together
|
2019-01-29 16:23:01 -08:00 |
|
Dustin Carlino
|
6aaa55891e
|
saving lots of InitialMaps... and manually loading one at a time
|
2019-01-28 09:42:28 -08:00 |
|
Dustin Carlino
|
a25f358295
|
hacking around top menu issue mostly
|
2019-01-23 16:19:32 -08:00 |
|
Dustin Carlino
|
1e7b8f2dfc
|
end interactive trips at border nodes
|
2019-01-21 13:53:24 -08:00 |
|
Dustin Carlino
|
c87c7b32ae
|
make interactive driving trips still end at a building
|
2019-01-21 12:21:26 -08:00 |
|
Dustin Carlino
|
4b42f70da4
|
actually spawning walking trips...
|
2019-01-21 11:59:59 -08:00 |
|
Dustin Carlino
|
f018158aa3
|
remove copyright comment from remaining files
|
2019-01-20 13:57:55 -08:00 |
|
Dustin Carlino
|
0c32faa40c
|
moving neighborhood to map_model crate, so convert_osm can stop depending on sim
|
2019-01-17 15:29:00 -08:00 |
|
Dustin Carlino
|
76dc85d5c8
|
remove unnecessarily boxed closures, and use generics instead
|
2019-01-17 15:22:31 -08:00 |
|
Dustin Carlino
|
e8e119dbbf
|
remove all the polyline shifting/polygon variants that might fail
|
2019-01-15 15:25:00 -08:00 |
|
Dustin Carlino
|
daa55026ae
|
making shift left/right for polyline too
|
2019-01-12 14:13:15 -08:00 |
|
Dustin Carlino
|
41e487bbcc
|
time limit on completion tests
|
2019-01-11 11:28:42 -08:00 |
|
Dustin Carlino
|
c09fa98f57
|
upgrade a few dependencies
|
2019-01-11 10:55:58 -08:00 |
|
Dustin Carlino
|
eefd9abdc6
|
render cars using slice
|
2019-01-10 17:11:34 -08:00 |
|
Dustin Carlino
|
3f2a7d6e68
|
display when a traffic signal is in overtime
|
2018-12-14 12:01:00 -08:00 |
|
Dustin Carlino
|
a8ee229793
|
fix traffic signal bugs letting TurnPriority::Banned cars in on a cycle
|
2018-12-14 11:40:18 -08:00 |
|
Dustin Carlino
|
28d025103c
|
show accepted agents when hovering over an intersection
|
2018-12-14 11:29:14 -08:00 |
|
Dustin Carlino
|
577e674e51
|
setting up a scenario for the first tutorial (commit 1,000!)
|
2018-12-11 10:14:21 -08:00 |
|
Dustin Carlino
|
e76dede109
|
label synthetic intersections
|
2018-12-10 15:59:48 -08:00 |
|
Dustin Carlino
|
dbfd410b0a
|
force synthetic intersections into being border nodes too
|
2018-12-10 15:45:34 -08:00 |
|
Dustin Carlino
|
4018f1bbf6
|
dealing with a bike stuck trying to end a trip near the end of a lane
|
2018-12-10 14:27:03 -08:00 |
|