13.近似アルゴリズム.

Slides:



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

有限幾何学 第 2 回. 有限幾何学 第 2 回 1. 様々なグラフの例 2. 道と最短経路問題 1. 用語の説明 2. 最短経路問題 3. ダイキストラのアルゴリズム.
1 高速フーリエ変換 (fast Fourier transform). 2 高速フーリエ変換とは? – 簡単に言うとフーリエ変換を効率よく計算 する方法 – アルゴリズムの設計技法は分割統治法に基 づいている 今回の目的は? – 多項式の積を求める問題を取り上げ、高速 フーリエ変換のアルゴリズムを用いた解法.
Absolute Orientation. Absolute Orientation の問題 二つの座標系の間における剛体 (rigid body) 変換を復元す る問題である。 例えば: 2 台のステレオカメラから得られた3次元情報の間の関 係を推定する問題。 2 台のステレオカメラから得られた3次元情報の間の関.
ACM/ICPC と アルゴリズム 「実践的プログラミング」 稲葉 一浩. 自己紹介 ﻪ 理Ⅰ → 理学部情報科学科 → 情報理工学系研究科コンピュータ科学専攻 ﻩ 博士課程1年 ﻩXML を扱う専用言語の研究など ﻪ 個人的には ﻩ ﻯD.
1. 補間多項式 n 次の多項式 とは、単項式 の 線形結合の事である。 Definitions: ( 区間, 連続関数, abscissas (データ点、格子点、差分点), 多項 式 ) Theorem. (補間多項式の存在と一意性) 各 i = 0, …, n について、 をみたす、次数が高々 n.
Determining Optical Flow. はじめに オプティカルフローとは画像内の明る さのパターンの動きの見かけの速さの 分布 オプティカルフローは物体の動きの よって変化するため、オプティカルフ ローより速度に関する情報を得ること ができる.
0章 数学基礎.
到着時刻と燃料消費量を同時に最適化する船速・航路計画
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
    有限幾何学        第8回.
組合せ最適化問題と厳密解法 最小木、ナップサック問題、ビンパッキング、巡回セールスマン問題 LPによる上界・下界 分枝限定法
整数計画法を用いた スリザーリンクの解法 杉村 由花 (東京大学)
An Algorithm for Enumerating Maximal Matchings of a Graph
    有限幾何学        第5回.
Approximation of k-Set Cover by Semi-Local Optimization
8.クラスNPと多項式時間帰着.
JAG Regional Practice Contest 2012 問題C: Median Tree
第2回 内容 ハノイの塔―無向グラフと有向グラフ 教科書の 1.3 節 pp.7-12 参照
    有限幾何学        第12回.
上坂吉則 尾関和彦 文一総合出版 宮崎大輔2003年6月28日(土)
データ構造と アルゴリズム 第二回 知能情報学部 新田直也.
 Combinations(2)        古川 勇輔.
9.NP完全問題とNP困難問題.
データ構造と アルゴリズム 知能情報学部 新田直也.
第 七 回 双対問題とその解法 山梨大学.
Probabilistic Method 6-3,4
5.5 The Linear Arboricity of Graphs (グラフの線形樹化数)
Selfish Routing and the Price of Anarchy 第2回
7.時間限定チューリングマシンと   クラスP.
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
情報工学総合演習 D-I 近似アルゴリズム 埼玉大学 理工学研究科 山田 敏規、 橋口 博樹、 堀山 貴史
MPIを用いた並列処理 ~GAによるTSPの解法~
計算の理論 II NP完全 月曜5校時 大月美佳 平成17年1月17日 佐賀大学理工学部知能情報システム学科.
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
決定木とランダムフォレスト 和田 俊和.
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
第5章 特徴の評価とベイズ誤り確率 5.5 ベイズ誤り確率の推定法 [1] 誤識別率の偏りと分散 [2] ベイズ誤り確率の上限および下限
第7章 疎な解を持つカーネルマシン 修士2年 山川佳洋.
第3回 アルゴリズムと計算量 2019/2/24.
Introduction to Soft Computing (第11回目)
25. Randomized Algorithms
b f c a d e g h a b c d e f g 図1 図2 2012年度 有限幾何学 期末試験
計算量理論輪講 chap5-3 M1 高井唯史.
First Course in Combinatorial Optimization
様々な情報源(4章).
First Course in Combinatorial Optimization
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
需要点,供給点,辺容量を持つ木の分割アルゴリズム
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
わかりやすいパターン認識 第7章:部分空間法  7.1 部分空間法の基本  7.2 CLAFIC法                  6月13日(金)                  大城 亜里沙.
Selfish Routing 4章前半 岡本 和也.
    有限幾何学        第5回.
