データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.

Slides:



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

有限幾何学 第 2 回. 有限幾何学 第 2 回 1. 様々なグラフの例 2. 道と最短経路問題 1. 用語の説明 2. 最短経路問題 3. ダイキストラのアルゴリズム.
授業展開#12 コンピュータの扱いにくい問 題. 扱いにくい問題  処理時間がかかる。  メモリを大量に必要とする。  プログラムの優劣、アルゴリズムの優劣 を比較するためには、標準的なコン ピュータで比較する必要がある。  処理時間を計るのに、コンピュータのモ デルとして、チューリングマシンを考え、
G 問題 コードアート オンライン 原案:西出 ライタ:伊藤 テスタ:西出. 問題概要 0 大きさのさまざまな n 個の円に多角形 m 個を入れら れるか判定する問題 0 ただし、同じ円に複数の多角形を入れることはでき ない 0 もし、入れられる場合は、辞書順最小の入れ方を出 力 ① ② ③ ① ②.
ACM/ICPC と アルゴリズム 「実践的プログラミング」 稲葉 一浩. 自己紹介 ﻪ 理Ⅰ → 理学部情報科学科 → 情報理工学系研究科コンピュータ科学専攻 ﻩ 博士課程1年 ﻩXML を扱う専用言語の研究など ﻪ 個人的には ﻩ ﻯD.
J: Magical Switches JAG 模擬地区予選 2013 原案:保坂 解答:保坂・楠本 解説:保坂.
ハノイグラフの生成と最短経路の導出 東京電機大学 理工学部 村田和也 松浦昭洋
区間グラフにおける区間表現からMPQ-treeを効率よく構成するアルゴリズム
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
ラベル付き区間グラフを列挙するBDDとその応用
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
    有限幾何学        第8回.
第5章 計算の方法 本章で説明すること ・計算の概観と記述法 ・代表的な計算モデル ・プログラムとプログラム言語 1.
組合せ最適化問題と厳密解法 最小木、ナップサック問題、ビンパッキング、巡回セールスマン問題 LPによる上界・下界 分枝限定法
On the Enumeration of Colored Trees
データ構造と アルゴリズム 理工学部 情報システム工学科 新田直也.
整数計画法を用いた スリザーリンクの解法 杉村 由花 (東京大学)
An Algorithm for Enumerating Maximal Matchings of a Graph
Permutationグラフと Distance-Hereditaryグラフの 再構築アルゴリズム
計算の理論 II NP完全 月曜4校時 大月美佳.
原案:阿部 担当:福澤, 笠原 英訳:寺島 解説:福澤
8.クラスNPと多項式時間帰着.
一般化マクマホン立方体パズルの 問題例生成
JAG Regional Practice Contest 2012 問題C: Median Tree
第2回 内容 ハノイの塔―無向グラフと有向グラフ 教科書の 1.3 節 pp.7-12 参照
データ構造と アルゴリズム 第二回 知能情報学部 新田直也.
9.NP完全問題とNP困難問題.
データ構造と アルゴリズム 知能情報学部 新田直也.
第11講: 平成18年12月 8日 (金) 4限 E352教室 グラフ (1).
s a b f c e d 2016年度 有限幾何学 期末試験 問1:15点
早わかりアントコロニー最適化 (ACO: Ant Colony Optimization)
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
シャノンのスイッチングゲームにおけるペアリング戦略について
MPIを用いた並列処理 ~GAによるTSPの解法~
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
計算の理論 II NP完全 月曜5校時 大月美佳 平成17年1月17日 佐賀大学理工学部知能情報システム学科.
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
アルゴリズムとデータ構造 2013年7月16日
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
第3回 アルゴリズムと計算量 2019/2/24.
オートマトンとチューリング機械.
Introduction to Soft Computing (第11回目)
早わかりアントコロニー最適化 (Ant Colony Optimization)
25. Randomized Algorithms
九州大学大学院 情報学専攻特別講義 (3) 配列解析
b f c a d e g h a b c d e f g 図1 図2 2012年度 有限幾何学 期末試験
計算量理論輪講 chap5-3 M1 高井唯史.
計算の理論 II 言語とクラス 月曜4校時 大月美佳.
First Course in Combinatorial Optimization
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
First Course in Combinatorial Optimization
量子コンピュータ 株式会社アプライド・マーケティング 大越 章司
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
第16章 動的計画法 アルゴリズムイントロダクション.
直並列グラフの連続多重彩色 西関研究室 吉田進太郎.
離散数学 06. グラフ 序論 五島.
A02 計算理論的設計による知識抽出モデルに関する研究
2009/11/27 グラフ (1) 第9講: 平成21年11月27日 (金) 4限 E252教室 コンピュータアルゴリズム.
d b c e a f 年度 有限幾何学 中間試験 問1 次の用語の定義をそれぞれ述べよ.
ゴールドバッハ予想って? 情報科学科4年 小野澤純一.
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
卒業研究 Treedecompositionを生成するヒューリスティックアルゴリズムの幅に関する評価実験
離散数学 11. その他のアルゴリズム 五島.
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
生物情報ソフトウェア特論 (4)配列解析II
13.近似アルゴリズム.
Q q 情報セキュリティ 第7回:2005年5月27日(金) q q.
無向グラフが与えられたとき、最大位数の完全部分グラフを求める問題
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
京都大学 情報学研究科 通信情報システム専攻 高田智史 joint work with 伊藤大雄 中村義作
Presentation transcript:

データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也

さまざまな問題とアルゴリズム 離散最適化問題 グラフ問題 巡回セールスマン問題 最大クリーク問題 グラフ分割問題 最短経路問題 ハミルトン閉路問題 最大マッチング問題

最短経路問題 出発地から目的地までの最短の経路を求める. 駅すぱあと カーナビゲーション http://www.me.sophia.ac.jp/or/lab/ishizuka/OC/spath_01.html

最短経路問題の定義 問題の定義: 重みつきグラフの2頂点が与えられたとき,その2点を結ぶ重み和最小の経路を求めよ. 2 2 2 3 1 1 4 2 3 2 1 3

ダイクストラのアルゴリズム(1) 近い頂点から順番に,最短経路と最短距離を求めていく. 頂点毎のデータ: 各時点での最短距離,確定か否か 辺毎のデータ: 最短経路に含まれるか否か 出発頂点までの最短距離を0とし確定にする 2 2 2 3 1 1 2 4 2 3 2 1 3

ダイクストラのアルゴリズム(2) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 3 1 1 2 1 4 2 3 2 1 3 3 2 2 2 2 3 1 1 2 1 1 4 2 3 2 1 3 3

ダイクストラのアルゴリズム(3) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 1 1 2 1 4 2 3 2 1 3 5 3 2 2 2 3 2 2 3 1 1 2 1 4 2 3 2 1 3 5 3

ダイクストラのアルゴリズム(4) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 3 2 2 3 1 1 2 1 4 2 3 2 1 3 5 4 3 2 2 2 3 2 2 3 1 1 2 1 4 2 3 2 1 3 3 4 3

ダイクストラのアルゴリズム(5) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 3 2 2 3 1 1 2 1 4 5 2 3 2 1 3 3 4 5 3 2 2 2 3 3 2 2 3 1 1 2 1 4 5 2 3 2 1 3 3 4 3

ダイクストラのアルゴリズム(6) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 3 3 2 2 3 1 1 2 1 4 5 6 2 3 2 1 3 3 5 4 3 2 2 2 3 3 2 2 3 1 1 2 1 4 5 6 2 3 2 1 3 3 4 3

ダイクストラのアルゴリズム(7) 確定した頂点の隣接頂点までの仮の最短距離を計算 最も仮の最短距離が短い頂点を確定,最短経路も確定 2 2 3 3 2 2 3 1 1 2 1 4 5 5 2 3 2 1 3 3 5 4 3 2 2 2 3 3 2 2 3 1 1 2 1 4 5 5 2 3 2 1 3 3 4 3

ダイクストラのアルゴリズムの 最悪時間計算量 頂点の数を n とする. 最悪時間計算量 頂点を確定する回数 → 最悪 n 一回の確定当たりの計算: 隣接頂点の数 → 最悪 n 仮の最短距離最小の頂点の探索 → 最悪 n 最悪時間計算量は,O(n2) (nの多項式である!!) 2 2 2 3 3 2 2 3 1 1 2 1 4 5 5 2 3 2 1 3 3 4 3

