Skip to content

faq 109249178

Billy Charlton edited this page Sep 5, 2018 · 2 revisions

Are there any concrete plans to extend the public transport router in MATSim?

by Johannes Lieberherr on 2017-05-06 18:06:57


I'm interested to know if there are any concrete plans to extend the actual public transport router in MATSim?

For example, in the minibus contrib there is an implementation of the Raptor-algorithm. What is the standing on that? Are there other similar contribs, for example with an A*-implementation?


Comments: 3


Re: Are there any concrete plans to extend the public transport router in MATSim?

by Kai Nagel on 2017-05-07 09:56:14

Re raptor in playground: We tried to move it into the main repository some time ago.  There is even a branch, named moveRaptorToMain.  Problem was that when pulling it under the same regression tests as the current pt router, it failed most of those tests.  At this point, we ran out of time.

Right now,  has re-started in this direction.  His main thrust, however, will be to use https://github.com/mobitopp/connection-scan , since in the end it should be easier to distribute the work on multiple shoulders.

Do you want to join this effort, maybe just by testing different implementations and providing feedback?

In any case, I just started MATSIM-665 to collect issues related to this topic, where one could just follow what we do, or become involved in helping.


Re: Are there any concrete plans to extend the public transport router in MATSim?

by Johannes Lieberherr on 2017-05-10 09:01:28

Thanks for your reply, this sounds very interesting!  and me are working on the pt router with MATSim at SBB. A cooperation in this subject certainly has a lot of potential. We are looking forwart to the next steps!


Re: Are there any concrete plans to extend the public transport router in MATSim?

by Thibaut Dubernet on 2017-05-10 12:12:24

For posterity: I did some unfruitful experiments in this direction. The problems were:

  • The Raptor/connection scan family of algorithm is designed to minimize travel time, not utility. Extending it to utility is not straightforward. This is highly problematic in the case of MATSim, where one should be able to model tradeoffs such as "long distance buses are cheaper but slower than the train". I guess this kind of questions is of prime importance for you at SBB, so this is definitely something to keep in mind.
  • A-star has no effect on public transport routing (I did extend our router with it), at least not if one still wants optimal routes. I could get a bit faster by accepting sub-optimal routes, but I do not really remember the exact figures; only that I ended up giving up. There are paper in the literature that explain why (public transport networks lack structure compared to road networks).
  • Other algorithms are more complex to implement, and I did not have the time for it. I think in particular in the algorithm from google (named "transfer patterns algorithm" if I recall correctly), that relies on heavy pre-processing. I actually had a discussion about just this yesterday with M. Zilske, and we agreed this might actually be a good way to go: this pre-processing is expensive, but needs to be done only once for a given network/utility function combination, and could be stored and read as a normal input file.
Clone this wiki locally