SlideShare uma empresa Scribd logo
1 de 36
VEHICLE ROUTING
PROBLEMS, METHODS,AND
APPLICATIONS
2015/07/11
Haru Negami
自己紹介
• 修士まで薬学系研究科にいました
• グラフ理論と機械学習の抗菌薬開発への応用
• 先端学際工学専攻井原研・iBMath在籍
• タイムラグを持つ微分方程式によるヒト睡眠リズムモデル構築
本日の内容
• 数理最適化概要
• (必要があればP≠NPについても)
• 輸送最適化問題(VRP)の概要
• VRPの具体例
モデリングのための十戒
1. モデルを単純化せよ.
2. 小さなモデルから始めよ.
3. データがとれないようなモデルを作成するなかれ.
4. 手持ちのデータにあうようなモデルを作成するなかれ.
5. 複雑なモデルは分割して解決せよ.
6. 標準モデルへの帰着を考えよ.
7. モデルを抽象化して表現せよ.
8. 森から脱出する際に木ばかりみるなかれ.
9. 解くための手法のことを考えてモデルを作成せよ.
10. 手持ちの手法からモデルを作成するなかれ.
詳細は「モデリングのための覚え書き」
オペレーションズ・リサーチ 4月号 Vol.50 No.4 2005
本日の内容
• 数理最適化概要
• (必要があればP≠NPについても)
• 輸送最適化問題(VRP)の概要
• VRPの具体例
こちらから引用しました
数理計画問題
• 線形計画問題
• ネットワーク計画問題
• 非線形計画問題
• 組合せ計画問題
線形計画問題
本日の内容
• 数理最適化概要
• (必要があればP≠NPについても)
• 輸送最適化問題(VRP)の概要
• VRPの具体例
Vehicle Routing Problemとは
• 定義:
• 輸送のリクエストと乗り物の一軍の集合が与えられた時に
• 最小のコストで全てのリクエストを満たす乗り物のルートを決定すること
• コンピューターの最適化計算アルゴリズムによって高品質な
実現可能な解が得られ、時間やコストを削減できる。
• 1959年のDantzig and Ramser の研究にはじまって50年ほ
どの研究の歴史があり、主要なジャーナルは以下の様なもの
がある。
• Operations Research, Transportation Science, Computers and
Operations Research
• ジャーナル・学会・研究機関を詳しく知りたい方は教えて下さい!
VRPの構成要素
1. the (road) network structure
2. the type of transportation requests
3. the constraints that affect each route individually
4. the fleet composition and location
5. the inter-route constraints
6. the optimization objectives
1. ネットワークの特徴
• 後に挙げるCVRPは、点の間の移動を考える問題
• Arc Routing Problem の場合は、connection または link と
言われる、道のセグメントを考える
• 例) 冬の雪かき、郵便配達(道なりに届け先が密集しているので)
2. 輸送リクエストの種類(1/2
• Delivery and collection(pickups)
• 飲み物の集荷と配送など
• many-to-one VRP
• one-to-many VRP
• Simple Visits and Vehicle Scheduling
• 看護師のケア、修理など
• Vehicle Scheduling problem と呼ばれる
• Alternative and Indirect Services
• 小包を届ける(届け先の候補がある)
• Multi-Vehicle Covering Tour Problem
• Point-to-Point Transportation
• 二点間の人やグッズの移動(交通など)
• pickup-and-delivery problems
• Repeated Supply
• ひとりのカスタマーが定期的に(週2など)配達される
• Periodic VRP
2. 輸送リクエストの種類(2/2
• Non-split and Split Services
• 複数のトラックでひとつの需要を満たす
• The Split Delivery VRP
• Combined Shipment and Multi-model Service
• 複数の交通手段を使って移動する
• 都市計画への応用
• hub-and-spoke or crossdocking
2-Echelon VRP
• Routing with Profits and Service Selection
• 需要が全て満たされない場合、満たす需要を選ぶ
• Profitable Tour Problem
• Team Orienteering Problem
• Prize-Collecting VRP
• Dynamic and Stochastic Routing
• dynamic: 各時間ごとにシステムの状態の情報が得られる
• Sctochastic: 状態が不明だが確率分布で表せる
3. 目的関数の設定
• Single Objective Optimization
• ひとつの指標を最適化する
• 利益、コスト、etc
• Hierarchical Objectives
• 複数の指標はそれぞれ相反するので、優先順位をつける。
• Multi-criteria Optimization
• 輸送に関わるパラメーターが多様化しており、近年ホットな領域
4. その他の拡張
• ドライバーの経験値を加味するなどの拡張も研究されてい
る
本日の内容
• 数理最適化概要
• (必要があればP≠NPについても)
• 輸送最適化問題(VRP)の概要
• VRPの具体例
The Capacitated Vehicle Routing Problem
• 最も研究されているVRPのひとつ(巡回セールスマン問題に似ている)
• アカデミック的な要素が強い
• モデル
• 1つの倉庫(0)と、N人の顧客N={1, …, N}間を移動。
• カスタマーiの需要:qi は荷物の重さ。0以上のスカラー。
• トラックの集合: K={1, 2, …, |K|}
• トラックのキャパシティ Q >0 は一定。
• ひとつのトラックが、倉庫を出発し、カスタマーの部分集合S⊆Nをまわて倉庫に戻る。
• カスタマーiからjへの移動にはコスト cij がかかる。
• 倉庫0の需要を仮にq0として有向・無向グラフで表す。
• グラフはo(n2)のリンクを持つ。
• タスク
• カスタマーをトラックごとに実行可能なクラスターに分割する。
• 各トラックのルートを決める
• 解き方:通常、compact formulations, (Mixed) Integer Programming
modelを用いる(詳細は後ほど)
Algorithms for the Capacitated VRP(1)
• Tree search method based on 分枝限定法
• Tree search(木探索)Wikipediaより
• 探索アルゴリズムとは、大まかに言えば、問題を入力として、考えられるいくつ
もの解を評価した後、解を返すアルゴリズムである。
• まず解くべき問題を状態と状態変化に分る。 最初に与えられる状態を初期状
態(英: initial state)といい、目的とする状態は最終状態(ゴール、英: final
state, goal)と呼ばれる。 初期状態から最終状態に至る、状態及び状態変化
の並びが解である。 将棋ならば、盤面の駒の配置と指し手の持ち駒が状態で
あり、交互に駒を動かすことが状態変化に当たる。
• 問題を解く類として研究されているアルゴリズムの多くは探索アルゴリズムで
ある。ある問題の考えられるあらゆる解の集合を探索空間と呼ぶ。力まかせ
探索や素朴な(知識を用いない)探索アルゴリズムは、探索空間を探索する手
法としては最も単純で直観的である。一方、知識を用いた探索アルゴリズムは
ヒューリスティクスを使って探索空間の構造に関する知識を利用し、探索にか
かる時間を削減しようとする。
Algorithms for the Capacitated VRP(1)
• Tree search method based on 分枝限定法(branch-)
• 全ての解候補を体系的に列挙するもので、最適化された量の上限と下限の
概算を使って、最適でない候補はまとめて捨てられる。
• 問題をいくつかの小規模な問題に分割し,その全てを解くことで等価的に元
の問題を解く
• 小規模な問題への分割は,例えば,ある 1 つの変数の値を 0 または 1 に
固定し,それぞれの場合を個別に考察することによって実現できる. このよ
うに問題を分割する操作を分枝操作(branching operation)という.
• 分枝操作を繰り返し行うことで,すべての場合を列挙することができるが,
その過程は生成木と呼ばれる根付き木
• を用いて表現できる.
分枝限定法の探索を途中で打ち切れば近似解法としても利用でき,この場
合,最適値は分からなくとも最適値の下界を知ることができる(最小化問題
を仮定している)
• 手法の効率は、ノード分割手続きと上限および下限を推定する手続きに強
く依存する。他の全ての条件が同じなら、オーバーラップしない部分集合に
分割するのが最もよい。
Algorithms for the Capacitated VRP(2)
• Column Generation and Brand-and-Cut algorithm
• 中川さんが説明予定のVRP with Time Windowsの特殊なケースとして
解かれる(time windowが十分に大きい場合)
• 以下の2つのアプローチのコンビネーション
• Fukasawa, R., Longo, H., Lysgchoa, E., Werneck, RF.
• Robust branch-and-cut-and-price for the capacitated vehicle routing problem,
Mathematical Programming, Vol. 106, No.3, pp. 491-511, 2006.
• Baldacci, Christofides, and Mingozzi
• An exact algorithm for the vehicle routing problem based on the set
partitioning formulation with additional cuts
• Mathematical Programming, Vol 115, Issue 2, pp 351-385, 2008
質疑応答
• 一番ホットな領域は?
• ヒューリスティックな計算アルゴリズムの開発
• multiple optimization
• 様々な探索方法(GA、分枝限定法などなど)を比較する。
• https://ja.wikipedia.org/wiki/%E6%8E%A2%E7%B4%A2
• クロネコヤマトなど運送会社は実際にこのようなアルゴリズム
を使っているのだろうか?
• 使っている可能性は高い。
• 地域の運搬担当の人の裁量に任されているケースも多い。
• 計算可能な量が小さいので、使うとしたら地域ごとに分割して計算など
するのでは?
おまけ:Algorithms for the Capacitated
VRP(2)
branch-and-cut-and-price(2004)の発展
• ブランチ=枝の分割
• カット=グラフ理論における分割集合
• プライス=ラグランジュの未定乗数法でλ
を求めて重みづけ
• ■column generation
• 上位問題:K台の選択ルートの距離の最
小化
• 下位問題:距離の短いルート群の生成
• ・容量cを横軸,頂点を縦軸にとった行列
Mで頂点vまでの道とその際の総需要dを
表す.
• DPで道を形成していく
• w(vの近傍点)をvの次に追加するかどう
かを判断して加えていく.
• 行列の中の点の数がnc個なのでnc回繰
り返せば道が1本できる.ルートの本数は
n本で
• きるのでcn2回で計算可能.
• ■column generationの高速化:
• 削除:通過点を記憶して閉路となっている
かを判断
• ○ヒューリスティック加速
• sparsification:1つのグラフを5つに分割
し,Spanning treeをあらかじめ設定す
• る.
• ■Cut generation
• カットセットの辺の数を置いていたが,そ
のカットセットの生成を行う.
• 周回容量制約に最適化計算の制約条件
ではなく,別途アルゴリズムを設定する.
• 切断集合に属するための条件・Mが与え
られた時のS,yを抽出する条件を制約条
件とし
• て出入りの辺の数を最小化する.

Mais conteúdo relacionado

Mais procurados

Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイcvpaper. challenge
 
最適化超入門
最適化超入門最適化超入門
最適化超入門Takami Sato
 
[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展Deep Learning JP
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
ベイズ最適化
ベイズ最適化ベイズ最適化
ベイズ最適化MatsuiRyo
 
深層ニューラルネットワークの積分表現(Deepを定式化する数学)
深層ニューラルネットワークの積分表現(Deepを定式化する数学)深層ニューラルネットワークの積分表現(Deepを定式化する数学)
深層ニューラルネットワークの積分表現(Deepを定式化する数学)Katsuya Ito
 
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with TransformersDeep Learning JP
 
Triplet Loss 徹底解説
Triplet Loss 徹底解説Triplet Loss 徹底解説
Triplet Loss 徹底解説tancoro
 
最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向ohken
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision TransformerYusuke Uchida
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)Shota Imai
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理wada, kazumi
 
マハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いマハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いwada, kazumi
 
機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論Taiji Suzuki
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介miyanegi
 
遺伝的アルゴリズム (Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム (Genetic Algorithm)を始めよう!Kazuhide Okamura
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチHironobu Fujiyoshi
 
Layer Normalization@NIPS+読み会・関西
Layer Normalization@NIPS+読み会・関西Layer Normalization@NIPS+読み会・関西
Layer Normalization@NIPS+読み会・関西Keigo Nishida
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Preferred Networks
 
論文紹介-Multi-Objective Deep Reinforcement Learning
論文紹介-Multi-Objective Deep Reinforcement Learning論文紹介-Multi-Objective Deep Reinforcement Learning
論文紹介-Multi-Objective Deep Reinforcement LearningShunta Nomura
 

Mais procurados (20)

Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイ
 
最適化超入門
最適化超入門最適化超入門
最適化超入門
 
[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
ベイズ最適化
ベイズ最適化ベイズ最適化
ベイズ最適化
 
深層ニューラルネットワークの積分表現(Deepを定式化する数学)
深層ニューラルネットワークの積分表現(Deepを定式化する数学)深層ニューラルネットワークの積分表現(Deepを定式化する数学)
深層ニューラルネットワークの積分表現(Deepを定式化する数学)
 
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers
【DL輪読会】A Time Series is Worth 64 Words: Long-term Forecasting with Transformers
 
Triplet Loss 徹底解説
Triplet Loss 徹底解説Triplet Loss 徹底解説
Triplet Loss 徹底解説
 
最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理
 
マハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いマハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違い
 
機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介
 
遺伝的アルゴリズム (Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム (Genetic Algorithm)を始めよう!
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
 
Layer Normalization@NIPS+読み会・関西
Layer Normalization@NIPS+読み会・関西Layer Normalization@NIPS+読み会・関西
Layer Normalization@NIPS+読み会・関西
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
 
論文紹介-Multi-Objective Deep Reinforcement Learning
論文紹介-Multi-Objective Deep Reinforcement Learning論文紹介-Multi-Objective Deep Reinforcement Learning
論文紹介-Multi-Objective Deep Reinforcement Learning
 

配送最適化

  • 2. 自己紹介 • 修士まで薬学系研究科にいました • グラフ理論と機械学習の抗菌薬開発への応用 • 先端学際工学専攻井原研・iBMath在籍 • タイムラグを持つ微分方程式によるヒト睡眠リズムモデル構築
  • 4. モデリングのための十戒 1. モデルを単純化せよ. 2. 小さなモデルから始めよ. 3. データがとれないようなモデルを作成するなかれ. 4. 手持ちのデータにあうようなモデルを作成するなかれ. 5. 複雑なモデルは分割して解決せよ. 6. 標準モデルへの帰着を考えよ. 7. モデルを抽象化して表現せよ. 8. 森から脱出する際に木ばかりみるなかれ. 9. 解くための手法のことを考えてモデルを作成せよ. 10. 手持ちの手法からモデルを作成するなかれ. 詳細は「モデリングのための覚え書き」 オペレーションズ・リサーチ 4月号 Vol.50 No.4 2005
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22. 本日の内容 • 数理最適化概要 • (必要があればP≠NPについても) • 輸送最適化問題(VRP)の概要 • VRPの具体例
  • 23. Vehicle Routing Problemとは • 定義: • 輸送のリクエストと乗り物の一軍の集合が与えられた時に • 最小のコストで全てのリクエストを満たす乗り物のルートを決定すること • コンピューターの最適化計算アルゴリズムによって高品質な 実現可能な解が得られ、時間やコストを削減できる。 • 1959年のDantzig and Ramser の研究にはじまって50年ほ どの研究の歴史があり、主要なジャーナルは以下の様なもの がある。 • Operations Research, Transportation Science, Computers and Operations Research • ジャーナル・学会・研究機関を詳しく知りたい方は教えて下さい!
  • 24. VRPの構成要素 1. the (road) network structure 2. the type of transportation requests 3. the constraints that affect each route individually 4. the fleet composition and location 5. the inter-route constraints 6. the optimization objectives
  • 25. 1. ネットワークの特徴 • 後に挙げるCVRPは、点の間の移動を考える問題 • Arc Routing Problem の場合は、connection または link と 言われる、道のセグメントを考える • 例) 冬の雪かき、郵便配達(道なりに届け先が密集しているので)
  • 26. 2. 輸送リクエストの種類(1/2 • Delivery and collection(pickups) • 飲み物の集荷と配送など • many-to-one VRP • one-to-many VRP • Simple Visits and Vehicle Scheduling • 看護師のケア、修理など • Vehicle Scheduling problem と呼ばれる • Alternative and Indirect Services • 小包を届ける(届け先の候補がある) • Multi-Vehicle Covering Tour Problem • Point-to-Point Transportation • 二点間の人やグッズの移動(交通など) • pickup-and-delivery problems • Repeated Supply • ひとりのカスタマーが定期的に(週2など)配達される • Periodic VRP
  • 27. 2. 輸送リクエストの種類(2/2 • Non-split and Split Services • 複数のトラックでひとつの需要を満たす • The Split Delivery VRP • Combined Shipment and Multi-model Service • 複数の交通手段を使って移動する • 都市計画への応用 • hub-and-spoke or crossdocking 2-Echelon VRP • Routing with Profits and Service Selection • 需要が全て満たされない場合、満たす需要を選ぶ • Profitable Tour Problem • Team Orienteering Problem • Prize-Collecting VRP • Dynamic and Stochastic Routing • dynamic: 各時間ごとにシステムの状態の情報が得られる • Sctochastic: 状態が不明だが確率分布で表せる
  • 28. 3. 目的関数の設定 • Single Objective Optimization • ひとつの指標を最適化する • 利益、コスト、etc • Hierarchical Objectives • 複数の指標はそれぞれ相反するので、優先順位をつける。 • Multi-criteria Optimization • 輸送に関わるパラメーターが多様化しており、近年ホットな領域
  • 30. 本日の内容 • 数理最適化概要 • (必要があればP≠NPについても) • 輸送最適化問題(VRP)の概要 • VRPの具体例
  • 31. The Capacitated Vehicle Routing Problem • 最も研究されているVRPのひとつ(巡回セールスマン問題に似ている) • アカデミック的な要素が強い • モデル • 1つの倉庫(0)と、N人の顧客N={1, …, N}間を移動。 • カスタマーiの需要:qi は荷物の重さ。0以上のスカラー。 • トラックの集合: K={1, 2, …, |K|} • トラックのキャパシティ Q >0 は一定。 • ひとつのトラックが、倉庫を出発し、カスタマーの部分集合S⊆Nをまわて倉庫に戻る。 • カスタマーiからjへの移動にはコスト cij がかかる。 • 倉庫0の需要を仮にq0として有向・無向グラフで表す。 • グラフはo(n2)のリンクを持つ。 • タスク • カスタマーをトラックごとに実行可能なクラスターに分割する。 • 各トラックのルートを決める • 解き方:通常、compact formulations, (Mixed) Integer Programming modelを用いる(詳細は後ほど)
  • 32. Algorithms for the Capacitated VRP(1) • Tree search method based on 分枝限定法 • Tree search(木探索)Wikipediaより • 探索アルゴリズムとは、大まかに言えば、問題を入力として、考えられるいくつ もの解を評価した後、解を返すアルゴリズムである。 • まず解くべき問題を状態と状態変化に分る。 最初に与えられる状態を初期状 態(英: initial state)といい、目的とする状態は最終状態(ゴール、英: final state, goal)と呼ばれる。 初期状態から最終状態に至る、状態及び状態変化 の並びが解である。 将棋ならば、盤面の駒の配置と指し手の持ち駒が状態で あり、交互に駒を動かすことが状態変化に当たる。 • 問題を解く類として研究されているアルゴリズムの多くは探索アルゴリズムで ある。ある問題の考えられるあらゆる解の集合を探索空間と呼ぶ。力まかせ 探索や素朴な(知識を用いない)探索アルゴリズムは、探索空間を探索する手 法としては最も単純で直観的である。一方、知識を用いた探索アルゴリズムは ヒューリスティクスを使って探索空間の構造に関する知識を利用し、探索にか かる時間を削減しようとする。
  • 33. Algorithms for the Capacitated VRP(1) • Tree search method based on 分枝限定法(branch-) • 全ての解候補を体系的に列挙するもので、最適化された量の上限と下限の 概算を使って、最適でない候補はまとめて捨てられる。 • 問題をいくつかの小規模な問題に分割し,その全てを解くことで等価的に元 の問題を解く • 小規模な問題への分割は,例えば,ある 1 つの変数の値を 0 または 1 に 固定し,それぞれの場合を個別に考察することによって実現できる. このよ うに問題を分割する操作を分枝操作(branching operation)という. • 分枝操作を繰り返し行うことで,すべての場合を列挙することができるが, その過程は生成木と呼ばれる根付き木 • を用いて表現できる. 分枝限定法の探索を途中で打ち切れば近似解法としても利用でき,この場 合,最適値は分からなくとも最適値の下界を知ることができる(最小化問題 を仮定している) • 手法の効率は、ノード分割手続きと上限および下限を推定する手続きに強 く依存する。他の全ての条件が同じなら、オーバーラップしない部分集合に 分割するのが最もよい。
  • 34. Algorithms for the Capacitated VRP(2) • Column Generation and Brand-and-Cut algorithm • 中川さんが説明予定のVRP with Time Windowsの特殊なケースとして 解かれる(time windowが十分に大きい場合) • 以下の2つのアプローチのコンビネーション • Fukasawa, R., Longo, H., Lysgchoa, E., Werneck, RF. • Robust branch-and-cut-and-price for the capacitated vehicle routing problem, Mathematical Programming, Vol. 106, No.3, pp. 491-511, 2006. • Baldacci, Christofides, and Mingozzi • An exact algorithm for the vehicle routing problem based on the set partitioning formulation with additional cuts • Mathematical Programming, Vol 115, Issue 2, pp 351-385, 2008
  • 35. 質疑応答 • 一番ホットな領域は? • ヒューリスティックな計算アルゴリズムの開発 • multiple optimization • 様々な探索方法(GA、分枝限定法などなど)を比較する。 • https://ja.wikipedia.org/wiki/%E6%8E%A2%E7%B4%A2 • クロネコヤマトなど運送会社は実際にこのようなアルゴリズム を使っているのだろうか? • 使っている可能性は高い。 • 地域の運搬担当の人の裁量に任されているケースも多い。 • 計算可能な量が小さいので、使うとしたら地域ごとに分割して計算など するのでは?
  • 36. おまけ:Algorithms for the Capacitated VRP(2) branch-and-cut-and-price(2004)の発展 • ブランチ=枝の分割 • カット=グラフ理論における分割集合 • プライス=ラグランジュの未定乗数法でλ を求めて重みづけ • ■column generation • 上位問題:K台の選択ルートの距離の最 小化 • 下位問題:距離の短いルート群の生成 • ・容量cを横軸,頂点を縦軸にとった行列 Mで頂点vまでの道とその際の総需要dを 表す. • DPで道を形成していく • w(vの近傍点)をvの次に追加するかどう かを判断して加えていく. • 行列の中の点の数がnc個なのでnc回繰 り返せば道が1本できる.ルートの本数は n本で • きるのでcn2回で計算可能. • ■column generationの高速化: • 削除:通過点を記憶して閉路となっている かを判断 • ○ヒューリスティック加速 • sparsification:1つのグラフを5つに分割 し,Spanning treeをあらかじめ設定す • る. • ■Cut generation • カットセットの辺の数を置いていたが,そ のカットセットの生成を行う. • 周回容量制約に最適化計算の制約条件 ではなく,別途アルゴリズムを設定する. • 切断集合に属するための条件・Mが与え られた時のS,yを抽出する条件を制約条 件とし • て出入りの辺の数を最小化する.