$30 off During Our Annual Pro Sale. View Details »

交通の最適化で強化学習を使い始めた話

 交通の最適化で強化学習を使い始めた話

More Decks by NearMeの技術発表資料です

Other Decks in Technology

Transcript

  1. 0
    交通の最適化で強化学習を使い始めた話
    2023-09-02 AWS Startup Day 2023
    Kenji Hosoda

    View Slide

  2. 1

    View Slide

  3. 2
    自己紹介
    名前:細田 謙二
    東京大学大学院工学博士(脳の視覚情報処理)。
    前職では、EコマースパッケージやPOSアプリ、IoTや機械学習
    を含む新規事業など様々なサービスを開発。Python入門2&3
    著。
    現在、CTOとしてNearMeに参画。

    View Slide

  4. 3
    ドアツードアの移動に関する課題は多い
    空港や観光地への
    アクセス
    混雑を回避した
    通勤などの移動
    交通空白地帯や
    高齢者の移動
    終電後や災害時の
    代替輸送手段不足

    View Slide

  5. 4
    4
    タクシーの「シェア」で
    第4の公共交通機関を目指す!

    View Slide

  6. 5
    NearMe

    View Slide

  7. 6
    バスよりも便利、タクシーよりも安い
    NearMe

    View Slide

  8. 7
    注文までの流れ

    View Slide

  9. 8
    □□□□□□
    □□□□□□
    □□□□□□
    □□□□□□
    □□□□□□
    管理画面
    注文が入るたびに
    AIにより組み合わせの最適化をおこない、
    自動でマッチング
    相乗りになった注文

    View Slide

  10. 9
    OR-Tools:
    https://developers.google.com/optimization
    車両と注文をマッチする
    配送計画問題(VRP)を
    ヒューリスティックな手法により解く
    マッチングのアルゴリズム
    ただし、注文が入る度に、
    また、承認、キャンセル等の注文ステータスが変化する度に
    逐次的に最適化処理を行っている

    View Slide

  11. 10
    リリース後の実績

    View Slide

  12. 11
    サービス展開
    エアポートシャトル
    トラベルシャトル
    地域シャトル
    ゴルフシャトル

    View Slide

  13. 12
    さらなる改善の余地
    羽田空港に行く運行と
    帰る運行が対になると効率がいい
    車両
    相乗りマッチング後の運行
    手作業で
    車両にアサイン

    View Slide

  14. 13
    簡易的な連続運行レコメンド
    連続運行できるものを
    ハイライト

    View Slide

  15. 14
    機械学習による追加相乗りの確率推定によるレコメンド
    偶奇の日付で機能ON/OFFして
    総受注数に有意に差 (ペアt検定)
    追加相乗りの確率が高い
    ものをハイライト
    在庫に限りがある場合は
    効率のいい運行を
    選ぶ必要がある

    View Slide

  16. 15
    将棋のようでもありテトリスのようでもある
    最善手を予測
    運行はブロック
    運行は駒

    View Slide

  17. 16
    複雑そうなので強化学習のアプローチを探る
    OR-Tools:
    https://developers.google.com/optimization
    車両と注文をマッチする
    配送計画問題(VRP)には変わらない
    まずはプリミティブなモデルで調査

    View Slide

  18. 17
    近年、深層強化学習x VRPによるアプローチが注目されている
    B Li et al., 2022

    View Slide

  19. 18
    性能は出るのか?
    Solve routing problems with a residual edge-graph attention neural network. K Lei, et al., Neurocomputing 2022
    報酬
    ベンチマークしたモデル
    パフォーマンス

    View Slide

  20. 19
    EncoderのGraph Neural Networkについて
    https://distill.pub/2021/gnn-intro/
    グラフのエッジに沿って
    特徴量を集約
    メッセージ伝搬関数

    View Slide

  21. 20
    DecoderのAttentionとMaskについて
    K Lei, et al., 2022
    ステップ1 ステップ2 ステップm
    辿った点の
    入力をマスク

    View Slide

  22. 21
    実際に試してみた
    TSP, n_nodes=50
    TSP, n_nodes=20
    ちゃんと学習してるのすごい!ここ
    をスタートラインにして
    新たなモデルを探っていく
    ※論文より小規模な学習
    だったので、トータルは
    OR-Toolsと五分五分くらい

    View Slide

  23. 22
    https://ekimetrics.github.io/blog/2021/11/03/tsp/
    Z Zhang et al., 2023
    例1:渋滞のエリアが設定されるシナリオ 例2
    強化学習の動的なシナリオへの対応力
    顧客(点)と渋滞(点の距離)が時間と共に変化するシナリオ

    View Slide

  24. 23
    モデルのカスタマイズ
    ベンチマークしたモデル
    https://distill.pub/2021/gnn-intro/
    K Lei, et al., 2022
    グラフ要素の特徴量を変更
    アテンションモデルの
    マスクの仕方を変更
    報酬設計を変更

    View Slide

  25. 24
    少しだけリアルなシナリオへの対応
    Start
    報酬を、到達した点の数 - α*距離、
    つまり、売上 - コスト、に変更
    End Start End Start End
    全ての点を必ずしも通らなくていいように
    マスクを変更 (Start / Endの点も設定)
    割に合わない運行が無視される
    ※最短経路の学習が進まないと、
    売上 - コストが正しく算出されないので、
    報酬を学習ステップに応じて変えた
    こっちに来た方が
    より多く点を辿れる

    View Slide

  26. 25
    AWS SageMaker使ってみた
    n=20 1epoch
    M2 Mac CPU:52.6 秒
    ml.g4dn.2xlarge GPU:15.4 秒
    n=50 1epoch
    M2 Mac CPU : 336.2 秒
    ml.g4dn.2xlarge GPU:60.0 秒
    hidden_node_dim=[128],
    hidden_edge_dim=[16],
    conv_laysers=[4],
    data_size=[12800]
    学習パラメタ
    M2 Macより4~5倍速い

    View Slide

  27. 26
    まとめ
    ● 逐次的な組み合わせ最適化をコアに相乗りサービスを構築した
    ● 相乗り後の運行をどの車両にアサインすればいいかという問題が浮上
    ● 将棋やテトリスのような複雑さがあり強化学習のアプローチを探った
    ● 深層強化学習 x 配送計画問題(VRP)において、
    従来のヒューリスティックな手法に匹敵 / 超える結果が得られることが分かった
    ● モデルの一部を変えることで、より複雑なシナリオに対応できた
    ● 学習は非常に時間がかかるので、GPU必須。AWS SageMakerで手軽に利用できた

    View Slide

  28. 27
    Thank you

    View Slide