直並列グラフの連続多重彩色 西関研究室 吉田進太郎.
第9章 学習アルゴリズムとベイズ決定側 〔3〕最小2乗法とベイズ決定側 発表:2003年7月4日 時田 陽一
パターン認識 ークラスタリングとEMアルゴリズムー 担当:和田 俊和 部屋 A513
Max Cut and the Smallest Eigenvalue 論文紹介
パターン認識 ークラスタリングとEMアルゴリズムー 担当:和田 俊和 部屋 A513
A02 計算理論的設計による知識抽出モデルに関する研究
d b c e a f 年度 有限幾何学 中間試験 問1 次の用語の定義をそれぞれ述べよ.
11.動的計画法と擬多項式時間アルゴリズム.
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
図2 x11 図1 x6 x10 x12 x3 x5 x7 x9 x13 x2 x4 x8 x14 (0,0) (1,0) x1 x15
参考:大きい要素の処理.
Q q 情報セキュリティ 第7回:2005年5月27日(金) q q.
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
Presentation transcript:

13.近似アルゴリズム

13.1  近似アルゴリズムの種類  NP困難な問題に対しては多項式時間で最適解を求めることは困難であるので、最適解に近い近似解を求めるアルゴリズムが用いられることがある。   このように、必ずしも厳密解を求めないアルゴリズムは、 大きく分けて2つの範疇に分けられる。

ヒューリスティックと近似アルゴリズム ヒュ-リスティクス (発見的解法、経験的解法) 遺伝的アルゴリズム(GA) アニ-リング(焼きなまし法) 精度保証無し、 実験的評価が主 タブサーチ ローカルサーチ ニューラルネット 等 近似アルゴリズム 定数近似アルゴリズム(APX) 多項式近似スキーム(PTAS) 精度保証付き 理論的解析が主 完全多項式近似スキーム(FPTAS) ここでは、近似アルゴリズムについてみていく。

α近似アルゴリズム  最小化問題に対して、いつも最適解のα倍以下の解を入力サイズの多項式時間で求めるようなアルゴリズムをα近似アルゴリズムという。ここで、     でありαを近似率という。すなわち、最適解を と表し、アルゴリズムの解の評価値を       と表すと、常に次の式を満足する。

β近似アルゴリズム  最大化問題に対して、いつも最適解のβ倍以上の解を入力サイズの多項式時間で求めるようなアルゴリズムをβ近似アルゴリズムという。ここで、     でありβを近似率という。また、βを近似保証ということもある。すなわち、最適解を と表し、アルゴリズムの解の評価値を       と表すと、常に次の式を満足する。

APX α(あるいはβ)定数であるようなアルゴリズムが存在するクラスをAPX(APproXimation)という。

PTASとFPTAS  近似率α(β)を限りなく1に近づけることができるとき、そのようなα近似アルゴリズムをPTAS(Polynomial Time Approximation Scheme,多項式時間近似スキーム)という。すなわち、任意の正数    に対して、         とできる入力サイズの多項式時間アルゴリズムをPTASという。さらに、入力サイズ  と精度   の多項式時間アルゴリズムFPTAS(Fully Polynomial Time Approximation Scheme,完全多項式時間近似スキーム)という。 問題によっては、PTASが存在しない(知られていない)ものがある。また、定数近似すら存在しない問題もある。このようなアルゴリズムの出力は入力サイズに依存した近似値になってしまう。

近似アルゴリズムの存在 近似アルゴリズムが存在するクラス APXが存在するクラス PTASが存在するクラス FPTASが存在するクラス

13-2.巡回セールスマン問題 巡回セールスマン問題には、ネットワーク型と、幾何型とがある。  ネットワーク型の巡回セールスマン問題では、入力は辺重み付きのグラフであり、出力は頂点を全て辿る閉路で重みの総和が最小のものである。 5 2 2

 三角不等式を満足しないようなネットワーク型の巡回セールスマン問題は、近似アルゴリズムを得ることすらNP-困難である。

