public-transport/gtfs-utils

optimise-services-and-exceptions: analyse distribution of service dates -> truncate/expand time span

Open

#41 aberto em 28 de fev. de 2022

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)JavaScript (4 forks)github user discovery
enhancementhelp wanted

Métricas do repositório

Stars
 (46 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

As of gtfs-utils@5.1.0, optimise-services-and-exceptions.js implements a very rudimental optimisation strategy:

  • it calculates all service dates (both "regular" & exception_type=1-based) of a service, and then
  • checks if there are more "regular" than exception-based dates (in this case, it sets the respective daw of the week (DoW) flag to 1), or vice versa.

There is a lot of potential in changing the time span (start_date/end_date) of the service, so that the number of exceptions necessary to express it is minimised. To do this, we must consider the distribution of the service's dates, so that rare outliers – e.g. Christmas with a service that only runs during summer & on Christmas – are expressed as exceptions, whereas the majority of the dates is express using DoW flags.

Guia do colaborador