九州大学大学院 情報学専攻特別講義 (3) 配列解析

Slides:



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

集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム( 1 ) スケールフリーネットワーク 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター.
情報生命科学特別講義III (5)配列アラインメント
到着時刻と燃料消費量を同時に最適化する船速・航路計画
情報生命科学特別講義III (1) 文字列マッチング
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
情報生命科学特別講義III (8)木構造の比較: 順序木
An Algorithm for Enumerating Maximal Matchings of a Graph
    有限幾何学        第5回.
分子生物情報学 動的計画法に基づく配列比較法 (ペアワイズアライメント法)
奈良女子大集中講義 バイオインフォマティクス (6) モチーフ発見・隠れマルコフモデル
Approximation of k-Set Cover by Semi-Local Optimization
9.NP完全問題とNP困難問題.
京都大学 化学研究所 バイオインフォマティクスセンター
集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(5) 木構造データ間の編集距離
5.5 The Linear Arboricity of Graphs (グラフの線形樹化数)
情報生命科学特別講義III (7)進化系統樹推定
計算量理論輪講 岩間研究室 照山順一.
7.時間限定チューリングマシンと   クラスP.
情報工学総合演習 D-I 近似アルゴリズム 埼玉大学 理工学研究科 山田 敏規、 橋口 博樹、 堀山 貴史
生物情報ソフトウェア特論 (1) 文字列マッチング・データ構造
情報生命科学特別講義III (11) RNA二次構造予測
k 個のミスマッチを許した点集合マッチング・アルゴリズム
生物情報ソフトウェア特論 (8) RNA二次構造予測
生命情報学入門 配列のつなぎ合わせと再編成
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
九州大学大学院 情報学専攻特別講義 (9) ブーリアンネットワークの 解析と制御
奈良女子大集中講義 バイオインフォマティクス (9) 相互作用推定
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
第3回 アルゴリズムと計算量 2019/2/24.
25. Randomized Algorithms
計算量理論輪講 chap5-3 M1 高井唯史.
分子生物情報学(2) 配列のマルチプルアライメント法
First Course in Combinatorial Optimization
情報生命科学特別講義III (13) 固定パラメータアルゴリズムと 部分k木
分子生物情報学(3) 確率モデル(隠れマルコフモデル)に 基づく配列解析
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
九州大学大学院 情報学専攻特別講義 (2) 配列アラインメント
九州大学大学院 情報学専攻特別講義 (4) RNA二次構造予測
九州大学大学院 情報学専攻特別講義 (6) 固定パラメータアルゴリズムと 部分k木
2016年度 有限幾何学 中間試験 問1 次のグラフを描け.(描けない場合は理由を述べよ) 各20点
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
アルゴリズムとデータ構造 --- 理論編 --- 山本 真基
生物情報ソフトウェア特論 (8) RNA二次構造予測
第16章 動的計画法 アルゴリズムイントロダクション.
    有限幾何学        第5回.
直並列グラフの連続多重彩色 西関研究室 吉田進太郎.
Max Cut and the Smallest Eigenvalue 論文紹介
九州大学大学院 情報学専攻特別講義 (8) ニューラルネットワークの 離散モデル
2009/11/27 グラフ (1) 第9講: 平成21年11月27日 (金) 4限 E252教室 コンピュータアルゴリズム.
奈良女子大集中講義 バイオインフォマティクス (7) 進化系統樹
d b c e a f 年度 有限幾何学 中間試験 問1 次の用語の定義をそれぞれ述べよ.
情報生命科学特別講義III (14) グラフの比較と列挙
4.プッシュダウンオートマトンと 文脈自由文法の等価性
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
生物情報ソフトウェア特論 (4)配列解析II
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
図2 x11 図1 x6 x10 x12 x3 x5 x7 x9 x13 x2 x4 x8 x14 (0,0) (1,0) x1 x15
13.近似アルゴリズム.
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
生物情報ソフトウェア特論 (10)固定パラメータアルゴリズムと 部分k木
集中講義(東京大学)「化学システム工学特論第3」 バイオインフォマティクス的手法による化合物の性質予測(1) バイオインフォマティクス概観
分子生物情報学(0) バイオインフォマティクス
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
Time Reversal E-Text: pp.80-83(PDF: pp.49-50) FM08002 太神 諭
Presentation transcript:

九州大学大学院 情報学専攻特別講義 (3) 配列解析 九州大学大学院 情報学専攻特別講義 (3) 配列解析 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター

講義内容 バイオインフォマティクス概論(資料なし) 配列アラインメント 配列解析 RNA二次構造予測 タンパク質立体構造の比較と予測 固定パラメータアルゴリズムと部分k木 グラフの比較と列挙 ニューラルネットワークの離散モデル ブーリアンネットワークの解析と制御 講義の進展状況によっては内容に変更の可能性あり

