ロサンゼルス地下鉄の GTFS リアルタイム可視化の例 | |
| ファイル名拡張子 |
.pb |
|---|---|
| 初回リリース | 2011年9月27日 |
| 最新リリース | 2.0 2024年3月11日 |
| フォーマットの種類 | 交通リアルタイムデータ形式 |
| 延長 | プロトコル バッファ |
| 標準 | 事実上の標準 |
| オープンフォーマット? | はい、CC BY 3.0 |
| Webサイト | gtfs.org/リアルタイム/ |
GTFSリアルタイム( GTFS-rtとも呼ばれる)はGTFSの拡張機能であり、公共交通機関がプロトコルバッファーウェブサーバーを介してリアルタイムの車両の位置、到着時刻の予測、迂回や運休などの警告を共有します。[1]
リアルタイムの位置データは、自動車両位置検出システム(AVL)から機関によって継続的に作成されます。旅行の到着時間は、過去の位置データと時刻表を分析する機械学習モデルを使用して計算されます。[2]
この規格は、米国、カナダ、欧州連合のほとんどの国、英国、オーストラリア、ニュージーランド、そして日本の横浜を含む世界中の公共交通機関で使用されています。
歴史
2011年8月22日、GTFS-rtの最初のバージョンがGoogleによってリリースされました。[3]このデータはGoogleマップのユーザーに公開されました。 [4]
2012年7月、GoogleマップはGTFS-rtからのアラートを表示し始めました。[5]
2015 年 7 月 28 日に作成され、2015 年 8 月 15 日に統合された提案により、複数のフィード エンティティ タイプを 1 つのフィードに統合できるようになりました。[6]ほとんどの機関ではフィード エンティティ タイプ (車両位置、トリップ、アラート) を分離していますが、一部のフィードは依然として結合されています。
2021 年 8 月 30 日に、実験的なフィード エンティティ タイプである Shapes がリリースされました。Shapes には、ルートの更新が既存のものを参照するshape_idか、エンコードされたポリラインとして新しいシェイプをリアルタイムで定義することによって反映されるため、迂回を反映するためにルート シェイプをリアルタイムで更新する機能があります。
2022年、CalTransの統合旅行プロジェクトは、カリフォルニア州内の市町村および郡の公共交通機関が公開するGTFSスケジュールとリアルタイムフィードの検証を開始しました。[7]機関のデータのエラーに関する月次レポートが、典型的な道路の速度と交通量の分析とともに公開されています。
2023年9月、SwiftlyとアプリTransitは、 2つの追加のフィードエンティティタイプ、停留所と旅行の変更を提案しました。これにより、機関はルートの新しい迂回経路と新しい一時的な停留所をブロードキャストできます。この変更は、複数の機関のTransitアプリでユーザーにリリースされました。2024年3月11日、この提案はGTFSメンテナーによって統合され、リリースされました。[8]
標準
GTFSリアルタイム仕様は、Googleがホストする.protoファイルによって定義されています。[9]データはサーバーによって生のバイトにシリアル化され、クライアントによって逆シリアル化されます。公式にサポートされているGTFS-rtバインディングライブラリは、.NET、Java、Javascript、Python、Goで構築されています。非公式ライブラリは、 Rustなどの他の言語で書かれています。
現在、標準で定義されている公式フィード タイプは、TripUpdates、VehiclePositions、および Alerts の 3 つです。Shapes、Trip Modifications、および Stops は現在実験段階です。
GTFS リアルタイムをサポートする機関は通常、3 つの異なるフィード タイプに別々の URL を提供しますが、一部のフィードのみを提供することもできます。GTFS 静的とは異なり、多くの機関では、開発者が電子メールまたはウェブ フォームで API キーをリクエストすることを要求する場合があります。
開発者は、通常数秒から数分ごとに、 HTTP経由で機関の Web API を定期的に取得するプログラムを作成します。機関は通常、1 秒から 1 分の頻度でデータを更新します。GTFS リアルタイム データのストリーミングには標準はなく、以前の反復からアイテムを削除できるようにするためのサポートも組み込まれています。
旅行の最新情報
GTFS 仕様では、トリップとは、運行者が固定ルートの車両をルートの開始から終了まで運転することを指します。車両がルートの終了時に方向転換すると、新しいトリップが開始されます。
トリップアップデートフィードにより、地図上で車両の出発時刻や到着時刻を表示したり、ルーティングアルゴリズムでルートを更新したりすることが可能になる。[10]
このフィードには、旅程更新の配列が含まれています。各旅程更新には、旅程の説明 (旅程 ID、ルート ID、開始日時、方向)、最終更新時刻が列挙され、関連付けられた車両番号とルート番号が含まれる場合があり、StopTimeUpdateの配列が含まれています。StopTimeUpdate では、過去、現在、および将来の停車時刻、遅延、キャンセルを定義できます。停車 ID は、交通機関が提供する GTFS スケジュール フィードを参照します。
車両の位置
車両位置は、ユーザーがバスの位置を追跡できるように、マッピングアプリケーションに表示されることがあります。[11]このフィードには、 VehiclePositionsの配列が含まれています。旅行更新と同様に、各VehiclePositionには、旅行ID、開始時刻と終了時刻、ルート番号、スケジュールとの関係など、旅行の基本的な説明を含めることもできます。VehiclePositionには、車両の現在の緯度と経度も含まれており、方位、オドメーター、m/s単位の速度を含めることもできます。最後に、バスの混雑状況(乗車状況)や、車両が経験した道路渋滞の状況に関する情報を含めることもできます。
アラート