ハミルトン閉路問題 与えられたグラフが,全頂点をちょうど1回だけ通過する閉路(ハミルトン閉路)を持つか否かを判定せよ. →持つ →持たない

ハミルトン閉路問題の解法(1) 適当な順番で頂点が番号付けられているとする. ハミルトン閉路は頂点の置換(並び替え)で表現できる. (以下の例では,<1,4,5,8,3,2,7,6>) 頂点数をnとしたとき,可能な置換の総数は,n! すべての置換がハミルトン閉路になるわけではない. 例: <1,2,3,4,5,6,7,8> 1 2 7 8 3 6 4 5

ハミルトン閉路問題の解法(2) ハミルトン閉路問題の総当り探索アルゴリズム: n!通りの頂点の置換を列挙 各置換がハミルトン閉路を成しているか否かを判定 1つでもハミルトン閉路を成す置換があれば Yes を出力して終了,すべて調べて見つからなければ No を出力 <1,2,3,4,5,6,7,8> → × <1,2,3,4,5,6,8,7> → × <1,2,3,4,5,7,6,8> → × <1,2,3,4,5,7,8,6> → × <1,2,3,4,5,8,6,7> → × <1,2,3,4,5,8,7,6> → × <1,2,3,4,6,5,7,8> → × : 1 2 7 8 3 6 4 5

ハミルトン閉路問題の解法(3) 総当り探索アルゴリズムの最悪時間計算量: ハミルトン閉路問題を多項式時間で解くアルゴリズムは知られていない. 与えられた置換がハミルトン閉路を成しているか否かの判定: O(n) 置換の総数: n!個 最悪時間計算量: O(n!) × O(n) = O(2n) (指数時間であることに注意!) ハミルトン閉路問題を多項式時間で解くアルゴリズムは知られていない.

巡回セールスマン問題 全都市を最短の 道のりで巡回してくる 商品の配送計画など スウェーデンの24,978都市に ついて解いたもの (Xeron 2.8GHz dual CPU×96, 84.8 CPU years) http://www.tsp.gatech.edu/

巡回セールスマン問題の定義 問題の定義: 重みつき完全グラフが与えられたとき,重み和最小のハミルトン閉路を求めよ. (完全グラフ:すべての頂点間に辺が存在しているグラフ) (決定問題版)巡回セールスマン問題: 重み和が k 以下のハミルトン閉路が存在するか否か? 3 2 3 1 2 3 2 2 2 1 →重み和8

巡回セールスマン問題の解法 ハミルトン閉路問題同様,全頂点置換を総当り. 総当り探索アルゴリズムの最悪時間計算量: 与えられた置換が長さ k 以下のハミルトン閉路を成しているか否かの判定: O(n) 置換の総数: n!個 最悪時間計算量: O(n!) × O(n) = O(2n) 巡回セールスマン問題を多項式時間で解くアルゴリズムは知られていない.

問題のクラス 多項式時間問題(クラスP) 非決定性多項式時間問題(クラスNP) 多項式時間で解くアルゴリズムが知られている問題 最短経路問題など… ほとんどの実用的な問題はここに入る 非決定性多項式時間問題(クラスNP) 解の候補が与えられた時に,それが解となっているか否かを多項式時間で判定できる問題 ハミルトン閉路問題,巡回セールスマン問題など 一般に,解くのに指数時間かかる 「手に負えない」問題とも言われる

P≠NP予想 クラスPとクラスNPは一致するか否かは未解決問題. (P≠NP予想,またはP=NP問題という) NP完全問題: 恐らく,情報科学分野で一番難しい問題. ミレニアム懸賞問題の1つ. (アメリカのクレイ数学研究所によって2000年に発表され数学の7つの未解決問題,100万ドルの懸賞金) NP完全問題: NPの中で一番難しい問題. ハミルトン閉路問題,決定問題版巡回セールスマン問題は,NP完全問題. NP完全問題を多項式時間で解くアルゴリズムを発見すれば,P=NPを証明したことになる.