public-transport/gtfs-utils

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

Open

#41 创建于 2022年2月28日

在 GitHub 查看
 (1 评论) (0 反应) (0 负责人)JavaScript (4 fork)github user discovery
enhancementhelp wanted

仓库指标

Star
 (46 star)
PR 合并指标
 (30 天内没有已合并 PR)

描述

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.

贡献者指南