25. Randomized Algorithms

Slides:



Advertisements
Similar presentations
1 高速フーリエ変換 (fast Fourier transform). 2 高速フーリエ変換とは? – 簡単に言うとフーリエ変換を効率よく計算 する方法 – アルゴリズムの設計技法は分割統治法に基 づいている 今回の目的は? – 多項式の積を求める問題を取り上げ、高速 フーリエ変換のアルゴリズムを用いた解法.
Advertisements

0章 数学基礎.
J: Magical Switches JAG 模擬地区予選 2013 原案:保坂 解答:保坂・楠本 解説:保坂.
3.2.3~3.3 D3 川原 純.
離散システム特論 整列(sorting)アルゴリズム 2.
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
豊中高校土曜講座「数学セミナー2003」 プラトン多面体の数学 なぜ正多面体は5種類しかないのか 大阪府立豊中高等学校 深川 久.
黒澤 馨 (茨城大学) 情報セキュリティ特論(4) 黒澤 馨 (茨城大学) 2017/3/4 confidential.
ラベル付き区間グラフを列挙するBDDとその応用
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
© Yukiko Abe 2014 All rights reserved
第11回 整列 ~ シェルソート,クイックソート ~
Extremal Combinatorics 14.1 ~ 14.2
黒澤 馨 (茨城大学) 情報セキュリティ特論(6) 黒澤 馨 (茨城大学) 2017/3/13 confidential.
    有限幾何学        第5回.
Probabilistic Method.
Extremal Combinatrics Chapter 4
Approximation of k-Set Cover by Semi-Local Optimization
    有限幾何学        第12回.
Natural Semantics 実行過程の、最初と最後の状態(state)の関係を考える。
データ構造と アルゴリズム 第二回 知能情報学部 新田直也.
Semantics with Applications
Probabilistic Method 6-3,4
A path to combinatorics 第6章前半(最初-Ex6.5)
最尤推定によるロジスティック回帰 対数尤度関数の最大化.
Probabilistic method 輪講 第7回
5.5 The Linear Arboricity of Graphs (グラフの線形樹化数)
計算量理論輪講 岩間研究室 照山順一.
第11回 整列 ~ シェルソート,クイックソート ~
情報学研究科 通信情報システム専攻 小野寺研究室 M1 奥村 佳弘
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
論文紹介 Query Incentive Networks
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
モデルの逆解析 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
7.4 Two General Settings D3 杉原堅也.
独立成分分析 5 アルゴリズムの安定性と効率 2007/10/24   名雪 勲.
G99P043-4 河邊昌彦 G99p094-1 内藤一兵衛 G99P146-1 八幡淳
Basic Tools B4  八田 直樹.
第3回 アルゴリズムと計算量 2019/2/24.
Extractor D3 川原 純.
Selfish Routing and the Price of Anarchy 4.3
計算量理論輪講 chap5-3 M1 高井唯史.
アルゴリズムとプログラミング (Algorithms and Programming)
Additive Combinatrics 7
情報生命科学特別講義III (13) 固定パラメータアルゴリズムと 部分k木
CGと形状モデリング 授業資料 1,2限: 大竹豊(東京大学) 3,4限: 俵 丈展(理化学研究所)
SUNFLOWER B4 岡田翔太.
九州大学大学院 情報学専攻特別講義 (6) 固定パラメータアルゴリズムと 部分k木
2016年度 有限幾何学 中間試験 問1 次のグラフを描け.(描けない場合は理由を述べよ) 各20点
14. The Basic Method M1 太田圭亮 14.3 Spaces of polynomials
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
第16章 動的計画法 アルゴリズムイントロダクション.
    有限幾何学        第5回.
