Given a set of directed paths (called lines) L, a public transportation network is a directed graph GL = (VL, AL) which contains exactly the vertices and arcs of every line l ∈ L. An st-route is a pair (π, γ) where γ = 〈l1,…, lh〉 is a line sequence and π is an st-path in GL which is the concatenation of subpaths of the lines l1,…, lh, in this order. Given a threshold β, we present an algorithm for listing all st-pathsπ for which a route (π, γ) with |γ| ≤ β exists, and we show that the running time of this algorithm is polynomial with respect to the input and the output size. We also present an algorithm for listing all line sequencesγ with |γ| ≤ β for which a route (π, γ) exists, and show how to speed it up using preprocessing. Moreover, we show that for the problem of finding an st-route (π, γ) that minimizes the number of different lines in γ, even computing an \(o(\log |V|)\)-approximation is NP-hard.
['Kateřina Böhmová', 'Luca Häfliger', 'Matúš Mihalák', 'Tobias Pröger', 'Gustavo Sacomoto', 'Marie-France Sagot']
Computing and Listing st-Paths in Public Transportation Networks