independently picking the best match for "from" and "to", it considers
all vehicle movements, and minimizes "turn_type_cost * (from_cost +
to_cost)", using a hint about turn type to correct for geometry
mismatches at consolidated intersections. #626
Gets better results in Tempe at University and Mill, at least.
toggle how many CPUs to thrash. We always use all of them, except for
one case, where a separately named method is more clear. Also make that
variation use all but 1 CPU, instead of just half.
count incoming roads when figuring out if an intersection is degenerate.
Also make link roads (on/off ramps) lower priority than the main part of
the road.
Regenerated everything.
(and fixing up the cloud scripts)
Every time I run an import, 10 GCE workers download about 20GB of
data/input. The S3 outbound charges are uncomfortably high.
Instead, use GCP's S3->GCS transfer tool manually before each run, and
make the GCE VMs read from that instead.
I haven't tested these changes yet, but will soon with the next import.
times in the past, I've also tried doing this for other roads, but wound
up reverting for reasons only git remembers. But it seems like an
obvious win for bike paths; especially around Seattle, the ways are
split because of all of this raised curb data we're ignoring anyway.
Tested manually around Montlake.
Finally regenerating all data... Only Phinney breaks. One for tomorrow.
There are some caveats with the implementation commented inside.
Verified manually in Montlake -- down to just 122 cancelled turns!
Still not regenerating...
movements, make sure that a vehicle can access BOTH the source and
destination lane of a turn. #555
Without this fix, a turn from a bus lane to a driving lane is allowed
for cars at the pathfinding v2 level, but then it fails when converting
into v1 lanes.
(Next step: actually allow this for combination bus/turn lanes)
Not regenerating data yet
https://www.openstreetmap.org/changeset/105381427 mapping a turn lane is
the fix, preventing crazy U-turns using the service road. Not sure how I
missed that lane when looking here before. I made the edit to .osm
locally instead of grabbing fresh data for all of Seattle.
for people that leave one border, then re-enter a different one. #664
Alternative considered: insert a dummy remote trip between the two
borders. We used to do something like this at non-trivial code
complexity expense and having to explain the trip in the UI.
Regenerated all scenarios and prebaked data.
- Modest file size increase, as expected. Montlake scenario goes from
1.3MB to 1.5, downtown from 37MB to 43MB, all Seattle scenarios from
280MB to 327MB
- Eyeballed a few of the previously broken trips; they work now!
- Montlake goes from 3127 cancelled trips to just 302!
- No new gridlock, except in Rainier Valley -- disabling that for now
- I discovered missing validation in Poundbury for no-op trips between
the same building. I'll filter those out and restore prebaked results
there in a followup.
way, we have trip stats for people starting near the end of the day, and
we stop incorrectly showing failed trips when comparing.
Prebaked data: no change in size (245MB)
Montlake: 3135 "cancelled" trips -> 3127
Lakeslice: 6766 "cancelled" trips -> 6647
And fix an absolutely infurriatingly bad typo from the previous commit.
Now both the multiple_left_turn_lanes and divided_highway_split test
maps look great!
* Update dependencies
* Use github for polylabel, to make all dependencies use geo 0.18, not a mix of 0.18 and 0.17
* Downgrade lyon to avoid a crash
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
edits to a road before entering the zone editor. Users can use edit
mode's undo if they made a mistake. It's more fluid than prompting.
Use the same auto-compress flow to allow switching to different roads,
without leaving the road editor
selector into debug mode. #597
Previously, it was used both to search/replace lane types and to
select roads, then dump them in various formats. Just preserve the
latter behavior.