LBNL-UCB-STI / beam

The Framework for Modeling Behavior, Energy, Autonomy, and Mobility in Transportation Systems
https://transportation.lbl.gov/beam
Other
145 stars 57 forks source link

Track toll revenue #883

Closed michaz closed 5 years ago

michaz commented 5 years ago

Means that toll collection must "happen" at the right point, probably by throwing money events.

Ensure that agents know about toll and take it into account even in later iterations where they don't ask the router for a new route, but for a newly embodied old route.

colinsheppard commented 5 years ago

This should happen in PersonAgent -> when(Moving) -> receives AlightVehicleTrigger.

We pay when we exit the vehicle. @michaz there has been a change since the last time you worked on these protocols... agents no longer track leg by leg the progress of their transit (or any other) trip. Now they just get notified by the driver when it's time to alight. This was done to both reduce the messaging volume but more importantly to make it simpler for ride hail vehicles to get dynamically dispatched to pickup new passengers without needed to modify any data in the existing passengers.

michaz commented 5 years ago

And/or maybe where the PathTraversalEvent is thrown? Or even put it in the PathTraversalEvent? Since vehicles are tolled, the toll could go in there. Splitting toll between passengers seems to be the next step?

michaz commented 5 years ago

Then again, people pay money, not vehicles, and things like city tolls which are due once per day don't map cleanly to individual trips.

michaz commented 5 years ago

Got paid tolls into PathTraversalEvents, will now do the last step and let private car occupants get an Event for the payment, like/where @colinsheppard said. Happening here https://github.com/LBNL-UCB-STI/beam/tree/mz/reactivate-tests-4ci

If I don't get that branch to build on Jenkins, like, tomorrow, I'll cherry-pick it to another PR.

michaz commented 5 years ago

@wrashid @colinsheppard What's the expected behavior for tolls and ride hailing? Customer pays tolls on top of fare?

colinsheppard commented 5 years ago

@michaz I think we want the ride hailing manager to pay the toll and pass the cost on to the customer.

This will make it easier to deal with splitting tools during pooled rides.

It also should keep it simple re: putting toll into PathTraversalEvent.... doesn't matter who the driver is, all we care about is the driver pays the toll and then the parent of the driver (PersonAgent or RideHailAgent) should handle what do with that that (e.g. add to plan score or notify the ride hail manager).

michaz commented 5 years ago

Closed by PR #929