ハミルトン閉路問題と巡回セールスマン問題 名称:ハミルトン閉路問題 インスタンス:グラフG 問い:G中に、全ての頂点を丁度1度だけ通るような     閉路は存在するか? 名称:巡回セールスマン(NTSP) インスタンス:ネットワークN、正数K 問い:ネットワーク中の全ての頂点を通るような閉路     で重みの総和がK以下となるようなもの存在するか?

巡回セールスマン問題への帰着  ネットワーク型の巡回セールスマン問題を解くα近似アルゴリズムが存在すると、次のようにハミルトン閉路問題を巡回セールスマン問題に帰着できる。つまり、ハミルトン閉路問題のインスタンスであるグラフGから巡回セールスマン問題のインスタンスである辺重み付きグラフ(ネットワークN)と整数Kを定めればめることができる。  まず、Gの辺に全て1の重みをつけてネットワークNを構成する。次に、Kとして、      として、巡回セールスマン問題へ帰着する。このとき、αの定数近似であるAPXが存在すると、多項式時間でハミルトン閉路の存在判定ができてしまう。  以上のことより、          である限り、ネットワーク型の巡回セールスマン問題を解く多項式時間アルゴリズムはない。

幾何巡回セールスマン問題(GTSP) 実は、幾何巡回セールスマン問題には、定数近似アルゴリズム  実は、幾何巡回セールスマン問題には、定数近似アルゴリズム が存在する。ネットワーク型と、幾何型での最大のちがいは、三角不等式が成り立つかどうかである。ここで三角不等式とは、任意の     対して、次が成り立つことである。

 2次元(ユークリッド)平面上の点集合を考えれば、2点間の距離は自動的に三角不等式を満たす。  このことは、利用できる情報(三角不等式)が多くなったということであり、ネットワーク型よりも幾何型の方が問題が簡単であることを意味する.実際、幾何型の巡回セールスマン問題は、FPTASを持つことが最近(1998年)に示された。このアルゴリズムは複雑なので、ここでは2近似アルゴリズムとそれを改善した1.5近似アルゴリズムを示す。

NTSPとGTSP 近似アルゴリズムが存在するクラス NTSP APXが存在するクラス PTASが存在するクラス GTSP FPTASが存在するクラス

2近似アルゴリズム GTSPに対する2近似アルゴリズム 1.点集合を連結する最小全域木MST Tを 求める。   求める。 2.Tの辺を辿りながら、全ての点を通る巡回路     を求める。(Tの辺を全て2重化すればいい。) 3.  で一度通過した点をショートカットする順回  路   を求める。 次にこのアルゴリズムの動作を示す。

2近似アルゴリズムの動作 最小木T 入力(点集合) 2重化 ショートカット

近似率の解析 最適な順回路を とし、アルゴリズムで得られる順回路を とする。また、 でそれぞれの長さを表すものとする。  最適な順回路を   とし、アルゴリズムで得られる順回路を   とする。また、       でそれぞれの長さを表すものとする。  順回路       から任意に一本辺を除去すると、全域木が得られる。よって、最小全域木   の方が辺の重み総和は小さい。(そもそも、頂点を連結するもののなかで、重みが最小なものが最小全域木であった。) よって、次が成り立つ。

また、アルゴリズムで得られる閉路では、最小木を2重化したものより小さいので、次が成り立つ。 以上より、

1.5近似アルゴリズム GTSPに対する1.5近似アルゴリズム 1.点集合を連結する最小全域木MST Tを 求める。   求める。 2.Tにおいて、次数が奇数の点からなる完全グラフを作り、最小重みマッチングMを求める。 3.T+Mはオイラーグラフであるので、一筆書きに対応する順回路Cを求める。 4.3の順回路Cからできるだけショートかっとして、順回路  を構成する。

2近似アルゴリズムの動作 最小木T 入力(点集合) マッチングM ショートカット