最短共通拡大文字列

最短共通拡大文字列問題 (Shortest Superstring) 入力: 文字列集合: 出力: すべての si の拡大文字列となっており、かつ、 長さが最短の文字列 sOPT s は t の拡大文字列 ⇔ t は s の部分文字列 ovlp(si,sj): si=sa・sb, sj=sb・sc を満たす最長の sb pref(si,sj): 上記定義の sa 例: s1=ACGT, s2=GTAC, s3=CAGT, s4=GTCAG 最短共通拡大文字列は GTACGTCAGT ovlp(s3,s4)=GT pref(s3,s4)=CA ovlp(s4,s3)=CAG pref(s4,s3)=GT この問題の場合、解は必ず存在

最短共通拡大文字列: 基本アイデア アイデア: 巡回セールスマン問題に変換 アイデア: 巡回セールスマン問題に変換 命題: s1,s2,…,sn が sOPT 中でこの順番に並ぶと次の式が成立

最短共通拡大文字列: 巡回セールスマンへの帰着 1. si を頂点 vi に対応させ、 vi から vj への有向辺に重み |pref(si,sj)| を割り 当てた接頭辞グラフ G(V,E) を構成 2. すべての頂点の組 (vi ,vj) に対しステップ3を実行し,スコアが最小となる 閉路を計算し、その頂点の順番から最適解を構成し、終了 3. vi から出発して最後にvj を通って vi にもどる重みの和が最小のハミルトン 閉路の重みに、重み |ovlp(sj,si)| を加えたものをスコアとする アイデア: ハミルトン閉路問題はNP困難⇒最小閉路被覆で代用 最小閉路被覆問題 入力: 重みつき有向グラフ G(V,E) 出力: すべての頂点がちょうど1つの閉路に1回だけ含まれ、かつ、重みの和が最小となる閉路の集合 ハミルトン閉路との違い:   複数の閉路の集合 ⇒ 二部グラフマッチングで最適解

最小閉路被覆問題: アルゴリズム 1.頂点集合 U={u1,…,un}, W={w1,…,wn } からなる完全二部 グラフを構成し、(ui,wj) の重みを |pref(si,sj)| とする 2. 最小重み完全二部グラフマッチングを計算 3. マッチング中の (ui,wj) を、G(V,E) の (vi,vj) に対応させ、解とする

最短共通拡大文字列: アルゴリズム 1.文字列集合 S から G(V,E) を構成 2. G(V,E) の最小閉路被覆 C={c1,…,ck} を最小重み完全二部 グラフマッチングを用いて計算 3. 各閉路 ci から文字列 σ(ci ) を作り、それをすべてつなげ た文字列 σ(C)=σ(c1)・ σ(c2)・・・σ(ck) を近似解 とする                                     に対し、 と定義し、  を c の代表文字列とよぶ 上記アルゴリズムが多項式時間で動作するのは明らか 閉路に含まれる各文字列の長さが閉路の重み以下であれば、    |σ(c)|≦2・w(c) が成立し、Σw(ci ) ≦ | sOPT| より、 |σ(C)|≦2・| sOPT | が成立 しかし、その仮定は成立しないので、より詳細に解析し|σ(C)|≦4・|sOPT| を示す

近似率の解析 (1) 補題1: Sの部分集合 S’ に対し、ある文字列 t が存在し、S’ 中の各文字列は t∞の部分文字列であるとする。すると、G(V,E)中に重みが |t| 以下で、かつ、S’ に対応するすべての頂点を通る閉路が存在 証明: S’ 中の各文字列 si の最初の文字は、 t∞の最初の t 中に出現するようにできる。その順番に頂点を並べれば、題意を満たす閉路が得られる 例: 下図の場合、S’={s1,s3,s5}であり、v3→v5→v1→v3 が閉路 t∞上は t を無限回つなげた文字列(実際には有限でOK)

近似率の解析 (2) 補題2: c1,c2 を C 中の閉路とし、r1, r2 をそれぞれ代表文字列とすると |ovlp(r1,r2)| < w(c1) + w(c2) が成立 証明: |ovlp(r1,r2)| ≧ w(c1) + w(c2) を仮定し、矛盾を導く。 p1 を長さ w(c1) の ovlp(r1,r2) の接頭辞とすると ovlp(r1,r2)は p1 ∞の接頭辞。 p2 を長さ w(c2) の ovlp(r1,r2) の接頭辞とすると ovlp(r1,r2)は p2 ∞の接頭辞。 ここで、仮定より p1 ・ p2 = p2 ・ p1 および p1 ∞=p2 ∞ が成立。 また、r2 は c2 の代表文字列であり、 r2≧|ovlp(r1,r2)| ≧ w(c1) + w(c2) ≧ w(c2)より、 c2 中のすべての文字列は p1 ∞ の部分文字列。また、 c1 中のすべての文字列も p1 ∞ の部分文字列。よって、補題1から、 c1,c2 中のすべての頂点を含む重み |p1| 以下の閉路が存在することになり矛盾。