5.3, 5.4 D2 岡本 和也.
Max Cut and the Smallest Eigenvalue 論文紹介
数理論理学 第9回 茨城大学工学部情報工学科 佐々木 稔.
7.8 Kim-Vu Polynomial Concentration
4.プッシュダウンオートマトンと 文脈自由文法の等価性
2017年度 有限幾何学 期末試験 注意:ループと多重辺がないグラフのみを扱う. 問1 次の定理と,その証明の概略を読み,各問に答えよ.
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
Chapter5 Systems of Distinct Representatives
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
計算の理論 I 反復補題 火曜3校時 大月 美佳 平成16年7月13日 佐賀大学知能情報システム学科.
Speaker: Kazuhiro Inaba Paper Introduction from WSDM 2015
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
Q q 情報セキュリティ 第7回:2005年5月27日(金) q q.
生物情報ソフトウェア特論 (10)固定パラメータアルゴリズムと 部分k木
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
Presentation transcript:

25. Randomized Algorithms B4 永瀬 高志

25.1 Zeroes of multivariate polynomials 多変数多項式         が常に0かどうかを調べたい 片っぱしから調べるとexponentialな時間がかかってしまう

25.1 Zeroes of multivariate polynomials ランダムアルゴリズム  ランダムな値を各変数に入れて、結果が0でないなら、     という結果を返す  結果が0ならば、try again   これを何度か繰り返し、毎回     ならば      という結果を返す  変数の取りうる範囲が{0,1,…,N-1}のとき、errorになる可能性は0ではない。 ・ しかし、Nが十分に大きいとき限りなく可能性は0になる。 ←このことを証明していく

25.1 Zeroes of multivariate polynomials その前に  関数           の次数と全次数                    このとき次数は3                      全次数は5

25.1 Zeroes of multivariate polynomials Lemma 25.1 0関数でない関数       の全次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも          個ある      が の取りうる全体なので、           となる点が最大で であることを言えばよい

25.1 Zeroes of multivariate polynomials Lemma 25.1 0関数でない関数       の全次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも          個ある 証明  数学的帰納法で証明を行う  n=1のとき、      の解は次数dを超えないので、成り立つ。 例

25.1 Zeroes of multivariate polynomials Lemma 25.1 0関数でない関数       の全次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも          個ある     のとき、関数fを次のようにおく。       はn-1変数で、引数に       をとる。また、  は常に0でなく、 とする。 ここで、                                とし、 以下、        を満たす点           が、最大いくつあるかを考える。      

25.1 Zeroes of multivariate polynomials      の場合     は常に0ではなく、全次数は 以下であるn-1変数の関数であるから、とりうる のあたいは高々 通りである。さらに の値の選び方は 通りあるので、 となる の選び方は最大で 通り

25.1 Zeroes of multivariate polynomials 2.      の場合   を       を満たす点に固定して考える。このとき     は変数 の多項式と  考えることができる。いま、 の最大次数はtなので、     となるbは最大でt通り。  また、 の選び方は最大で 通りあるので、 となる の選び方は最大で 通り 1.2.よりf=0となる点       は最大で                                           通り存在すること

25.1 Zeroes of multivariate polynomials Lemma 25.1 関数       の全次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも          個ある もし、関数        の次数がdだとすると、全次数は最大でdnになってしまう。       の場合、このLemma 25.1は全く役に立たない   

25.1 Zeroes of multivariate polynomials Lemma 25.2 0関数でない関数       の次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも       個ある 証明 数学的機能法で行う n=1 のとき は常に0の関数ではなく、次数はdなので、これを満たす。 n>1 のとき         は           を満たす点とする。

25.1 Zeroes of multivariate polynomials 次のような関数を考える    はn-1変数の常に0ではない関数なので、数学的帰納法の仮定より、                   を満たす点は少なくとも          個ある。    も同様に1変数の常に0ではない関数なので、    となる   は        個ある。 よって0でない点は  に少なくとも                    点ある。

25.1 Zeroes of multivariate polynomials Lemma 25.2 0関数でない関数       の次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも       個ある このことから次のことが言える Corollary 25.3     を、要素を 以上もつものとする。0関数でない、次数dのあらゆる関数は、  において0でない点をもつ。    

