最大完全一致を用いた塩基配列のペアワイズアライメント
アプローチ
私たちの提案したアルゴリズムでは、配列を整列させるための最初のステップは、それらを直接比較することにより、配列間のMEMsを抽出することです。 図3aは、CTCとAAAが比較によって識別される二つのMEMsであるターゲットとクエリシーケンスを比較する例です。 比較における連続した同一のシンボルの各グループは、単一の一致するシンボルのみで構成されていてもMEMをもたらす。, シーケンス間のすべてのMEMsを抽出するためには、クエリシーケンスを一度に右および左のシンボルにずっとシフトする必要があります(図参照)。 3)。 各シフトの後、比較ステップを繰り返して新しいMEMsを識別する必要があります。 例えば、図中の第三の行。 3bは、クエリシーケンスが右一つのシンボルにシフトされ、ターゲットシーケンスと比較される場合を表す。 比較の結果は、AAAAGCを新しいMEMとして識別します。 Shiftおよびcompare操作によって抽出された他のすべてのMEMsもまた、図中で強調表示される。 3., MEMsの三つ(Mx、My、Mz)は、後の説明に使用するために異なる色で強調表示されています。
アフィンギャップスコアリングモデルでは、アライメントスコアASはEqを使用して計算されます。, 1ここで、NmはRmのマッチスコアを受け取る各マッチの数、NxはPxのミスマッチペナルティを受け取る各ミスマッチの数、NoはPoのギャップオープンペナルティを受け取る各ギャップ開口部の数、Ngはすべてのギャップの全長であり、Pgのギャップ延長ペナルティを受け取る各ギャップ。 連続ギャップの各グループのためのギャップの開口部があるでしょう。 たとえば、アライメントに二つのギャップがあり、第一のギャップの長さが三つ、第二のギャップの長さが四つである場合、二つのギャップ開口部(No=2)があり、ギャップの全長は七つ(Ng=3+4=7)である。,
すべてのMEMsのリストを考えると、アライメントは部分アライメントを使って計算することができます。 例えば、図中のMems Mx、MyおよびMzを考える。 3b.Mx、My、Mzの異なる組み合わせを取ることによって行われた部分的な整列と、一致、不一致、ギャップの数、および結果の整列スコアを図に示す。 4. MxおよびMzのみを含む整列は、最高の整列スコアになります。, MyおよびMzは互いに重なり合い、両者が同じ整列で考慮される場合、重なりはMzから除外されることに留意されたい。 すべてのMemsを考慮する。 3bの結果多くの組み合わせがなを実現しより高い。
MEMsのすべての可能な組み合わせを調べることは網羅的です。, に”アライメントアルゴリズム”について説明し新規な動的計画アルゴリズムDP-MEMる効を判定し、最適な組み合わせを考慮せずして出力します。 DP-MEMのニーズを知る部品の配列の一致が実際の記号は、dnaの塩基配列を決定した。 DP-MEMへの入力は、”MEM抽出”のセクションで説明されているMEM抽出プロセス中に取得されるターゲットおよびクエリシーケンス内のMEMsの位置付けです。, MEMsが位置でどのように表されるか、およびmemsが整列で結合されたときの一致、不一致、およびギャップの数がどのように計算されるかについては、このセクションの残りの部分で説明します。 図5は、ターゲットシーケンスTとクエリシーケンスQとの間のアライメントを形成する六つのMEMs(M1からM6)を用いた別のアライメントの例です。 各MEM Miは、整数の三重項として表されます:TおよびQ(それぞれSTiおよびSQi)の開始位置およびその長さ(Li)。, TおよびQの終了位置は後で計算できます(アルゴリズム2のΣ2E)。 表1は、TおよびQにおけるM1からM6までの長さと位置を示しています。
MiとMjの間にミスマッチとギャップの両方がある場合、すべてのギャップはギャップオープンペナルティを減らすために連続とみなされます(継続ギャップには一つのギャップオープンペナルティのみが適用されます)。 このように、全ての隣接するMEMsとして差し、ギャップを開刑が適用されます。, 不一致の配置と唯一の連続的なギャップは、整列スコアに影響を与えないため、重要ではありません。 ミスマッチペナルティは一定であると仮定する(これはDNA配列に対して通常である)。
MEM抽出
ゲノム全体などの長い配列間で最大の完全一致を抽出する方法があります。 しかしながら、これらの方法は、時間のかかる操作である一方または両方のシーケンスの前処理および索引付けに基づいている。 たとえば、DNA read alignerでは、参照ゲノムは一度インデックス付けされ、新しい読み取りが整列されるたびに同じインデックスが使用されます。, しているオクタコサノールはアルゴリズムをMEMsと比較的短い配列に変化する毎にアライメントを実施します。 この問題に対するブルートフォースメソッド(追加ファイル1:セクションII)は遅く、非効率的です(o(n3)の複雑さを伴います)。 MEM抽出過程を高速化するための高速ビットレベル並列法を提案した。 このMEM抽出法は,図に示すシフトおよび比較演算に基づいている。 3b.最初のステップは、a、C、T、およびGがそれぞれ00、01、10、および11としてエンコードされるビットベクトルでシーケンスを表すことです(追加ファイル1:セク, 図6に、対応するビットベクトル表現とともに、シーケンスペアの例を示します。 コモディティコンピュータでは、機械語は通常64ビットであり、32ヌクレオチド記号を収容できる。 シーケンスは通常32個のシンボルより大きいので、対応するビットベクトルは複数の機械語に格納されます。 サイズnシンボルのシーケンスのビットベクトルに対する各操作は、\(\lceil\frac{n}{32}\rceil\)マシンワードに作用します。
シーケンスのビットベクトル表現では、シーケンスを一つのシンボルでシフトすることは、ビットベクトルを二つのビットでシフトすることと同じであり、シーケンスを比較することはXOR命令(一度に32個のシンボル)で行うことができる。 XOR出力(X)では、00はシンボルが一致することを意味し、00sのシーケンスはMEMを示します。, アルゴリズム1に示されているシフト演算とビット演算のセットは、Xを計算し、その後、各MEMの開始と終了がset bits(値がoneのbits)で強調表示されるエッジビットベクトル(E)を計算します。 図6は、ハイライトされたMEMsを持つXとEビットベクトルを示しています。 シーケンス内のMEMsの位置は、エッジビットベクトルから計算されます(追加ファイル1:セクションIV)。,
アライメントアルゴリズム
“アプローチ”セクションでは、MEMsの異なる組み合わせを考慮し、対応するアライメントのアライメントスコアを計算することによって、最大アライメントスコアをもたらすMEMsの組み合わせを識別できることを示している。 しかし、MEMsの可能なすべての組み合わせを調べることは素朴な解決策です。 線形を効率的に見つけるより体系的な方法は、動的計画法を使用することです。
動的計画法は、より小さな部分問題を定義して解決することによって、問題の解決策に近づく方法です。, 部分問題の解は、各ステップでより大きな問題を解決するために使用されます。 このプロセスは、すべての副問題が解決されるまで繰り返されます。 最終的には、サブ問題のいずれかに対する解決策は、最初の問題に対する解決策になります。 すべてのサブ問題が解決されると、バックトラッキングプロセスは、最終的な解決策に寄与する一連の解決策を特定します。 動的計画法では、再帰手順が進む入力データの順序付けがあるはずです。
すべてのMEMsを、クエリシーケンス(EQ)の終わりの位置に従ってソートします。, 同じ位置で終わるMEMsは、任意の方法で順序付けられます。 J番目の部分問題は、j番目のMEM Mj(それぞれTとQ)で終わるTとQの部分列の整列を見つけることです。 このMEMの順序付けが正しい再帰をサポートするのに十分であることを示します。Memsのソートされたリストにおいて、Eqi=Eqjは、MiまたはMjのうちの一方が、問合せシーケンス内の他方のMEMと完全に重なることを示す。 アルゴリズム2のΣ2Bでは重なり領域が除外されるため、MiとMjは同じアライメントにすることはできません。, したがって、i番目とj番目の部分問題は互いに独立して解決され、ソートされたリスト内のiとjの順序は任意である可能性があります。 EQk>EQj(ソートされたリストのk>j)の場合、Mkはmjで終わるアライメントの一部にすることができませんでした。 したがって、j番目の部分問題は、k番目の部分問題への解から独立して解くことができます。 同様の正当化を用いて、標的配列(ET)における終了位置に基づいてMemsをソートすることも可能であることに留意されたい。
私たちの提案した動的計画法アルゴリズム(DP-MEM)は、アルゴリズム2で詳述されています。, 例えば、図で抽出されたMemsについて。 図3bに示すように、アルゴリズムで計算された動的計画表および中間値を図に示す。 それぞれ7と8。 DP-MEMへの入力はMemsのリストであり、各MEM(Mj)は整数の三重項である。 第二の入力nは、リスト内のMEMsの数です。 出力Sは、シーケンスのアライメントスコアです。 このアルゴリズムは、整列を形成するすべてのMEMsのインデックスを出力します。ここで、最初と最後に印刷される数値は、それぞれ整列の右端と左端のMEMsのインデックスです。, アルゴリズム2のすべてのステップは、次のようにコメントされています。
-
Φ1:それぞれのMEMをマッチするすべてのシンボルに対してスコアリングします。, MjにはLj一致するシンボルがあることに注意してください。 Sjは、Mjで終わる整列の最高の整列スコアを表します。 このステップにおけるSjの初期化は、mjのみが整列に含まれる場合の部分整列スコアの計算と同様である。 Wはバックトラッキングに使用されます。 -1の値は、アライメントにおいてMjのみを考慮して現在のSjが得られることを示します。
-
Φ2:各MEM(Mj)に対してSjを計算する。, Sjを計算するために、Miがリスト内のMjの前に現れる各MEM Miについて、アルゴリズムはMiで終わる整列にMjを追加し(以前に見つかった整列を拡張する)、Sjを最大にする拡張を探します(以前に解決された部分問題を使用してより大きな部分問題を解決する)。
-
Φ2A:拡張ができない場合はスキップします。 ETi>ETjの場合、Miはmjで終わるアライメントを超えているターゲットシーケンスの一部を含み、拡張は不可能です。 Eqi=EqjまたはEti=EtjまたはSqi≦SqjまたはSti≦Stjの場合、一方のMemsは他方のMEMSと完全に重なる。, この場合、MiおよびMjは互いに整列することができない。
-
Φ2B:MiとMjの間のオーバーラップの長さを計算する。 \({MO}_{i}^{j}\)がゼロ以下であれば、重複は存在しません。
-
①2C:重複を除外する前にMjのコピーを保持します。
-
Φ2D:重複が存在する場合、Mjから重複を除く
-
Φ2E:TとQにおけるMjの終了位置の計算
-
Φ2F:TとQにおけるMiとMjの間の距離(シンボル数)の計算
-
Φ2G:MiとMjの間のミスマッチとギャップの数の計算。,P>
-
Φ2H:MiとMjの間の不一致とギャップに対するペナルティを計算する(\(P_{i}^{j}\))。 ギャップが存在し、ギャップを開刑を差し引いて算出される.
-
Φ2I:Miで終わる整列にMjを追加したときの整列スコア\(\left(S_{i}^{j}\right)\)を計算します。 Mj(Lj×Rm)内の全てのマッチングシンボルのスコアが、Mi(Si)で終わるアライメントのアライメントスコアに加算される。 次に、MiとMj\(\left(P_{i}^{j}\right)\)の間のギャップと不一致に対するペナルティが減算されます。,Φ2J:MjをMiで終わるアライメントに拡張すると、Mj(Sj)の現在のスコアよりも高いスコア\(\left(S_{i}^{j}\right)\)になる場合、新しいスコアはSjに格納されます。 また、Wは、Mjのスコアを最大化するMiを追跡するためにiに設定されています。
-
Φ2K:除外前にMjの値を復元して、Mjを他のアライメント拡張で使用できるようにします。
-
Φ3:最も高いSjを持つMEMを探しています。 このMEMは、アライメント(Me)の最後のMEMです。, 最高のスコア(Se)は、指定されたシーケンスの最高のアライメントスコアであるSとして返されます。 Sjを最大化するMEMのインデックスは、meからのバックトラッキングを開始するためにeに格納される。
-
Φ4:整列では、私にとって直前のMEMは、私の整列スコアを最大化するものです。 このようなMEMのインデックスは、Wに格納される。 Wが-1に等しい場合、Mfはアライメントの最初のMEMであり、反復は停止されます。,
このアルゴリズムでは、アライメントの最初のMEMの前と最後のMEMの後に不一致とギャップを罰することはありません。 これにより、ローカルアライメントアルゴ これらのペナルティを考慮することにより、アルゴリズムはグローバルアライメントを生成
アルゴリズム2のΣ2Hで\(P_{i}^{j}\)を計算する式は、MiとMjの間の領域にTとQの間に一致するシンボルがないことを前提としています(すべてのシンボルはミスマッチまたはギャップとしてカウントされます)。, この仮定はすべてのMiに当てはまるわけではありませんが、最大\(S_{i}^{j}\)につながるMiについては常に真であり、これは他のMiに対して正しくないという仮定の効果を覆します。 証明として、MiとMjの間の領域に一致するシンボルがあると仮定します。 マッチングシンボルはMEM(Mk)になります。 MkはすでにMiで終わるアライメントに拡張されています。 したがって、MjをMkに延長する場合、MjをMiに延長する場合と比較して、より高いスコアが達成される。
で議論されているようなコリニア種子を連鎖させることは、大きな配列の整列、すなわちゲノム対ゲノムの整列に広く使用されている。, また、BWA内のMEMsのセットを与えられた読み取りのための候補領域を識別するためにも使用されています。 スコア付き連鎖アルゴリズムは,提案した動的計画法アルゴリズム(DP-MEM)と同様である。 しかしながら、DP-MEMを短い配列のペアワイズアライメントに適するようにする違いがある。 DP-MEMは、特定のギャップサイズ内のすべてのMEMsが入力に提供されることを考慮し、アルゴリズムの反復回数を最適化します。 DP-MEMはまた、MEMs間のギャップを生じる入力リストから削除された短いMEMsの影響を補償するためのヒューリスティックアプローチを実装します。,
最適化
長さnのシーケンスが与えられると、MEMsを抽出するアルゴリズム(”MEM抽出”セクションで提供)には、ビットベクトルに対する2(n−1)シフトと2n−1の比較演算(それぞれ\(\lceil\frac{n}{32}\rceil\)マシンワードに作用する)が必要であり、o(n2)の複雑さを持つアルゴリズムが与えられたシーケンスのペアに対するエッジビットベクトルを生成する。 エッジビットベクトルからMEMsの位置決めを計算し、EQに基づいてソートする関数の複雑さはまだ追加されていません。 さらに、m個のMEMsを抽出すると、アルゴリズム2(DP-MEM)のΣ2はO(m2)の複雑さを有する。, MEM抽出とDP-MEMの複雑さを考慮すると、MEM-Alignは利用可能なアライメントアルゴリズムよりもはるかに遅くなります。 プロセスを高速化するために,精度を犠牲にしてより高速なランタイムを達成するMEM-Alignのためのいくつかの最適化を提示した。 一方,性能損失を最小限に抑えて精度を向上させる方法を導入した。
バンドアライメント
バンドアライメントは、アライメントプロセスを高速化するための既知のヒューリスティックな方法です。 この手法は、アライメントのギャップのパターンを制限します(追加ファイル1:セクションVI)。, したがって、二つのシーケンス間の整列がこのパターンに従わない場合、アルゴリズムは整列を識別しません。 従来の動的計画法では、テーブル内のすべてのセルの値を計算した後にアライメントが取得されます。 ただし、バンド付きアライメント最適化では、直径上および対角に近いセルのみが評価されます。 glは、glよりも直径に対して遠いセルが評価されないバンドアライメントのバンドの幅です。 図中の暗いセル。 図1は、gl=1の場合を示しています。,
従来の動的計画法とは異なり、MEM-Alignにはバンドアライメントを適用する同様のテーブルがありません。 しかし,MEM抽出過程におけるシフト操作の数を制限することにより,同じ効果をシミュレートできることを見いだした。 たとえば、クエリシーケンスをglまで右および左にシフトすると、glのバンドとのバンドアライメントが達成されます。 バンドアライメントは、glが小さく固定値であるO(n2)からO(n.(2gl+1))へのMEM抽出の複雑さを減らします。 したがって、mem抽出の複雑さは、帯状整列が適用されるときにO(n)である。, また、前記バンドアライメントでは、後続のアルゴリズムステップを高速化するより少ないMEMsが抽出される可能性があります。
ショートMEM除去
我々は、抽出されたMEMsの大部分が短く、ランダムに一致するシンボルの結果であることを観察した。 MEM-Alignを高速化するために、slより短いMEMsはMEM抽出プロセス中にフィルタリングされます。 これにより、抽出および処理されるMEMsの数が減少します(その後、アルゴリズムが高速化されます)。 フィルタリング短MEMによる拡張アルゴリズムを1セットのシフトとビット単位操作(追加のファイルの1:セクション。,
一方、短いMEMsがアライメントの一部であることはまれであり、例えば、不一致で囲まれたマッチングシンボルなどがあります。 すべてのMEMsを入力リストに含めないと、DP-MEMは、すべてのMEMsが入力リストに存在する場合に検出されるのと同じ配置を見つけることができません。 入力で失われた短いMEMsを補償するために、DP-MEMのΣ2Hを修正して、MEMs間で短い一致がある可能性を考慮します(追加ファイル1:セクションVIII)。
アライメントにおいて、二つのMEMsの間に複数の短いMEMsが存在する場合がより困難な場合があるかもしれない(図参照)。 9)., Σ2HのMiとMjの間の領域のスコアを正しく識別する唯一の方法は、この領域にグローバルアライメントを適用することです。 しかし、Φ2Hは頻繁な操作であり、高速のままである必要があります。 その結果,可能な場合を制限することによって問題を部分的に克服することを決定した(ヒューリスティック法)。
MiとMjの間の領域にギャップがある場合、左端または右エリアの終わり。 その後、エリアに対して二つの整列のみが可能です。, 一致するシンボルの数は、両方の場合について逐次的にカウントされ、最大一致をもたらすシンボルは、MiとMjの間の一致数として取られる(追加ファイル1:セクションIX)。 順次比較は高価な操作であり、可能であれば順次比較を避ける方法を考案しています(追加ファイル1:セクションX)。
上記の仮定に適合しないその他のケースは、より低いスコアとの整列をもたらします。, しかし、ギャップやミスマッチの割合が低いことを考えると、小さな領域で複数のギャップやミスマッチを有する可能性は低い。
効率的なアライメント拡張
DP-MEMのΦ2では、Mjは{M1…Mj−1}で終わるすべてのアライメントを拡張します(可能であれば)。 しかしながら、各Mjに対して、より小さな部分集合Ωj∈{M1…Mj−1}が存在し、MjをMi∈Ωjで終わるすべての整列に拡張することによって、Mjで終わる整列が見つかる(Eq. 2). 言い換えれば、評価される\(S_{i}^{j}\)は少なくなります。 集合Ωjの定義とEqの証明。 2は、追加ファイル1:セクションXIに提供されています。, Ωjの定義は、短いMEM除去の最適化が適用されると影響を受けます(追加ファイル1:セクションXII)。
ハイブリッドアライメント
アルゴリズムの精度を維持するために、ハイブリッドアライメント
アルゴリズムの精度を維持するために、ハイブリッドアライメントを使用することにしました。mem-alignアルゴリズムとsmith-watermanアルゴリズムの組み合わせであるメソッド。 MEM-Alignが不正確である可能性がある三つのケースを定義した。, シーケンスのペアの整列がこれらのケースのいずれかに落ちる場合、Smith-Watermanアルゴリズムを使用してシーケンスを整列させます。 配列が反復的であり、抽出されたMemsの数が閾値TMを超える場合、これらのケースは、</p><ul><li><p>である。 このMEM-Alignが出不正確な配向が揃えの繰り返し配列です。 適切なTM値は、平均処理時間の無視できる増加と不正確なアライメントを報告する可能性を減少させます。,MEM-Alignによって生成された整列に対する計算された整列スコアが閾値TSよりも低い場合に、MEM-Alignによって生成された整列に対する算出された整列スコア この場合に心がギャップがありますが、配置を特定できないよ帯状にアライメントを実施します。
slより長いMEMが抽出されない場合(まれなケース)。, Slが高い値に設定され、シーケンス間の類似性が低い場合、</p></li></ul><p>外部アルゴリズムにシーケンスペアを送信すると追加の計算が行われるが、TMおよびTSに対して適切な値が選択されれば、外部アルゴリズムに送信されるシーケンスの数は小さいままである。
遠くのMEMsをスキップ
MiとMjの距離が大きい場合、アライメントにおいてMiとMjを隣接MEMsとして持つ可能性は低い。, したがって、MiとMjとの間の距離が閾値TDよりも長い(評価されるべき\(S_{i}^{j}\)の数をさらに減少させる)場合、アルゴリズムは拡張をスキップする。 この最適化はわずかに正確さに対する僅かな副作用の性能を改善する。