近似率の解析 最適な順回路を とし、アルゴリズムで得られる順回路を とする。また、 でそれぞれの長さを表すものとする。  最適な順回路を   とし、アルゴリズムで得られる順回路を   とする。また、       でそれぞれの長さを表すものとする。 2近似アルゴリズムの解析と同様にして、 を得る。  また、    上で、次数が奇数の点(奇点)を結ぶパスを考える。    上で、奇点を結ぶパスを交互に選ぶことにより、     上の辺集合を2つに分類する。

 奇点が偶数個しかないことに注意すると、いつもきちんと2分割することができることがわかる。 このように、    の辺集合を、        と分割できる。もちろん、 よって、

  また、三角不等式がなりたっているので、 パスで結ぶより直接辺でたどったほうが短い。   よって、最小マッチングMの重み総和に関して, 次が成り立つ。

一方、アルゴリズムより、 以上より、

 このように、いろいろな技法を組み合わせて、近似率の改善が 行われる。  NP完全問題に対しても、厳密解でななくてもよければ、 近似アルゴリズムの適用を考えてみると良い。

13-3.ナップザック問題 ナップザック問題の一般形は次のよう書ける。 ナップザック P 特徴ベクトル 最大化 条件

ナップザック問題における欲張り法 (グリーディ法、Greedy法)  連続ナップザック問題のように、単位価値の高い法から順に 選んでいく方法を考察する。このように、部分的に評価関数を改善するだけの方法を欲張り法(Greedy法)という。(欲張り法でも近似アルゴリズムになっていることもある。これらは、問題やアルゴリズムをきちんと解析しないとわからない。)

ナップザックに対する欲張り法 1.単位価値の高い順にならべる。すなわち、必要なら添え字を付け換えて、 とする。 2.    から   まで順番に                なら       とし、 そうでないなら

欲張り法の性能 欲張り法で得られる解を とおき、 最適解を とおく。 なら、欲張り法と最適解が一致している。 以下では、 のときを考えよう。  欲張り法で得られる解を             とおき、 最適解を            とおく。      なら、欲張り法と最適解が一致している。 以下では、      のときを考えよう。    このときは、最適解には採用されたが、欲張り解には採用されなかった最初の要素を考えてその添え字を  とする。すなわち、 このとき、任意の        に対して、 である。

よって、 という式が成り立つ。ここで、次のようなことに注意する。 任意の     に対して、        である。 欲張り法で  が選ばれなかったことから、 最適解でも制約式を満たすので、

以上より、次の関係式が導ける。 なお、ここで、    は価値   の最大値である。

欲張り法で悪い評価値を出すインスタンス

ナップザックの1/2近似アルゴリズム ナップザックに対する1/2近似アルゴリズム 1.欲張り法によって解 を求める。 1.欲張り法によって解    を求める。 2.価値が最大のものを一つだけ選ぶ。 3.上の2つのうちで大きい方を解    として    出力する。

近似率  アルゴリズムの出力(解)    とする。このとき、以下の式が成り立つ。 以上より、1/2近似アルゴリズムであることがわかる。

ナップザック問題に対するFPTAS ナップザック問題に対しては、任意の正数 に対する 近似保証 のアルゴリズムが知られている。  ナップザック問題に対しては、任意の正数  に対する 近似保証        のアルゴリズムが知られている。 ナップザックに対するFPTAS 1.与えられた  に対して、        とおく。 2.各要素  に対して、価値を        と修正する。 3.修正した価値のもとで、ナップザックの最適解            を動的計画法で求める。 4.上記の解   と最初の価値のもとでの最大値を比べて  評価値の高いものをアルゴリズムの出力(解)  とする。

FPTASの評価 とおいていることにより、 よって、任意の解 に対して,その修正後の評価値 に関して次式が成立する。 よって、任意の解  に対して,その修正後の評価値      に関して次式が成立する。 一方、   は修正した価値での最適解なので また、

よって、 以上より、

計算時間 ステップ3の動的計画法の部分について考察しよう。  まず、動的計画法に基づくナップザックアルゴリズムとして、大きさが決まっているときの価値の最大値を表として構成していた。この動的計画法に基づいた場合、     時間のアルゴリズムが得られた。  ここでは、この動的計画法を以下の方針に切り替える。 価値が決まってているときに、大きさの最小値として構成する。このような動的計画法も構成できることに注意する。この場合、価値の最大値は、     であるので、評価値の最大値は、         である。よって、アルゴリズムの計算量は、          時間である。    FPTASでは修正した値を用いるので、結局、

ナップザック問題の近似可能性 近似アルゴリズム ナップザック APX PTAS FPTAS