近似率の解析 (3) 定理: 最短共通拡大文字列問題に対して、最適解の4倍以内の長さの共通拡大文字列を多項式時間で計算可能 証明: w(C)=Σi=1…kw(ci) とすると次式が成立。 一般性を失うことなく r1, …, rk はSOPTにこの順番で出現すると仮定。 r1, …, rkのSCSの長さは|SOPT|以下なので、補題2より次式が成立。 よって、この式と w(C)≦|SOPT| から次式が成立。

逆位によるソーティング

逆位によるソーティング(符号なし) Sorting by Reversal 出力: π を id=(1,2,・・・,n)に変換するために必要な最小     回数(d(π))の逆位系列 ゲノム再編成による進化履歴の推定に有用 置換 π: (1,2,…,n) を並び替えたもの 以降では、π0,πn+1を加えた    π=(π0,π1,…,πn,πn+1)   を考える。ただし、 π0,    πn+1は動かさないも   のとする 左図の場合、d(π)=3

切断点 切断点: |πi-πi-1|≠1 となる πi, πi-1 の境界 b(π): π における切断点の個数 減少断片: π における、値が1ずつ減少する長さ2以上の部分列 例 π=(0,1,4,6,5,2,3,7) の切断点は (1,4), (4,6), (5,2), (3,7) で、b(π)=4 π=(0,7,6,5,4,1,3,9,8,2,10) において、(7,6,5), (6,5,4) は極大でない減少断片で、(7,6,5,4), (9,8) は極大な減少断片 補題1  b(π)/2 ≦ d(π) ≦ n 証明 1回の逆位操作により切断点の個数は高々2個しか減らないので b(π)/2 ≦ d(π) 。 d(π) ≦ n の証明は宿題

逆位操作の検出 補題2 π が減少断片を含む時、b(π) を減らす逆位操作が存在 証明 以下のアルゴリズムにより逆位操作を検出 1. 右端が最小である極大減少断片 s を見つけ、右端の値を k とする 2. π における k-1 の位置を見つける 3.k-1 が k の右にあれば、s の右隣から k-1 までを逆位 (i) 左にあれば、k-1 の右隣から s の右端までを逆位 (ii)

近似アルゴリズムとその解析 アルゴリズム : 以下の π=id となるまで操作を繰り返す 1. 減少断片が存在すれば補題2を適用 2. 存在しなければ、極大な増加断片で π0, πn+1 のいずれも含まないものを 見つけ逆位操作を適用。それも存在しなければ、πj=πi-1 を満たす j > i で、 かつ、 π0 もしくは πn+1 を含む増加断片にπi, πj が含まれないもの を見つけ、 (πi, πi+1,…, πj-1) に逆位操作を適用 定理 符号なしの逆位によるソーティング問題に対し、4d(π)回以内の逆位操作系列を多項式時間で計算可能 証明 上記アルゴリズムで ステップ1 が実行されれば、b(π)は1以上減少。 ステップ2が実行されれば、 b(π)は増加せず、次回はステップ1が実行可能。 よって、高々 2・b(π) 回の逆位操作により id へ至ることができる。 補題1より、 2・b(π) ≦4・d(π)

逆位によるソーティング(符号あり) 遺伝子には方向性があるので、方向(符号:+-)を考えた逆位系列を考えるのは妥当 逆位操作により、符号も反転 符号なしのソーティングはNP困難だが、符号ありのソーティングは多項式時間で解ける

まとめ 最短共通拡大文字列: ハミルトン閉路問題に帰着し、近似 逆位によるソーティング: 符号ありは多項式時間で解けるが、符号なしはNP困難(切断点の導入により近似精度を保証) 補足 最短共通拡大文字列の近似は 2.5 まで改良 [Haim Kaplan, Shafrir: Inf. Proc. Lett. 2005] ⇒ 2012年に 2+11/23 まで改良[Mucha, Proc. SODA, 2012] 最短共通拡大文字列に関連した問題として、Shortest Common Supersequence, Longest Common Subsequence という問題があるが、近似率に関して [Jiang, Li: SIAM J. Comput. 1995] 以来、本質的な進歩がないと思われる 逆位によるソーティングの近似は 1.375 まで改良 [Berman et al.: Proc. ESA 2002] ソーティング問題はコピーや移動を許したものなど、様々な拡張がある