First Course in Combinatorial Optimization

Slides:



Advertisements
Similar presentations
組合せ最適化輪講 2.3 連結性 川原 純. 2.3 連結性 内容 – グラフ上の節点をすべてたどるアルゴリズム 計算機上でのグラフの表現 – 強連結成分を求めるアルゴリズム トポロジカル順序を求める方法も – k- 連結、 k- 辺連結について – 2- 連結グラフの耳分解について.
Advertisements

有限幾何学 第 2 回. 有限幾何学 第 2 回 1. 様々なグラフの例 2. 道と最短経路問題 1. 用語の説明 2. 最短経路問題 3. ダイキストラのアルゴリズム.
2015 年度 有限幾何学 期末試験 次の各問に答えよ.( (1), (2), (3), (4), (5), (7), (8), (10) は答えだけでよい) (1) 有向閉路が存在しない位数 4 のトーナメントを描け. (2) 内点の個数が 10 個の正則 2 分木の葉の個数を求めよ. (3) グラフ.
フロンティア法 - 組合せ問題の解を列挙索引化するZDD構築アルゴリズム
到着時刻と燃料消費量を同時に最適化する船速・航路計画
制約付き最短路問題に対する実験的解析 上智大学 宮本裕一郎 o 1 d (7, 15) (9,4) (12,4)
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
動的計画法 表の作成 制約の追加 練習問題.
動的計画法 表の作成 制約の追加 練習問題.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
第4章 Matching(後半) 情報学研究科 湯浅研究室M1 藤川浩光.
算法数理工学 第9回 定兼 邦彦.
A: Attack the Moles 原案:高橋 / 解説:保坂.
    有限幾何学        第8回.
Problem D: Double Sorting 原案: oxy, 解答作成: oxy, nya.
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
An Algorithm for Enumerating Maximal Matchings of a Graph
組合せ最適化 輪講 第1回 ERATO研究員 川原 純.
Probabilistic Method.
Approximation of k-Set Cover by Semi-Local Optimization
JAG Regional Practice Contest 2012 問題C: Median Tree
データ構造とアルゴリズム 第6回の2 木 ~ データ構造(3)~.
最大最小性, 双対性 min-max property duality
第11講: 平成18年12月 8日 (金) 4限 E352教室 グラフ (1).
第4章 空間解析 2.ネットワーク分析 (3) ネットワーク構造分析
最短路問題のための LMS(Levelwise Mesh Sparsification)
s a b f c e d 2016年度 有限幾何学 期末試験 問1:15点
5.5 The Linear Arboricity of Graphs (グラフの線形樹化数)
Selfish Routing and the Price of Anarchy 第2回
A First Course in Combinatorial Optimization Chapter 3(前半)
ネットワーク理論講義補助資料 Text. 組合せ最適化とアルゴリズム 4.3 節 Lagrange緩和 pp
情報学研究科 通信情報システム専攻 小野寺研究室 M1 奥村 佳弘
シャノンのスイッチングゲームにおけるペアリング戦略について
シャノンのスイッチングゲームにおけるペアリング戦略の複雑さについて
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
算法数理工学 第8回 定兼 邦彦.
アルゴリズムとデータ構造 2013年7月16日
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
アルゴリズムイントロダクション 第24章 単一始点最短路問題
離散数学 08. グラフの探索 五島.
7.4 Two General Settings D3 杉原堅也.
第3回 アルゴリズムと計算量 2019/2/24.
計算量理論 1. マトロイドと貪欲アルゴリズム 1. Matroids and the Greedy Algorithm
25. Randomized Algorithms
b f c a d e g h a b c d e f g 図1 図2 2012年度 有限幾何学 期末試験
アルゴリズムとデータ構造 2012年7月17日
計算量理論輪講 chap5-3 M1 高井唯史.
First Course in Combinatorial Optimization
ベイジアンネットワーク概説 Loopy Belief Propagation 茨城大学工学部 佐々木稔
算法数理工学 第7回 定兼 邦彦.
情報知能学科「アルゴリズムとデータ構造」
重み付き投票ゲームにおける 投票力指数の計算の高速化
第16章 動的計画法 アルゴリズムイントロダクション.
Selfish Routing 4章前半 岡本 和也.
アルゴリズムとデータ構造 2011年7月11日
Max Cut and the Smallest Eigenvalue 論文紹介
2009/11/27 グラフ (1) 第9講: 平成21年11月27日 (金) 4限 E252教室 コンピュータアルゴリズム.
d b c e a f 年度 有限幾何学 中間試験 問1 次の用語の定義をそれぞれ述べよ.
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
離散数学 11. その他のアルゴリズム 五島.
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
Q q 情報セキュリティ 第8回:2004年5月28日(金) の補足 q q.
参考:大きい要素の処理.
13.近似アルゴリズム.
MPIを用いた 並列処理 情報論理工学研究室 06‐1‐037‐0246 杉所 拓也.
第4章 空間解析 2.ネットワーク分析 (2) 最大流問題
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
Presentation transcript:

First Course in Combinatorial Optimization Oct. 29, 2007

2. Minimum-Weight Dipaths 2.1 No Negative-Weight Cycles Bellman-Ford Algorithm 2.2 All-Pairs Minimum-Weight Dipaths Floyd-Warshall Algorithm 2.3 Nonnegative Weights Dijkstra’s Algorithm 2.4 No Dicycles and Knapsack Programs

