Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
ORの手法(組合せ最適化1)
社会情報特講Ⅲ
大堀隆文(非常勤講師)
1
先週のベスト感想(講義で分った事1)
• 前回のAHPとは違ってエクセルで計算するイメージが沸かなかったが、アルゴリズムに従えばMAXMIN原理もエクセルで簡単に求められることがわかった。
• 文字だけだと分かりづらくても、実際にエクセルをやるとマックスミニやゲーム理論の仕組みがわかった。
• えくせるすごい!
2017/6/8 2
先週のベスト感想(講義で分った事2)
• エクセルでこんな関数があったことは知らなかった。講義で初めて知った。
• MATCH関数やINDEX関数を初めて使ったが、その運用の仕方がわかり便利だと思った。
• エクセルを使うと自分で計算するよりも断然楽であることが分かった。
2017/6/8 3
先週のベスト感想(講義・課題で難しかった事1)
• INDEX関数が示すものは分かったのですが、自分で0から関数を使ってやるとなると、どこを選択範囲としたらよいか紛らわしそうで大変だと思いました。
• INDEXの仕組みが完全に分かったわけであないけれど課題は出来ました。
• 図のAB間の斜線の正しい入れ方が分からなかった。
2017/6/8 4
先週のベスト感想(講義・課題で難しかった事2)
• 探索範囲や配列といった用語を理解しながら関数で計算するのが難しいと感じました。
• タイピングが遅いので苦労します。
• MATCH関数とINDEX関数は初めて使ったので慣れるまで大変だった。
2017/6/8 5
先週のベスト感想(その他何でも1)
• エクセルは色々出来るんだなあと実感します。
• やっぱり演習は楽しいです。理論⇒演習の黄金のサイクルですね。
• 朝テレビでファイターズが買ったニュースをやっていtので嬉しくなりました。斎藤選手の活躍もあったようで何よりです。
• エクセルを使った授業は楽しいです。家に帰ってもう一度関数の意味をじっくり理解しながら自分で例題を解いてみたいなと思いました。
• 課題の難易度がとてもちょうどよかったです。2017/6/8 6
先週のベスト感想(その他何でも2)
• 課題の説明プリントを用意していただいているのが、非常に分りやすくありがたいです。
• お金を貯めるコツが知りたい。
• えくせる使っていこうと思いました。
• ハンカチ王子勝利!
• やってみて思ったのは、Excelを使うよりも紙で解いた方が早いのかなと感じました。
• ガチゼミに入って泣きたい。
• 実習授業は習ったことをパソコンで実践できて楽しいです。
2017/6/8 7
組合せ最適化
• 最適化問題はORにおいて中心的な課題である。
• 線形計画法の他にもタイプが異なる最適化問題
が存在する。
• 本章では、組合せ最適化問題を紹介する。
• 組合せ最適化は,組合せ的な性質をもつ最適化
問題である。
• 計画,生産,物流などのマネージメントの世界で
数多く現れる問題でもある.
8
最適なものを見つける
• 最適化問題は,制約条件のもと決められた目
的関数を最小(大)化する問題である。
• 目的関数,制約条件が一次式(線形)で表さ
れ,変数が連続なものを線形計画問題と呼ぶ。
• 変数が連続でなく整数であるもの、目的関数,
制約条件に高次項を含むものなど、様々なク
ラスが存在し,難しさ,解き方なども異なる。
9
例題10.1(巡回セールスマン問題)
• あるセールスマンがアメリカの5都市(シアトル,
デンバー,ラスベガス,ニューヨーク,マイアミ:
下図)を訪ね,ビジネスの商談に行く。
• ヘリコプターで回るが移動距離を最小にし経
費を抑えるために、シ
アトルを出発し全都市
を一回ずつ周りシアト
ルに方法(巡回路)を
示せ。
10
例題10.1の解き方
• この問題は線形計画法のように定式化でき,
シンプレックス法等で解けるのか?
• 数式で表すことは可能であるが,定式化を見
ると線形計画法のタイプとは異なる(変数は連
続ではない).
• 例題は幾つかの可能な道順の中でどれが一
番良いか.と言う組合せ最適化問題に属する.
• この問題に対しどんな考えが良いか?
11
10.2 巡回セールスマン問題
• 例題10.1は分かり易く簡単に解ける。
[シアトル,ラスベガス,デンバー,マイアミ,ニューヨーク,シアトル] [シアトル,デンバー,ラスベガス,マイアミ,ニューヨーク,シアトル]
• の2巡路長は前者10784km、後者11798kmで、前
者が短い(解)である。
• 人間は図から2候補を直感的に導く。
• コンピュータは図から直感的に候補を選ぶ作業が
苦手なため,全巡路を調べ一番良い答えを導く。
12
10.2 巡回セールスマン問題
• 問題の解き方は全巡路を列挙し最短距離の巡
路を解とすれば良い。
• 例題は5都市で全巡路24通りの距離を比較し、
最小距離をもつ周り方を解とする。
• 全巡路を列挙し最適な巡回路を解とするのは、
単純でナンセンスな問題である.
• この問題が,ORや情報分野の重要問題となり
巡回セールスマン問題(traveling salesman problem, TSP)と命名される。
13
例題10.2
• 例題10.1で24通りの巡回路を列挙し答えを
見つける場合,コンピュータでどのくらいの時
間で解けるか?• 訪問都市数が30となった場合,どのくらいの
計算時間がかかるか推測せよ.
• どのパソコンでも5都市では1秒もかからずに
計算できる。
• 都市数が増えると巡路数がどうなるか?
14
例題10.2• 都市数をnとすれば出発点から次の都市への行き
方は(n-1)通りである。
• その都市から次都市への行き方は(n-2)通りなので,
全巡回路数は(n-1)!通りとなる.
• スターリング公式 よりほぼnn 通り。
• 都市数により指数関数的に全巡路数が増加、これ
を組合せ的爆発と呼ぶ。
• 30都市の1巡路のコストを1012(1兆)回/秒で計算で
きるコンピュータの場合、30都市の全巡路数は
29!≒約8.8×1030個なので、30 都市の全巡回路
の計算は,8.8×1030/1012 = 8.8×1018秒となる。
! 2 ( / )nn n n e
15
例題10.2
• 一年は3.2×107秒で30都市のTSPの答えは,
8.8×1018/(3.2×107)≒約2800億年(2.8×1011)
もかかる。
• いかにコンピュータが高速になろうが計算時間は
ほとんど改善されない。
• 必要な計算時間は天文学的な値のままである.
• NP困難な問題の代表例であり計算時間は問題の
サイズ(都市数)に対して指数関数的に増加する。
16
例題10.3:TSP応用1ドリル経路最適化
• 電子基盤の穴あけ作業でドリルの巡回経路長を最
小化する問題.
• 部品を埋め込む穴を電子基盤に空けるため,ドリ
ルは自動制御され多数の穴を順次あける。
• 順序決定問題がTSPとして定式化され、ドリルの
巡回経路の総移動距離を最小化する解を求める。
• 穴あけ経路長と作業時
間の短縮化(単位時間
の生産量を最大化) 17
例題10.3:TSP応用1ドリル経路最適化(適用例)
18
例題10.3 TSPの応用2スケジューリング問題
• 仕事i から仕事jを行うのに必要なコストcijが与え
られ、すべての仕事を完了したい。
• 費用の総和が最小となる処理順を求めるスケ
ジューリング問題は,都市を仕事と見たTSPに置
き換わる。
• 配送計画の問題に部分的にTSPが採用される。
• 運搬経路にかかる時間か距離がコストとなり
TSPそのものである.
19
10.3 組合せ最適化問題の解き方1
• 厳密解を得るには可能な組合せを全部列挙し
て探索する以外にない.
• 問題の大きさに指数関数的な計算時間が必要
な計算困難な問題である.
• 改善できない解は探索を打ち切り,探索領域を
狭め計算量を軽減する分枝限定法を用いる.
• TSPでは探索領域を狭める限定操作によりか
なり大きい問題が解ける。.
20
10.3 組合せ最適化問題の解き方2
• 問題解決のために一面ではなく多面的な見方に
変えると問題が解けることがある.
• 最短路問題におき正確な厳密解が実用上必要
であるか?
• 実際は厳密解でなくても良い場合が多い。
• 買物のルート決めは厳密解に近ければ問題が
ない。厳密でないがより近い解(近似解)を求め
ればよい。
21
例題10.4 TSPの近似解アルゴリズム
• アルゴリズムは計算の手順やり方を考えること。
• ORでも解の求め方は重要課題である。
• アルゴリズムを工夫して良い解き方を考える。
• 問題に対し様々なアルゴリズムがあるが、その優劣は見方によって異なる。
• 解の精度、計算速度、作り易さを考える。
• 貪欲法は一番簡単な方法である。
22
貪欲法によるTSP
• ステップ1 出発点から一番近い都市を選ぶ。
• ステップ2 現地点から,未訪問都市で一番近い都市を選び進む。
• ステップ3 未訪問都市があればステップ2に戻る。全都市を回れば出発点に戻り巡回路を作る。
• 非常に簡単で計算時間も要しない。
• 目先しか考えないので解はかなり精度が悪い。
• 全体的な視野で物事を見る必要が最適化の世界では必要である。
23
Coffee break
2015/6/12 24
好きな祭り(その1) よさこいソーラン祭
p札幌の6月に大通公園を中心に市内が舞台へと変わる。
p 1992年高知県「よさこい祭り」と北海道民謡「ソーラン節」をミックスして誕生。
p自由な創造性のもとオリジナリティ溢れる演舞を披露。街中が祭りの熱気に包まれる。
2015/6/12 25
昨年の入賞チーム(上から大賞、準大賞、準大賞)
よさこいソーラン祭
2015/6/12 26
よさこいソーラン祭 商大チームの戦績1
第17回YOSAKOIソーラン祭り~鼓舞激励~敢闘賞新人賞、携帯15位(2008)
第18回YOSAKOIソーラン祭り~潮嵐~セミファナル11位。携帯4位(2009)
2015/6/12 27
よさこいソーラン祭 商大チームの戦績2
第23回YOSAKOIソーラン祭り~彩囃子~敢闘賞、携帯12位(2008)
第25回YOSAKOIソーラン祭り~咲繋~携帯投票4位(2016)
2015/6/12 28
よさこいソーラン祭 小樽商大今年のチーム
・第26回YOSAKOIソーラン祭り(2017) ・小樽商大翔楽舞~慶陽(よろこび)~・出場回数9回 平均20歳、最年少18歳、最年長23歳
• 翔楽舞は小樽商大のYOSAKOIソーランサークル。商大の一人の学生(後初代代表)が祭りを見て感動、「商大の皆と踊りたい」、「0から何かを作りたい」と思い2007年立ち上げた。• 小樽のボランティアや祭りに参加し小樽を盛り上げる活動をしている。• 「北に一星あり。小なれどその輝光強し」をモットーに活動する。
2015/6/12 29
10.4 色々な組合せ最適化問題
• 組合せ最適化問題は,ビジネスや公共政策の世界で数多く適用され、意志決定問題が組合せ最適化問題としてモデル化される。
• 組合せ最適化の適用例とモデル化をまとめる。
• モデル化は問題に無関係なものをカットし極力単純化し現実世界の問題を単純・明快な「モデル」として置き換える。
• 定式化はその一つである.問題をあやふやに考えずモデル化し問題自身を明快にする。
30
例題10.5(プロジェクト選択問題)• ある会社で下表のプロジェクトが採用候補で
ある。
• 予算1,300万円以内で,予想利益(純利益)が最大になるようプロジェクトを採用したい。
• 本問題を定式化しモデル化せよ(単位:万円)
プロジェクト A B C D E
予想利益 160 170 100 150 70
予算 600 550 400 250 200
31
プロジェクト選択問題の定式化(変数定義)
• プロジェクト選択問題は、「容量制限内で利益を最大にナップザックに詰め込む」ナップザック問題と同じ構造をしている。
• 定式化では、x1, x2, …, x5 の5変数を用意する。
• x1はプロジェクトA,x2はBに対応する。
• x1はプロジェクトAを採用で1,不採用で0とする。
• 同様に変数が1か0でプロジェクトの採否を表す。
• 組合せ最適化の内変数が整数に限る問題を整数計画という。
32
プロジェクト選択問題の定式化(目的関数と制約式)
• 定式化された式は,
目的関数 160x1+170x2+100x3+150x4+70x5 → 最大
制約条件1 600x1+550x2+400x3+250x4+200x5≦1300制約条件2 x1, x2, …, x5 = 0 または 1• 目的関数はプロジェクトが採用の場合,対応する
変数が1となりプロジェクト予想利益が加算される。
• 制約条件の1番目は予算限度1,300万円以内に収まる条件式である。
• 2番目は変数が0か1に制限する条件式である。
33
アルバイト担当問題
• 学習塾でアルバイト3人a, b, cに夏休みの集中
講義の科目を割り当てる。
• 科目は数学,英語,国語,理科の4科。
• 以下の条件のもと、どの割当てが良いか。
(1) a2つ以下、b丁度2つ,c2つ以上担当。
(2) 数学,英語は2人、国語は1人,理科は1人以上
必要である。
(3) bは英語担当できない。
(4) a,bは数学得意10点,cは英語得意10点,bは
国語苦手-10点とし総ポイントが高い担当を割り当
てたい。34
アルバイト問題の定式化(変数定義)
• いくつかの条件の中で有効に人員を割り当てる人員配置問題である。
• 定式化は2つの添字がつく変数xijを用い表現する。
• 添字iはアルバイト学生a, b, cに対応し,添え字jの数字1, 2, 3, 4は担当科目の数学,英語,国語,理科に対応させる。
• xa1が1ならば、学生aは数学を担当、0ならば数学を担当しないことを表す。
35
アルバイト問題の定式化(目的関数と制約式)
目的関数 10xa1+10xb1+10xc2-10xb3 → 最大
制約条件 xa1 + xa2 + xa3 + xa4 ≦ 2 xb1 + xb2 + xb3 + xb4 = 2 xc1 + xc2 + xc3 + xc4 ≧ 2 xa1 + xb1 + xc1 = 2 xa2 + xb2 + xc2 = 2 xa3 + xb3 + xc3 = 1 xa4 + xb4 + xc4 ≧ 1 xb2 = 0 xij = 0 または1 (i=a,b,c, j=1,2,3,4)
36
アルバイト問題の定式化(補足説明)
• 目的関数は例題中の条件(4)を反映した関数となる。
• (1)から(3)は制約条件として順番に対応する。
• 上から3つの制約式が(1)に対応する。
• 続く4つの制約式が(2)に対応する。
• 最後の制約式が(3)の制約を表す.
37
他の組み合わせ問題
• 物事の順番を決める。
• 施設の配置を考える。
• 区割りを決めるためどう分割するか。
• どのような経路で配送するか。
• 組合せ最適化問題は、身近な問題から実用的な問題の多くの場面で表れ,幅広い分野の応用が期待される。
38
今日の課題1:レポート収集問題
• 社会情報実験を履修している勉強熱心な二宮君は、
誰にも負けない優れたレポートを書こうと、過去のレ
ポートを集めることにした。
• サークルの先輩に電話をしたところ、過去のレポート
をきちんと保管していなかったり、レポートを返却しな
い年があったりで、人により保存しているレポートに
大きなばらつきがあることが分かった。
• 二宮君はすべての実験項目に対するレポートを集め
たい。
• ただし各先輩にレポートを借りるにはコストがかかる。39
今日の課題1:レポート収集問題
• 下記の表は各先輩から借りるコストと、保存し
ているレポートの種類を示す。
• 最小のコストで全てのレポートを集めるには、ど
の先輩達に頼むのが
良いかを求める、組合
せ最適化問題を定式
化しなさい。
40
表1 各先輩のコストと保存レポート
今日の課題2:コンサート警備問題
• 嵐のコンサートが札幌ドームで開催される。
• 人気グループなので大勢のファンが殺到するの
で事故防止のために厳重な警備が必要である。
• そこで札幌ドームではどこに警備員を配置する
かを検討する。
• 会場担当者は会場全体を小さなブロックi=1~7に分け、警備員を候補地点j=1~7に配置するこ
とにした。
41
今日の課題2:コンサート警備問題
• 各候補地の担当ブロックを下記表に示す。
• 会場全体を最小人数の警備員で警備するとき
の警備員配置を求める、組合せ最適化問題を
定式化しなさい。
42
表2 各候補地の担当ブロック
表2 各候補地の担当ブロック
今日の課題3:派生ユニット編成問題
• 東北震災復興支援のために
乃木坂46のメンバーから派
生ユニットを編成したい。
• メンバーの人気度と出演料
を右表に示す。
• 予算が500を超えない範囲
で、人気度の和が最大にな
るメンバーを選定し派生ユ
ニットを編成する、組合せ最
適化問題を定式化しなさい。
43
表3 人気度と出演料
今日の課題3:派生ユニット編成問題
• 各候補地の担当ブロックを下記表に示す。
• 会場全体を最小人数の警備員で警備するとき
の警備員配置を求める、組合せ最適化問題を
定式化しなさい。
44
表2 各候補地の担当ブロック
表2 各候補地の担当ブロック
今日の課題4:講義・課題の感想
l 学生番号と氏名(1枚目、2枚目とも)
l 今日の講義・課題の感想
Ø 講義で分ったこと
Ø 講義で難しかったこと
Ø 課題で難しかったこと
Ø その他(何でも)
社会情報特講Ⅲ 45