メインコンテンツまでスキップ

モビリティサービス

モビリティサービスは、MaaS Blender に統合可能な交通サービスを表します。 公共交通、ライドヘイリング、シェアサイクル、カーシェア、オンデマンド交通などが例です。

MaaS Blender の価値は、異種のモビリティサービスを統合できる点にあります。 そのために、MaaS Blender は最小限のイベントベース統合契約を定義しています。 この契約に準拠する任意のサービスは、内部実装やデータソースに依存せず、シミュレーションに参加できます。

イベント

消費するイベント生成するイベント
RESERVERESERVED
DEPARTDEPARTED
ARRIVED

モビリティ・サービスの責務

モビリティサービスは、自身の運用リソース(車両、乗務員、乗客収容、サービス固有の制約など)を管理します。

備考

MaaS Blender は内部モデリング方法を強制しません。 各サービスは、イベントの意味論を遵守する限り、自由にロジックを実装できます。

予約フロー(RESERVERESERVED

RESERVE イベントを受け取ると、モビリティサービスは当該乗客を運べるかどうかを判断します。 この判断には、車両や乗務員の可用性、最大乗客数、サービス固有の制約などが考慮され得ます。

その後、サービスは予約の成否を示す RESERVED イベントを発行します。

警告

現実世界で予約不要なサービスであっても、RESERVE / RESERVED のやり取りは必須です。 すべてのモビリティサービス間で相互作用モデルを統一し、ユーザーモデルの解釈を簡素化しています。

旅行実行フロー(DEPARTDEPARTED / ARRIVED

DEPART イベントを受け取ると、モビリティサービスはそのユーザーの移動を開始します。 移動時間はサービスの内部ロジックに従って決定されます。

移動が開始されたとき、サービスは DEPARTED イベントを発行します。

乗客が目的地に到達したとき、サービスは ARRIVED イベントを発行します。

警告

合意した時刻までに DEPART イベントが発行された場合は、 モビリティサービスは必ずその乗客を輸送しなければなりません。 合意した時刻までに DEPART イベントが発行されなかった場合は、モビリティサービスはその乗客を輸送しません。

備考

シミュレーションで車両や乗務員の移動もモデル化したい場合、 モビリティサービスはそれらのユニットについても DEPARTED および ARRIVED イベントを発行するとよいでしょう。

設計上の理由

イベントを介してのみ相互作用することで

  • 多様なモビリティ・サービスを統合でき、
  • モビリティサービス開発者は MaaS Blender のフレームワークやデータ形式を深く知る必要がありません。