0交通の最適化で強化学習を使い始めた話2023-09-02 AWS Startup Day 2023Kenji Hosoda
View Slide
1
2自己紹介名前:細田 謙二東京大学大学院工学博士(脳の視覚情報処理)。前職では、EコマースパッケージやPOSアプリ、IoTや機械学習を含む新規事業など様々なサービスを開発。Python入門2&3著。現在、CTOとしてNearMeに参画。
3ドアツードアの移動に関する課題は多い空港や観光地へのアクセス混雑を回避した通勤などの移動交通空白地帯や高齢者の移動終電後や災害時の代替輸送手段不足
44タクシーの「シェア」で第4の公共交通機関を目指す!
5NearMe
6バスよりも便利、タクシーよりも安いNearMe
7注文までの流れ
8□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□管理画面注文が入るたびにAIにより組み合わせの最適化をおこない、自動でマッチング相乗りになった注文
9OR-Tools:https://developers.google.com/optimization車両と注文をマッチする配送計画問題(VRP)をヒューリスティックな手法により解くマッチングのアルゴリズムただし、注文が入る度に、また、承認、キャンセル等の注文ステータスが変化する度に逐次的に最適化処理を行っている
10リリース後の実績
11サービス展開エアポートシャトルトラベルシャトル地域シャトルゴルフシャトル
12さらなる改善の余地羽田空港に行く運行と帰る運行が対になると効率がいい車両相乗りマッチング後の運行手作業で車両にアサイン
13簡易的な連続運行レコメンド連続運行できるものをハイライト
14機械学習による追加相乗りの確率推定によるレコメンド偶奇の日付で機能ON/OFFして総受注数に有意に差 (ペアt検定)追加相乗りの確率が高いものをハイライト在庫に限りがある場合は効率のいい運行を選ぶ必要がある
15将棋のようでもありテトリスのようでもある最善手を予測運行はブロック運行は駒
16複雑そうなので強化学習のアプローチを探るOR-Tools:https://developers.google.com/optimization車両と注文をマッチする配送計画問題(VRP)には変わらないまずはプリミティブなモデルで調査
17近年、深層強化学習x VRPによるアプローチが注目されているB Li et al., 2022
18性能は出るのか?Solve routing problems with a residual edge-graph attention neural network. K Lei, et al., Neurocomputing 2022報酬ベンチマークしたモデルパフォーマンス
19EncoderのGraph Neural Networkについてhttps://distill.pub/2021/gnn-intro/グラフのエッジに沿って特徴量を集約メッセージ伝搬関数
20DecoderのAttentionとMaskについてK Lei, et al., 2022ステップ1 ステップ2 ステップm辿った点の入力をマスク
21実際に試してみたTSP, n_nodes=50TSP, n_nodes=20ちゃんと学習してるのすごい!ここをスタートラインにして新たなモデルを探っていく※論文より小規模な学習だったので、トータルはOR-Toolsと五分五分くらい
22https://ekimetrics.github.io/blog/2021/11/03/tsp/Z Zhang et al., 2023例1:渋滞のエリアが設定されるシナリオ 例2強化学習の動的なシナリオへの対応力顧客(点)と渋滞(点の距離)が時間と共に変化するシナリオ
23モデルのカスタマイズベンチマークしたモデルhttps://distill.pub/2021/gnn-intro/K Lei, et al., 2022グラフ要素の特徴量を変更アテンションモデルのマスクの仕方を変更報酬設計を変更
24少しだけリアルなシナリオへの対応Start報酬を、到達した点の数 - α*距離、つまり、売上 - コスト、に変更End Start End Start End全ての点を必ずしも通らなくていいようにマスクを変更 (Start / Endの点も設定)割に合わない運行が無視される※最短経路の学習が進まないと、売上 - コストが正しく算出されないので、報酬を学習ステップに応じて変えたこっちに来た方がより多く点を辿れる
25AWS SageMaker使ってみたn=20 1epochM2 Mac CPU:52.6 秒ml.g4dn.2xlarge GPU:15.4 秒n=50 1epochM2 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倍速い
26まとめ● 逐次的な組み合わせ最適化をコアに相乗りサービスを構築した● 相乗り後の運行をどの車両にアサインすればいいかという問題が浮上● 将棋やテトリスのような複雑さがあり強化学習のアプローチを探った● 深層強化学習 x 配送計画問題(VRP)において、従来のヒューリスティックな手法に匹敵 / 超える結果が得られることが分かった● モデルの一部を変えることで、より複雑なシナリオに対応できた● 学習は非常に時間がかかるので、GPU必須。AWS SageMakerで手軽に利用できた
27Thank you