Upgrade to Pro — share decks privately, control downloads, hide ads and more …

論文読み会 SIG-SPATIAL'20 | Spatio-Temporal Hierarchical Adaptive Dispatching for Ridesharing Systems

論文読み会 SIG-SPATIAL'20 | Spatio-Temporal Hierarchical Adaptive Dispatching for Ridesharing Systems

論文1本丸ごと読む資料.

(A slide for the paper-reading group at my company.)

cocomoff

July 12, 2021
Tweet

More Decks by cocomoff

Other Decks in Research

Transcript

  1. 2021/7/12
    読む人:@cocomoff
    論文全部読む会

    Paper@SIG-SPATIAL2020

    View Slide

  2. 概要
    Ride-hailing, ride-sharingの台頭
    コア技術: dispatch algorithm

    (乗客と車両のマッチング)
    既存の dispatch は等時間間隔が多い
    Adaptive dispatch を提案
    可変時間区切りで実行する
    階層的クラスタを考慮する
    定数近似不可能と示す
    提案手法は報酬を増加させる
    大規模な実験を実施した (DiDi)
    1/33

    View Slide

  3. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    2/33

    View Slide

  4. イントロ (1/3)
    Ridesharing serviceのうまみ: より低い金額でサービスを受けることができる (共有).理想的に
    は,路上の車両数を減らす事ができる.
    クラウドベースの dispatch を固定時間 (e.g., 2s) で繰り返すので,車両と顧客のマッチング具合
    によっては収入の面で sub-optimal になる.
    理由: 需要が空間・時間両方で均等に分付していない
    3/33

    View Slide

  5. イントロ (2/3)
    時空間的に密なエリアでは,できるだけ dispatch を遅らせた方が良い (∵ shareable, profitableなリ
    クエストの組合せがある可能性が高い)
    一方で dispatch を遅らせると,待ち時間が伸びキャンセルが増える
    上記のトレードオフを解消するために,adaptive dispatch を提案する
    課題
    1. どのように時空間の分布を意思決定に活用するか
    階層的なアプローチを提案する
    2. リクエスト到着・キャンセルの不確実性にどのように対応するか
    optimal stopping を活用する
    既存手法を直接適用するのが難しいため,新しい手法を提案する
    4/33

    View Slide

  6. イントロ (3/3)
    論文の貢献
    固定間隔ではない,adaptive interval
    dispatching を初めて技術的に検証した
    階層的なアプローチを提案し,問題が定数
    近似比で解けないことを示した上で,実験
    的にうまくいくadaptive methodを構築した
    実データを利用した実験で性能を確認した
    5/33

    View Slide

  7. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    6/33

    View Slide

  8. 準備 | Ridesharing のシステムモデル (基本的なコンセプト)
    単語
    active order: 車両に割り当て & キャンセルされていないリクエスト
    dispatch algorithm: 車両と顧客の対応関係を決定するアルゴリズム
    概要
    リクエストは常に受け付けるが,単位時間間隔 毎に意思決定を行う
    意思決定では dispatch algorithm を active order に対して適用し,どの車両と顧客をマッチングさ
    せるかどうかを決定する
    1つの車両が複数の顧客に同時にサービス提供できるか (sharable) を確認することが重要で,迂
    回距離 や 乗車時間 などを考慮したい
    7/33

    View Slide

  9. 準備 | Ridesharing のシステムモデル (shareability graph)
    表記
    : 意思決定を行うある時刻の active order の集合
    : dispatch algorithm を適用してサービス提供した結果得られる収益
    : 対象サービス地域における過去のリクエスト集合
    Spatial shareability graph (SSG)
    重み付きグラフ
    : 対象地域のグリッドやセル
    : 2つのセル において, にshareable だった
    リクエストが存在する
    : shareable だったリクエスト数
    8/33

    View Slide

  10. 準備 | 問題定義 (1/3)
    Maximize the platform's profit over the planning horizon

    (最適化を行う時間軸の上で,プラットフォームの収益を最大化する)
    対象とする問題を (1) SC (Spatial clustering problem) と (2) ADI (Adaptive interval problem) の2つの
    問題として扱う
    (1) SC (Spatial clustering problem)
    SSG が与えられたとき,spatial cluster set (SCS) とは,
    頂点集合 が の分割となる連結部分グラフの集合である.全てのSCSの集合を で表す
    SC問題とは,「辺重みの和を最大化する」「各 毎に辺和の分散を十分に小さくする」を満た
    す を見つける問題である.
    9/33

    View Slide

  11. 準備 | 問題定義 (2/3)
    SC問題の定式化 (右)
    分散のパラメータが
    セル内で似た shareability
    目的関数は重みの和
    できるだけ shareしたい
    (2) ADI (Adaptive interval problem)
    最適化を行う時間のインデクス: から ま
    で ( )
    ADI問題: 各クラスた に対して,各インデクス において,現在の active order
    と過去のインスタンスの知識から,dispatchを行うべきかどうかを決定する問題
    10/33

    View Slide

  12. 準備 | 問題定義 (3/3)
    ADI問題の定式化 (右)
    : インターバル の決定
    制約 (4)
    必ず で dispatch する
    目的関数: 収益最大化
    11/33

    View Slide

  13. 準備 | 階層的フレームワークの概要
    過去データ (主にSC) と現在の状況 (主にADI) を用いて,各地域毎にどのタイミングで dispatch
    algorithm を利用するかを意思決定し,各タイミングでは既存の dispatch algorithm を blackbox と
    して利用して最適化する
    12/33

    View Slide

  14. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    13/33

    View Slide

  15. SCアルゴリズム | 擬似コード
    最大重みの全域木を作り辺を削除する ( : ノード数)
    14/33

    View Slide

  16. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    15/33

    View Slide

  17. ADIアルゴリズム | 名前とHardness analysis
    現実の ride-sharing platform では ride-sharing が2種類存在する
    pre-trip: まだtripがはじまっていない (pre-ADI problem)
    in-trip: すでにtripがはじまっている (in-ADI problem)
    困難さ
    定数競合比を達成する pre-ADI の決定的/乱数アルゴリズムは存在しない
    定数競合比を達成する in-ADI の決定的/乱数アルゴリズムは存在しない
    アルゴリズムの着想
    pre-ADI problem (まだtripがはじまっていないactive orderの意思決定) は finite horizon optimal
    stopping problems の例になっている
    16/33

    View Slide

  18. ADIアルゴリズム | 1/e-pre-ADI algorithm 概要
    時間 から の dispatch による収益 の増分を最大化する
    収益増分 (profit increment)
    1ステップ分の収益増分
    前回の dispatch が に行われたとする
    次回の dispatch を から へ延期したときの増分
    複数ステップ分の集約した収益増分 (aggregate profit increment)
    たくさん注文がキャンセルされると負になる
    17/33

    View Slide

  19. ADIアルゴリズム | 1/e-pre-ADI algorithm 中身
    入力
    前回 dispatch の情報 ( )
    時刻
    classic secretary problem の変種
    最初の 区間は

    何もしない
    区切りでこれまでに観測した order を
    dispatch する
    18/33

    View Slide

  20. ADIアルゴリズム | BI-pre-ADI algorithm 概要
    1/e-pre-ADIでは過去の情報だけ使って区間を切っている (将来は見ない)
    将来分の予想を確率変数とみなして期待値を取る
    Value sequence
    現在時刻 ,最後の dispatch 時刻
    : 時刻 から に対する収益増分
    1ステップ目
    から1ステップずつ機能的に定義する系列
    ここれ を時刻 から見たときの確率変数とみなす (??)
    期待値の部分は過去の収益データから近似計算などを利用する
    19/33

    View Slide

  21. ADIアルゴリズム | BI-pre-ADI algorithm 中身
    入力 (Alg.3と似ている)
    : 現在時刻の収益増分
    : 推定値
    動作
    現在時刻 に対して最後の時刻を探す
    最後の時刻であれば dispatch
    そうでないとき推定する
    推定値が期待値より大きければ dispatch
    20/33

    View Slide

  22. ADIアルゴリズム | in-ADI problem
    pre-ADI problem より難しい (既に trip を開始しているので)
    過去の dispatch が将来の未完了 trip の分布に影響を与える
    同じく finite horizon optimal stopping problem となる
    in-ADI problemの収益増分と似た量を定義して 1/e law を使う
    定義し直す理由: in-trip が混ざると定義が不正確になる
    In-ADIにおける収益増分 (In-ADI profit increment)
    : 時刻 から までの dispatch decision ベクトル
    : 過去の決定に従っているときの における収益
    は dispatch の変化を表す (次ページ)
    21/33

    View Slide

  23. ADIアルゴリズム | in-ADI problem 概要
    , , for
    つまり は でのみ dispatch を行う場合と,全ての単位時刻の間でdispatch を行
    う場合を比較したときの収益増分
    Algorithm はこの収益増分を最終 dispatch の次ステップ から現在 までの情報を受け取
    り,良い収益が得られるかどうかを見て dispatch を実行する
    22/33

    View Slide

  24. ADIアルゴリズム | in-ADI problem 中身
    if-else 条件1
    現在時刻以前では dispatch 計算しない
    if-else 条件2
    最終時刻では dispatch
    if-else 条件3
    収益増分値が過去の収益増分より良け
    れば dispatch
    そうでなければしない
    23/33

    View Slide

  25. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    24/33

    View Slide

  26. 実験 | 設定
    データセット
    3.5M ridesharing orders in Beijing, Didi Chuxing (2018/10/1-10/31)
    orderID, driverID, origin, destination, cancel time (if canceled)
    シミュレーション
    ODをセル上から発生したデータとしてシミュレーションし直す
    キャンセルデータのシミュレーション
    キャンセル時間をカウントする (時間 )
    各時間の個数 / 総数の経験確率で決定する
    ドライバーのデータもID毎に集約して用いる
    いつ platform 上に現れたか
    25/33

    View Slide

  27. 実験 | アルゴリズム
    Baseline
    uniform-base dispatch (等間隔で dispatch アルゴリズムを動かす)
    提案手法
    1/e-pre-ADI, BI-pre-ADI, 1/e-in-ADI
    比較
    1/e-pre-ADI, BI-pre-ADIと uniform-based algorithmを比較する
    pre-trip ride-sharing dataに対してのみ用いる
    1/e-in-ADI と uniform-based algorithmを比較する
    pre-trip/in-trip ride-sharing data全体に対して用いる
    26/33

    View Slide

  28. 実験 | 結果 (1) Spatial Clustering
    4つクラスタを抽出した
    朝晩のピーク (クラスタ1・2),商業地域の夕方 (クラスタ3・4)
    見た目
    27/33

    View Slide

  29. 実験 | 結果 (2) ADI | 時間区間と dispatch間隔の影響
    時間区間 と最大 dispatch 間隔 を変更したときの影響
    28/33

    View Slide

  30. 実験 | 結果 (2) ADI | in-ADI problemの結果
    最大 dispatch 間隔 を変更したときの影響
    29/33

    View Slide

  31. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    30/33

    View Slide

  32. 関連トピック
    Data-driven transportation system
    dispatch, fleet management, ride-hailing, etc.
    Dynamic pricing
    pricing based on spatio-temporal distributions, etc.
    Route planning
    sharing, dynamic road conditions, reinforcement learning, etc.
    Online matching
    Online bipartite matching for ride-sharing, etc.
    31/33

    View Slide

  33. 目次
    Abstract
    Introduction
    Preliminary
    Ridesharing System Model
    Problem Statement and Formulation
    Hierarchical Framework
    Spatial Clustering Algorithm
    Adaptive Interval Algorithms
    Hardness Analysis
    Algorithms for the pre-ADI Problem
    Algorithms for the in-ADI Problem
    Experiments
    Related Work
    Conclusion
    32/33

    View Slide

  34. 結論
    Ride-hailing, ride-sharingの台頭
    コア技術: dispatch algorithm

    (乗客と車両のマッチング)
    提案手法
    空間的なデータ分割
    (期待) 利益増分を最大化する時間で
    dispatch を呼ぶ
    実験結果
    より利得が得られる
    33/33

    View Slide