GBFSってなんですか? GTFSと似ている名前だけど…
GBFSは、シェアサイクル等の移動手段を対象としたデータフォーマットです
GBFSとは
GTFSが鉄道やバスなどの定時定路線で運行している乗り物のデータフォーマットであるのに対して、GBFS(General Bikeshare Feed Specification)はシェアサイクルやシェア電動キックボードなど、シェアリングサービスを対象としたデータフォーマットです。GBFSは、国内で「マイクロモビリティ」と呼ばれる1人~2人乗り程度の乗り物を対象としたフォーマットと言われることもありますが、フォーマットの仕様では乗り物の種類に車も指定でき、乗車人員も個別に定義可能なため、乗車人員が1人~2人の乗り物に限ったデータフォーマットではありません。
Google マップでも採用され、GBFS形式でデータをGogole マップ提供するとマップ上でサイクルポート(ステーションとも呼ぶ)の位置だけでなく、貸出可能な乗り物の種類や台数、バッテリー残量なども確認することができるようになります。国内でも大手シェアサイクル運営事業者を中心に普及が広がっています。
シェアサイクルとは、以前はコミュニティサイクルとも呼ばれていましたが、設定されたエリア内のサイクルポートであればどこでも自転車の貸し借りが可能なシステムで、貸し借りが同じ場所でしか行えないレンタサイクルとは区別されます。公共交通を補完または代替する移動手段として世界的に普及が進んでいます。
GBFSのデータフォーマットは、GTFSと同様に国際的な非営利団体MobilityDataが管理し、この記事が書かれた2024年10月時点ではバージョン.3.0が公開されています。フォーマット改編の議論は、世界中のシェアリングサービス提供事業者や技術者、データを利用する開発者の間で日々行われています。各国の法規制や都市政策に合わせて行われるサービス運営環境の変化や技術革新、市場の変化等による影響も受け、GBFSの仕様は今後も旧バージョンとの互換性を保ちつつ発展していくことが予想されます。
このデータフォーマットの国際的な発展はGTFSにも同じことが言え、国内の関係者は国際的な動向を注視しつつ、国際的な議論に積極的に参加することが重要です。また、日本特有のサービス運営環境や規則を世界に発信し、これを国際仕様に反映させることが今後の課題となります。
GBFSは静的データ?動的データ?
GBFSは、ステーションの位置や名称、収容可能な自転車の総数など、頻繁に変わらない情報は静的データと見なせますが、その設計の基本は、貸出可能な自転車の台数などのリアルタイムデータの更新を前提としています。そのため、動的データのフォーマットとして理解する方が自然です。Google マップの掲載条件としても、30秒ごとのデータ更新が求められており静的データと呼ぶことは難しいです。
GBFSのファイル形式はjsonファイル(※)の集合で、手作業でリアルタイムでのデータ更新を続ける事は困難です。したがって、GBFSでのデータ整備はシステム連携を前提として考える必要があります。
※json(ジェイソン)ファイルとは、JavaScriptというプログラミング言語における処理の書き方を参考に作られたデータフォーマットのこと。可読性が高くデータ容量が小さくなるという特徴があり、現在ではJavaScriptに限らずPythonやPHPなど多様な言語で用いられています。
GBFSで設定できる内容について
GBFSで定義できる情報について以下の表にまとめます。詳細情報については公式情報をご確認ください。データを用いた詳細な解説はこちらのqiitaの解説記事も参考にしてみてください。
ファイル名 | 解説 | 必須 |
---|---|---|
gbfs.json | データセットの見出しのようなファイル | 〇 |
manifest.json | 複数のエリアや、異なるサービスを1つのデータセットとして公開する場合に定義されるファイル | △サービス提供形態により必須 |
gbfs_versions.json | 配信しているデータのGBFSバージョン一覧 | ✕ |
system_information.json | 運営者のURLや連絡先、公式アプリに関する情報などサービスの詳細 | △サービス提供形態により必須 |
vehicle_types.json | 提供される車両の種類 [自転車(bicycle),カーゴバイク(cargo_bicycle),自動車(car),ペダル付きの小型バイク(moped),(キックボード(scooter_standing)、その他(other)] | △サービス提供形態により必須 |
station_information.json | ステーションに関する情報(名称、住所、緯度経度、ラック数、営業時間等) | △サービス提供形態により必須 |
station_status.json | ステーションのリアルタイムな情報(貸出・返却が可能な車両タイプや台数が記載される) | △サービス提供形態により必須 |
free_bike_status.json | ステーション内にある車両の予約状況・貸出可能かどうかの情報 ※オプションとして、チャイルドシートの情報や冬季用タイヤの装着も定義可能 | △サービス提供形態により必須 |
system_hours.json | サービスの運営時間 | ✕ |
system_calendar.json | サービスの運営日 | ✕ |
system_regions.json | サービスが提供しているリージョン(1つのサービスのサービス提供エリア)の情報 | ✕ |
system_pricing_plans.json | サービスの料金設定に関する情報 | ✕ |
system_alerts.json | 天候によるサービス中止など、サービス提供者からエンドユーザーへ発出されているお知らせ | ✕ |
geofencing_zones.json | サービス提供エリアの情報 | ✕ |
国内におけるGBFSデータの普及
国内では、ドコモ・バイクシェアとOpenStreet(ハローサイクリング)により作成されたGBFSデータが公共交通オープンデータ協議会を通じてオープンデータ化され誰でもDL出来るようになっています。データ提供ライセンスは「CC BY 4.0(※)」となっていますので、適切なクレジット表示を行い商用・非商用に関わらず自由に使う事が可能です。これらのGBFSデータはGoogle マップにも提供され、マップ上でサイクルポートの位置や貸出可能な台数等の情報が確認でき、地域によっては車両を使ったルート検索も可能になっています。
最近では全国でサービスを展開されているLUUPが、GBFSデータをオープンデータとしはて公開していませんが、Google マップに情報が掲載されるようになりました。また、京都でサービスを展開しているコトバイクも一部の情報をGBFS形式で公開していますが、ライセンスに関する記載が無いので今回は紹介を控えておきます。
※CCBYライセンスの詳細については、コチラで内容をご確認ください。
その他、横浜市で今年10月から開始された「令和7年度以降の横浜市シェアサイクル事業の協働事業者の公募」では、GBFSデータの公開が仕様に含まれました。シェアサイクル事業の運営とデータ整備・配信が一体になった事例であり、GBFSフォーマットの普及が進む日本でも今後このような委託方法が増えるかもしれません。
GBFSデータを可視化してみる
オープンデータとして公開されているドコモ・バイクシェアとOpenStreetのGBFSデータをDLして、国内で稼働しているサイクルポートをQGIS上で可視化してみました。QGIS上でGBFSデータを可視化するには「GBFS-NOW」というプラグインを使うと簡単に行えます。具体的な手順等はこちらQuitaの記事を参考にしてください。
さいごに
公共交通を補完する移動手段として普及が進んでいるシェアサイクルやシェアキックボード等は、一般の方にサービスの提供形態や利用方法が浸透しているとは言えない状況かもしれません。しかし地域で実際に車両を見かけたり、データの普及が進むことにより、Google マップを含めて人々が目にする機会は今後増えていくでしょう。
GBFSデータの利用例として、既に国内で普及が進んでいるGTFSデータと今回紹介したGBFSデータを組み合わせると、バスとシェアサイクルの情報を1つのデジタルサイネージで表示する事も可能です。是非この機会に一度データに触れてみてはいかがでしょうか。
参考資料
Mobility Data「General Bikeshare Feed Specification」
@kumatira(s kumano)「GBFS(General Bikeshare Feed Specification)に入門しよう (GBFS v2.2)」
note HELLO CYCLING「#007 シェアサイクルのデータが公開されました。(サンプルコード有り)」
Google for Developers「Micromobility Guides」
PARK by datamix「JSONとは?今更聞けない入門編!使い方やデータフォーマットについて解説」
国土交通省「2022/12/23 第13回全国シェアサイクル会議 ポスター発表・GBFSって何?」
https://www.mlit.go.jp/toshi/content/001711388.pdf