JP3530842B2 - 核酸塩基配列アセンブル装置及びその動作方法 - Google Patents
核酸塩基配列アセンブル装置及びその動作方法Info
- Publication number
- JP3530842B2 JP3530842B2 JP2001353640A JP2001353640A JP3530842B2 JP 3530842 B2 JP3530842 B2 JP 3530842B2 JP 2001353640 A JP2001353640 A JP 2001353640A JP 2001353640 A JP2001353640 A JP 2001353640A JP 3530842 B2 JP3530842 B2 JP 3530842B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- nucleic acid
- acid base
- length
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 104
- 108020004707 nucleic acids Proteins 0.000 title claims description 84
- 102000039446 nucleic acids Human genes 0.000 title claims description 84
- 150000007523 nucleic acids Chemical class 0.000 title claims description 82
- 108091035707 Consensus sequence Proteins 0.000 claims description 71
- 239000002773 nucleotide Substances 0.000 claims description 3
- 125000003729 nucleotide group Chemical group 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 2
- 238000011017 operating method Methods 0.000 claims 3
- 244000309464 bull Species 0.000 claims 2
- -1 nucleic acid salt Chemical class 0.000 claims 2
- 229920003026 Acene Polymers 0.000 claims 1
- 239000002253 acid Substances 0.000 claims 1
- MWPLVEDNUUSJAV-UHFFFAOYSA-N anthracene Chemical compound C1=CC=CC2=CC3=CC=CC=C3C=C21 MWPLVEDNUUSJAV-UHFFFAOYSA-N 0.000 claims 1
- 238000012545 processing Methods 0.000 description 32
- 238000004364 calculation method Methods 0.000 description 25
- 238000003491 array Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 18
- 108020004999 messenger RNA Proteins 0.000 description 16
- 108090000623 proteins and genes Proteins 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 5
- 239000002299 complementary DNA Substances 0.000 description 5
- 108020004414 DNA Proteins 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 108091032973 (ribonucleotides)n+m Proteins 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 241000588724 Escherichia coli Species 0.000 description 2
- 241000699666 Mus <mouse, genus> Species 0.000 description 2
- 108091081062 Repeated sequence (DNA) Proteins 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000012268 genome sequencing Methods 0.000 description 2
- 102000004169 proteins and genes Human genes 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000001712 DNA sequencing Methods 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 241001599018 Melanogaster Species 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 238000012300 Sequence Analysis Methods 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000007850 fluorescent dye Substances 0.000 description 1
- 238000010230 functional analysis Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 244000005700 microbiome Species 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 238000010839 reverse transcription Methods 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 238000011896 sensitive detection Methods 0.000 description 1
- 241000894007 species Species 0.000 description 1
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
- G16B30/10—Sequence alignment; Homology search
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
- G16B30/20—Sequence assembly
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biophysics (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Apparatus Associated With Microorganisms And Enzymes (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
【0001】
【発明の属する技術分野】本発明は、多数の核酸塩基配
列を高速にクラスタリング及びアセンブルする方法に関
する。
列を高速にクラスタリング及びアセンブルする方法に関
する。
【0002】
【従来の技術】国際共同プロジェクト及び米国ベンチャ
ー企業により、2000年6月にヒトゲノムの塩基配列決定
の完了が宣言された。4色蛍光色素やキャピラリを使用
したDNAシーケンサの普及など、DNA配列決定技術の進歩
に伴い、E.coli、S.cerevisiaeを始めとする数十種類の
微生物や、C. elegans、D.melanogasterなど多細胞生物
の全ゲノム配列が決定され、ヒトゲノムのドラフト配列
も利用可能となった。他にもマウスやイネなど、様々な
生物種のゲノムプロジェクトが進行中である。
ー企業により、2000年6月にヒトゲノムの塩基配列決定
の完了が宣言された。4色蛍光色素やキャピラリを使用
したDNAシーケンサの普及など、DNA配列決定技術の進歩
に伴い、E.coli、S.cerevisiaeを始めとする数十種類の
微生物や、C. elegans、D.melanogasterなど多細胞生物
の全ゲノム配列が決定され、ヒトゲノムのドラフト配列
も利用可能となった。他にもマウスやイネなど、様々な
生物種のゲノムプロジェクトが進行中である。
【0003】ゲノム配列の解析が進む一方で、発現して
いる遺伝子について調べるために、mRNAの解析が行なわ
れている。mRNAは、遺伝子が発現する際、ゲノムDNAか
ら生成されるRNA分子で、遺伝子の機能発現の過程で不
可欠な物質である。mRNA分子は分解しやすいが、逆転写
により容易にmRNAよりも安定な物質であるcDNAに転換で
きるため、cDNAの形で解析されることが多い。cDNAをシ
ングルパス配列解析して得られた配列は、ESTと呼ばれ
る。ESTには様々な利用価値があるが、そのひとつがmRN
A配列を得ることである。図13は、mRNA由来のESTのク
ラスタリング及びアセンブル処理の概要を説明する図で
ある。
いる遺伝子について調べるために、mRNAの解析が行なわ
れている。mRNAは、遺伝子が発現する際、ゲノムDNAか
ら生成されるRNA分子で、遺伝子の機能発現の過程で不
可欠な物質である。mRNA分子は分解しやすいが、逆転写
により容易にmRNAよりも安定な物質であるcDNAに転換で
きるため、cDNAの形で解析されることが多い。cDNAをシ
ングルパス配列解析して得られた配列は、ESTと呼ばれ
る。ESTには様々な利用価値があるが、そのひとつがmRN
A配列を得ることである。図13は、mRNA由来のESTのク
ラスタリング及びアセンブル処理の概要を説明する図で
ある。
【0004】mRNA 1301をcDNAに転換したとき、5'末端
を含む完全長cDNAを得ることは困難であり、これらのcD
NAに基づくEST 1302は、図13のように、通常5'端が不
揃いな配列である。細胞や組織の全RNAから作成したcDN
Aライブラリ由来のESTを解析する場合には、EST配列集
合1303のみが得られ、各ESTがどのmRNAから得られたも
のか予め知ることができない。EST 1302を収集した配列
集合1303を、配列間の類似部分1305に基づき各配列を結
合(アセンブル)し、矢印1304で象徴的に示すように小
さい集合に分割(クラスタリング)することで、同一mR
NAから得られたESTを同定し、さらにmRNAの配列を部分
的に再構成した配列1306を得ることができる。
を含む完全長cDNAを得ることは困難であり、これらのcD
NAに基づくEST 1302は、図13のように、通常5'端が不
揃いな配列である。細胞や組織の全RNAから作成したcDN
Aライブラリ由来のESTを解析する場合には、EST配列集
合1303のみが得られ、各ESTがどのmRNAから得られたも
のか予め知ることができない。EST 1302を収集した配列
集合1303を、配列間の類似部分1305に基づき各配列を結
合(アセンブル)し、矢印1304で象徴的に示すように小
さい集合に分割(クラスタリング)することで、同一mR
NAから得られたESTを同定し、さらにmRNAの配列を部分
的に再構成した配列1306を得ることができる。
【0005】ヒトの場合、mRNAはタンパク質数に対応し
10万種類以上存在すると言われ、入力として与えられた
ESTなどの配列データをクラスタリング及びアセンブル
することで、これらのmRNA配列それぞれに対応するアセ
ンブリが得られることが理想である。現在、米国公共機
関のデータベースには、未整理のヒト由来ESTが約200万
配列、遺伝子毎のクラスタにクラスタリングされたEST
を含めたヒトmRNA由来の遺伝子の配列が約150万配列存
在する。ゲノム配列決定が進み、遺伝子の機能解析へと
研究の焦点が移りつつあり、解析が必要なmRNA由来の配
列数も、さらに増加していくと推測される。
10万種類以上存在すると言われ、入力として与えられた
ESTなどの配列データをクラスタリング及びアセンブル
することで、これらのmRNA配列それぞれに対応するアセ
ンブリが得られることが理想である。現在、米国公共機
関のデータベースには、未整理のヒト由来ESTが約200万
配列、遺伝子毎のクラスタにクラスタリングされたEST
を含めたヒトmRNA由来の遺伝子の配列が約150万配列存
在する。ゲノム配列決定が進み、遺伝子の機能解析へと
研究の焦点が移りつつあり、解析が必要なmRNA由来の配
列数も、さらに増加していくと推測される。
【0006】アセンブルの技術は、ゲノム配列決定にも
必須である。ゲノム配列の決定には、主にショットガン
法が用いられる。ショットガン法による配列決定では、
長いDNAを多数の細かい断片に分解してクローニングを
行ない、各断片の配列を決定し、配列アセンブルを行っ
て全体の配列を決定する。例えば、大腸菌のゲノム配列
は、約4639K塩基で、通常必要とされる冗長度10のショ
ットガン法で決定するためには、DNAシーケンサによる
一回の泳動で得られる配列の長さが500塩基程度である
ことを考慮すると、4.639×106×10/500=9.278×105配
列のアセンブルが必要になる。C. elegans、マウス、ヒ
ト等の高等生物では、ゲノムサイズがさらに2〜3桁大き
いため、これらのゲノム決定に要する配列数は1千万〜1
億に達すると推定される。今後さまざまな生物のゲノム
配列が決定されていく中で、アセンブルの対象となる塩
基配列の数は、さらに増加していくことが予想される。
必須である。ゲノム配列の決定には、主にショットガン
法が用いられる。ショットガン法による配列決定では、
長いDNAを多数の細かい断片に分解してクローニングを
行ない、各断片の配列を決定し、配列アセンブルを行っ
て全体の配列を決定する。例えば、大腸菌のゲノム配列
は、約4639K塩基で、通常必要とされる冗長度10のショ
ットガン法で決定するためには、DNAシーケンサによる
一回の泳動で得られる配列の長さが500塩基程度である
ことを考慮すると、4.639×106×10/500=9.278×105配
列のアセンブルが必要になる。C. elegans、マウス、ヒ
ト等の高等生物では、ゲノムサイズがさらに2〜3桁大き
いため、これらのゲノム決定に要する配列数は1千万〜1
億に達すると推定される。今後さまざまな生物のゲノム
配列が決定されていく中で、アセンブルの対象となる塩
基配列の数は、さらに増加していくことが予想される。
【0007】
【発明が解決しようとする課題】莫大な数の核酸塩基配
列について、各配列の相互の関係を調べ、クラスタリン
グやアセンブルを行うのは、計算時間の観点から困難で
ある。配列のクラスタリング及びアセンブルでは、配列
間に存在するオーバーラップをいかに効率的に探索する
かが課題となる。単純に、あらゆる配列間でオーバーラ
ップを探索すると、配列数の2乗のオーダーの組み合わ
せを探索する必要があり、配列数の増加に伴い処理時間
の急激な増加を招く。しかし、クラスタリング及びアセ
ンブルの処理全体のオーダーは、配列数の2乗のオーダ
ーよりもずっと小さいオーダーであることが望ましい。
列について、各配列の相互の関係を調べ、クラスタリン
グやアセンブルを行うのは、計算時間の観点から困難で
ある。配列のクラスタリング及びアセンブルでは、配列
間に存在するオーバーラップをいかに効率的に探索する
かが課題となる。単純に、あらゆる配列間でオーバーラ
ップを探索すると、配列数の2乗のオーダーの組み合わ
せを探索する必要があり、配列数の増加に伴い処理時間
の急激な増加を招く。しかし、クラスタリング及びアセ
ンブルの処理全体のオーダーは、配列数の2乗のオーダ
ーよりもずっと小さいオーダーであることが望ましい。
【0008】クラスタリング及びアセンブルのためのオ
ーバーラップの探索を効率的に行う手法としては、Huan
g, X. and Madan, A., Genome Research,9:868-877, 19
99の方法が挙げられる。しかし、依然として処理する必
要があるオーバーラップの数は、配列数の2乗のオーダ
ーとなり、クラスタリング及びアセンブル処理全体も配
列数の2乗のオーダーとなってしまう。クラスタリング
及びアセンブル処理の対象となる配列数は、これまで増
加の一途をたどってきており、今後もさらに増加するこ
とが予想される。本発明は、このような従来技術の問題
点に鑑み、配列のクラスタリング及びアセンブル処理を
入力配列数の2乗よりも小さいオーダーの計算量で行な
い、多数の核酸塩基配列を高速にクラスタリング及びア
センブルする方法及び装置を提供することを目的とす
る。
ーバーラップの探索を効率的に行う手法としては、Huan
g, X. and Madan, A., Genome Research,9:868-877, 19
99の方法が挙げられる。しかし、依然として処理する必
要があるオーバーラップの数は、配列数の2乗のオーダ
ーとなり、クラスタリング及びアセンブル処理全体も配
列数の2乗のオーダーとなってしまう。クラスタリング
及びアセンブル処理の対象となる配列数は、これまで増
加の一途をたどってきており、今後もさらに増加するこ
とが予想される。本発明は、このような従来技術の問題
点に鑑み、配列のクラスタリング及びアセンブル処理を
入力配列数の2乗よりも小さいオーダーの計算量で行な
い、多数の核酸塩基配列を高速にクラスタリング及びア
センブルする方法及び装置を提供することを目的とす
る。
【0009】
【課題を解決するための手段】本発明は、配列のクラス
タリング及びアセンブルにおけるオーバーラップ探索を
効率よく行うために、以下の核酸塩基配列のアセンブル
方法を提供する。すなわち、本発明による核酸塩基配列
のアセンブル方法は、第1の核酸塩基配列上で固定長の
ウインドウを移動させながら、当該ウインドウによって
切り取られた配列と一致する部分配列を末端領域に有す
る第2の核酸塩基配列を探索する工程と、前記工程で探
索された第2の核酸塩基配列と第1の核酸塩基配列とが
アセンブル可能かどうか判定する工程と、前記工程でア
センブル可能と判定された場合、第1の核酸塩基配列と
第2の核酸塩基配列とをアセンブルする工程とを含むこ
とを特徴とする。
タリング及びアセンブルにおけるオーバーラップ探索を
効率よく行うために、以下の核酸塩基配列のアセンブル
方法を提供する。すなわち、本発明による核酸塩基配列
のアセンブル方法は、第1の核酸塩基配列上で固定長の
ウインドウを移動させながら、当該ウインドウによって
切り取られた配列と一致する部分配列を末端領域に有す
る第2の核酸塩基配列を探索する工程と、前記工程で探
索された第2の核酸塩基配列と第1の核酸塩基配列とが
アセンブル可能かどうか判定する工程と、前記工程でア
センブル可能と判定された場合、第1の核酸塩基配列と
第2の核酸塩基配列とをアセンブルする工程とを含むこ
とを特徴とする。
【0010】本発明による核酸塩基配列のアセンブル方
法は、また、第1の核酸塩基配列上で固定長のウインド
ウを移動させながら、当該ウインドウによって切り取ら
れた配列と一致する部分配列を末端領域に有する第2の
核酸塩基配列を探索する工程と、前記工程で探索された
第2の核酸塩基配列と第1の核酸塩基配列とがアセンブ
ル可能かどうか判定する工程と、前記工程でアセンブル
可能と判定された場合、第1の核酸塩基配列と第2の核
酸塩基配列とをアセンブルする工程とを含み、前記工程
でアセンブルされた核酸塩基配列を改めて第1の核酸塩
基配列として前述の工程を反復することを特徴とする。
法は、また、第1の核酸塩基配列上で固定長のウインド
ウを移動させながら、当該ウインドウによって切り取ら
れた配列と一致する部分配列を末端領域に有する第2の
核酸塩基配列を探索する工程と、前記工程で探索された
第2の核酸塩基配列と第1の核酸塩基配列とがアセンブ
ル可能かどうか判定する工程と、前記工程でアセンブル
可能と判定された場合、第1の核酸塩基配列と第2の核
酸塩基配列とをアセンブルする工程とを含み、前記工程
でアセンブルされた核酸塩基配列を改めて第1の核酸塩
基配列として前述の工程を反復することを特徴とする。
【0011】本発明による核酸塩基配列のアセンブル方
法は、また、複数の核酸塩基配列について、各核酸塩基
配列を識別する情報と当該核酸塩基配列の末端領域に位
置する固定塩基長の部分配列とを関連づけてテーブルに
登録する工程と、第1の配列に基づき最初のコンセンサ
ス配列を構築する工程と、テーブルを参照して、コンセ
ンサス配列の一部と一致する部分配列を有する核酸塩基
配列を探索する工程と、前記工程で探索された核酸塩基
配列とコンセンサス配列間の前記部分配列に連続する配
列同士を比較し、探索された核酸塩基配列がコンセンサ
ス配列にアセンブル可能かどうかを判定する工程と、前
記工程でアセンブル可能と判定された場合、コンセンサ
ス配列に当該核酸塩基配列をアセンブルしてコンセンサ
ス配列を再構築する工程とを有することを特徴とする。
法は、また、複数の核酸塩基配列について、各核酸塩基
配列を識別する情報と当該核酸塩基配列の末端領域に位
置する固定塩基長の部分配列とを関連づけてテーブルに
登録する工程と、第1の配列に基づき最初のコンセンサ
ス配列を構築する工程と、テーブルを参照して、コンセ
ンサス配列の一部と一致する部分配列を有する核酸塩基
配列を探索する工程と、前記工程で探索された核酸塩基
配列とコンセンサス配列間の前記部分配列に連続する配
列同士を比較し、探索された核酸塩基配列がコンセンサ
ス配列にアセンブル可能かどうかを判定する工程と、前
記工程でアセンブル可能と判定された場合、コンセンサ
ス配列に当該核酸塩基配列をアセンブルしてコンセンサ
ス配列を再構築する工程とを有することを特徴とする。
【0012】最初のコンセンサス配列を構築するための
第1の配列としては、未処理の核酸塩基配列中で最長の
塩基長を有する配列を選択する。1回のアセンブルが終
了する度に、テーブルからコンセンサス配列にアセンブ
ルされた核酸塩基配列に由来するエントリを削除するの
が好ましい。
第1の配列としては、未処理の核酸塩基配列中で最長の
塩基長を有する配列を選択する。1回のアセンブルが終
了する度に、テーブルからコンセンサス配列にアセンブ
ルされた核酸塩基配列に由来するエントリを削除するの
が好ましい。
【0013】本発明による核酸塩基配列のアセンブル方
法は、また、複数の核酸塩基配列を配列長の降順にソー
トする第1の工程と、複数の核酸塩基配列について、各
核酸塩基配列を識別する情報と当該核酸塩基配列の末端
領域に位置する固定塩基長の部分配列とを関連づけてテ
ーブルに登録する第2の工程と、未処理の複数の核酸塩
基配列の中から配列の長さが最長の核酸塩基配列を1つ
選びコンセンサス配列を構築する第3の工程と、コンセ
ンサス配列上で固定長ウィンドウを移動させつつ、前記
テーブルを参照して、固定長ウィンドウによって切り取
られた配列と一致する部分配列を有する未処理の核酸塩
基配列を探索する第4の工程と、コンサンサス配列と第
4の工程で探索された未処理の核酸塩基配列とを比較
し、両者がアセンブル可能であるか否かを判定する第5
の工程と、第5の工程でアセンブル可能と判定された場
合、コンセンサス配列に第4の工程で探索された核酸塩
基配列をアセンブルし、コンセンサス配列を再構築する
第6の工程とを含み、固定長ウィンドウがコンセンサス
配列の全領域を走査するまで第4の工程から第6の工程
を反復し、さらに未処理の核酸塩基配列が残っていれば
第3の工程から第6の工程を反復することを特徴とす
る。
法は、また、複数の核酸塩基配列を配列長の降順にソー
トする第1の工程と、複数の核酸塩基配列について、各
核酸塩基配列を識別する情報と当該核酸塩基配列の末端
領域に位置する固定塩基長の部分配列とを関連づけてテ
ーブルに登録する第2の工程と、未処理の複数の核酸塩
基配列の中から配列の長さが最長の核酸塩基配列を1つ
選びコンセンサス配列を構築する第3の工程と、コンセ
ンサス配列上で固定長ウィンドウを移動させつつ、前記
テーブルを参照して、固定長ウィンドウによって切り取
られた配列と一致する部分配列を有する未処理の核酸塩
基配列を探索する第4の工程と、コンサンサス配列と第
4の工程で探索された未処理の核酸塩基配列とを比較
し、両者がアセンブル可能であるか否かを判定する第5
の工程と、第5の工程でアセンブル可能と判定された場
合、コンセンサス配列に第4の工程で探索された核酸塩
基配列をアセンブルし、コンセンサス配列を再構築する
第6の工程とを含み、固定長ウィンドウがコンセンサス
配列の全領域を走査するまで第4の工程から第6の工程
を反復し、さらに未処理の核酸塩基配列が残っていれば
第3の工程から第6の工程を反復することを特徴とす
る。
【0014】前記方法は、1つの核酸塩基配列に対して
前記テーブルに登録する固定塩基長の部分配列の数を指
定する工程を含むことができる。また、前記テーブルに
登録する固定塩基長の部分配列を抽出する核酸塩基配列
の末端領域の範囲を指定する工程を含むことができる。
前記テーブルに登録する固定塩基長の部分配列の数を指
定する工程を含むことができる。また、前記テーブルに
登録する固定塩基長の部分配列を抽出する核酸塩基配列
の末端領域の範囲を指定する工程を含むことができる。
【0015】前記テーブルに登録する固定塩基長の部分
配列の塩基長は、処理速度低下を防ぐために、テーブル
参照時に検出される配列間オーバーラップと無関係なエ
ントリ数を抑制する必要があるため、少なくとも10塩基
以上とするのが好ましく、かつ、1計算機ワードが32bit
sの計算機であれば2ワード、64bitsの計算機ならば1ワ
ードで表現可能な32塩基以下とすることが好ましい。
配列の塩基長は、処理速度低下を防ぐために、テーブル
参照時に検出される配列間オーバーラップと無関係なエ
ントリ数を抑制する必要があるため、少なくとも10塩基
以上とするのが好ましく、かつ、1計算機ワードが32bit
sの計算機であれば2ワード、64bitsの計算機ならば1ワ
ードで表現可能な32塩基以下とすることが好ましい。
【0016】前記方法は、前記テーブルを一回参照した
とき探索され、かつコンセンサス配列とアセンブル不可
能であると判定されるエントリの数の期待値の上限値c
を指定する工程を含み、複数の核酸塩基配列の数をN、
各核酸塩基配列から選択される固定塩基長の部分配列の
数をKとするとき、後述する式(1)を満足する整数sを
前記テーブルに登録する固定塩基長の部分配列の塩基長
とすることが、さらに好ましい。コンセンサス配列を格
納するデータ構造には双方向リストを使用するのが好ま
しい。
とき探索され、かつコンセンサス配列とアセンブル不可
能であると判定されるエントリの数の期待値の上限値c
を指定する工程を含み、複数の核酸塩基配列の数をN、
各核酸塩基配列から選択される固定塩基長の部分配列の
数をKとするとき、後述する式(1)を満足する整数sを
前記テーブルに登録する固定塩基長の部分配列の塩基長
とすることが、さらに好ましい。コンセンサス配列を格
納するデータ構造には双方向リストを使用するのが好ま
しい。
【0017】また、固定塩基長の部分配列を該固定塩基
長部分配列の長さと無関係な固定数の計算機ワードで表
現するのが好ましい。クラスタリング結果は、計算機の
主記憶装置に蓄積せず、クラスタが完成するごとに逐次
出力するのが好ましい。また、前記テーブル中、予め指
定された回数以下の出現回数をもつ部分配列に対応する
エントリだけを利用するのが好ましい。
長部分配列の長さと無関係な固定数の計算機ワードで表
現するのが好ましい。クラスタリング結果は、計算機の
主記憶装置に蓄積せず、クラスタが完成するごとに逐次
出力するのが好ましい。また、前記テーブル中、予め指
定された回数以下の出現回数をもつ部分配列に対応する
エントリだけを利用するのが好ましい。
【0018】本発明は、また、上記の方法によるアセン
ブル(クラスタリング)処理を実行するために必要とさ
れる入力配列の選択、パラメータの入力、クラスタリン
グ及びアセンブル処理の経過表示、及び結果表示を行う
ためのグラフィカルなユーザインタフェースを提供す
る。
ブル(クラスタリング)処理を実行するために必要とさ
れる入力配列の選択、パラメータの入力、クラスタリン
グ及びアセンブル処理の経過表示、及び結果表示を行う
ためのグラフィカルなユーザインタフェースを提供す
る。
【0019】本発明による核酸塩基配列アセンブル装置
は、入力核酸塩基配列の末端領域に設定される固定塩基
長の部分配列に関するパラメータを入力する入力手段
と、複数の入力核酸塩基配列に対して、各核酸塩基配列
を識別する情報と入力手段によって入力されたパラメー
タに従って当該核酸塩基配列から抽出した固定塩基長の
部分配列とを関連づけてテーブルに登録する手段と、前
記テーブルを参照してコンセンサス配列の一部と一致す
る部分配列を有する核酸塩基配列を探索する手段と、前
記手段で探索された核酸塩基配列とコンセンサス配列と
を比較し、両者がアセンブル可能かどうかを判定する判
定手段と、判定手段でアセンブル可能と判定された場
合、コンセンサス配列と探索された核酸塩基配列とをア
センブルしてコンセンサス配列を再構築する手段とを含
むことを特徴とする。
は、入力核酸塩基配列の末端領域に設定される固定塩基
長の部分配列に関するパラメータを入力する入力手段
と、複数の入力核酸塩基配列に対して、各核酸塩基配列
を識別する情報と入力手段によって入力されたパラメー
タに従って当該核酸塩基配列から抽出した固定塩基長の
部分配列とを関連づけてテーブルに登録する手段と、前
記テーブルを参照してコンセンサス配列の一部と一致す
る部分配列を有する核酸塩基配列を探索する手段と、前
記手段で探索された核酸塩基配列とコンセンサス配列と
を比較し、両者がアセンブル可能かどうかを判定する判
定手段と、判定手段でアセンブル可能と判定された場
合、コンセンサス配列と探索された核酸塩基配列とをア
センブルしてコンセンサス配列を再構築する手段とを含
むことを特徴とする。
【0020】入力手段は、入力核酸塩基配列上の固定塩
基長の部分配列の位置を配列の末端からの関係でグラフ
ィカルに表示する表示部を有し、ユーザが指定した固定
長部分配列位置を表示に即座に反映させるものとするこ
とができる。入力手段は、また、1つの入力核酸塩基配
列に対して抽出すべき固定塩基長の部分配列の数及び固
定塩基長の部分配列の塩基数を入力するものとすること
ができる。入力手段は、前記テーブルに登録する固定塩
基長の部分配列の長さを、当該テーブルを参照したとき
に検出される偶然の一致の数の期待値によって指定して
もよい。
基長の部分配列の位置を配列の末端からの関係でグラフ
ィカルに表示する表示部を有し、ユーザが指定した固定
長部分配列位置を表示に即座に反映させるものとするこ
とができる。入力手段は、また、1つの入力核酸塩基配
列に対して抽出すべき固定塩基長の部分配列の数及び固
定塩基長の部分配列の塩基数を入力するものとすること
ができる。入力手段は、前記テーブルに登録する固定塩
基長の部分配列の長さを、当該テーブルを参照したとき
に検出される偶然の一致の数の期待値によって指定して
もよい。
【0021】核酸塩基配列アセンブル装置は、前記テー
ブルに登録された固定塩基長の部分配列の配列毎の出現
頻度を表すグラフィカルな表示及び/又は数値を表示す
る表示部を有するのが好ましい。更に、出現頻度の上限
を指定する手段と、前記テーブルから出現頻度が指定さ
れた上限を超えるエントリを削除する手段とを備えるこ
とが好ましい。また、コンセンサス配列にアセンブルさ
れた各入力核酸塩基配列を、コンセンサス配列の一部と
一致する入力核酸塩基配列の固定塩基長の部分配列の位
置とともに表示する手段を備えるのが好ましい。
ブルに登録された固定塩基長の部分配列の配列毎の出現
頻度を表すグラフィカルな表示及び/又は数値を表示す
る表示部を有するのが好ましい。更に、出現頻度の上限
を指定する手段と、前記テーブルから出現頻度が指定さ
れた上限を超えるエントリを削除する手段とを備えるこ
とが好ましい。また、コンセンサス配列にアセンブルさ
れた各入力核酸塩基配列を、コンセンサス配列の一部と
一致する入力核酸塩基配列の固定塩基長の部分配列の位
置とともに表示する手段を備えるのが好ましい。
【0022】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。
施の形態を説明する。
【0023】本発明のクラスタリング及びアセンブル方
法では、配列間のオーバーラップがもつ性質に着目し
た。図3の例に示すように、2つの配列間のオーバーラ
ップ部303,306は、必ず片方の配列(図3では配列301
及び配列304)の末尾部分と、片方の配列(図3では配
列302及び配列304)の先頭部分を含む。そこで本発明で
は、図1に示したように、入力配列101の先頭及び末尾
の長さsの部分配列102を、固定長部分配列テーブル103
に格納する。長さsの値の決め方は、後述する。ある配
列とオーバーラップする入力配列が存在するか否かを調
べたいときには、この固定長部分配列テーブル103を参
照する。参照の結果、ある入力配列の部分配列106が固
定長ウィンドウ105の配列と完全に一致するとわかれ
ば、同一クラスタに入るか否かをオーバーラップ部分の
詳細な配列比較により検証する。そして、貪欲法に基づ
き、クラスタにメンバを逐次追加していく。
法では、配列間のオーバーラップがもつ性質に着目し
た。図3の例に示すように、2つの配列間のオーバーラ
ップ部303,306は、必ず片方の配列(図3では配列301
及び配列304)の末尾部分と、片方の配列(図3では配
列302及び配列304)の先頭部分を含む。そこで本発明で
は、図1に示したように、入力配列101の先頭及び末尾
の長さsの部分配列102を、固定長部分配列テーブル103
に格納する。長さsの値の決め方は、後述する。ある配
列とオーバーラップする入力配列が存在するか否かを調
べたいときには、この固定長部分配列テーブル103を参
照する。参照の結果、ある入力配列の部分配列106が固
定長ウィンドウ105の配列と完全に一致するとわかれ
ば、同一クラスタに入るか否かをオーバーラップ部分の
詳細な配列比較により検証する。そして、貪欲法に基づ
き、クラスタにメンバを逐次追加していく。
【0024】以下、本発明の方法について、詳細に説明
する。処理の流れを、図2に示した。まず、図2のステ
ップ201に示すように、入力配列が配列長の降順に整列
するようにソートする。これにより、例えば図3の配列
304と配列305のオーバーラップ探索をするときに、配列
304上に配列305の先頭又は末尾に一致する部分配列がな
いため、配列304と配列305を結合できないという状況が
回避される。
する。処理の流れを、図2に示した。まず、図2のステ
ップ201に示すように、入力配列が配列長の降順に整列
するようにソートする。これにより、例えば図3の配列
304と配列305のオーバーラップ探索をするときに、配列
304上に配列305の先頭又は末尾に一致する部分配列がな
いため、配列304と配列305を結合できないという状況が
回避される。
【0025】次に、図2のステップ202に進み、固定長
部分配列テーブル103を構築する。固定長部分配列テー
ブル103の構築に当たっては、図4に示すように、全て
の入力配列101から両端の長さsの部分配列102を取り出
しテーブル103に登録する。部分配列長sを長く取れば、
入力配列間の真のオーバーラップに無関係に長さsの一
致が偶然に発生する確率を低く抑えることができ、処理
時間の短縮に繋がる。しかし、あまり部分配列長sを長
くしすぎると、オーバーラップ探索の感度低下を招く。
本発明では、処理時間短縮のため、sの値に下記の不等
式(1)で表される下限を設けている。
部分配列テーブル103を構築する。固定長部分配列テー
ブル103の構築に当たっては、図4に示すように、全て
の入力配列101から両端の長さsの部分配列102を取り出
しテーブル103に登録する。部分配列長sを長く取れば、
入力配列間の真のオーバーラップに無関係に長さsの一
致が偶然に発生する確率を低く抑えることができ、処理
時間の短縮に繋がる。しかし、あまり部分配列長sを長
くしすぎると、オーバーラップ探索の感度低下を招く。
本発明では、処理時間短縮のため、sの値に下記の不等
式(1)で表される下限を設けている。
【0026】
【数1】
ただし、式(1)において、Nは入力配列数、Kは各配列
から選択される部分配列の数、cはユーザにより与えら
れるパラメータであり、固定長部分配列テーブル103を
一回参照する際に見つかる、入力配列間の真のオーバー
ラップと無関係な長さsの完全一致の数の期待値の上限
を指定する量である。cを大きくすると、sを小さい値と
することができ、部分配列長が短くなるためオーバーラ
ップ探索の感度を上げることができる。しかし、偶然の
一致を処理する計算時間が増大するために処理速度は低
下する。なお、本明細書では、対数の底は2とする。
から選択される部分配列の数、cはユーザにより与えら
れるパラメータであり、固定長部分配列テーブル103を
一回参照する際に見つかる、入力配列間の真のオーバー
ラップと無関係な長さsの完全一致の数の期待値の上限
を指定する量である。cを大きくすると、sを小さい値と
することができ、部分配列長が短くなるためオーバーラ
ップ探索の感度を上げることができる。しかし、偶然の
一致を処理する計算時間が増大するために処理速度は低
下する。なお、本明細書では、対数の底は2とする。
【0027】固定長部分配列テーブル103に部分配列を
登録するときに、その部分配列を含む入力配列を識別す
る情報と入力配列中の位置も同時に記録する。図4に示
すような、これら部分配列、入力配列識別情報、入力配
列中の位置の3つの値の組401それぞれを、エントリと呼
ぶ。さらに、図4の402のような部分配列のそれぞれを
キーと呼ぶ。固定長部分配列テーブル103の各エントリ
は、部分配列に一致する長さsの塩基配列をキーとして
取り出すことができる。固定長部分配列テーブル103の
実装には、AVL木などの、バランス木で2分木であるもの
を使用する(アルゴリズム辞典、共立出版、630頁)。
登録するときに、その部分配列を含む入力配列を識別す
る情報と入力配列中の位置も同時に記録する。図4に示
すような、これら部分配列、入力配列識別情報、入力配
列中の位置の3つの値の組401それぞれを、エントリと呼
ぶ。さらに、図4の402のような部分配列のそれぞれを
キーと呼ぶ。固定長部分配列テーブル103の各エントリ
は、部分配列に一致する長さsの塩基配列をキーとして
取り出すことができる。固定長部分配列テーブル103の
実装には、AVL木などの、バランス木で2分木であるもの
を使用する(アルゴリズム辞典、共立出版、630頁)。
【0028】入力配列から部分配列を登録したあとで、
固定長部分配列テーブル103中で、ユーザより与えられ
たパラメータF(後述)を上回る出現頻度を持つキーに
対応するエントリを、全て削除する。この処理は、一般
に核酸塩基配列にはしばしばリピート配列が含まれるた
め、入力配列間の真のオーバーラップに関係のない長さ
sの一致が多く見つかると予想されることから、出現頻
度が極端に多いキーに対応するエントリを削除すること
を目的としている。
固定長部分配列テーブル103中で、ユーザより与えられ
たパラメータF(後述)を上回る出現頻度を持つキーに
対応するエントリを、全て削除する。この処理は、一般
に核酸塩基配列にはしばしばリピート配列が含まれるた
め、入力配列間の真のオーバーラップに関係のない長さ
sの一致が多く見つかると予想されることから、出現頻
度が極端に多いキーに対応するエントリを削除すること
を目的としている。
【0029】固定長部分配列テーブル103を構築した
後、図2のステップ203に進み、個々のクラスタを構築
していく。まず、最長の入力配列を選び、大きさ1のク
ラスタを構成する。ソートの工程201があるため、先頭
の入力配列を選択するだけで、定数時間で容易に最長の
入力配列を選ぶことができる。当該クラスタのコンセン
サス配列104は、選択された最長の入力配列と同一の配
列を複製して構築する。このコンセンサス配列上に幅s
の固定長ウィンドウ105をとる。
後、図2のステップ203に進み、個々のクラスタを構築
していく。まず、最長の入力配列を選び、大きさ1のク
ラスタを構成する。ソートの工程201があるため、先頭
の入力配列を選択するだけで、定数時間で容易に最長の
入力配列を選ぶことができる。当該クラスタのコンセン
サス配列104は、選択された最長の入力配列と同一の配
列を複製して構築する。このコンセンサス配列上に幅s
の固定長ウィンドウ105をとる。
【0030】図5を用いて、クラスタへ新規メンバを追
加する方法について説明する。幅sの固定長ウィンドウ1
05を、その時点までに構築されているクラスタのコンセ
ンサス配列104上を先頭から末尾まで移動させていく。
移動中、固定長部分配列テーブル103を参照し、該クラ
スタのメンバとなる可能性のある入力配列の候補を探索
する(図2のステップ204)。
加する方法について説明する。幅sの固定長ウィンドウ1
05を、その時点までに構築されているクラスタのコンセ
ンサス配列104上を先頭から末尾まで移動させていく。
移動中、固定長部分配列テーブル103を参照し、該クラ
スタのメンバとなる可能性のある入力配列の候補を探索
する(図2のステップ204)。
【0031】ある位置で、固定長部分配列テーブル103
を参照したところ、ある入力配列502と長さsの完全一致
501が見つかったと仮定する。長さsの完全一致501が存
在するだけでは、単なる偶然一致のことがあり、該クラ
スタにこの配列502を追加する条件として不充分であ
る。オーバーラップ全体503が十分に類似しており、矛
盾なくアセンブル可能であることを配列比較により確認
する(図2のステップ205)。このときの配列比較は、
コンセンサス配列及び入力配列が長さsの完全一致をも
つ位置がわかっているため、Zhang, Z. et al., J. Com
put. Biol., 7(1-2):203-14, 2000の高速アルゴリズム
を利用する。
を参照したところ、ある入力配列502と長さsの完全一致
501が見つかったと仮定する。長さsの完全一致501が存
在するだけでは、単なる偶然一致のことがあり、該クラ
スタにこの配列502を追加する条件として不充分であ
る。オーバーラップ全体503が十分に類似しており、矛
盾なくアセンブル可能であることを配列比較により確認
する(図2のステップ205)。このときの配列比較は、
コンセンサス配列及び入力配列が長さsの完全一致をも
つ位置がわかっているため、Zhang, Z. et al., J. Com
put. Biol., 7(1-2):203-14, 2000の高速アルゴリズム
を利用する。
【0032】ステップ205の配列比較によってオーバー
ラップ全体503で配列が十分によく類似すると判断され
た場合、入力配列502を該クラスタに追加し、コンセン
サス配列104も再構築して新しいコンセンサス配列504と
置き換える(図2のステップ206)。コンセンサス配列
が延長された部分505も、幅sの固定長ウィンドウ105の
移動範囲に加える。クラスタに加えられた入力配列502
に由来する、固定長部分配列テーブル103中のエントリ
は、削除する。
ラップ全体503で配列が十分によく類似すると判断され
た場合、入力配列502を該クラスタに追加し、コンセン
サス配列104も再構築して新しいコンセンサス配列504と
置き換える(図2のステップ206)。コンセンサス配列
が延長された部分505も、幅sの固定長ウィンドウ105の
移動範囲に加える。クラスタに加えられた入力配列502
に由来する、固定長部分配列テーブル103中のエントリ
は、削除する。
【0033】同様の処理を、コンセンサス配列104上に
固定長ウィンドウ105の移動範囲が残っている間繰り返
す。完成したクラスタは、順次、ファイル等に出力し、
計算機の記憶装置に残さない。図6のように、未処理の
まだどのクラスタにも属していない配列が残っている
間、この処理を繰り返す。以上が本発明の方法の主な流
れである。上記の内容に加え、本発明の方法は、高速処
理のために次のような特徴を持っている。
固定長ウィンドウ105の移動範囲が残っている間繰り返
す。完成したクラスタは、順次、ファイル等に出力し、
計算機の記憶装置に残さない。図6のように、未処理の
まだどのクラスタにも属していない配列が残っている
間、この処理を繰り返す。以上が本発明の方法の主な流
れである。上記の内容に加え、本発明の方法は、高速処
理のために次のような特徴を持っている。
【0034】まず、コンセンサス配列104を格納するデ
ータ構造には、双方向リストを用いる(図14)。図1
4に示す配列において、塩基T 1401と塩基G 1402の後に
新たに塩基A 1501を挿入する必要が生じた場合、図15
に示すように、塩基T 1401と塩基G 1402の間に張られて
いたポインタを塩基A 1501へ張りなおし、塩基A 1501か
らは塩基T 1401と塩基G 1402へ新たなポインタを張れば
よい。この処理は定数時間で可能である。もし、コンセ
ンサス配列を図16のような連続する記憶装置を使用す
るデータ構造、すなわちアレイを用いて実装すると、1
塩基を挿入するために、図17のように挿入したい位置
以降の塩基を後ろにずらし、できた隙間1701に新しい塩
基Aを挿入する必要があり、処理時間の平均は配列長に
比例する量になってしまう。ただし、配列比較時には、
ランダムアクセスを1回当たり定数時間で可能とするた
めに、コンセンサス配列104のうち、比較する必要のあ
る配列領域だけをアレイ状のデータ構造、すなわち連続
した主記憶上の領域へコピーする。このときコピーされ
る配列領域の長さは、配列比較時に許容するギャップ数
の最大値を2倍した値と、入力配列の配列長の和以下で
ある。連続したメモリ領域では、配列中の塩基が格納さ
れている位置が乗算と加算のみ計算可能であるため、任
意の塩基に対して定数時間のランダムアクセスが実現さ
れる。
ータ構造には、双方向リストを用いる(図14)。図1
4に示す配列において、塩基T 1401と塩基G 1402の後に
新たに塩基A 1501を挿入する必要が生じた場合、図15
に示すように、塩基T 1401と塩基G 1402の間に張られて
いたポインタを塩基A 1501へ張りなおし、塩基A 1501か
らは塩基T 1401と塩基G 1402へ新たなポインタを張れば
よい。この処理は定数時間で可能である。もし、コンセ
ンサス配列を図16のような連続する記憶装置を使用す
るデータ構造、すなわちアレイを用いて実装すると、1
塩基を挿入するために、図17のように挿入したい位置
以降の塩基を後ろにずらし、できた隙間1701に新しい塩
基Aを挿入する必要があり、処理時間の平均は配列長に
比例する量になってしまう。ただし、配列比較時には、
ランダムアクセスを1回当たり定数時間で可能とするた
めに、コンセンサス配列104のうち、比較する必要のあ
る配列領域だけをアレイ状のデータ構造、すなわち連続
した主記憶上の領域へコピーする。このときコピーされ
る配列領域の長さは、配列比較時に許容するギャップ数
の最大値を2倍した値と、入力配列の配列長の和以下で
ある。連続したメモリ領域では、配列中の塩基が格納さ
れている位置が乗算と加算のみ計算可能であるため、任
意の塩基に対して定数時間のランダムアクセスが実現さ
れる。
【0035】本発明の方法はまた、長さsの部分配列を
少数の計算機ワードにエンコードすることで、定数時間
で長さsの配列比較を行う。図7に、1計算機ワードが3
2bitである計算機の場合の例を示す。1計算機ワード70
1を使用すれば長さが16塩基まで、2計算機ワード702を
使用すれば長さ32塩基までの配列をエンコードすること
ができる。A、T、G、C以外の文字が存在する場合は、強
制的にA、T、G、Cのいずれかの文字と同一と見なし、エ
ンコードする。
少数の計算機ワードにエンコードすることで、定数時間
で長さsの配列比較を行う。図7に、1計算機ワードが3
2bitである計算機の場合の例を示す。1計算機ワード70
1を使用すれば長さが16塩基まで、2計算機ワード702を
使用すれば長さ32塩基までの配列をエンコードすること
ができる。A、T、G、C以外の文字が存在する場合は、強
制的にA、T、G、Cのいずれかの文字と同一と見なし、エ
ンコードする。
【0036】本発明のクラスタリング及びアセンブル方
法においては、さらに、核酸塩基配列に存在する可能性
のあるシーケンシングエラーに対応するために、入力配
列の両端だけでなく、入力配列上のより多くの部分配列
を固定長部分配列テーブルに登録することで、僅かな塩
基の誤りを許容したクラスタリングを可能とする。配列
の端に近い部分配列が、オーバーラップ探索では重要と
なるため、配列両端からR塩基以内(Rはユーザパラメー
タ)の範囲から合計K個の部分配列を選択し、固定長部
分配列テーブル103に登録する。この方法によると、ひ
とつの部分配列の塩基に誤りがある場合でも、他の部分
配列によりオーバーラップを見つけることが可能にな
る。図1及び図4はK=2の例、図8はK=6の例である。
法においては、さらに、核酸塩基配列に存在する可能性
のあるシーケンシングエラーに対応するために、入力配
列の両端だけでなく、入力配列上のより多くの部分配列
を固定長部分配列テーブルに登録することで、僅かな塩
基の誤りを許容したクラスタリングを可能とする。配列
の端に近い部分配列が、オーバーラップ探索では重要と
なるため、配列両端からR塩基以内(Rはユーザパラメー
タ)の範囲から合計K個の部分配列を選択し、固定長部
分配列テーブル103に登録する。この方法によると、ひ
とつの部分配列の塩基に誤りがある場合でも、他の部分
配列によりオーバーラップを見つけることが可能にな
る。図1及び図4はK=2の例、図8はK=6の例である。
【0037】ここまで、本発明のクラスタリング及びア
センブル方法の概要について説明してきた。この方法が
実際に高速なクラスタリング及びアセンブル方法であ
り、消費する計算機主記憶も少ないことを、理論的考察
により示す。以下の説明では、次の記号を用いる。 N:入力配列の総配列数 D:入力配列の総塩基数 Li:あるクラスタiのクラスタリング完了時点でのコン
センサス配列長 Ni:あるクラスタiのクラスタリング完了時点でのクラ
スタメンバ数 L:クラスタリング完了時点での全クラスタのコンセン
サス配列長の和 L':クラスタリング完了時点での全クラスタ中最長のコ
ンセンサス配列の配列長 n:クラスタリング完了時点でのクラスタ数 Dij:あるクラスタiにj番目に加えられた入力配列の配
列長 M:最長の入力配列の配列長 E:一回の固定長部分配列テーブル103参照時に入力配列
間のオーバーラップ部とは無関係であるにも関わらず偶
然に見つかるエントリ数の期待値 K:ひとつの入力配列から固定長部分配列テーブル103に
登録する部分配列の数 c:Eの上限を設定するためのユーザパラメータ なお、計算時間や消費する主記憶の量を表現するために
本明細書で用いる大文字のアルファベットOを用いた表
記法については、平田富男著「アルゴリズムとデータ構
造」森北出版株式会社(1990発行)"1.2節 計算量"に説
明されている。
センブル方法の概要について説明してきた。この方法が
実際に高速なクラスタリング及びアセンブル方法であ
り、消費する計算機主記憶も少ないことを、理論的考察
により示す。以下の説明では、次の記号を用いる。 N:入力配列の総配列数 D:入力配列の総塩基数 Li:あるクラスタiのクラスタリング完了時点でのコン
センサス配列長 Ni:あるクラスタiのクラスタリング完了時点でのクラ
スタメンバ数 L:クラスタリング完了時点での全クラスタのコンセン
サス配列長の和 L':クラスタリング完了時点での全クラスタ中最長のコ
ンセンサス配列の配列長 n:クラスタリング完了時点でのクラスタ数 Dij:あるクラスタiにj番目に加えられた入力配列の配
列長 M:最長の入力配列の配列長 E:一回の固定長部分配列テーブル103参照時に入力配列
間のオーバーラップ部とは無関係であるにも関わらず偶
然に見つかるエントリ数の期待値 K:ひとつの入力配列から固定長部分配列テーブル103に
登録する部分配列の数 c:Eの上限を設定するためのユーザパラメータ なお、計算時間や消費する主記憶の量を表現するために
本明細書で用いる大文字のアルファベットOを用いた表
記法については、平田富男著「アルゴリズムとデータ構
造」森北出版株式会社(1990発行)"1.2節 計算量"に説
明されている。
【0038】始めに、入力配列データが、A、T、G、C 4
塩基のランダムな並びであることを仮定し、本発明の方
法の高速性について説明する。まず、入力配列を配列長
の降順にソートするために必要な時間はO(D+NlogN)であ
る。なぜなら、配列長を求めるために、O(D)の時間が必
要である。クイックソート又はマージソートを用いれ
ば、ソートの処理はO(NlogN)で完了できる。
塩基のランダムな並びであることを仮定し、本発明の方
法の高速性について説明する。まず、入力配列を配列長
の降順にソートするために必要な時間はO(D+NlogN)であ
る。なぜなら、配列長を求めるために、O(D)の時間が必
要である。クイックソート又はマージソートを用いれ
ば、ソートの処理はO(NlogN)で完了できる。
【0039】次に、本発明の方法が、固定長部分配列テ
ーブル103を構成するために必要な時間はO(KNlogN)であ
る。なぜなら、固定長部分配列テーブル103の実装に2分
木のバランス木を使用しているので、全ての部分配列を
登録するための計算時間は、O(KNlog(KN))であり、十分
大きなNについてはN≧KよりO(KNlogN)である。また、頻
度がFを上回るキーに対応するエントリの削除も、O(KNl
ogN)で行える。さらに、本発明の方法が、i番目のクラ
スタひとつを構築するために必要な時間は式(2)で表
される。
ーブル103を構成するために必要な時間はO(KNlogN)であ
る。なぜなら、固定長部分配列テーブル103の実装に2分
木のバランス木を使用しているので、全ての部分配列を
登録するための計算時間は、O(KNlog(KN))であり、十分
大きなNについてはN≧KよりO(KNlogN)である。また、頻
度がFを上回るキーに対応するエントリの削除も、O(KNl
ogN)で行える。さらに、本発明の方法が、i番目のクラ
スタひとつを構築するために必要な時間は式(2)で表
される。
【0040】
【数2】
なぜなら、i番目のクラスタひとつを構築する際の処理
時間の詳細が、以下の通りとなるためである。 1. 入力配列をひとつ選び、コンセンサス配列を構築す
る処理に要する計算時間は、その入力配列の長さのオー
ダーである。
時間の詳細が、以下の通りとなるためである。 1. 入力配列をひとつ選び、コンセンサス配列を構築す
る処理に要する計算時間は、その入力配列の長さのオー
ダーである。
【0041】2. 固定長部分配列テーブル103を参照する
処理の計算時間は、 O((Li+Ni−1+LiE)logN)である。な
ぜなら、まず、固定長部分配列テーブル103を一回参照
する処理に要する時間がO(logN)である。さらに、参照
回数の期待値について考察する。少なくともコンセンサ
ス配列長に応じたO(Li)回の参照が必要である。入力配
列間の真のオーバーラップに対応する一致がコンセンサ
ス配列中の同一位置に集中した場合、さらにO(Ni−1)回
の参照が必要になる。これらとは別に、偶然の一致が発
見される回数の期待値がO(LiE)である。ゆえに、参照回
数の期待値はO(Li+(Ni−1)+LiE)となる。
処理の計算時間は、 O((Li+Ni−1+LiE)logN)である。な
ぜなら、まず、固定長部分配列テーブル103を一回参照
する処理に要する時間がO(logN)である。さらに、参照
回数の期待値について考察する。少なくともコンセンサ
ス配列長に応じたO(Li)回の参照が必要である。入力配
列間の真のオーバーラップに対応する一致がコンセンサ
ス配列中の同一位置に集中した場合、さらにO(Ni−1)回
の参照が必要になる。これらとは別に、偶然の一致が発
見される回数の期待値がO(LiE)である。ゆえに、参照回
数の期待値はO(Li+(Ni−1)+LiE)となる。
【0042】3. 固定長部分配列テーブル103を参照し詳
細な配列比較を行なった結果、クラスタに加えることが
可能な入力配列が見つかった場合に、j番目のこうした
入力配列について、前述の高速アルゴリズムによる配列
比較及びコンセンサス配列更新にO(Dij)、固定長部分配
列テーブル103の該入力配列に由来するエントリを削除
する処理にO(KNi logN)の、合計O(Dij+KNi logN)の計算
時間が必要である。
細な配列比較を行なった結果、クラスタに加えることが
可能な入力配列が見つかった場合に、j番目のこうした
入力配列について、前述の高速アルゴリズムによる配列
比較及びコンセンサス配列更新にO(Dij)、固定長部分配
列テーブル103の該入力配列に由来するエントリを削除
する処理にO(KNi logN)の、合計O(Dij+KNi logN)の計算
時間が必要である。
【0043】4. 固定長部分配列テーブル103を参照した
結果、オーバーラップ部に無関係な偶然の一致が見つか
った場合、そうした偶然の一致が一回発見されるごと
に、前述の高速アルゴリズムによる配列比較のためにO
(M)の計算時間が必要である。したがって、1つのクラス
タを構築する際の工程全体の計算時間は、次式(3)の
計算を経て、式(2)であるとわかる。
結果、オーバーラップ部に無関係な偶然の一致が見つか
った場合、そうした偶然の一致が一回発見されるごと
に、前述の高速アルゴリズムによる配列比較のためにO
(M)の計算時間が必要である。したがって、1つのクラス
タを構築する際の工程全体の計算時間は、次式(3)の
計算を経て、式(2)であるとわかる。
【0044】
【数3】
ゆえに、全てのクラスタを計算する時間全体の計算時間
は、次式(4)より、O((L+N)logN+LE(M+logN)+D+KN lo
gN)である。
は、次式(4)より、O((L+N)logN+LE(M+logN)+D+KN lo
gN)である。
【0045】
【数4】
sが式(1)を満足するため NK/4^s≦cが成立するこ
と、及び、配列がランダムであると仮定したことからE
≦KN/4^s(4^sは、4のs乗を表す)であることの2点
を考慮すれば、E≦cが成立する。ゆえに、全てのクラス
タを計算するために必要とされる計算時間は、O((L+N)l
ogN+LE(M+logN)+D+KN logN)をL,N,KN≦Dを用いて変形す
ればO(D(M+logN))であるとわかる。
と、及び、配列がランダムであると仮定したことからE
≦KN/4^s(4^sは、4のs乗を表す)であることの2点
を考慮すれば、E≦cが成立する。ゆえに、全てのクラス
タを計算するために必要とされる計算時間は、O((L+N)l
ogN+LE(M+logN)+D+KN logN)をL,N,KN≦Dを用いて変形す
ればO(D(M+logN))であるとわかる。
【0046】ソートに要する計算時間O(D+NlogN)、固定
長部分配列テーブル103を構成するために要する計算時
間O(DlogN)はいずれもO(D(M+logN))以下であるから、本
発明のクラスタリング及びアセンブル方法全体の計算時
間はO(D(M+logN))である。仮に、全ての配列の長さが等
しく、D=NMである場合、本発明の方法全体の計算時間は
O(MN(M+logN))である。ここに、Mは配列長であり、Nに
無関係な量である。したがって、本発明の方法の計算時
間は、Nが増加するとき、Nの2乗よりも小さいオーダー
でしか増加しない。すなわち、本発明の方法により、配
列数の2乗よりも小さいオーダーでクラスタリング及び
アセンブルを行うという課題が達成された。
長部分配列テーブル103を構成するために要する計算時
間O(DlogN)はいずれもO(D(M+logN))以下であるから、本
発明のクラスタリング及びアセンブル方法全体の計算時
間はO(D(M+logN))である。仮に、全ての配列の長さが等
しく、D=NMである場合、本発明の方法全体の計算時間は
O(MN(M+logN))である。ここに、Mは配列長であり、Nに
無関係な量である。したがって、本発明の方法の計算時
間は、Nが増加するとき、Nの2乗よりも小さいオーダー
でしか増加しない。すなわち、本発明の方法により、配
列数の2乗よりも小さいオーダーでクラスタリング及び
アセンブルを行うという課題が達成された。
【0047】一方、本発明の方法が消費する計算機主記
憶の容量は、入力配列データ及び出力するクラスタ情報
を除き、O(KN+L')である。なぜなら、本発明の方法が消
費する計算機主記憶の容量は、入力配列データ及び出力
するクラスタ情報を除くと、固定長部分配列テーブル10
3及び各時点で処理中のクラスタの情報だけである。固
定長部分配列テーブル103を格納するために必要とされ
る主記憶の容量は、2分木を用いた場合O(KN)であり、
処理中クラスタ情報は、各メンバの配列長の和で抑えら
れるからO(L')である。これ以外に必要な計算機主記憶
は、O(1)である。O(KN+L')は、入力配列の長さに依存せ
ず、配列数に比例するオーダーでしか増加しない量であ
る。
憶の容量は、入力配列データ及び出力するクラスタ情報
を除き、O(KN+L')である。なぜなら、本発明の方法が消
費する計算機主記憶の容量は、入力配列データ及び出力
するクラスタ情報を除くと、固定長部分配列テーブル10
3及び各時点で処理中のクラスタの情報だけである。固
定長部分配列テーブル103を格納するために必要とされ
る主記憶の容量は、2分木を用いた場合O(KN)であり、
処理中クラスタ情報は、各メンバの配列長の和で抑えら
れるからO(L')である。これ以外に必要な計算機主記憶
は、O(1)である。O(KN+L')は、入力配列の長さに依存せ
ず、配列数に比例するオーダーでしか増加しない量であ
る。
【0048】図18は、上記の方法を実行する核酸塩基
配列アセンブル装置の構成例を示す図である。図18に
示したように、本発明の核酸塩基配列アセンブル装置
は、計算を行うCPU 1801、インタフェースを実現するた
めのディスプレイ1802、キーボード1803、ポインティン
グデバイス1804を備え、入力配列を配列長の降順にソー
トするプログラム1805、固定長部分配列テーブル103を
構築するプログラム1806、コンセンサス配列と一致する
部分配列をもつ入力配列を探索するプログラム1807、コ
ンセンサス配列と入力配列がアセンブル可能かを判断す
るプログラム1808、コンセンサス配列の再構築を行うプ
ログラム1809を格納し、さらに固定長部分配列テーブル
103を格納する主記憶装置1810、入力配列1811が格納さ
れ、さらにクラスタリング及びアセンブル結果1812を格
納することができる補助記憶装置1813から構成される。
配列アセンブル装置の構成例を示す図である。図18に
示したように、本発明の核酸塩基配列アセンブル装置
は、計算を行うCPU 1801、インタフェースを実現するた
めのディスプレイ1802、キーボード1803、ポインティン
グデバイス1804を備え、入力配列を配列長の降順にソー
トするプログラム1805、固定長部分配列テーブル103を
構築するプログラム1806、コンセンサス配列と一致する
部分配列をもつ入力配列を探索するプログラム1807、コ
ンセンサス配列と入力配列がアセンブル可能かを判断す
るプログラム1808、コンセンサス配列の再構築を行うプ
ログラム1809を格納し、さらに固定長部分配列テーブル
103を格納する主記憶装置1810、入力配列1811が格納さ
れ、さらにクラスタリング及びアセンブル結果1812を格
納することができる補助記憶装置1813から構成される。
【0049】ディスプレイ1802、キーボード1803、ポイ
ンティングデバイス1804を使用し、入力配列及び本発明
の方法が必要とするパラメータを指定した後、CPU 1801
が主記憶装置1810に格納されたプログラムを実行し、本
発明の方法によりクラスタリング及びアセンブルが行な
われる。入力配列1811は補助記憶装置1813より読みこま
れる。出力されるクラスタリング及びアセンブル結果18
12は、補助記憶装置1813に格納することができる。本発
明の方法によりクラスタリング及びアセンブルが行なわ
れている間、ディスプレイ1802に処理経過が表示され、
また、処理終了後には、ディスプレイ1802に処理結果を
表示させることができる。
ンティングデバイス1804を使用し、入力配列及び本発明
の方法が必要とするパラメータを指定した後、CPU 1801
が主記憶装置1810に格納されたプログラムを実行し、本
発明の方法によりクラスタリング及びアセンブルが行な
われる。入力配列1811は補助記憶装置1813より読みこま
れる。出力されるクラスタリング及びアセンブル結果18
12は、補助記憶装置1813に格納することができる。本発
明の方法によりクラスタリング及びアセンブルが行なわ
れている間、ディスプレイ1802に処理経過が表示され、
また、処理終了後には、ディスプレイ1802に処理結果を
表示させることができる。
【0050】以下、ディスプレイ1802、キーボード180
3、ポインティングデバイス1804により実現される、パ
ラメータ設定インタフェース、経過表示インタフェー
ス、結果表示インタフェースと、それらを呼び出すため
のメインインタフェースを説明する。パラメータ設定イ
ンタフェースを用いて、各入力配列から固定長部分配列
テーブル103に記録する固定長部分配列の数K、固定長部
分配列の位置の配列両端からの距離の上限R、それぞれ
の固定長部分配列の位置、固定長部分配列テーブル103
参照時に真のオーバーラップと無関係に見つかる偶然キ
ーが一致するエントリの数の期待値の上限c、固定長部
分配列長s、固定長部分配列テーブル103に頻繁に出現す
る部分配列の頻度の上限Fを入力する。また、経過表示
インタフェースを用いてクラスタリング及びアセンブル
処理中の処理済み配列の数及び入力配列全体に対する比
率、構成済みクラスタ数、クラスタ要素数の平均、コン
センサス配列への各クラスタメンバ配列のアセンブル状
況、アセンブル時に固定長部分配列テーブル103を使用
することで得られた完全マッチの配列、アセンブル時の
オーバーラップ長を表示する。処理終了後、ユーザが指
定した入力配列又はクラスタに対して、処理中と同様の
情報を結果表示インタフェースにより表示する。
3、ポインティングデバイス1804により実現される、パ
ラメータ設定インタフェース、経過表示インタフェー
ス、結果表示インタフェースと、それらを呼び出すため
のメインインタフェースを説明する。パラメータ設定イ
ンタフェースを用いて、各入力配列から固定長部分配列
テーブル103に記録する固定長部分配列の数K、固定長部
分配列の位置の配列両端からの距離の上限R、それぞれ
の固定長部分配列の位置、固定長部分配列テーブル103
参照時に真のオーバーラップと無関係に見つかる偶然キ
ーが一致するエントリの数の期待値の上限c、固定長部
分配列長s、固定長部分配列テーブル103に頻繁に出現す
る部分配列の頻度の上限Fを入力する。また、経過表示
インタフェースを用いてクラスタリング及びアセンブル
処理中の処理済み配列の数及び入力配列全体に対する比
率、構成済みクラスタ数、クラスタ要素数の平均、コン
センサス配列への各クラスタメンバ配列のアセンブル状
況、アセンブル時に固定長部分配列テーブル103を使用
することで得られた完全マッチの配列、アセンブル時の
オーバーラップ長を表示する。処理終了後、ユーザが指
定した入力配列又はクラスタに対して、処理中と同様の
情報を結果表示インタフェースにより表示する。
【0051】図9、図10、図11、図12を用いて、
本発明におけるユーザインタフェースの一例を詳細に説
明する。図9を用いて、メインインタフェースの一例に
ついて説明する。このメインインタフェース901は、入
力配列選択部907、パラメータ入力インタフェースを出
現させるためのパラメータ設定ボタン905、及び経過表
示インタフェースを出現させ、クラスタリング及びアセ
ンブルを実行するためのアセンブル実行ボタン906を有
する。
本発明におけるユーザインタフェースの一例を詳細に説
明する。図9を用いて、メインインタフェースの一例に
ついて説明する。このメインインタフェース901は、入
力配列選択部907、パラメータ入力インタフェースを出
現させるためのパラメータ設定ボタン905、及び経過表
示インタフェースを出現させ、クラスタリング及びアセ
ンブルを実行するためのアセンブル実行ボタン906を有
する。
【0052】ユーザはまず、入力配列を格納したファイ
ルのパスをファイルパス入力エリア902に入力する。こ
の例では、参照ボタン903をポインティングデバイス180
4でクリックすることによりファイルダイアログを出現
させることができる。そのファイルダイアログを用い
て、入力配列を格納したファイルを選択してもよい。入
力配列のファイルパスが入力されると、入力データの配
列数Nが計算され、配列数表示エリア904に表示される。
入力配列を指定した後、パラメータ設定ボタン905をク
リックすることにより、パラメータ設定インタフェース
が現れる。パラメータ設定インタフェースの例について
は、後述する。
ルのパスをファイルパス入力エリア902に入力する。こ
の例では、参照ボタン903をポインティングデバイス180
4でクリックすることによりファイルダイアログを出現
させることができる。そのファイルダイアログを用い
て、入力配列を格納したファイルを選択してもよい。入
力配列のファイルパスが入力されると、入力データの配
列数Nが計算され、配列数表示エリア904に表示される。
入力配列を指定した後、パラメータ設定ボタン905をク
リックすることにより、パラメータ設定インタフェース
が現れる。パラメータ設定インタフェースの例について
は、後述する。
【0053】アセンブル実行ボタン906をクリックする
と、経過表示インタフェースが現れ、クラスタリング及
びアセンブルの処理が開始される。アセンブル実行ボタ
ン906は、入力配列が入力されるまではクリックするこ
とができない。経過表示インタフェースの例は、後述す
る。処理の終了後、経過表示インタフェースは自動的に
閉じられ、結果表示インタフェースが現れる。結果表示
インタフェースの例は、後述する。
と、経過表示インタフェースが現れ、クラスタリング及
びアセンブルの処理が開始される。アセンブル実行ボタ
ン906は、入力配列が入力されるまではクリックするこ
とができない。経過表示インタフェースの例は、後述す
る。処理の終了後、経過表示インタフェースは自動的に
閉じられ、結果表示インタフェースが現れる。結果表示
インタフェースの例は、後述する。
【0054】図10を用いて、パラメータ設定インタフ
ェースの例について説明する。図示したパラメータ設定
インタフェース1001は、固定長部分配列位置選択部102
1、固定長部分配列長設定部1022、固定長部分配列キー
頻度上限入力部1023を有する。まず、ユーザはクラスタ
リング及びアセンブル時に各配列から抽出する固定長部
分配列数Kを、固定長部分配列位置選択部1021の入力エ
リア1002にキーボード1803等を用いて入力し指定するこ
とができる。さらに、固定長部分配列と配列の5'端又は
3'端からの距離の上限を決定するパラメータRを入力エ
リア1003に入力し指定することができる。Rの値は、グ
ラフィカルユーザインタフェース1004内のスライダー10
05を横に動かすことによっても指定可能である。ボック
ス1006は、固定長部分配列を抽出する位置を表し、1008
又は1009で指定される固定長部分配列長に比例する幅を
もつ。グラフィカルユーザインタフェース1004内には、
入力エリア1002で指定されたKの値に等しい数のボック
ス1006が表示される。ボックス1006は、入力配列を表す
線分1007上を両端からR塩基の範囲内で、ポインティン
グデバイス1804を使用し、ボックス同士が重なり合わな
い限り自由に動かすことができる。配列先頭付近のボッ
クス1006を配列先頭からR塩基以上離そうとすると、そ
のボックス1006は配列末尾からR以内の位置に移動す
る。逆の場合は同様に、配列先頭からR塩基以内の位置
にボックス1006が移動する。
ェースの例について説明する。図示したパラメータ設定
インタフェース1001は、固定長部分配列位置選択部102
1、固定長部分配列長設定部1022、固定長部分配列キー
頻度上限入力部1023を有する。まず、ユーザはクラスタ
リング及びアセンブル時に各配列から抽出する固定長部
分配列数Kを、固定長部分配列位置選択部1021の入力エ
リア1002にキーボード1803等を用いて入力し指定するこ
とができる。さらに、固定長部分配列と配列の5'端又は
3'端からの距離の上限を決定するパラメータRを入力エ
リア1003に入力し指定することができる。Rの値は、グ
ラフィカルユーザインタフェース1004内のスライダー10
05を横に動かすことによっても指定可能である。ボック
ス1006は、固定長部分配列を抽出する位置を表し、1008
又は1009で指定される固定長部分配列長に比例する幅を
もつ。グラフィカルユーザインタフェース1004内には、
入力エリア1002で指定されたKの値に等しい数のボック
ス1006が表示される。ボックス1006は、入力配列を表す
線分1007上を両端からR塩基の範囲内で、ポインティン
グデバイス1804を使用し、ボックス同士が重なり合わな
い限り自由に動かすことができる。配列先頭付近のボッ
クス1006を配列先頭からR塩基以上離そうとすると、そ
のボックス1006は配列末尾からR以内の位置に移動す
る。逆の場合は同様に、配列先頭からR塩基以内の位置
にボックス1006が移動する。
【0055】また、ユーザは固定長部分配列テーブル10
3参照時に真のオーバーラップと無関係に見つかる偶然
にキーが一致するエントリ数の期待値上限cの値を、固
定長部分配列長設定部1022の入力及び表示エリア1008に
入力し指定することが可能である。cが入力されると、
固定長部分配列長sが式(1)を満足する最小の整数の
値として自動的に計算され、入力及び表示エリア1009に
表示される。固定長部分配列長sを直接、固定長部分配
列長の入力及び表示エリア1009に入力し指定することも
可能である。sが入力されると、式(1)に矛盾しない
最小のcの値、すなわちNK/4^s≦cを満足する最小のcの
値が自動的に計算され、入力及び表示エリア1008に表示
される。さらに、固定長部分配列テーブル103における
キー頻度の上限Fを、固定長部分配列キー頻度上限入力
部1023を用いて指定する。
3参照時に真のオーバーラップと無関係に見つかる偶然
にキーが一致するエントリ数の期待値上限cの値を、固
定長部分配列長設定部1022の入力及び表示エリア1008に
入力し指定することが可能である。cが入力されると、
固定長部分配列長sが式(1)を満足する最小の整数の
値として自動的に計算され、入力及び表示エリア1009に
表示される。固定長部分配列長sを直接、固定長部分配
列長の入力及び表示エリア1009に入力し指定することも
可能である。sが入力されると、式(1)に矛盾しない
最小のcの値、すなわちNK/4^s≦cを満足する最小のcの
値が自動的に計算され、入力及び表示エリア1008に表示
される。さらに、固定長部分配列テーブル103における
キー頻度の上限Fを、固定長部分配列キー頻度上限入力
部1023を用いて指定する。
【0056】まず、Fの値は、入力及び表示エリア1011
に数値として直接入力し指定することが可能である。キ
ー頻度がFを超えるエントリを削除する処理を行わない
場合には、チェックボックス1012にチェックをつける。
これ以外に、Fの値を指定する手段として、固定長部分
配列テーブル103を作成した後で、実際の固定長部分配
列出現頻度を見ながらFの値を設定することもできる。
グラフ表示エリア1013には、ファイルパス入力エリア90
2で指定された入力配列に基づき、固定長部分配列テー
ブル103を構築した場合に、横軸を出現頻度、縦軸を出
現頻度の順位とするグラフが表示される。縦方向の拡大
率は、スライダー1017で変更できる。このグラフ上で、
Fを表す線分1014を動かすことでFの値を設定可能であ
る。一方、表示エリア1015には、キーである固定長部分
配列と固定長部分配列テーブル103中の出現頻度の組を
出現頻度の降順に整列した表が表示される。表示エリア
1015上でFの値を表す線分1016を動かしても、やはりFの
値を設定することができる。Fの上限値入力及び表示エ
リア1011、Fを表す線分1014、1016の3つのうち、1つが
操作されFの値が変更されると、残りの2つの表示も新し
いFの値に応じて更新される。設定したパラメータの値
を確定させ、クラスタリング及びアセンブルに使用する
場合は、ボタン1018をクリックする。設定したパラメー
タの値を破棄し、パラメータ入力インタフェース表示前
の状態に戻すには、ボタン1019をクリックする。
に数値として直接入力し指定することが可能である。キ
ー頻度がFを超えるエントリを削除する処理を行わない
場合には、チェックボックス1012にチェックをつける。
これ以外に、Fの値を指定する手段として、固定長部分
配列テーブル103を作成した後で、実際の固定長部分配
列出現頻度を見ながらFの値を設定することもできる。
グラフ表示エリア1013には、ファイルパス入力エリア90
2で指定された入力配列に基づき、固定長部分配列テー
ブル103を構築した場合に、横軸を出現頻度、縦軸を出
現頻度の順位とするグラフが表示される。縦方向の拡大
率は、スライダー1017で変更できる。このグラフ上で、
Fを表す線分1014を動かすことでFの値を設定可能であ
る。一方、表示エリア1015には、キーである固定長部分
配列と固定長部分配列テーブル103中の出現頻度の組を
出現頻度の降順に整列した表が表示される。表示エリア
1015上でFの値を表す線分1016を動かしても、やはりFの
値を設定することができる。Fの上限値入力及び表示エ
リア1011、Fを表す線分1014、1016の3つのうち、1つが
操作されFの値が変更されると、残りの2つの表示も新し
いFの値に応じて更新される。設定したパラメータの値
を確定させ、クラスタリング及びアセンブルに使用する
場合は、ボタン1018をクリックする。設定したパラメー
タの値を破棄し、パラメータ入力インタフェース表示前
の状態に戻すには、ボタン1019をクリックする。
【0057】次に、図11を用いて、クラスタリング及
びアセンブルの処理経過を表示する経過表示インタフェ
ースの一例について説明する。この例の経過表示インタ
フェース1101は、全体処理状況表示部1121、クラスタア
センブル状況表示部1122、配列比較状況表示部1123を有
する。全体処理状況表示部1121には、処理中、各時点ま
でにいずれかのクラスタに加えられた配列の数が表示エ
リア1102に、生成されたクラスタ数が表示エリア1103
に、クラスタ要素数の平均が表示エリア1104に表示され
る。棒グラフ1105内に、処理済み配列数に相当する部分
1106が色を変えるなど容易に視認できる手段を用いて表
示される。
びアセンブルの処理経過を表示する経過表示インタフェ
ースの一例について説明する。この例の経過表示インタ
フェース1101は、全体処理状況表示部1121、クラスタア
センブル状況表示部1122、配列比較状況表示部1123を有
する。全体処理状況表示部1121には、処理中、各時点ま
でにいずれかのクラスタに加えられた配列の数が表示エ
リア1102に、生成されたクラスタ数が表示エリア1103
に、クラスタ要素数の平均が表示エリア1104に表示され
る。棒グラフ1105内に、処理済み配列数に相当する部分
1106が色を変えるなど容易に視認できる手段を用いて表
示される。
【0058】クラスタアセンブル状況表示部1122には、
個々のクラスタのアセンブル状況が表示される。コンセ
ンサス配列104は横長の長方形1107として表示する。長
方形1107中、固定長ウィンドウ105が既に走査した領域
に相当する領域1108を、色を変えるなど容易に視認でき
る手段で表示する。固定長ウィンドウ105がコンセンサ
ス配列104上を走査した際、各位置でその位置の長さsの
配列をキーとして固定長部分配列テーブル103を参照し
たときに、見つかった長さsの完全マッチの数をグラフ1
109として表示する。極端にマッチ数が多い領域は、リ
ピート配列又は機能ドメインの存在を示唆している可能
性がある。
個々のクラスタのアセンブル状況が表示される。コンセ
ンサス配列104は横長の長方形1107として表示する。長
方形1107中、固定長ウィンドウ105が既に走査した領域
に相当する領域1108を、色を変えるなど容易に視認でき
る手段で表示する。固定長ウィンドウ105がコンセンサ
ス配列104上を走査した際、各位置でその位置の長さsの
配列をキーとして固定長部分配列テーブル103を参照し
たときに、見つかった長さsの完全マッチの数をグラフ1
109として表示する。極端にマッチ数が多い領域は、リ
ピート配列又は機能ドメインの存在を示唆している可能
性がある。
【0059】コンセンサス配列104にアセンブルされた
入力配列502は、水平の線分1110として表示される。こ
れらの入力配列をクラスタに加える際に使用された長さ
sの完全一致に相当する領域は、色を変えるなどして容
易に視認できるようにした領域1111として表示される。
ただし、クラスタに最初に加えられた配列は、長さsの
完全一致に基づきクラスタへ加えられたわけではないた
め、その表示1112は長さsの完全一致の表示1111を伴な
わない。これら以外に、クラスタに新規メンバを追加す
る際に、長さsの完全一致に相当する領域の塩基配列を
配列比較状況表示部1123の表示エリア1113に表示し、ア
センブル時のオーバーラップ長を表示エリア1114に表示
する。
入力配列502は、水平の線分1110として表示される。こ
れらの入力配列をクラスタに加える際に使用された長さ
sの完全一致に相当する領域は、色を変えるなどして容
易に視認できるようにした領域1111として表示される。
ただし、クラスタに最初に加えられた配列は、長さsの
完全一致に基づきクラスタへ加えられたわけではないた
め、その表示1112は長さsの完全一致の表示1111を伴な
わない。これら以外に、クラスタに新規メンバを追加す
る際に、長さsの完全一致に相当する領域の塩基配列を
配列比較状況表示部1123の表示エリア1113に表示し、ア
センブル時のオーバーラップ長を表示エリア1114に表示
する。
【0060】表示のオーバーヘッドに伴う速度低下を防
ぐため、「同時表示」と書かれたトグルボタン1115をク
リックするごとに、表示を停止するか否かを切り換える
ことができる。「一時停止」と書かれたボタン1116を押
している間、表示、クラスタリング及びアセンブルの処
理を一時的に中断させることができる。
ぐため、「同時表示」と書かれたトグルボタン1115をク
リックするごとに、表示を停止するか否かを切り換える
ことができる。「一時停止」と書かれたボタン1116を押
している間、表示、クラスタリング及びアセンブルの処
理を一時的に中断させることができる。
【0061】図12を用いて、クラスタリング及びアセ
ンブル処理結果を表示する結果表示インタフェースの一
例について説明する。図示した結果表示インタフェース
1201は、全体の処理結果を表示する表示エリア1222、ク
ラスタアセンブル状況を表示する表示エリア1223、配列
アセンブル状況を表示する表示エリア1224、表示クラス
タを選択するエリア1225を有する。全体の処理結果を表
示する表示エリア1222には、総入力配列数、生成された
クラスタ数、平均クラスタサイズが表示される。
ンブル処理結果を表示する結果表示インタフェースの一
例について説明する。図示した結果表示インタフェース
1201は、全体の処理結果を表示する表示エリア1222、ク
ラスタアセンブル状況を表示する表示エリア1223、配列
アセンブル状況を表示する表示エリア1224、表示クラス
タを選択するエリア1225を有する。全体の処理結果を表
示する表示エリア1222には、総入力配列数、生成された
クラスタ数、平均クラスタサイズが表示される。
【0062】生成された各クラスタのアセンブル状況を
表示する表示エリア1223について説明する。コンセンサ
ス配列104の表示1204、固定長部分配列テーブル参照時
に見つかった長さsの完全一致の頻度を表すグラフ120
5、クラスタメンバである入力配列502を表す線分1206、
該入力配列502をクラスタに加える際に使用された長さs
の完全一致1207は、それぞれ経過表示インタフェース11
01における表示1107、1109、1110、1111と同様である。
ただし、経過表示インタフェース1101では配列アセンブ
ル状況として処理中の入力配列についてのみ、完全一致
の配列及びオーバーラップ長を表示エリア1113、1114に
表示していたが、結果表示インタフェース1201では、表
示中のクラスタの任意の配列を選択し、オーバーラップ
長1209と長さsの完全一致の配列1210を表示させること
ができる。その配列は、枠1208のような手段により強調
表示される。配列を表す線分1206をポインティングデバ
イス1804でクリックするか、キーボード1803で該配列を
他の配列に変更することができる。
表示する表示エリア1223について説明する。コンセンサ
ス配列104の表示1204、固定長部分配列テーブル参照時
に見つかった長さsの完全一致の頻度を表すグラフ120
5、クラスタメンバである入力配列502を表す線分1206、
該入力配列502をクラスタに加える際に使用された長さs
の完全一致1207は、それぞれ経過表示インタフェース11
01における表示1107、1109、1110、1111と同様である。
ただし、経過表示インタフェース1101では配列アセンブ
ル状況として処理中の入力配列についてのみ、完全一致
の配列及びオーバーラップ長を表示エリア1113、1114に
表示していたが、結果表示インタフェース1201では、表
示中のクラスタの任意の配列を選択し、オーバーラップ
長1209と長さsの完全一致の配列1210を表示させること
ができる。その配列は、枠1208のような手段により強調
表示される。配列を表す線分1206をポインティングデバ
イス1804でクリックするか、キーボード1803で該配列を
他の配列に変更することができる。
【0063】結果表示インタフェース1201では、表示す
るクラスタも選択することができる。入力配列名のエリ
ア1211に入力配列名を入力した上で、表示ボタン1212を
クリックすることにより、その入力配列を含むクラスタ
のアセンブル状況が表示される。表示の際、ユーザによ
って指定された入力配列は枠1208のような手段で強調表
示され、その入力配列について、オーバーラップ長と長
さsの完全一致の配列がそれぞれ表示エリア1209、1210
に表示される。入力配列だけでなく、クラスタを指定し
て表示させることもできる。クラスタリング及びアセン
ブルの処理中、出力するクラスタに通し番号をつけ、さ
らに、その番号を入力エリア1213に入力し表示ボタン12
14をクリックすることで該クラスタの表示を行う。
るクラスタも選択することができる。入力配列名のエリ
ア1211に入力配列名を入力した上で、表示ボタン1212を
クリックすることにより、その入力配列を含むクラスタ
のアセンブル状況が表示される。表示の際、ユーザによ
って指定された入力配列は枠1208のような手段で強調表
示され、その入力配列について、オーバーラップ長と長
さsの完全一致の配列がそれぞれ表示エリア1209、1210
に表示される。入力配列だけでなく、クラスタを指定し
て表示させることもできる。クラスタリング及びアセン
ブルの処理中、出力するクラスタに通し番号をつけ、さ
らに、その番号を入力エリア1213に入力し表示ボタン12
14をクリックすることで該クラスタの表示を行う。
【0064】実際に、本発明の方法に基づき、入力配列
をクラスタリング及びアセンブル処理を行うソフトウェ
アを実装した。ただし、この実装ではコンセンサス配列
を表現するデータ構造にアレイを使用したため、本発明
の方法よりも漸近的時間計算量が大きくなっている。ま
た、固定長部分配列テーブル103の実装には、C++言語の
ライブラリSTLのmultimapクラスを使用した。このデー
タ構造はバランス木と同様に、要素の挿入・検索・削除
を要素数の対数に比例する時間で処理可能である。この
実装は、グラフィカルなインタフェースを含んでいな
い。
をクラスタリング及びアセンブル処理を行うソフトウェ
アを実装した。ただし、この実装ではコンセンサス配列
を表現するデータ構造にアレイを使用したため、本発明
の方法よりも漸近的時間計算量が大きくなっている。ま
た、固定長部分配列テーブル103の実装には、C++言語の
ライブラリSTLのmultimapクラスを使用した。このデー
タ構造はバランス木と同様に、要素の挿入・検索・削除
を要素数の対数に比例する時間で処理可能である。この
実装は、グラフィカルなインタフェースを含んでいな
い。
【0065】クラスタリング及びアセンブル処理を行う
ためには、sの値を設定する必要がある。真のオーバー
ラップでない、偶然の一致で見つかるエントリ数の期待
値は、配列がランダムであると仮定すればNK/4^s以下
であり、sが大きいほど計算時間は短くなるが、配列に
エラーが存在し完全一致が成立しなくなる可能性を小さ
くするために、sは可能な限り小さいことが望ましい。1
計算機ワードが32bitの計算機で固定長部分配列を1計算
機ワードで表現するためには16塩基、2計算機ワードで
表現するためには32塩基以内の固定長部分配列を使用す
る必要がある。
ためには、sの値を設定する必要がある。真のオーバー
ラップでない、偶然の一致で見つかるエントリ数の期待
値は、配列がランダムであると仮定すればNK/4^s以下
であり、sが大きいほど計算時間は短くなるが、配列に
エラーが存在し完全一致が成立しなくなる可能性を小さ
くするために、sは可能な限り小さいことが望ましい。1
計算機ワードが32bitの計算機で固定長部分配列を1計算
機ワードで表現するためには16塩基、2計算機ワードで
表現するためには32塩基以内の固定長部分配列を使用す
る必要がある。
【0066】最適なsの値を調べるため、N, K, sを変化
させ、クラスタリング及びアセンブルに要する時間を計
測した。対象とした配列データは、mRNAから得られたES
Tのクラスタリング及びアセンブルをシミュレートする
ために、一般的なmRNA長に近い長さ2000塩基のランダム
な配列を、生体内のタンパク質数といわれる10万配列用
意し、そこからランダムにEST長と同程度の長さ500塩基
の配列を抽出して作成した。計算機は、CPUのクロック
周波数が1.7GHz、主記憶容量が1GBのものを使用した。
結果を、表1に示す。表1は、クラスタリング及びアセ
ンブルに要した時間、sを減少させた場合の処理時間の
増加率(固定長部分配列の長さがs+1の場合の処理時間
を、長さがsでの処理時間で除した値)、固定長部分配
列テーブル参照時の真のオーバーラップに関係なく偶然
見つかるエントリ数の期待値NK/4^sからなる。
させ、クラスタリング及びアセンブルに要する時間を計
測した。対象とした配列データは、mRNAから得られたES
Tのクラスタリング及びアセンブルをシミュレートする
ために、一般的なmRNA長に近い長さ2000塩基のランダム
な配列を、生体内のタンパク質数といわれる10万配列用
意し、そこからランダムにEST長と同程度の長さ500塩基
の配列を抽出して作成した。計算機は、CPUのクロック
周波数が1.7GHz、主記憶容量が1GBのものを使用した。
結果を、表1に示す。表1は、クラスタリング及びアセ
ンブルに要した時間、sを減少させた場合の処理時間の
増加率(固定長部分配列の長さがs+1の場合の処理時間
を、長さがsでの処理時間で除した値)、固定長部分配
列テーブル参照時の真のオーバーラップに関係なく偶然
見つかるエントリ数の期待値NK/4^sからなる。
【0067】
【表1】
【0068】この表より、sが大きいときには計算時間
はほとんど変化しないが、ある程度以上sが小さくなる
と、急激に計算時間が増加することがわかる。例えば、
N=65536, K=2のときには、s=9のときはs=10に比べ2倍以
上の計算時間を要している。計算時間を抑制するために
は、sの値を処理時間の急激な増加が見られない範囲内
とすることが望ましい。表1より、この実験で扱った配
列数のデータを扱う際に、計算時間の増加を2倍以内と
するためには、sを少なくとも10以上とする必要がある
ことがわかる。更に詳細に表1について考察すると、NK
/4^s≦0.125のとき、計算時間の増加率が1.5以下であ
ることがわかる。そこで、c=0.125とし、sの値を式
(1)を満足するように取ることが、計算時間の抑制に
有効であることがわかる。
はほとんど変化しないが、ある程度以上sが小さくなる
と、急激に計算時間が増加することがわかる。例えば、
N=65536, K=2のときには、s=9のときはs=10に比べ2倍以
上の計算時間を要している。計算時間を抑制するために
は、sの値を処理時間の急激な増加が見られない範囲内
とすることが望ましい。表1より、この実験で扱った配
列数のデータを扱う際に、計算時間の増加を2倍以内と
するためには、sを少なくとも10以上とする必要がある
ことがわかる。更に詳細に表1について考察すると、NK
/4^s≦0.125のとき、計算時間の増加率が1.5以下であ
ることがわかる。そこで、c=0.125とし、sの値を式
(1)を満足するように取ることが、計算時間の抑制に
有効であることがわかる。
【0069】上記ソフトウェアを用いて、mRNA由来の核
酸塩基配列のクラスタリングを試みた。使用したデータ
は、米国公共機関のデータベースで公開されている配列
データで、総配列数は1,536,220、総塩基数は656,663,6
61であった。計算機は、CPUのクロック周波数が450MH
z、主記憶容量が4GBの計算機を使用した。固定長部分
配列長sはc=0.125及び式(1)より13とした。また、K=
2, R=13(配列の先頭及び末尾からs=13の長さの部分配
列を固定長部分配列テーブル103に登録)、F=10とし
た。クラスタリング及びアセンブル処理は、172分57秒
で完了した。得られたクラスタの数は732,166であっ
た。
酸塩基配列のクラスタリングを試みた。使用したデータ
は、米国公共機関のデータベースで公開されている配列
データで、総配列数は1,536,220、総塩基数は656,663,6
61であった。計算機は、CPUのクロック周波数が450MH
z、主記憶容量が4GBの計算機を使用した。固定長部分
配列長sはc=0.125及び式(1)より13とした。また、K=
2, R=13(配列の先頭及び末尾からs=13の長さの部分配
列を固定長部分配列テーブル103に登録)、F=10とし
た。クラスタリング及びアセンブル処理は、172分57秒
で完了した。得られたクラスタの数は732,166であっ
た。
【0070】前述のHuang, X. and Madan, A., Genome
Research,9:868-877, 1999の方法を実装したソフトウェ
アが開発されているが、入力配列数の制限から、100万
配列を同時に処理することはできない。一方、Altschu
l, S.F. et al., Nucleic Acid Research, 25:3389-340
2,1997の方法は、クラスタリング及びアセンブルの処理
全体を含む方法ではないが、クラスタリング及びアセン
ブルの処理の一部である配列間の全組み合わせのオーバ
ーラップ探索を行なうことが可能である。しかし、ひと
つの配列とオーバーラップする配列をすべて探索するた
めに、CPUのクロック周波数が450MHzのワークステー
ションで9秒程度の時間を要し、1,536,220配列のオーバ
ーラップをすべて探索すると160日程度かかることが予
想される。本発明の方法よりも漸近的時間計算量が大き
な前記ソフトウェアで、172分57秒という短時間で1,53
6,220配列からなる配列データのクラスタリング及びア
センブルに成功したことにより、本発明の方法の有効性
が実証された。
Research,9:868-877, 1999の方法を実装したソフトウェ
アが開発されているが、入力配列数の制限から、100万
配列を同時に処理することはできない。一方、Altschu
l, S.F. et al., Nucleic Acid Research, 25:3389-340
2,1997の方法は、クラスタリング及びアセンブルの処理
全体を含む方法ではないが、クラスタリング及びアセン
ブルの処理の一部である配列間の全組み合わせのオーバ
ーラップ探索を行なうことが可能である。しかし、ひと
つの配列とオーバーラップする配列をすべて探索するた
めに、CPUのクロック周波数が450MHzのワークステー
ションで9秒程度の時間を要し、1,536,220配列のオーバ
ーラップをすべて探索すると160日程度かかることが予
想される。本発明の方法よりも漸近的時間計算量が大き
な前記ソフトウェアで、172分57秒という短時間で1,53
6,220配列からなる配列データのクラスタリング及びア
センブルに成功したことにより、本発明の方法の有効性
が実証された。
【0071】
【発明の効果】本発明によれば、クラスタリング及びア
センブル処理を、Dを入力配列の総塩基数、Nを総入力配
列数、Mを最長の入力配列の長さとするときO(D(M+log
N))の以下の計算時間で行うことが可能となり、150万配
列を超える莫大な数の配列データのクラスタリングが数
時間で可能となる上、グラフィカルなユーザインタフェ
ースが提供される。
センブル処理を、Dを入力配列の総塩基数、Nを総入力配
列数、Mを最長の入力配列の長さとするときO(D(M+log
N))の以下の計算時間で行うことが可能となり、150万配
列を超える莫大な数の配列データのクラスタリングが数
時間で可能となる上、グラフィカルなユーザインタフェ
ースが提供される。
【図1】本発明の基本的なアイデアを表す説明図。
【図2】本発明のクラスタリング及びアセンブル方法
の、全体的な流れを表すフローチャート。
の、全体的な流れを表すフローチャート。
【図3】先頭及び末尾の部分配列を固定長部分配列テー
ブルに登録する理由を説明する図。
ブルに登録する理由を説明する図。
【図4】固定長部分配列テーブル構築方法の説明図。
【図5】クラスタに新規メンバを追加するときの、配列
オーバーラップ状況の説明図。
オーバーラップ状況の説明図。
【図6】本発明の方法の進行過程を表す説明図。
【図7】固定長部分配列の計算機ワードへのエンコーデ
ィングの例を表す説明図。
ィングの例を表す説明図。
【図8】固定長部分配列テーブル作成時に、各配列の先
頭及び末尾から複数の部分配列抽出する方法の説明図。
頭及び末尾から複数の部分配列抽出する方法の説明図。
【図9】メインインタフェースの一例の説明図。
【図10】入力インタフェースの一例の説明図。
【図11】経過表示インタフェースの一例の説明図。
【図12】結果表示インタフェースの一例の説明図。
【図13】mRNA由来のESTのクラスタリング及びアセン
ブル処理の概要の説明図。
ブル処理の概要の説明図。
【図14】データ構造に双方向リストを用いて塩基配列
を格納する方法の説明図。
を格納する方法の説明図。
【図15】データ構造に双方向リストを用いて格納され
た塩基配列に新たな塩基を挿入する方法の説明図。
た塩基配列に新たな塩基を挿入する方法の説明図。
【図16】データ構造にアレイを用いて塩基配列を格納
する方法の説明図。
する方法の説明図。
【図17】データ構造にアレイを用いて格納された塩基
配列に新たな塩基を挿入する方法の説明図。
配列に新たな塩基を挿入する方法の説明図。
【図18】本発明による核酸塩基配列アセンブル装置の
構成例を示す図。
構成例を示す図。
101:クラスタリング及びアセンブルの対象となる入
力配列、102:入力配列から選択された長さsの固定
長部分配列、103:固定長部分配列テーブル、10
4:ある時点で処理対象としているクラスタのコンセン
サス配列、105:固定長ウィンドウ、301〜30
5:入力配列、303,306:2つの入力配列のオー
バーラップ部分、401:エントリ、402:キー、5
02:入力配列、503:コンセンサス配列と入力配列
のオーバーラップ部、504:新しいコンセンサス配
列、505:古いコンセンサス配列104に無く、新しい
コンセンサス配列504に存在する配列領域、1301:m
RNA、1302:EST、1303:EST配列集合、130
5:配列間がオーバーラップしているペア、1306:
ESTのアセンブルにより得られた塩基配列
力配列、102:入力配列から選択された長さsの固定
長部分配列、103:固定長部分配列テーブル、10
4:ある時点で処理対象としているクラスタのコンセン
サス配列、105:固定長ウィンドウ、301〜30
5:入力配列、303,306:2つの入力配列のオー
バーラップ部分、401:エントリ、402:キー、5
02:入力配列、503:コンセンサス配列と入力配列
のオーバーラップ部、504:新しいコンセンサス配
列、505:古いコンセンサス配列104に無く、新しい
コンセンサス配列504に存在する配列領域、1301:m
RNA、1302:EST、1303:EST配列集合、130
5:配列間がオーバーラップしているペア、1306:
ESTのアセンブルにより得られた塩基配列
フロントページの続き
(56)参考文献 特開 平10−40257(JP,A)
HUANG,X.,A Contig
Assembly Program
Based on Sensitive
Detection of Frag
ment Overlaps,GENO
MICS,1992年,Vol.14,No.
1,p.18−25
(58)調査した分野(Int.Cl.7,DB名)
G06F 19/00
G06F 17/30
C12M 1/00
C12Q 1/68
JICSTファイル(JOIS)
Claims (19)
- 【請求項1】 複数の入力核酸塩基配列を格納する記憶
手段と、前記複数の入力核酸塩基配列に対して各核酸塩
基配列を識別する情報と当該核酸塩基配列から抽出した
固定塩基長の部分配列とを関連づけて登録したテーブル
と、探索手段と、判定手段と、コンセンサス配列再構築
手段とを備える核酸塩基配列アセンブル装置の動作方法
であって、 前記探索手段が、前記記憶手段に格納された複数の入力
塩基配列から選択した 第1の核酸塩基配列上で固定長の
ウィンドウを移動させながら、前記テーブルを参照し
て、当該ウィンドウによって切り取られた配列と一致す
る部分配列を末端領域に有する第2の核酸塩基配列を探
索する工程を実行し、前記判定手段が、 前記工程で探索された第2の核酸塩基
配列と前記第1の核酸塩基配列とを比較し、両者がアセ
ンブル可能かどうか判定する工程を実行し、 前記工程で前記判定手段がアセンブル可能と判定した場
合、前記コンセンサス配列再構築手段が、前記第1の核
酸塩基配列と前記第2の核酸塩基配列とをアセンブルす
る工程を実行する核酸塩基配列アセンブル装置の動作方
法。 - 【請求項2】 複数の入力核酸塩基配列を格納する記憶
手段と、前記複数の入力核酸塩基配列に対して各核酸塩
基配列を識別する情報と当該核酸塩基配列から抽出した
固定塩基長の部分配列とを関連づけて登録したテーブル
と、探索手段と、判定手段と、コンセンサス配列再構築
手段とを備える核酸塩基配列アセンブル装置の動作方法
であって、 前記探索手段が、前記記憶手段に格納された複数の入力
塩基配列から選択した 第1の核酸塩基配列上で固定長の
ウィンドウを移動させながら、前記テーブルを参照し
て、当該ウィンドウによって切り取られた配列と一致す
る部分配列を末端領域に有する第2の核酸塩基配列を探
索する工程を実行し、前記判定手段が、 前記工程で探索された第2の核酸塩基
配列と前記第1の核酸塩基配列とを比較し、両者がアセ
ンブル可能かどうか判定する工程を実行し、 前記工程で前記判定手段がアセンブル可能と判定した場
合、前記コンセンサス配列再構築手段が、前記第1の核
酸塩基配列と前記第2の核酸塩基配列とをアセンブルす
る工程を実行し、前記探索手段が、 前記工程で前記コンセンサス配列再構
築手段によってアセンブルされた核酸塩基配列を改めて
第1の核酸塩基配列として前述の工程を反復実行する核
酸塩基配列アセンブル装置の動作方法。 - 【請求項3】 複数の入力核酸塩基配列を格納する記憶
手段と、登録手段と、探索手段と、判定手段と、コンセ
ンサス配列再構築手段とを備える核酸塩基配列アセンブ
ル装置の動作方法であって、 前記登録手段が、前記記憶手段に格納された 複数の核酸
塩基配列について、各核酸塩基配列を識別する情報と当
該核酸塩基配列の末端領域に位置する固定塩基長の部分
配列とを関連づけてテーブルに登録する工程を実行し、前記コンセンサス配列再構築手段が、前記記憶手段に格
納された複数の入力塩基配列から選択した 第1の核酸塩
基配列に基づき最初のコンセンサス配列を構築する工程
を実行し、前記探索手段が、 前記テーブルを参照して、前記記憶手
段に格納された複数の入力塩基配列から前記コンセンサ
ス配列の一部と一致する部分配列を有する核酸塩基配列
を探索する工程を実行し、前記判定手段が、 前記工程で探索された核酸塩基配列と
前記コンセンサス配列間の前記部分配列に連続する配列
同士を比較し、探索された核酸塩基配列が前記コンセン
サス配列にアセンブル可能かどうかを判定する工程を実
行し、 前記工程で前記判定手段がアセンブル可能と判定した場
合、前記コンセンサス配列再構築手段が前記コンセンサ
ス配列に前記核酸塩基配列をアセンブルしてコンセンサ
ス配列を再構築する工程を実行する核酸塩基配列アセン
ブル装置の動作方法。 - 【請求項4】 請求項3記載の核酸塩基配列アセンブル
装置の動作方法において、前記コンセンサス配列再構築
手段は、前記第1の核酸塩基配列として未処理の核酸塩
基配列中で最長の塩基長を有する配列を選択する核酸塩
基配列アセンブル装置の動作方法。 - 【請求項5】 入力手段と、複数の入力核酸塩基配列を
格納する記憶手段と、配列をソートするソート手段と、
登録手段と、探索手段と、判定手段と、コンセンサス配
列再構築手段とを備える核酸塩基配列アセンブル装置の
動作方法であって、 前記ソート手段が、 複数の核酸塩基配列を配列長の降順
にソートする第1の工程を実行し、前記登録手段が、前記記憶手段に格納された 複数の核酸
塩基配列について、各核酸塩基配列を識別する情報と当
該核酸塩基配列の末端領域に位置する固定塩基長の部分
配列とを関連づけてテーブルに登録する第2の工程を実
行し、前記コンセンサス配列再構築手段が、 未処理の複数の核
酸塩基配列の中から配列の長さが最長の核酸塩基配列を
1つ選び最初のコンセンサス配列を構築する第3の工程
を実行し、前記探索手段が、 前記コンセンサス配列上で固定長ウィ
ンドウを移動させつつ、前記テーブルを参照して、前記
固定長ウィンドウによって切り取られた配列と一致する
部分配列を有する未処理の核酸塩基配列を探索する第4
の工程を実行し、前記判定手段が、 前記コンセンサス配列と前記第4の工
程で探索された未処理の核酸塩基配列とを比較し、両者
がアセンブル可能であるか否かを判定する第5の工程を
実行し、 前記第5の工程で前記判定手段がアセンブル可能と判定
した場合、前記コンセンサス配列再構築手段が、前記コ
ンセンサス配列に前記第4の工程で探索された核酸塩基
配列をアセンブルし、コンセンサス配列を再構築する第
6の工程を実行し、前記探索手段、前記判定手段及び前記コンセンサス配列
再構築手段は、 前記固定長ウィンドウが前記コンセンサ
ス配列の全領域を走査するまで第4の工程から第6の工
程を反復実行し、さらに未処理の核酸塩基配列が残って
いれば前記第3の工程から前記第6の工程を反復実行す
る核酸塩基配列アセンブル装置の動作方法。 - 【請求項6】 請求項3〜5のいずれか1項記載の核酸
塩基配列アセンブル装置の動作方法において、前記登録
手段は、前記入力手段からの、1つの核酸塩基配列に対
して前記テーブルに登録する前記固定塩基長の部分配列
の数を指定する指示を受け付ける工程を実行する核酸塩
基配列アセンブル装置の動作方法。 - 【請求項7】 請求項3〜6のいずれか1項記載の核酸
塩基配列アセンブル装置の動作方法において、前記登録
手段は、前記入力手段からの、前記テーブルに登録する
前記固定塩基長の部分配列を抽出する前記核酸塩基配列
の末端領域の範囲を指定する指示を受け付ける工程を実
行する核酸塩基配列アセンブル装置の動作方法。 - 【請求項8】 請求項3〜7のいずれか1項記載の核酸
塩基配列アセンブル装置の動作方法において、前記登録
手段は、前記テーブルに登録する前記固定塩基長の部分
配列の塩基長を10以上32以下とする核酸塩基配列アセン
ブル装置の動作方法。 - 【請求項9】 請求項3〜7のいずれか1項記載の核酸
塩基配列アセンブル装置の動作方法において、前記登録
手段は、前記入力手段からの、前記テーブルを一回参照
したとき検出され、かつ前記コンセンサス配列とアセン
ブル不可能であると判定されるエントリの数の期待値の
上限値cを指定する指示を受け付ける工程を実行し、 前記登録手段は、 前記複数の核酸塩基配列の数をN、各
核酸塩基配列から選択される固定塩基長の部分配列の数
をKとするとき、次式(1)を満足する整数sを前記テー
ブルに登録する固定塩基長の部分配列の塩基長とする核
酸塩基配列アセンブル装置の動作方法。 - 【請求項10】 請求項3〜9のいずれか1項記載の核
酸塩基配列アセンブル装置の動作方法において、前記コ
ンセンサス配列を格納するデータ構造に双方向リストを
使用する核酸塩基配列アセンブル装置の動作方法。 - 【請求項11】 請求項3〜10のいずれか1項記載の
核酸塩基配列アセンブル装置の動作方法において、前記
固定塩基長の部分配列を該固定塩基長部分配列の長さと
無関係な固定数の計算機ワードで表現する核酸塩基配列
アセンブル装置の動作方法。 - 【請求項12】 請求項3〜11のいずれか1項記載の
核酸塩基配列アセンブル装置の動作方法において、前記
探索手段は、前記テーブル中、予め指定された回数以下
の出現回数をもつキーに対応するエントリだけを利用す
る核酸塩基配列アセンブル装置の動作方法。 - 【請求項13】 入力核酸塩基配列の末端領域に設定さ
れる固定塩基長の部分配列に関するパラメータを入力す
る入力手段と、 複数の入力核酸塩基配列に対して、各核酸塩基配列を識
別する情報と前記入力手段によって入力されたパラメー
タに従って当該核酸塩基配列から抽出した固定塩基長の
部分配列とを関連づけてテーブルに登録する手段と、 前記テーブルを参照してコンセンサス配列の一部と一致
する部分配列を有する核酸塩基配列を探索する手段と、 前記手段で探索された核酸塩基配列と前記コンセンサス
配列とを比較し、両者がアセンブル可能かどうかを判定
する判定手段と、 前記判定手段でアセンブル可能と判定された場合、前記
コンセンサス配列と前記探索された核酸塩基配列とをア
センブルしてコンセンサス配列を再構築する手段とを含
むことを特徴とする核酸塩基配列アセンブル装置。 - 【請求項14】 請求項13記載の核酸塩基配列アセン
ブル装置において、前記入力手段は、入力核酸塩基配列
上の前記固定塩基長の部分配列の位置を配列の末端から
の関係でグラフィカルに表示する表示部を有し、ユーザ
が指定した固定長部分配列位置を表示に即座に反映させ
ることを特徴とする核酸塩基配列アセンブル装置。 - 【請求項15】 請求項13又は14記載の核酸塩基配
列アセンブル装置において、前記入力手段は、1つの入
力核酸塩基配列に対して抽出すべき前記固定塩基長の部
分配列の数及び前記固定塩基長の部分配列の塩基数を入
力することを特徴とする核酸塩基配列アセンブル装置。 - 【請求項16】 請求項13記載の核酸塩基配列アセン
ブル装置において、前記入力手段は、前記テーブルに登
録する固定塩基長の部分配列の長さを、当該テーブルを
参照したときに検出される偶然の一致の数の期待値によ
って指定することを特徴とする核酸塩基配列アセンブル
装置。 - 【請求項17】 請求項13〜16のいずれか1項記載
の核酸塩基配列アセンブル装置において、前記テーブル
に登録された前記固定塩基長の部分配列の配列毎の出現
頻度を表すグラフィカルな表示及び/又は数値を表示す
る表示部を有することを特徴とする核酸塩基配列アセン
ブル装置。 - 【請求項18】 請求項17記載の核酸塩基配列アセン
ブル装置において、前記出現頻度の上限を指定する手段
と、前記テーブルから前記出現頻度が指定された上限を
超えるエントリを削除する手段とを備えることを特徴と
する核酸塩基配列アセンブル装置。 - 【請求項19】 請求項13〜18のいずれか1項記載
の核酸塩基配列アセンブル装置において、前記コンセン
サス配列にアセンブルされた各入力核酸塩基配列を、前
記コンセンサス配列の一部と一致する前記入力核酸塩基
配列の固定塩基長の部分配列の位置とともに表示する手
段を備えることを特徴とする核酸塩基配列アセンブル装
置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001353640A JP3530842B2 (ja) | 2001-11-19 | 2001-11-19 | 核酸塩基配列アセンブル装置及びその動作方法 |
US10/083,338 US7085651B2 (en) | 2001-11-19 | 2002-02-27 | Method and device for assembling nucleic acid base sequences |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001353640A JP3530842B2 (ja) | 2001-11-19 | 2001-11-19 | 核酸塩基配列アセンブル装置及びその動作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003157267A JP2003157267A (ja) | 2003-05-30 |
JP3530842B2 true JP3530842B2 (ja) | 2004-05-24 |
Family
ID=19165624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001353640A Expired - Fee Related JP3530842B2 (ja) | 2001-11-19 | 2001-11-19 | 核酸塩基配列アセンブル装置及びその動作方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7085651B2 (ja) |
JP (1) | JP3530842B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5247009B2 (ja) * | 2006-06-16 | 2013-07-24 | 独立行政法人理化学研究所 | 配列抽出装置、配列抽出方法、プログラムおよび記録媒体 |
JP5288355B2 (ja) * | 2007-10-31 | 2013-09-11 | 独立行政法人農業生物資源研究所 | 塩基配列決定プログラム、塩基配列決定装置および塩基配列決定方法 |
US8370079B2 (en) | 2008-11-20 | 2013-02-05 | Pacific Biosciences Of California, Inc. | Algorithms for sequence determination |
WO2011137368A2 (en) | 2010-04-30 | 2011-11-03 | Life Technologies Corporation | Systems and methods for analyzing nucleic acid sequences |
US9131742B2 (en) | 2010-05-27 | 2015-09-15 | Christopher D. Gowen | Chinstrap to helmet connector |
US9268903B2 (en) | 2010-07-06 | 2016-02-23 | Life Technologies Corporation | Systems and methods for sequence data alignment quality assessment |
JP6027608B2 (ja) * | 2011-06-06 | 2016-11-16 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | 核酸配列データのアセンブリに関する方法 |
US9146248B2 (en) | 2013-03-14 | 2015-09-29 | Intelligent Bio-Systems, Inc. | Apparatus and methods for purging flow cells in nucleic acid sequencing instruments |
US9591268B2 (en) | 2013-03-15 | 2017-03-07 | Qiagen Waltham, Inc. | Flow cell alignment methods and systems |
WO2020218555A1 (ja) * | 2019-04-26 | 2020-10-29 | bitBiome株式会社 | 単一生物単位の配列情報の新規処理法 |
CN116364195B (zh) * | 2023-05-10 | 2023-10-13 | 浙大城市学院 | 一种基于预训练模型的微生物遗传序列表型预测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040257A (ja) * | 1996-07-24 | 1998-02-13 | Hitachi Ltd | 文字配列比較方法、およびそれを用いたアセンブル方法 |
-
2001
- 2001-11-19 JP JP2001353640A patent/JP3530842B2/ja not_active Expired - Fee Related
-
2002
- 2002-02-27 US US10/083,338 patent/US7085651B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
HUANG,X.,A Contig Assembly Program Based on Sensitive Detection of Fragment Overlaps,GENOMICS,1992年,Vol.14,No.1,p.18−25 |
Also Published As
Publication number | Publication date |
---|---|
JP2003157267A (ja) | 2003-05-30 |
US7085651B2 (en) | 2006-08-01 |
US20030104408A1 (en) | 2003-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gront et al. | Generalized fragment picking in Rosetta: design, protocols and applications | |
Batzoglou | The many faces of sequence alignment | |
Orengo et al. | Bioinformatics: genes, proteins and computers | |
US12046327B1 (en) | Identity-by-descent relatedness based on focal and reference segments | |
US5556749A (en) | Oligoprobe designstation: a computerized method for designing optimal DNA probes | |
CA2424031C (en) | System and process for validating, aligning and reordering genetic sequence maps using ordered restriction map | |
Mitrophanov et al. | Statistical significance in biological sequence analysis | |
Brudno et al. | Fast and sensitive alignment of large genomic sequences | |
US6373971B1 (en) | Method and apparatus for pattern discovery in protein sequences | |
Cannon et al. | DiagHunter and GenoPix2D: programs for genomic comparisons, large-scale homology discovery and visualization | |
McIntosh et al. | High confidence rule mining for microarray analysis | |
JP3530842B2 (ja) | 核酸塩基配列アセンブル装置及びその動作方法 | |
JP2009116559A (ja) | 大量配列の一括検索方法及び検索システム | |
US6370479B1 (en) | Method and apparatus for extracting and evaluating mutually similar portions in one-dimensional sequences in molecules and/or three-dimensional structures of molecules | |
Huang et al. | Gene Alert-a sequence search results keyword parser | |
Zhu et al. | Generalized gene adjacencies, graph bandwidth, and clusters in yeast evolution | |
KR100538451B1 (ko) | 분산 컴퓨팅 환경에서의 유전자 및 단백질 유사서열 검색시스템 및 그 방법 | |
US6611828B1 (en) | Graphical viewer for biomolecular sequence data | |
JP2003256433A (ja) | 遺伝子構造解析方法およびその装置 | |
Dewey | Whole-genome alignments and polytopes for comparative genomics | |
Nicolas et al. | Finding and characterizing repeats in plant genomes | |
US20030092053A1 (en) | Storage medium, method for designing genotyping-microarray and computer system containing the same | |
Dhillon et al. | Identification and annotation of repetitive sequences in fungal genomes | |
Ndiaye et al. | When less is more: sketching with minimizers in genomics | |
Chumwatana | Using Frequent Substring Mining Techniques for Indexing Genome Sequences: A Comparison of Frequent Substring and Frequent Max Substring Algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040301 |
|
LAPS | Cancellation because of no payment of annual fees |