(57)【要約】      （修正有）【課題】塩基配列の分析のための参照配列処理システム及び方法を提供する。【解決手段】参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出するシード抽出部４０２と、前記シード抽出部４０２で抽出された前記シードにリード(ｒｅａｄ)とマッピングされないベース(ｂａｓｅ)が存在する否かを判断する判断部４０４と、前記シードに前記リードとマッピングされないベースが存在しない場合、前記シードをインデックスに追加するインデックス生成部４０６と、を含む参照配列処理システム４００。【選択図】図４
2013172709.tif 000002
【特許請求の範囲】
【請求項１】
参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出するシード抽出部と、
前記シード抽出部で抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する判断部と、
前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加するインデックス生成部と、を含むことを特徴とする参照配列処理システム。
【請求項２】
前記判断部は、前記シードにＡ、Ｃ、ＧまたはＴ以外の文字で表記されたベースが存在するか否かによって前記シードに不明なベースが存在するか否かを判断することを特徴とする請求項１に記載の参照配列処理システム。
【請求項３】
前記判断部は、前記シードにＮで表記されたベースが存在するか否かによって前記シードに不明なベースが存在するか否かを判断することを特徴とする請求項１に記載の参照配列処理システム。
【請求項４】
請求項１乃至請求項３のいずれか一項に記載の参照配列処理システムを含むことを特徴とするゲノム分析システム。
【請求項５】
一つ以上のプロセッサと、
メモリーと、
一つ以上のプログラムと、を含む装置であって、
前記一つ以上のプログラムは、前記メモリーに保存されて前記一つ以上のプロセッサにより実行されるように構成され、
前記プログラムは、
参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出する段階と、
抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する段階と、
前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加する段階と、を実行するための命令語を含むことを特徴とする装置。
【請求項６】
参照配列処理システムで、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出する段階と、
前記参照配列処理システムで、抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する段階と、
前記参照配列処理システムで、前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加する段階と、を含むことを特徴とする参照配列処理方法。
【請求項７】
前記判断段階は、前記シードにＡ、Ｃ、ＧまたはＴ以外の文字で表記されたベースが存在するか否かによって前記シードに不明なベースが存在するか否かを判断することを特徴とする請求項６に記載の参照配列処理方法。
【請求項８】
前記判断段階は、前記シードにＮで表記されたベースが存在するか否かによって前記シードに不明なベースが存在するか否かを判断することを特徴とする請求項６に記載の参照配列処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲノムの塩基配列を分析するための技術に関する。
【背景技術】
【０００２】
次世代シークエンシング技術(ＮＧＳ：ｎｅｘｔ−ｇｅｎｅｒａｔｉｏｎ ｓｅｑｕｅｎｃｉｎｇ)の出現とＤＮＡシークエンシング(ｓｅｑｕｅｎｃｉｎｇ：塩基配列解読)の費用減少により遺伝医学(ｍｅｄｉｃａｌ ｇｅｎｅｔｉｃｓ)と集団遺伝学(ｐｏｐｕｌａｔｉｏｎ ｇｅｎｅｔｉｃｓ)研究のために大規模でヒトゲノムの塩基配列を生産することが可能になった。塩基配列の分析のために使われるＮＧＳシーケンサーは、長さは非常に短いが数十億個の断片配列(リード：ｒｅａｄ)を生産することができる。各個人のゲノム配列は、生産されたリードが参照配列のどの所に位置するかを決定するリシークエンシング(Ｒｅｓｅｑｕｅｎｃｉｎｇ：Ｉｎｄｅｘｉｎｇ、Ｍａｐｐｉｎｇ ａｎｄ Ａｌｉｇｎｍｅｎｔ)作業を通じて作られる。
【０００３】
塩基配列の分析時、リードの正確なマッピングのためには参照配列が必ず必要である。しかし、このような参照配列の中で一部は、シークエンシングエラー、実験エラーなどの理由によりＡ、Ｃ、Ｇ、Ｔの中でどんな塩基で表現するか不明な場合があり、この場合、通常的に該当位置をＮで表記する。この場合、従来の塩基配列分析システムは、前記のような不明なベースを処理するため、これをＡ、Ｃ、Ｇ、Ｔの中で任意に選択された塩基で仮定するか、または確率的方法論などを利用して不明なベースを処理した。しかし、このような方法の場合、不明なベースの処理ルーチンが付加されることによって、塩基配列の分析速度が非常に遅くなるかまたは塩基配列の分析の正確度が低下される問題点があった。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、本発明は上述したような従来技術の問題点を解決するためになされたもので、その目的は、塩基配列分析の正確度を毀損しないと同時に高速処理が可能な参照配列内の不明なベースの処理技術を提供することにある。
【課題を解決するための手段】
【０００５】
本発明の一実施例による参照配列処理システムは、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出するシード抽出部と、前記シード抽出部で抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する判断部と、前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加するインデックス生成部と、を含む。
【０００６】
また、前記課題を解決するための本発明の一実施例による参照配列処理方法は、参照配列処理システムで、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出する段階と、前記参照配列処理システムで、抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する段階と、前記参照配列処理システムで、前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加する段階と、を含む。
【０００７】
また、前記課題を解決するための本発明の一実施例による装置は、一つ以上のプロセッサ、メモリー、及び一つ以上のプログラムを含む装置として、前記一つ以上のプログラムは、前記メモリーに保存されて前記一つ以上のプロセッサにより実行されるように構成され、前記プログラムは、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出する段階と、抽出された前記シードに不明なベース(ｂａｓｅ)が存在するか否かを判断する段階と、前記シードに不明なベースが存在しない場合、前記シードをインデックスに追加する段階と、を行うための命令語を含む。
【発明の効果】
【０００８】
本発明によれば、塩基配列の分析時に参照配列で不明なベースを処理するためのアルゴリズムを含む必要がなくなるので、塩基配列の分析過程を単純化すると同時に分析時間を大幅に短縮することができる。
【０００９】
また、ハッシュテーブルの容量が大幅に減少するので、一層少ないメモリーを利用しても塩基配列の分析が可能になる長所がある。
【図面の簡単な説明】
【００１０】
【図１】参照配列からシードを抽出する過程を例示した図。
【図２】ゲノム塩基配列(ｇｅｎｏｍｅ ｓｅｑｕｅｎｃｉｎｇ)の分析過程を説明するためのフローチャート。
【図３】ゲノム塩基配列の分析において、リードと参照配列とのマッピング過程を説明するための図。
【図４】本発明の一実施例による参照配列処理システムのブロック構成図。
【図５】参照配列とリードとの対比を通じて不明なベースを類推する過程を説明するための図。
【図６】本発明の一実施例による参照配列処理方法を示したフローチャート。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の具体的な実施形態について説明する。しかし、これは例示に過ぎず、本発明はこれに限定されない。
【００１２】
本発明の説明において、本発明と関連された公知技術に対する具体的な説明が本発明の要旨を不必要に曖昧にすると判断される場合には、その詳細な説明を省略する。また、後述される用語は、本発明における機能を考慮して定義された用語として、これは使用者、運用者の意図または慣例などによって変わることができる。したがって、その定義は本明細書の全般的な内容を土台で行われる。
【００１３】
本発明の技術的思想は請求範囲により決定され、以下の実施例は、本発明の技術的思想を本発明が属する技術分野において通常の知識を有した者に効果的に説明するための一つの手段である。
【００１４】
本発明の実施例を詳しく説明する前に、本発明で使われる用語に対して説明すれば、次のようである。
【００１５】
まず、『リード(ｒｅａｄ)』とは、ゲノムシーケンサー(ｇｅｎｏｍｅ ｓｅｑｕｅｎｃｅｒ)から出力される塩基配列の断片(ｆｒａｇｍｅｎｔ)である。リードの長さは、ゲノムシーケンサーの種類によって多様であり、例えば、３５〜５００ｂｐ(ｂａｓｅ ｐａｉｒ)程度の長さを有することができる。一般的に、ＤＮＡ塩基の場合、Ａ、Ｃ、Ｇ、Ｔのアルファベット文字で表現される。
【００１６】
『参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)』とは、前記リードから全体塩基配列を生成するにおいて参照になる塩基配列を意味する。すなわち、塩基配列分析では、ゲノムシーケンサーから出力される多量のリードを、参照配列を参照してマッピングすることで全体塩基配列を完成する。
【００１７】
『ベース(ｂａｓｅ)』は、参照配列及びリードを構成する最小単位である。上述のように、ＤＮＡ塩基の場合、Ａ、Ｃ、Ｇ、Ｔの４種類のアルファベット文字で構成され、これら各々をベースと表現する。言い換えれば、ＤＮＡ塩基の場合、４個のベースで表現され、これはリードも同様である。但し、参照配列の場合、多様な理由(シークエンシングエラー、サンプルのエラーなど)により特定位置の塩基をＡ、Ｃ、ＧまたはＴの中でどのベースで表現するか不明な場合が発生することができ、通常的に、このような不明なベースの場合、Ｎなどの別途の文字で表記する。
【００１８】
『シード(ｓｅｅｄ)』は、リードのマッピングのためにリードと参照配列とを比較する時の単位になるシーケンスである。理論的にリードを参照配列にマッピングするためには、リード全体を参照配列の一番目の部分から順次に比べて行きながらリードのマッピング位置を計算する。しかし、このような方法の場合、一つのリードをマッピングするためにとても長い時間及び多量のコンピュータパワーが要求されるので、実際には、参照配列のはじめから一ベースずつ移動しながら参照配列を設定された長さほど読み込んだ後、これをハッシング(ｈａｓｈｉｎｇ)してハッシュテーブル(ｈａｓｈ ｔａｂｌｅ)を構築し、これを利用してリードのマッピング位置を計算する。この時、前記ハッシシングのための参照配列の断片がシードになる。シードの長さは、リードの長さより短く構成することができ、これは参照配列の長さ、構築されるハッシュテーブルの容量などを考慮して適切に決定することができる。
【００１９】
図１は、参照配列からシードを抽出する過程を例示した図で、参照配列の初部分から一ベースずつ移動しながら１０ｂｐ長さほど参照配列の値を読み込んでシードを抽出する過程を示している。抽出された各々のシードは、全て同一な長さ(図示された実施例の場合１０ｂｐ)を有し、その値は、シードが抽出された参照配列の位置によって変わるようになる。図示された実施例において、抽出された一番目のシードは、参照配列の一番目から十番目までの値、すなわち、Ｇ Ｔ Ｇ Ｇ Ｃ Ａ Ａ Ｔ Ｔ Ａ の値を有し、三番目のシードは、参照配列の三番目から十二番目までの値、すなわち、Ｇ Ｇ Ｃ Ａ Ａ Ｔ Ｔ Ａ Ａ Ａの値を有する。
【００２０】
図２は、ゲノム塩基配列(ｇｅｎｏｍｅ ｓｅｑｕｅｎｃｉｎｇ)の分析過程２００を説明するためのフローチャートである。基本的に、ゲノム塩基配列の分析は、シーケンサーから出力される大量の短いリードを参照配列にマッピングさせて全体ゲノム配列を得るための過程である。
【００２１】
まず、参照配列からシードを抽出する(ステップＳ２０２)。図１に示したように、この段階では、参照配列の初部分から一ベースずつ順次に移動しながら設定された長さほど前記参照配列の値を読み込んで複数個のシードを抽出する。
【００２２】
次に、ステップＳ２０２で抽出されたシードを、ハッシュ関数(ｈａｓｈ ｆｕｎｃｔｉｏｎ)を利用してハッシングし、それからハッシュテーブルを構成する(ステップＳ２０４)。この時、前記ハッシュテーブルのキー(ｋｅｙ)は、シードから生成されたハッシュ値であり、値(ｖａｌｕｅ)は該当シードの参照配列での位置情報(例えば、ポインタ)で構成することができる。
【００２３】
次に、シーケンサーから入力された遺伝子に対する複数個のリードを抽出して(ステップＳ２０６)、前記ハッシュテーブルを利用して抽出されたリードを参照配列にマッピングする(ステップＳ２０８)。
【００２４】
図３は、上述のようなリードの参照配列へのマッピング過程を説明するための図である。まず、ステップＳ２０６で抽出されたリードの前部分をシード長さほど読み込んだ後(図示された実施例では、リードの前部分をシードで設定したが、実際にシードはリードのどの部分でも設定することができる。但し、リードの前部分の正確度(ｑｕａｌｉｔｙ)が一般的に高いので、主にリードの前部分をシードで使う)、ハッシュテーブルを検索して該当シードに対応する参照配列内の位置情報を抽出する。この場合、シードの長さによって相異であるが、通常的に一つ以上の位置情報が導出される(図面ではＬ１及びＬ２の２個の位置情報が抽出される)。以後、導出された各々の位置でリードの残りの部分を参照配列と対照してリードの正確なマッピング位置を決定する。図示された実施例の場合、２個の候補位置の中で、Ｌ１ではリードが参照配列に対応(一致)しないが、Ｌ２では対応することで判断されるところ、最終的に、リードは、Ｌ２位置にマッピングされる。
【００２５】
最後に、前記のような過程を経てマッピングされた各リードを連結することで一つの塩基配列が完成される(ステップＳ２１０)。
【００２６】
図４は、本発明の一実施例による参照配列処理システム４００のブロック構成図である。本発明の実施例において、参照配列処理システム４００は、別途のシステムで構成するかまたは塩基配列分析のためのシステム内の一要素で含んでもよい。
【００２７】
図４に示したように、本発明の一実施例による参照配列処理システム４００は、シード抽出部４０２と、判断部４０４と、インデックス生成部４０６と、を含む。
【００２８】
シード抽出部４０２は、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出する。上述のように、シード抽出部４０２は、参照配列の初部分から一ベースずつ順次に移動しながら設定された長さほど前記参照配列の値を読み込んで複数個のシードを抽出する。例えば、参照配列が次のように構成される場合を仮定する。
【００２９】
Ａ Ｃ Ｃ Ｇ Ｔ Ａ Ａ Ａ Ｔ Ｇ Ｎ Ｎ Ｎ Ｎ Ｇ Ｃ Ｃ Ａ Ｇ Ｃ Ｔ
【００３０】
もし、設定されたシードの長さが７ｂｐの場合、前記参照配列から生成されるシードは、次のようである。
【００３１】
ＳＥＥＤ１：Ａ Ｃ Ｃ Ｇ Ｔ Ａ Ａ
ＳＥＥＤ２：Ｃ Ｃ Ｇ Ｔ Ａ Ａ Ａ
ＳＥＥＤ３：Ｃ Ｇ Ｔ Ａ Ａ Ａ Ｔ
ＳＥＥＤ４：Ｇ Ｔ Ａ Ａ Ａ Ｔ Ｇ
ＳＥＥＤ５：Ｔ Ａ Ａ Ａ Ｔ Ｇ Ｎ
ＳＥＥＤ６：Ａ Ａ Ａ Ｔ Ｇ N Ｎ
ＳＥＥＤ７：Ａ Ａ Ｔ Ｇ Ｎ Ｎ N
ＳＥＥＤ８：Ａ Ｔ Ｇ Ｎ Ｎ Ｎ Ｎ
ＳＥＥＤ９：Ｔ Ｇ Ｎ Ｎ Ｎ Ｎ Ｇ
ＳＥＥＤ１０：Ｇ Ｎ Ｎ Ｎ Ｎ Ｇ Ｃ
ＳＥＥＤ１１：Ｎ Ｎ Ｎ Ｎ Ｇ Ｃ Ｃ
ＳＥＥＤ１２：Ｎ Ｎ Ｎ Ｇ Ｃ Ｃ Ａ
ＳＥＥＤ１３：Ｎ Ｎ Ｇ Ｃ Ｃ Ａ Ｇ
ＳＥＥＤ１４：Ｎ Ｇ Ｃ Ｃ Ａ Ｇ Ｃ
ＳＥＥＤ１５：Ｇ Ｃ Ｃ Ａ Ｇ Ｃ Ｔ
【００３２】
判断部４０４は、シード抽出部４０２で抽出された前記シードにリード(ｒｅａｄ)とマッピングされないベース(ｂａｓｅ)が存在するか否かを判断する。
【００３３】
上述のように、参照配列の場合、エラーなどの原因により特定位置の塩基をＡ、Ｃ、ＧまたはＴの中でどのベースで表現するか不明な場合が発生することができ、通常的に、このような不明なベースの場合、Ｎなどの別途の文字で表記する。したがって、判断部４０４は、前記シードにＡ、Ｃ、ＧまたはＴ以外の文字で表記されたベースが存在する場合、前記シードに前記リードとマッピングされないベースが存在すると判断することができる。
【００３４】
例えば、参照配列(及びそれから抽出されたシード)に不明なベースがＮで表記された場合、判断部４０４は、前記シードにＮで表記されたベースが存在するか否かを判断し、存在する場合、前記シードに前記リードとマッピングされないベースが存在すると判断することができる。また、不明なベースがＮ以外の他の文字などで表記された場合には、該当文字を認識することでリードとマッピングされないベースが存在するか否かを判断するようになる。
【００３５】
上述の例の場合、参照配列の１１番目のベースから１４番目のベースまでが不明なベースで記載(Ｎ)されており(下線で表示)、それから抽出されたシードの中で５番目のシードから１４番目のシードも前記不明なベースを含んでいる。したがって、判断部４０４は、抽出された１５個のシードの中で５番目のシードから１４番目のシードの場合、リード(ｒｅａｄ)とマッピングされないベース(ｂａｓｅ)が存在すると判断する。
【００３６】
Ａ Ｃ Ｃ Ｇ Ｔ Ａ Ａ Ａ Ｔ Ｇ Ｎ Ｎ Ｎ Ｎ Ｇ Ｃ Ｃ Ａ Ｇ Ｃ Ｔ
【００３７】
インデックス生成部４０６は、判断部４０４によりリードとマッピングされないベースが存在すると判断されたシードを除外して、リードとマッピングされないベースが存在しないと判断されたシードのみをインデックスに追加する。具体的には、インデックス生成部４０６は、リードとマッピングされないベースが存在しないと判断されたシードの場合、該当シードを、ハッシュ関数を利用してハッシング(ｈａｓｈｉｎｇ)し、ハッシングされたシードをキー(ｋｅｙ)とするハッシュテーブルを生成する。上述の例の場合、インデックス生成部４０６は、抽出された１５個のシードの中で５番から１４番までのシードを除外して、下に記載された残りのシードに対してのみインデキシングを実行する。
【００３８】
ＳＥＥＤ１：Ａ Ｃ Ｃ Ｇ Ｔ Ａ Ａ
ＳＥＥＤ２：Ｃ Ｃ Ｇ Ｔ Ａ Ａ Ａ
ＳＥＥＤ３：Ｃ Ｇ Ｔ Ａ Ａ Ａ Ｔ
ＳＥＥＤ４：Ｇ Ｔ Ａ Ａ Ａ Ｔ Ｇ
ＳＥＥＤ５〜１４：インデクシングから除外
ＳＥＥＤ１５：Ｇ Ｃ Ｃ Ａ Ｇ Ｃ Ｔ
【００３９】
すなわち、本発明の実施例では、参照配列で不明なベースを含む部分を考慮しないで残りの部分に対してのみシードを抽出してハッシュテーブルを生成する。このように構成する場合、塩基配列の分析時に従来の方法に比べて正確性を毀損しないと共に分析速度を大幅に向上させることができる。
【００４０】
本発明の実施例において、前記のような効果が示す根拠は次のようである。まず、一般的に参照配列で不明なベース(通常Ｎと指称)は、大部分１ヶ所に集まっており、おおよそ全体の５％程度の割合を占める。したがって、これを排除しても全体塩基配列分析の正確度には大きい差を見せない。次の表１は、シード長さ(ｋ)による参照配列でＮを含むシードの総個数を計算した表である。
【００４１】
【表１】
2013172709.tif 000003
【００４２】
前記表から分かるように、シード長さが長くなってもＮを含むシードの総個数は大きく変わらない。したがって、これから参照配列でＮは大部分１ヶ所に集中されて連続されていることが分かる。
【００４３】
また、このように不明なベースが含まれたシードを排除しても全体塩基配列を完成するには大きい問題にならない。例えば、図５のような形態の参照配列を仮定する。シードを３ｂｐで仮定する場合、図示されたリードは、参照配列のＡ Ｔ Ｇ部分に対応する。この場合、参照配列のＮ Ｎ Ｎ Ｎ部分はリードと対応が不可能であるが、以後のＧ Ｃ Ｃ部分が一致するので、参照配列の不明なベースはリードと対照する時、Ｃ Ｔ Ｃ Ｃと類推することができる。すなわち、参照配列のＮ部分を考慮しなくても残りの部分の対照を通じて十分に不明な領域に対してもマッピングが可能である。一般的にシーケンサーでは一つの遺伝子から約３０回以上繰り返してリードを抽出するので、抽出されたリードを利用して上述した方法を反復実行する場合、非常に高い正確度で不明な参照配列部分まで正確なマッピングが可能になる。
【００４４】
一方、シードの長さが１５ｂｐの場合、参照配列でＮをＡ、Ｃ、Ｇ、Ｔのような別途のキャラクターで仮定する時のハッシュテーブルのレコード数は、次のようである。
【００４５】
５１５＝３０,５１７,５７８,１２５
【００４６】
本発明の実施例のように、参照配列でＮを考慮しない場合のハッシュテーブルのレコード数は、次のようである。
【００４７】
４１５＝１,０７３,７４１,８２４
【００４８】
すなわち、Ｎを考慮しない場合、従来に比べてハッシュテーブルのレコード数が約１/３０で減少することが分かる。
【００４９】
また、Ｎを考慮する場合には、５個の字になって、これを表現するために最小３個のビットが必要である(２２＜５＜２３)。したがって、この場合、ハッシュテーブルの容量は、次のように決まる。
【００５０】
(５１５＝３０,５１７,５７８,１２５)＊３ｂｉｔｓ
【００５１】
しかし、Ｎを考慮しない場合には、２個のビットで表現が可能なので(２２＝４)、ハッシュテーブルの容量は、次のように計算される。
【００５２】
(４１５＝１,０７３,７４１,８２４)＊２ｂｉｔｓ
【００５３】
すなわち、ハッシュテーブルの容量を考慮する場合には、従来に比べて約１/４５程度の容量減少效果があることが分かる。
【００５４】
図６は、本発明の一実施例による参照配列処理方法６００を示したフローチャートである。
【００５５】
まず、参照配列(ｒｅｆｅｒｅｎｃｅ ｓｅｑｕｅｎｃｅ)からシード(ｓｅｅｄ)を抽出し(ステップＳ６０２)、抽出された前記シードにリード(ｒｅａｄ)とマッピングされないベース(ｂａｓｅ)が存在するか否かを判断する(ステップＳ６０４)。上述のように、前記ステップＳ６０４段階は、前記シードにＡ、Ｃ、ＧまたはＴ以外の文字で表記されたベースが存在する場合(例えば、Ｎで表記されたベースが存在する場合)、リードとマッピングされないベースが存在すると判断することができる。
【００５６】
前記判断結果、前記シードに前記リードとマッピングされないベースが存在する場合、前記シードはインデックス生成から除外される。すなわち、不明なベースを含むシードは以後マッピング時に考慮されない。一方、前記判断結果、前記シードに前記リードとマッピングされないベースが存在しない場合には、前記シードをハッシュテーブルに追加する(ステップＳ６０６)。
【００５７】
前記ステップＳ６０２段階乃至ステップＳ６０６段階は、前記参照配列の一番目の配列から順次に参照配列の最後の部分に到逹するまで繰り返されて、このような過程を経て塩基配列分析のためのシードインデックスが生成される。
【００５８】
一方、本発明の実施例は、本明細書で記述した方法をコンピュータ上で実行するためのプログラムを含むコンピュータ判読が可能な記録媒体を含むことができる。前記コンピュータ判読が可能な記録媒体は、プログラム命令、ローカルデータファイル、ローカルデータ構造などを単独でまたは組み合わせて含むことができる。前記媒体は、本発明のために特別に設計されて構成されたものであるか、コンピュータソフトウェア分野で通常の知識を有した者に公知されて使用可能なものであってもよい。コンピュータ判読が可能な記録媒体の例には、ハードディスク、プロッピィーディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、プロッピィーディスクのような磁気−光媒体、及びＲＯＭ(ＲｅａｄＯｎｌｙＭｅｍｏｒｙ)、ＲＡＭ、フラッシュメモリーなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラーにより作られる機械語コードだけではなく、インタプリターなどを使用してコンピュータにより実行することができる高級言語コードを含むことができる。
【００５９】
以上、代表的な実施例を通じて本発明に対して詳細に説明したが、本発明が属する技術分野における通常の知識を有する者であれば、上述した実施例に対して本発明の技術的思想を逸脱しない範囲内で、多様な変形が可能である。
【００６０】
したがって、本発明の権利範囲は、説明された実施例に限定されないで、後述する特許請求の範囲だけではなく、この特許請求範囲と均等なものなどにより決まる。
【符号の説明】
【００６１】
４００：参照配列処理システム
４０２：シード抽出部
４０４：判断部
４０６：インデックス生成部
【図１】
2013172709.tif 000004
【図２】
2013172709.tif 000005
【図４】
2013172709.tif 000006
【図５】
2013172709.tif 000007
【図６】
2013172709.tif 000008
【図３】
2013172709.tif 000009