wtongze / transit-routing

Repository of algorithms and data for public transit routing

Home Page:https://transnetlab.github.io/transit-routing/html/index.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TB1

Table of Contents

Introduction

Conventional approaches model the transit network as a time-expanded or time-dependent graph and run a variant of the Dijkstra’s algorithm. However, this method turns out to be too slow for large networks. Furthermore, while planning a journey using public transit, the number of transfers is equally important besides travel time. Popular techniques developed for PTR in the past decade include—Transfer Patterns algorithm, Connection Scan Algorithm (CSA), Round based Public Transit Routing algorithm (RAPTOR), and Trip-Based public Transit Routing (TBTR) algorithm. This repository provides various efficient algorithms to solve bicriteria shortest path problems in public transit routing. For documentation refer the link below

We mainly focus on two popular approaches: Round-Based Public Transit Routing (RAPTOR) and Trip-Based public Transit Routing (TBTR) working on arrival time and number of transfers as the two optimization criteria. Apart from the already published HypRAPTOR, we also include our variant of HypTBTR. Furthermore, both HypRAPTOR and HypTBTR have been extended using multilevel partitioning (MhypTBTR and MhypRAPTOR).

Additionally, to make the RAPTOR and TBTR approach more practical, we also include One-To-Many rTBTR and One-To-Many rRAPTOR. These not only reduce the preprocessing times of the partitioning variants but also significantly outperform the existing approach for location-based queries (as a location can have multiple stops near it)

Switzerland's public transit network has been provided as a test case. The figure below shows the transit stop location (left) and 4-way partitioning using KaHyPar (right). plot

List of Algorithms

Algorithm Varient SOURCE Status Comments
Time-Expanded Dijkstra Dijkstra link Complete
RAPTOR Standard RAPTOR link Complete
RAPTOR HypRAPTOR link Complete
RAPTOR rRAPTOR link Complete
RAPTOR One-To-All rRAPTOR link To be updated soon
TBTR Standard TBTR link Complete
TBTR rTBTR link Complete
TBTR One-To-Many rTBTR link Complete
TBTR HypTBTR link Complete
TBTR MHypTBTR link Complete
Transfer Patterns Transfer Patterns link Complete
Transfer Patterns Scalable Transfer Patterns link To be updated soon
CSA Standard CSA link Complete
CSA One-To-Many CSA link To be updated soon

Usage Instructions

Refer https://transnetlab.github.io/transit-routing/html/index.html.

Contributing

We welcome all suggestions from the community. If you wish to contribute or report any bug please contact the creaters or create an issue on issue tracking system.

Creators

References

Copyright and license

The content of this repository is bounded by MIT License. For more information see COPYING file

About

Repository of algorithms and data for public transit routing

https://transnetlab.github.io/transit-routing/html/index.html

License:MIT License


Languages

Language:Python 78.3%Language:SCSS 13.1%Language:HTML 5.0%Language:JavaScript 3.2%Language:Makefile 0.2%Language:Batchfile 0.1%Language:CSS 0.0%