openplannerteam / itinero-transit

A transit routing module for Itinero using Linked Connections.
Other
6 stars 1 forks source link

Using the EAS/Isochrone to filter PCS causes weird loops #63

Closed pietervdvn closed 5 years ago

pietervdvn commented 5 years ago

Root issue finally found!

Consider a station S which only counts the trains and a connection C1 (A -> S) and C2 (S -> B). Passengers can not get off at S or board at S.

This causes means that the station S is not included in the isochrone, as it is not possible to get there as traveler.

However, the PCS assumes that a location is reachable at a certain time by checking 1) if it is in the isochrone and 2) it is reachable by the given time.

pietervdvn commented 5 years ago

This can be mitigated by using the tripIds: if the traveler is already in the train, he can take the trip regardless of filter status. This should not impact performance.

Also: if the arrival station is a destination station, the filter is bypassed.