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

ルートプランナー

ルートプランナーは、2地点間の経路候補を計算する経路探索エンジンです。

主にユーザーモデルが経路候補を評価するために利用しますが、 経路情報が必要な他のコンポーネントから呼び出される場合もあります。

インターフェースと通信モデル

ルートプランナーは MaaS Blender の他のコンポーネントと異なりイベントを介して相互作用しません。 代わりに REST API を公開し、出発地・目的地時間制約に応じた経路を探索します。

責務

ルートプランナーの責務は次の通りです。

  • 地点間の経路候補を計算する
  • ユーザーモデルが評価可能な構造化された経路情報を返す

ルートプランナーはシミュレーション内で主体的に行動を開始せず、イベントフローにも直接参加しません。

前提と制約

計算効率と他のコンポーネントとの疎結合を維持するため、ルートプランナーは次の前提で動作します。

  • リソース管理を行わない ルートプランナーは、車両・乗務員・乗客収容といったリソースを管理しません。

  • 無制約の可用性仮定 経路候補生成時点では、すべてのモビリティ・サービスやリソースが利用可能であると仮定します。

  • 近似的なサービス挙動 モビリティ・サービスの内部ロジックを完全に再現する必要はありません。

つまりルートプランナーが提供するのはあくまで「実現可能な経路」に過ぎません。

設計上の理由

経路計算をリソース管理から分離することで、ルートプランナーはステートレスで再利用可能です。 また、経路探索アルゴリズムをモビリティサービスの状態と無関係に実装できます。