## Introduction

Fueled by the need for more sustainable transportation, users can pick between more forms of transport than ever before – and they expect that route planners can combine these to find the ideal journey. Those route planners integrate various kinds of data such as road networks and schedule-based public transit. In this article, we focus on the link between the two, specifically on how to walk between stops. The walking time from one stop to another is commonly referred to as a footpath [1, 2].

Computing these paths dynamically is often too slow in practice [3, 4], yet computing them beforehand quickly becomes prohibitively expensive in practice [5, 1, 2]. A small country such as Belgium already contains 100,000 public transit stops, yielding 10 billion pairs of stops. These scaling issues are often avoided by only evaluating algorithms on small unconnected footpath graphs. However, this restricts the amount of walking in a journey and has a significant impact on travel times [4]. On top of that, determining which stops belong to the same graph ultimately relies on a closed-world assumption; which makes it impractical to add additional public transit services.

Our goal is to find a method to compute and publish these footpaths in a scalable and decentralized manner. This implies that we need not publish all the paths, but ideally the ones that are published should allow for unrestricted walking. In practice this means that every stop in the footpath graph must be reachable from every other stop if there is a path between those stops in the real world. Various actors should be able to add information to this footpath graph, and adding a new service should not require changes in existing information. These actors would need a common frame of reference to combine their efforts, which can be provided by Semantic Web technologies.

## Method

We use a Delaunay triangulation of the public transit stop locations to approximate the full footpath graph, based on the insights from the related work section. The triangle edges represent which stops will be directly connected through a footpath. Our representation of a footpath differs slightly from the conventional one; we use walking distances instead of walking times to avoid making assumptions about walking speeds. A road network route planner is used to compute the walking distances between the stops.

Delaunay triangulations can be generalized to any metric space, but the walking distance is not a mathematical metric because it could, in theory, lack the required symmetry property. Even on foot, you cannot always retrace your steps – either due to legal restrictions or due to physical limitations. And, equally importantly, this would bring us back to the case where an impractical number of path lengths have to be precomputed. This is why we the triangulation uses the Euclidean distance between the stops’ WGS84 coordinates instead. Other metrics such as the *great-circle distance* can be used, but none of them have any relation to the walking distance so we opted for the most simple metric to implement. This also means that the theoretical guarantees of the Delaunay triangulation only hold for the Euclidean distance because that’s the metric was used for its construction.

The paths between stops of a single operator can be calculated independently from the rest. Combining the graphs of two operators is done by comparing their individual triangulations to the triangulation of their combined stops – and computing the missing footpaths. This process is illustrated in Fig. 1 where the graph of a city’s public transit network is merged with the one from the region around it. The combined graph is the union of each operators’ graph with the additional edges that connect the two graphs. Operators typically have their own service area, which means that the vast majority of paths will be between stops of the same operator, thus making it possible for anyone to combine several operators’ graphs with minimal work. The results can be shared and reused, which stands in stark contrast to the conventional approaches. The paths can be published similar to the Routable Tiles dataset so that sharing them does not come at a significant extra cost.

## Results

We aim to verify two claims about our method: (i) the graph we construct is almost as good as the complete graph for route planning and (ii) footpath graphs can be merged with minimal effort. To verify the first claim we have used a graph of paths between bus stops to approximate the distances between railway stations. Edges between train stations and bus stops have also been added to make the railway stations reachable. Fig 2 shows that the approximation overestimates the actual distance by about 20% on average. This seems reasonable for route planners – it is better to underestimate the time needed to catch a connection than to recommend an impossible route.

Case | Paths of first operator | Paths of second operator | Additional required paths |
---|---|---|---|

Flanders + Brussels | 107,171 | 7,969 | 2,508 |

Flanders + Wallonia | 107,171 | 94,730 | 4,020 |

To verify that combining the graphs from two operators does not require excessive work, we consider both the usual and the worst case scenario, respectively being mostly disjoint service areas and entirely overlapping service areas. We have taken the public transit operators from the Belgian regions of Flanders and Wallonia for the usual case and we revisit the case from Fig. 1 for the worst case, where the Brussels public transit network is added to the one from Flanders. The results in Table 1 show that in the usual scenario merging two operators is relatively straight-forward as most work has already been done. The worst case scenario shows that it is possible that merging two operators can still require a significant amount of work, although the vast majority has already been done. Our implementation contains some additional experiments and is available on https://github.com/hdelva/planner.js/tree/footpaths as a frozen branch of an experimental serverless route planner.

## Conclusion and future work

This paper introduced a decentralized publishing method for transit footpaths based on Delaunay triangulations. We have shown that different actors can add information to the footpath graph, splitting the work between them. The amount of paths scales linearly with the amount of public transit stops, and every stop is reachable from every other. This last property could prove useful in its own right, as it allows for unrestricted walking unlike conventional methods. However, this comes at the cost of precision; the walking distance between stops is consistently slightly overestimated which could cause route planners to discard the most optimal journeys. Future work could focus on comparing the results from a route planner with a complete footpath graph to the one as we describe in this paper. If the difference in quality is negligible our methods could prove useful even for centralized services.

The approximations may still be improved with different kinds of point set triangulations and several triangulations could even be combined to create a more complete graph. Alternatively, combining the haversine distance and the currently approximated distance seems promising as well – although this could lead to underestimations. Another open question is how scalable this approach is when more modes of transportation are required. It seems undesirable to create separate graphs for bicycles, electric bikes, wheel chairs, etc. but they might be able to share information.