迂回、キャンセル、その他のサービス変更を知らせるアラートをマッピング アプリケーションのユーザーに表示できます。[12]このフィードには、アラートの配列が含まれています。アラートは通常、車両位置や旅行更新ほど頻繁に更新されません。各アラートには、インシデントの原因 (労働ストライキや機械の故障など) と、その影響 (サービスの低下、迂回、停車地のキャンセルなど) が保存されます。アラートには、詳細なヘッダー、説明、URL、画像、影響を受けるルートまたは停車地のリスト (通知対象エンティティと呼ばれる) も含まれます。アラートは、「アクティブ期間」を使用して開始時間と有効期限を指定します。アラートは複数の言語にローカライズできます。
参考文献
- ^ 「リファレンス - 一般交通フィード仕様」. gtfs.org . 2023年7月31日閲覧。
- ^ Parkford, Stan (2021年8月30日). 「予測はどのように機能しますか?」Swiftlyヘルプセンター。
- ^ 「改訂履歴 | Realtime Transit」。Google for Developers 。2023年 7 月 31 日閲覧。
- ^ 「Google マップのリアルタイム交通情報でバスの遅延を把握」。公式 Google ブログ。2024 年 2 月 2 日閲覧。
- ^ Del Signore, John (2012-07-31). 「Google マップに地下鉄の運行変更に関するアラート機能が登場」Gothamist . 2023-08-07閲覧。
- ^ 「Allow multiple feed entity types in a single feed by egorich239 · Pull Request #7 · google/transit」. GitHub . 2023-12-07に取得。
- ^ 「Cal-ITPが交通機関の運営改善に向けた新たなオープンデータ標準を発表」Mass Transit 2022年6月7日2024年2月2日閲覧。
- ^ 「GTFS Trip-Modifications by gcamp · Pull Request #403 · google/transit」。GitHub 。 2023年12月7日閲覧。
- ^ 「transit/gtfs-realtime/proto/gtfs-realtime.proto at master · google/transit」。GitHub。
- ^ 「TripUpdates でリアルタイムの旅程情報を提供する - 乗換案内パートナー ヘルプ」. support.google.com . 2023 年 8 月 7 日閲覧。
- ^ 「車両位置 | リアルタイム交通機関」。Google for Developers 。2023 年 8 月 7 日閲覧。
- ^ 「サービスアラート | リアルタイム交通機関」。Google for Developers 。 2023年8月7日閲覧。
