Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
組合せ最適化 モデリングと解法
Search
Shogo Osawa
November 05, 2021
Science
0
100
組合せ最適化 モデリングと解法
組合せ最適化問題の基本的な概念を解説しました。
Shogo Osawa
November 05, 2021
Tweet
Share
More Decks by Shogo Osawa
See All by Shogo Osawa
エントロピーと情報量
shogo_osawa
0
12
統計的推測の心構え:正しい質問をする
shogo_osawa
0
340
Other Decks in Science
See All in Science
LCG20
lcolladotor
0
200
Cross-Media Information Spaces and Architectures (CISA)
signer
PRO
3
25k
Running llama.cpp on the CPU
ianozsvald
0
210
ベクトル型スーパーコンピュータ「AOBA-S」の性能評価
keichi
0
250
「みんなの自然災害伝承碑」ワークショップ 2023|日本地図学会
fullfull
0
210
Yasuke
drawsbygba
0
610
FIBA W杯の日本代表って組み合わせ次第で2次ラウンド行けたんじゃね?をデータで検証
saltcooky12
0
200
20240420 Global Azure 2024 | Azure Migrate でデータセンターのサーバーを評価&移行してみる
olivia_0707
2
490
Direct Preference Optimization
zchenry
0
130
Mastering Feature Engineering: Mining the Hidden Salary Formula with CakeResume
tlyu0419
0
130
救急外来でのめまい診療_中枢性めまいを見逃さない!
psasa
0
160
大規模画像テキストデータのフィルタリング手法の紹介
lyakaap
5
1.1k
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Designing for humans not robots
tammielis
248
25k
How to train your dragon (web standard)
notwaldorf
73
5.2k
Product Roadmaps are Hard
iamctodd
44
9.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
Web Components: a chance to create the future
zenorocha
305
41k
Six Lessons from altMBA
skipperchong
21
3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
Transcript
組合せ最適化せ最適化最適化 モデリングと解法と解法解法
今日の参考文献の参考文献参考文献 今日の参考文献から使える使えるえる!組合せ最適化せ最適化最適化 : 離散問題ガイドブックガイドブック 組合せ最適化せ最適化最適化―メタ戦略を中心メタ戦略を中心とし戦略を中心としてを中心として中心としてと解法して
最適化と解法は • 様々なな制約の参考文献もと解法で、数ある選択肢の数ある選択肢の中ある選択肢の中からの参考文献中から使える 何らかの観点をら使えるかの参考文献観点をを中心として最も良くするくする選択肢の中からを中心として選ぶこと解法 • 制約 – 使えるえる材料や機器の量の制や機器の量の制約機器の量の制約の参考文献量の制約の参考文献制約 – 法律(労働時間の上限など)の参考文献上限など)など)
• 最も良くするくする – コスト・リスクは小さくさく – 価値・利益は大きくは大きくきく
最適化されている(できそう)なもの参考文献 • 小さく売店の商品発注計画の参考文献商品発注計画 • 公共施設の配置の参考文献配置 • 金融資産運用 • 送電網設の配置計 •
地図アプリの経路探アプリの参考文献経路探索 • 交通機関のダイヤ作成の参考文献ダイヤ作成作成 • などなど…
数ある選択肢の中理最適化 • 制約や機器の量の制約追求したい価値を数したい価値を中心として数ある選択肢の中式で表現して(で表現して(して(モデリングと解法)、数ある選択肢の 数ある選択肢の中学的な手法で(最もな手法で(最も)良くするい選択肢の中からを中心として導き出すき出すす • 決定変数ある選択肢の中 decision variable – 取りうる選択肢をりうる選択肢の中からを中心として表した変数ある選択肢の中
• 目的な手法で(最も関のダイヤ作成数ある選択肢の中 objective function – 利益は大きくや機器の量の制約コストなど、数ある選択肢の良くするくしたいもの参考文献の参考文献数ある選択肢の中学的な手法で(最も表現して( – 決定変数ある選択肢の中の参考文献関のダイヤ作成数ある選択肢の中になっている • 制約条件 constraint – 決定変数ある選択肢の中の参考文献取りうる選択肢をりうる範囲を制限する等式を中心として制限など)する等式で表現して(・不等式で表現して(など
もうちょっと解法用語を…を中心として… • 実行可能領域 feasible region – 制約条件によって決めら使えるれた、数ある選択肢の 決定変数ある選択肢の中がと解法り得る値の領域る値の参考文献領域 • 最適解
optimal solution – 目的な手法で(最も関のダイヤ作成数ある選択肢の中の参考文献値が最小さく(最大きく)と解法なる決定変数ある選択肢の中の参考文献値 • 最適値 optimal value – 最適解を中心として与えたときの目的えたと解法きの参考文献目的な手法で(最も関のダイヤ作成数ある選択肢の中の参考文献値
数ある選択肢の中理最適化の参考文献例 • 小さく麦粉と卵がそれぞれと解法卵がそれぞれがそれぞれ1000 kg, 200 kgずつある • パンを中心として1ロット作るには小さく麦粉と卵がそれぞれ10 kg, 卵がそれぞれ1
kgが 必要で、で、数ある選択肢の1ロットあたりの参考文献利益は大きくは10,000円 • ケーキをを中心として1ロット作るには小さく麦粉と卵がそれぞれ8 kg, 卵がそれぞれ3 kgが 必要で、で、数ある選択肢の1ロットあたりの参考文献利益は大きくは15,000円 • パンと解法ケーキをを中心として何らかの観点をロットずつ作れば 利益は大きくが最大きくになるか?
モデリングと解法の参考文献例 • パンと解法ケーキをの参考文献ロット数ある選択肢の中(決定変数ある選択肢の中): • 合せ最適化計利益は大きく(目的な手法で(最も関のダイヤ作成数ある選択肢の中): • 制約条件: x 1, x
2 10000 x 1 +15000 x 2 x 1 ∈ℤ, x 2 ∈ℤ x 1 ≥0, x 2 ≥0 10 x 1 +8 x 2 ≤1000 x 1 +3 x 2 ≤200 ロット数ある選択肢の中は非負の整数であるの参考文献整数ある選択肢の中である 小さく麦粉と卵がそれぞれの参考文献使える用量の制約が1,000kgを中心として超えないえない 卵がそれぞれの参考文献使える用量の制約が200kgを中心として超えないえない
パッと解法思いつく解法(貪いつく解法(貪欲法) • ケーキをの参考文献方がが1ロットあたりの参考文献利益は大きくが大きくきいから使える、数ある選択肢の ケーキをを中心として作れるだけ作って、あまり作って、数ある選択肢のあまりでパンを中心として作ろう • パン2ロット、数ある選択肢のケーキを66ロット 合せ最適化計利益は大きくは1,010,000円 • パンを中心として優先して作るとパンして作ると解法パン100ロット、数ある選択肢のケーキを0ロット 合せ最適化計利益は大きくは1,000,000円
• これより良くするい組合せ最適化せ最適化は存在しないか?しないか? それを中心としてどうしたら使える保証できるか?できるか?
厳密解法で解いてみた x1: 64 x2: 45 objective: 1315000 flour: 1000.0 egg
: 199.0 後ほど解説するほど解説するする 分岐限など)定法と解法いう 厳密解が求したい価値を数まる解法を中心として 使える用
解法が大きく事 • 解が与えたときの目的えら使えるれた時、数ある選択肢のそれが最適解かどうか 確認するのは簡単でするの参考文献は簡単ではないではない • 最適性を保証してくれを中心として保証できるか?してくれる解法はあるけ作って、あまりれど、数ある選択肢の いつでも使えるえるわけ作って、あまりではない – 目的な手法で(最も関のダイヤ作成数ある選択肢の中や機器の量の制約制約条件の参考文献性を保証してくれ質(線形、数ある選択肢の二次、数ある選択肢の凸など)など) –
計算複雑性を保証してくれ(問題ガイドブック規模に対して実行時に対して実行時間がして実行時間の上限など)がどうなるか) • 問題ガイドブックの参考文献性を保証してくれ質を中心として知り、適切な解法り、数ある選択肢の適切な解法を選ぶ必な解法を中心として選ぶ必要で、がある
別の例:勤務スケの参考文献例:勤務スケジューリンスケジューリングと解法問題ガイドブック • 工場の従業員や看護の参考文献従業員や看護師などのや機器の量の制約看護師などの勤務スケなどの参考文献勤務スケジューリンスケジュールをを中心として 生成する問題ガイドブック • 様々ななサービス要で、求したい価値を数(出す社人数ある選択肢の中の参考文献下限など)など)や機器の量の制約 勤務スケジューリン条件(労働時間の上限など)上限など)や機器の量の制約勤務スケジューリン間の上限など)隔など)をなど)を中心として 満たしたたしたシフト(日の参考文献勤、数ある選択肢の夜勤、数ある選択肢の研修、数ある選択肢の休日の参考文献等)を中心として 生成したい •
「シフトの参考文献割当」とその制約条」とその制約条件と解法その参考文献制約条件を中心として数ある選択肢の中学的な手法で(最もに どう表現して(できるか?
0-1整数ある選択肢の中による表現して( • 日の参考文献付dの参考文献従業員や看護師などのeに対して実行時間がするシフトsの参考文献割当」とその制約条を中心として変数ある選択肢の中 で表現して( • であるなら使える、数ある選択肢のその参考文献シフトには割当」とその制約条てら使えるれない • であるなら使える、数ある選択肢のその参考文献シフトに割当」とその制約条てら使えるれる
• 日の参考文献付数ある選択肢の中×従業員や看護師などの数ある選択肢の中×シフトの参考文献種類数ある選択肢の中 の参考文献 決定変数ある選択肢の中を中心として作ること解法になる x d e s ∈{0,1} x d e s =0 x d e s =1
制約条件の参考文献表現して(例 • 同じ日にただじ日にただ日の参考文献にただ1つの参考文献シフトに割当」とその制約条てら使えるれる • d日の参考文献の参考文献シフトsには、数ある選択肢のn d s 人以上m d s
人以下を中心として割り当」とその制約条て ∀d ,e ∑ s x d e s =1 ∀d , s n d s ≤∑ e x d e s ≤m d s
制約条件の参考文献緩和 • 制約条件を中心として大きく量の制約に追加すると、問題がすると解法、数ある選択肢の問題ガイドブックが 実行不能 infeasible になること解法がある • 制約条件を中心として守ることは諦めてること解法は諦めて、違反の度めて、数ある選択肢の違反の度合いをの参考文献度合せ最適化いを中心として 定量の制約化し、数ある選択肢のそれを中心として最小さく化すること解法にする Obj(x,
v)=Obj(x)+wv (w>0) ∀d , s n d s −v≤∑ e x d e s ≤m d s +v (v≥0)
組合せ最適化せ最適化最適化問題ガイドブックの参考文献解法 • 標準問題ガイドブックの参考文献解法(今日の参考文献は扱わない)わない) – よく出す現して(する問題ガイドブックを中心として少し抽象化して考し抽象化して考えたもの参考文献 – 最短経路、数ある選択肢の巡回セールスマン、セールをスマン、数ある選択肢のナップサック etc… – 多項式で表現して(時間の上限など)で解け作って、あまりる強力な解法もあるがな解法もあるが、数ある選択肢の融通がきかない
• 汎用的な手法で(最もな解法 – 問題ガイドブックが線形なら使える分岐限など)定法 branch-and-bound で 厳密解が求したい価値を数まるが、数ある選択肢の依然として指数時間と解法して指数ある選択肢の中時間の上限など)の参考文献アルをゴリズム – 問題ガイドブックが非線形である、数ある選択肢のあるいは問題ガイドブック規模に対して実行時が大きくきいなら使える メタ戦略を中心としヒューリスティクス metaheuristics で近似解を中心として求したい価値を数める
分岐限など)定法 • 線形の参考文献組合せ最適化せ最適化最適化問題ガイドブックの参考文献厳密解法 • ベースは全探索 • 枝をたどる時、まを中心としてたどる時、数ある選択肢のまだ辿っていない変数っていない変数ある選択肢の中の参考文献整数ある選択肢の中制約を中心として 緩和 relax して、数ある選択肢の連続の線形最適化問の参考文献線形最適化問題ガイドブックを中心として解く
• 緩和問題ガイドブックの参考文献最適値が 暫定解 incumbent solutionより悪ければけ作って、あまりれば その参考文献枝をたどる時、まの参考文献探索を中心として止めるめる
緩和問題ガイドブックを中心として解く x 1 x 2 元の問題では、決の参考文献問題ガイドブックでは、数ある選択肢の決定変数ある選択肢の中は青い点しかい点をしか と解法ること解法ができない。 緩和すると解法、数ある選択肢のその参考文献点をを中心として全て含む緑の領域がむ緑の領域が緑の領域がの参考文献領域が 実行可能領域になる。 元の問題では、決の参考文献領域を中心として全て含む緑の領域がむ緑の領域が、数ある選択肢のより広い領域をい領域を中心として
探すの参考文献だから使える、数ある選択肢の元の問題では、決の参考文献問題ガイドブックの参考文献最適値以上の参考文献 値が得る値の領域ら使えるれる。 それよりも良くするい解が見つかっているなつかっているなら使える、数ある選択肢の その参考文献領域は全て棄ててよい。ててよい。 緩和問題ガイドブックは連続の線形最適化問の参考文献線形最適化問題ガイドブックなの参考文献で、数ある選択肢の 単ではない体法 simplex や機器の量の制約内点を法 interior-point で高速に解が求まる。に解が求したい価値を数まる。 0≤x 1 ≤1 0≤x 2 ≤1 x 1 ∈{0,1} x 2 ∈{0,1}
図アプリの経路探によるイメージ 元の問題では、決の参考文献問題ガイドブック 小さく問題ガイドブック1 小さく問題ガイドブック2 暫定値:O i x 1 =0 x
1 =1 緩和問題ガイドブックの参考文献 最適値 < O i 小さく問題ガイドブック3 小さく問題ガイドブック4 緩和問題ガイドブックの参考文献 最適値 > O i x 2 =0 x 2 =1
メタ戦略を中心としヒューリスティクス • 問題ガイドブック形式で表現して(に依存しない近似解法の参考文献総称 – 局所探索法 – 疑似焼きなまし法きなまし法 – 遺伝的な手法で(最もアルをゴリズム など…
• 大きく域最適性を保証してくれは保証できるか?されないが、数ある選択肢の 良くするい解を中心として見つかっているなつけ作って、あまりる工夫を施しやすいを中心として施しや機器の量の制約すい • 各論は長くなるのでは長くなるので、統くなるの参考文献で、数ある選択肢の統一的な手法で(最もな見つかっているな方がを中心として紹介
メタ戦略を中心としヒューリスティクスの参考文献構成要で、素 • 初期解生成 – 実行可能解を中心として何らかの観点をら使えるかの参考文献方が法で生成する • 移動戦略を中心として – 現して(在しないか?の参考文献解の参考文献近傍 neighbor
はどんな集合せ最適化で、数ある選択肢の それら使えるを中心としてどの参考文献順番で評価し、どんで評価し、数ある選択肢のどんな条件で移動するか • 終了条件 – 解の参考文献探索を中心としていつ終了するか – 終了時点をで最良くするの参考文献解を中心として出す力な解法もあるがする
初期解生成 • 貪欲法で求したい価値を数める • 完全にランダムな解を中心として使える用する • 暫定解にランダムな変更を加えるを中心として加すると、問題がえる • など… 乱数ある選択肢の中を中心として使えるって計算を中心として何らかの観点を度も行えば、数ある選択肢の
広い領域をい領域を中心として探索すること解法になり、数ある選択肢の より良くするい解が見つかっているなつかるかも知り、適切な解法れない(多様化)
移動戦略を中心として • 近傍定義 – 現して(在しないか?の参考文献解に近しい解の参考文献集合せ最適化 – 現して(在しないか?の参考文献解の参考文献一部に操作を加えてに操作を中心として加すると、問題がえて得る値の領域ること解法が多い – k回セールスマン、の参考文献操作を中心として加すると、問題がえて得る値の領域ら使えるれる近傍を中心として k-opt
近傍と解法いう – 良くするい解の参考文献近くには、数ある選択肢のもっと解法良くするい解があるだろう(集中化) • 遷移条件 – 最善の近傍に移動すの参考文献近傍に移動する(貪欲法に近い) – 悪ければい解にも、数ある選択肢のたまに移動する(疑似焼きなまし法きなまし法など)
終了条件 • 局所解が1つ見つかっているなつかったら使える終了する • k個の初期解を生成の参考文献初期解を中心として生成して、数ある選択肢のk個の初期解を生成の参考文献局所解を中心として得る値の領域る • 時間の上限など)制限など)を中心として設の配置け作って、あまりて、数ある選択肢の時間の上限など)が許す限り多くの解す限など)り多くの参考文献解を中心として得る値の領域る • など…
どんな工夫を施しやすいを中心として施せ最適化ば良くするいの参考文献か? • どの参考文献問題ガイドブックにどの参考文献工夫を施しやすいが活きるかはきるかは 時間の上限など)を中心としてかけ作って、あまりて実証できるか?しなくてはなら使えるない • どの参考文献アルをゴリズムにも向き不向きがありき不向き不向きがありきがあり、数ある選択肢の 問題ガイドブック構造を問わない万能を中心として問わない万能な解法は存在しないか?しない (ノーフリーランチ定理定理)
まと解法め • よくしたい指標や機器の量の制約制約条件を中心として数ある選択肢の中学的な手法で(最もに表現して(すれば、数ある選択肢の 制約付きの参考文献最適化問題ガイドブックに帰着できるできる • 問題ガイドブックが持っている性質(っている性を保証してくれ質(線形性を保証してくれ、数ある選択肢の凸など)性を保証してくれなど)によって 利用できる解法が異なるなる • 適切な解法を選ぶ必な解法を中心として選んだり、数ある選択肢の良くするい解法を中心として使えるえるように モデリングと解法上の参考文献工夫を施しやすいを中心としてする必要で、がある
• 問題ガイドブックの参考文献性を保証してくれ質を中心として問わない解法の参考文献取りうる選択肢をり扱わない)いは 線形問題ガイドブックの参考文献解法などに比べると難しいべると解法難しいしい
話さなかったことさなかったこと解法 • ラグと解法ランジュ緩和 Lagrange relaxation と解法 ラグと解法ランジュ分離調整法 • 充足可能性を保証してくれ問題ガイドブック satisfiability
problem と解法 その参考文献解法 • 問題ガイドブックの参考文献離散凸など)性を保証してくれ discrete convexity と解法 それに基づく解法づく解法