2. Minimum-Weight Dipaths 最短路問題 : 入力 : 有向グラフG, 枝のコスト関数c, 始点s, 終点t 出力 : 最短の(重み最小の)s-tパス パス:同じ節点を2度通らない枝の系列 -1 2 5 パスの重み 3 7 11 4 16 14 9 1

2.1 No Negative-Weight Cycles 最短路問題を高速に解く. 問題の入力に制限を加える.  負の重みの閉路が存在しない 最短パス = 最短ウォーク 負閉路が存在 最短ウォーク問題は解を持たない 最短ウォーク問題を解けばよい 1 1 パス : 節点・辺の重複を許さない ウォーク : 節点・辺の重複を許す -5 -5

Minimum diwalks 最短ウォーク問題は高速に解ける(動的計画法). 本章では以下のような制限を設けた最短路問題を解く. 負の重みの閉路を持たない 負の重みの枝を持たない 閉路を持たない

Bellman-Ford Algorithm 入力 : 負閉路を持たない有向グラフG, 始点v. 出力 : vから他の全ての接点への最短路の重み. fk-1からfkを繰り返し求める. 最短路は最大でも|V|-2個の内点しか持たないので, が最短路の重みとなる. : 内点がk個以下である最短v-wパスの重み

Bellman-Ford Algorithm : 内点がk個以下である最短v-wパスの重み

Example b d 3 2 6 1 a 5 6 7 4 e 8 2 c f

Example 2 b d 3 2 6 1 a 5 6 7 4 e 8 2 k=0 8 c f

Example 2 5 b d 3 2 6 1 a 5 6 7 4 e 8 2 k=1 7 8 c f 8

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 k=2 6 7 c f 7 8

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 k=3 6 c f 6 7

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 k=4 6 c f 6

Computation time |V|回の繰り返しそれぞれで.各枝についてfkが更新される.

Finding Negative-Weight Cycle グラフが負閉路を含まない場合 : 最短路が含む内点は|V|-2個以下であるから, グラフが負閉路を含む場合は? グラフが始点sから到達可能な負閉路を含むならば, となる節点wが必ず存在する. 負閉路の検出に利用

proof. なるwが存在する.

2.2 All-Pairs Minimum-Weight Dipaths 出力 : 任意の2接点間の最短路の重み. fk-1からfkを繰り返し求める. (1つずつ節点を解放していく) 全ての節点を解放すれば最短路が求められるので、  が最短路の重みとなる. 節点に1,2,・・・|V|の番号を付ける. 内点に1, …, kまでの節点だけを含む最短v-wパスの重み

Floyd-Warshall Algorithm 任意の全単射な写像 を選ぶ.

Computation time |V|回の繰り返し. 1回の繰り返しでO(|V|2)回の計算.

2.3 Nonnegative weights 入力 : 枝の重みが非負の有向グラフG, 始点v. 接点をP, Tの2つのクラスに分ける. Pは最短路がFixした節点.(Tはそれ以外) Tの接点を1つずつPに変えていく 節点が全てP :    は最短v-wパスの重み : 内点が全てPである最短v-wパスの重み

Dijkstra’s Algorithm なるw*を選ぶ. なる全ての について,

Example b d 3 2 6 1 a 5 6 7 4 e 8 2 c f

Example 2 b d 3 2 6 1 a 5 6 7 4 e 8 2 8 c f

Example 2 5 b d 3 2 6 1 a 5 6 7 4 e 8 2 7 8 c f

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 6 7 c f 12

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 6 c f 6 12

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 6 c f 6

Example 2 5 b d 3 2 6 11 1 a 5 6 7 4 e 8 2 6 c f 6

Computation Time |V|回の繰り返し. 最小重みの節点を見つけるのにO(|V|). f(v)の更新は合計で|E|回.

Correctness proof 前述のアルゴリズムで確かにv-wパスの最小重みが求められる事を示す. 2つの性質 が、各時点において成り立つ事を帰納法で示す.

Dijkstra’s Algorithm(再掲) 初期段階では なるw*を選ぶ. なる全ての について, は自明.

Induction ある時点で(a),(b)が成り立っていると仮定する. 現在のラベル : P,T, 次にTに変わる節点 : w* 次のラベル : P'=P+w*, T'=T-w* 次の(a')(b')が成り立つことを示す.

Induction P T v F1 k w*

Induction P' T' v j w w* w

2.4 No Dicycles and Knapsack Programs 閉路を持たない有向グラフ (DAG) 次のような全単射写像πを考える 1 2 3 4 5 右向きの枝しかない

No dicycles あるパスに含まれる接点をv1, ..., vmとすると、 : v-wパスの最小重み   : v-wパスの最小重み 節点wに対し, である全てのuについて f(u)がFixしていればf(w)も計算できる. という順に決定していけば良い.

Algorithm なるwについて, 各枝について1回f(w)の更新を行うので,

Example 5 2 2 3 3 2 1 ∞ 1 5 7 5 8 2 4 6 6 6

Kanpsack Problem

Example -11 空き : 25 空き : 6 空き : 0 -5 ・・・ -1 -1 -7

Example -11 空き : 25 空き : 0 -5 ・・・ -1 -1 -7

Conclusion 入力の制限 アルゴリズム 計算時間 負閉路なし Bellman-Ford 1始点 Floyd-Warshall 全点対 負の枝なし Dijkstra 閉路なし(DAG)