- initialization order
- reusing node ordering and applying edits
Importing, editing the map, and the basic scenario seem OK! --skip_ch
breaks, because of the lack of serialization
"engine" that just operates on raw usize IDs. Embed that enum in each of
the particular pathfinders. This way, we don't have to keep duplicating
logic to delegate requests, handle one-step edge cases, etc. And it also
sets us up to more easily try out other CH implementations like osm_ch,
without having to move around tons of code.
Still use fast_path's InputGraph as the "universal" format, for now.
This is a huge change... got map_model compiling at least. Some stubbed
out stuff.
lane that they're stuck behind them. Only record a risk exposure event
the first time, but let passing happen anywhere. #382
Also add scenario name to PrebakeSummary, to disambiguate the Poundbury
results.
now that my faster machine works again.
Running importer jobs in parallel is actually super hard, because
there's async stuff thrown in there now to download files.
fixes a very dramatic problem in the Green Lake map.
Regenerating everything...
Also added total trip time to the prebaked summary, to get a quick sense
if a change net helps or hurts and have a record in version control.
lane and both want to park in the same building or parking lot, they're
assigned the same spot. When the second one tries to use it, they pick
another. Now the second will still consider spots that they're directly
next to. #688
- handle when the equiv_pos of a driveway gets too close to the edge of
another lane
- make the updater workflow handle files from S3 that're a bit older
- remove pathfinding_avoiding_roads
- strip out old vehicle capping from map edit JSON, then fix up
proposals
- delete old capping API example
- temporarily give up on phinney; it starts gridlocking
- add broadmoor proposal link in-game
This collaboration is abandoned, the code slows down refactoring, and
if we started this idea again today, it'd be better to do it from
scratch anyway.
Regenerating everything.
supported!
- Had to skip over center turn lanes -- we're approaching the point where
we can model those realistically.
- Carefully deal with static blockages near the start of a lane to avoid
spillover. Observed near b3810 in greenlake. It's time to make equiv_pos
smarter...
we need to adjust the start position to account for the vehicle's
length.
Also add a very convenient debug tool to understand positions along
lanes.
This probably breaks static blockages; I'll check into that next.
- Adding an internal alt_start to PathRequest
- Using it for contraction hierarchy queries only (the Dijkstra
implementation now diverges!)
- Figuring out which start position was used
TODO:
- Fix the unparking position
- Make sure the simulation inserts static blockages
- Carefully check the same start/end road case
- Evaluate impact on gridlock / cancelled trips
- offstreet_parking_length in importer config
- backwards compatibility for map edits
- fixing up the baked-in proposals
- working around a few PolyLine bugs that happen with the new rounding
- Don't regenerate actdev scenarios yet -- the upstream JSON format is
out of date, will have to fix separately.