25.1 Zeroes of multivariate polynomials Lemma 25.2 0関数でない関数       の次数をd、体を  とし、                を満たすSをとってきたとき、          を満たす が 少なくとも       個ある このことから次のことが言える Corollary 25.4    を次数dの0関数でない関数とする。ある     において ランダムに値       をとったとき、次のことが言える。

25.1 Zeroes of multivariate polynomials Corollary 25.4    を次数dの0関数でない関数とする。ある     において ランダムに値       をとったとき、次のことが言える。 今、Sが十分大きいときを考えるので、        とする。

25.2 Verifying the equality of long strings Bob Alice 通信 nビットの通信で同じであることを調べられる しかし、なるべく少ない通信で一致することを調べたい。  ランダムアルゴリズムを使えば高い確率(少なくとも )で判別でき、およそ      ビットの通信で行える

25.2 Verifying the equality of long strings 方法 p個の要素を持つ   における関数を考える(pは         を満たす素数) Aliceはランダムな値 と    をBobに送り、Bobは         なら1を          なら0をAliceに送る。 このときの通信量は                       は最大でも次数はn-1なので、         となる点も高々n-1となる。 よって、

25.3 The equivalence of branching programs 次のようなグラフを考える。 ・それぞれの矢印に変数を割り当てる。 ・スタート、ゴールとなる頂点がそれぞれ一つずつあり、また、各頂点から出る矢印は最大で2本。 ・2本矢印が出ている場合は一方に  もう一方に  を割り当てる。 ゴール スタート

25.3 The equivalence of branching programs このようなグラフPとQがあったとき、 を調べたい。 グラフPを関数  に変換する。 グラフP ゴール スタート

25.3 The equivalence of branching programs 関数  への変換方法 1.スタート頂点の値を1とする。 2.辺の値が  なら    にする。 3.各頂点の値を、『入ってくる矢印の値×矢印の根元の頂点の値』の和にする x xy+(1-x)(1-y) z{xy+(1-x)(1-y)} + (1-z){x(1-y)+(1-x)y} 1 1-x x(1-y)+(1-x)y 時間は

25.3 The equivalence of branching programs Corollary 25.4    を次数dの0関数でない関数とする。ある     において ランダムに値       をとったとき、次のことが言える。 問題 グラフPとQがあったとき、 を調べたい。 グラフP,Qを関数     に変換して調べるとき、errorが起こる確率を考える。 Corollary 25.4より、      とすると、

25.4 A min-cut algorithm カットとは、グラフの頂点を2つの部分集合に分割することで、最小カットはそのために最小の数の辺を切るものである。 この最小カットをランダムアルゴリズムで求めるとき、以下の操作を行う ランダムに辺を選び、その辺が結ぶ2頂点をくっつける。これを頂点が2つになるまで繰り返す

25.4 A min-cut algorithm   『この操作によってmin-cutのサイズが減ることはない』ということが知られているので、これを繰り返すことによって得られる結果はmin-cutである可能性がある。その確率について考える 補題 グラフ        にはn個の頂点があり、kより小さいcutは存在しないと     すると、辺は最低でもkn/2存在する 証明 頂点     の次数は       で、Theorem 1.7より よって              なので            

25.4 A min-cut algorithm グラフGの最小カットをCとし、そのサイズをkとする。 また、  を『i番目のステップでCに含まれる辺を消さない』という事象とする。 このとき      アルゴリズムがCを結果として出す また、 であるから、

25.4 A min-cut algorithm 次に を考える。 の後、n-1頂点があるので、少なくとも 個の辺がある。 よって、 次に          を考える。   の後、n-1頂点があるので、少なくとも       個の辺がある。 よって、 同様に、  のときを考えると

25.4 A min-cut algorithm よって つまり、このアルゴリズム1回で正しい解を見つける確率が少なくとも

25.4 A min-cut algorithm もし、このアルゴリズムを 回行ったとする。 そのとき、errorとなる確率は高々 もし、このアルゴリズムを     回行ったとする。 そのとき、errorとなる確率は高々 さらに繰り返す回数を増やすことでerrorが起こる確率を減らすことができる。