(57)【要約】【課題】大量の生物学的な配列情報を格納している検索対象データベースから、機能性ＲＮＡなどの２次構造が重要である生物学的な配列情報を、高速かつ精度よく検索する。【解決手段】中央処理部２００と、中央処理部２００とは別個の素子に設けられている並列処理部３００と、を備え、生物学的配列情報に関する検索対象データベース１０２との間で通信可能に構成されている生物学的配列情報検索装置１００を提供する。並列処理部３００は、第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列を抽出する１次候補配列抽出部３０２を含む。中央処理部２００は、第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出する２次候補配列抽出部２１４を含む。なお、第一の問い合わせ関数および第二の問い合わせ関数は、問い合わせ構造パターンに生物学的配列情報をあてはめた場合の構造妥当性を計算する関数である。【選択図】図１
2007257017.tif 000002
【特許請求の範囲】
【請求項１】
生物学的配列情報に関する検索対象データベースとの間で通信可能に構成されている生物学的配列情報検索装置であって、
中央処理部と、前記中央処理部とは別個の素子に設けられている並列処理部と、を備え、
前記中央処理部は、
検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得する問い合わせ構造パターン取得部と、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数を取得する第一の問い合わせ関数取得部と、
を含み、
前記並列処理部は、前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を行い、前記第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の前記検索対象データベース中の座標を抽出する１次候補配列抽出部を含み、
さらに、
前記中央処理部は、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、前記第一の問い合わせ関数と異なる第二の問い合わせ関数を取得する第二の問い合わせ関数取得部と、
前記第二の問い合わせ関数を用いて、前記１次候補配列または前記検索対象データベース中の前記１次候補配列の座標の近傍領域に対して関数計算を行い、前記第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出する２次候補配列抽出部と、
前記２次候補配列に基づく検索結果を出力する出力部と、
を含む、
ことを特徴とする生物学的配列情報検索装置。
【請求項２】
請求項１記載の生物学的配列情報検索装置において、
前記第一の問い合わせ関数取得部は、
前記問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合の自由エネルギーを近似的に計算する関数であって、加減乗除算およびシフト演算からなる群から選らばれる一種以上の演算の組み合わせからなる関数を含む第一の問い合わせ関数を取得するように構成されている、
ことを特徴とする生物学的配列情報検索装置。
【請求項３】
請求項２記載の生物学的配列情報検索装置において、
前記生物学的配列情報は、ゲノム配列情報であり、
前記問い合わせ構造パターンは、ＲＮＡの２次構造パターンであり、
前記第一の問い合わせ関数は、
前記ＲＮＡの２次構造パターンのステム領域におけるＲＮＡ残基ペアの個別の自由エネルギーを近似する値を、前記ＲＮＡ残基ペアの種類ごとに記憶するテーブルを含み、
個別の前記ＲＮＡ残基ペアに該当する前記値を前記ＲＮＡ全体にわたって集計して前記ＲＮＡの２次構造パターンの自由エネルギーを近似的に計算するように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項４】
請求項１乃至３いずれかに記載の生物学的配列情報検索装置において、
前記第二の問い合わせ関数取得部は、前記問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合のギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値を計算する、第二の問い合わせ関数を取得するように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項５】
請求項１乃至４いずれかに記載の生物学的配列情報検索装置において、
前記並列処理部は、
同一の素子に設けられている複数の演算器を含み、
前記検索対象データベース中の生物学的配列情報を複数の所定長の配列情報に区切って、前記複数の演算器のそれぞれに割り振ることにより、前記複数の演算器において、前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を並列処理的に行うように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項６】
請求項５記載の生物学的配列情報検索装置において、
前記複数の演算器のうち、互いに隣接する前記所定長の配列情報を割り振られた演算器同士は、前記所定長の配列情報を互いに参照可能に構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項７】
生物学的配列情報に関する検索対象データベースとの間で通信可能に構成されている生物学的配列情報検索装置であって、
中央処理部と、並列処理部と、を備え、
前記中央処理部は、
検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得する問い合わせ構造パターン取得部と、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数を取得する第一の問い合わせ関数取得部と、
を含み、
前記並列処理部は、前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を行い、前記第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の前記検索対象データベース中の座標を抽出する１次候補配列抽出部を含み、
さらに、
前記中央処理部は、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、前記第一の問い合わせ関数と異なる第二の問い合わせ関数を取得する第二の問い合わせ関数取得部と、
前記第二の問い合わせ関数を用いて、前記１次候補配列または前記検索対象データベース中の前記１次候補配列の座標の近傍領域に対して関数計算を行い、前記第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出する２次候補配列抽出部と、
前記２次候補配列に基づく検索結果を出力する出力部と、
を含む、
ことを特徴とする生物学的配列情報検索装置。
【請求項８】
請求項７記載の生物学的配列情報検索装置において、
前記第一の問い合わせ関数取得部は、
前記問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合の自由エネルギーを近似的に計算する関数であって、加減乗除算およびシフト演算からなる群から選らばれる一種以上の演算の組み合わせからなる関数を含む第一の問い合わせ関数を取得するように構成されている、
ことを特徴とする生物学的配列情報検索装置。
【請求項９】
請求項８記載の生物学的配列情報検索装置において、
前記生物学的配列情報は、ゲノム配列情報であり、
前記問い合わせ構造パターンは、ＲＮＡの２次構造パターンであり、
前記第一の問い合わせ関数は、
前記ＲＮＡの２次構造パターンのステム領域におけるＲＮＡ残基ペアの個別の自由エネルギーを近似する値を、前記ＲＮＡ残基ペアの種類ごとに記憶するテーブルを含み、
前記テーブルに含まれる前記値を前記ＲＮＡ残基ペアごとに集計して前記ＲＮＡの２次構造パターンの自由エネルギーを近似的に計算するように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項１０】
請求項７乃至９いずれかに記載の生物学的配列情報検索装置において、
前記第二の問い合わせ関数取得部は、前記問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合のギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値を計算する、第二の問い合わせ関数を取得するように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項１１】
請求項７乃至１０いずれかに記載の生物学的配列情報検索装置において、
前記並列処理部は、
複数の演算器を含み、
前記検索対象データベース中の生物学的配列情報を複数の所定長の配列情報に区切って、前記複数の演算器のそれぞれに割り振ることにより、前記複数の演算器において、前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を並列処理的に行うように構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項１２】
請求項１１記載の生物学的配列情報検索装置において、
前記複数の演算器のうち、互いに隣接する前記所定長の配列情報を割り振られた演算器同士は、前記所定長の配列情報を互いに参照可能に構成されている
ことを特徴とする生物学的配列情報検索装置。
【請求項１３】
生物学的配列情報に関する検索対象データベースを検索する生物学的配列情報検索方法であって、
検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得するステップと、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を並列処理により計算する、第一の問い合わせ関数を取得するステップと、
前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を行い、前記第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の前記検索対象データベース中の座標を抽出するステップと、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、前記第一の問い合わせ関数と異なる第二の問い合わせ関数を取得するステップと、
前記第二の問い合わせ関数を用いて、前記１次候補配列または前記検索対象データベース中の前記１次候補配列の座標の近傍領域に対して関数計算を行い、前記第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出するステップと、
前記２次候補配列に基づく検索結果を出力するステップと、
を含む、
ことを特徴とする生物学的配列情報検索方法。
【請求項１４】
生物学的配列情報に関する検索対象データベースの検索をコンピュータに実行させるための生物学的配列情報検索プログラムであって、
検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得するステップと、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を並列処理により計算する、第一の問い合わせ関数を取得するステップと、
前記第一の問い合わせ関数を用いて、前記検索対象データベースに対して関数計算を行い、前記第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の前記検索対象データベース中の座標を抽出するステップと、
前記問い合わせ構造パターンに基づいて、前記問い合わせ構造パターンに前記生物学的配列情報をあてはめた場合の構造妥当性を計算する、前記第一の問い合わせ関数と異なる第二の問い合わせ関数を取得するステップと、
前記第二の問い合わせ関数を用いて、前記１次候補配列または前記検索対象データベース中の前記１次候補配列の座標の近傍領域に対して関数計算を行い、前記第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出するステップと、
前記２次候補配列に基づく検索結果を出力するステップと、
をコンピュータに実行させる
ことを特徴とする生物学的配列情報検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、塩基配列、アミノ酸配列等の生物学的な配列情報の検索装置、検索方法および検索プログラムに関し、特に、検索処理の高速化に関する。
【背景技術】
【０００２】
分子生物学の分野では、ＤＮＡ、遺伝子、タンパク質等の解析のための情報処理技術の有用性が高まっている。この分野では、配列情報を解析するために情報処理技術が用いられる。この種の技術はバイオインフォマティクスといわれる。
【０００３】
また、近年、ゲノム配列の解読が進み、タンパク質コード遺伝子の同定が峠を越えつつある。その一方で、タンパク質をコードしないＲＮＡにも生物学的に重要な機能を有するものが多くあることが発見され、ゲノム上の機能性ＲＮＡを効率的に見出すことが緊急の課題となっている。
【０００４】
そのため、機能性ＲＮＡの研究分野においても、バイオインフォマティクス技術を適用して、ゲノムデータベースから機能性ＲＮＡの配列を、コンピュータを用いて検索する技術の必要性が高まっている。
【０００５】
ここで、ＲＮＡ配列の１次構造の類似性のみに基づいて配列を比較する技術においては、動的計画法、ハッシュ、有限状態オートマトンなどが用いられており、例えば、ブラスト（ＢＬＡＳＴ）法が実現されている（非特許文献１参照）。ブラスト法では、ギャップの挿入を行わずに局所的によく一致する部位を探索する。このような部位を高スコア断片と呼ぶ。そして、その後に、高スコア断片が前後に伸長される。
【０００６】
一方、バイオインフォマティクス分野における配列解析では、大量の情報を高速に処理することが求められる。非常に長い配列が処理され、また、多数の配列が処理されるからである。しかし、多くの場合には、配列解析の大量の情報処理は、専ら大型コンピュータの大きな処理能力に頼って実現されており、配列情報の高速処理技術は十分に確立していない。そして、配列解析の研究が進み、創薬および医療などの現場での分子生物学の実用化が進展するのにつれて、配列情報処理の高速化の重要性も高まると考えられる。また、大型コンピュータではなく、パーソナルコンピュータ程度の比較的小型なコンピュータによっても、大量の配列情報を高速に処理することが求められる。
【０００７】
このような小型コンピュータによっても、大量の配列情報を高速に処理することができる、従来の生物学的な配列情報の処理装置としては、例えば特許文献１に記載されたものがある。特許文献１に記載の装置では、並列照合機能をもつ記憶処理装置、典型的にはＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）が用いられる。
【０００８】
特許文献１に記載の装置では、この記憶処理装置に、配列情報が、被照合データとして用いるために記憶される。そして、照合データと被照合データを並列処理にて記憶処理装置に照合させて、照合データと被照合データの一致を示す情報を得ることにより、配列解析情報を得る。好ましい態様では、複数の配列が、記憶処理装置であるＣＡＭに、照合方向と交差する方向を向けて、照合方向に並ぶように記憶される。なお、照合データとしては同一文字列が用いられる。そして、ＣＡＭの照合により、複数の配列が一致するか否かが判定される。その結果、複数の配列を一つずつ照合対象から除外すると、どの配列が異なるのかが分かる。
【０００９】
【特許文献１】特開２００３−２１６６１５号公報
【非特許文献１】Altschul, S. , Gish, W. , Miller, W. , Myers, E. and Lipman, J. (1990): Basic local alignment search tool, Journal of Molecular Biology, 215: pp. 403-410.
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１または非特許文献１記載の技術は、機能性ＲＮＡなどの２次構造が重要である生物学的な配列情報の２次構造を考慮することができないため、機能性ＲＮＡなどの２次構造が重要である生物学的な配列情報を、ゲノムデータベースから高速かつ精度よく検索することは困難である。
【００１１】
本発明は上記事情に鑑みてなされたものであり、大量の生物学的な配列情報を格納している検索対象データベースから、機能性ＲＮＡなどの２次構造が重要である生物学的な配列情報を、高速かつ精度よく検索することを目的とする。
【課題を解決するための手段】
【００１２】
本発明によれば、生物学的配列情報に関する検索対象データベースとの間で通信可能に構成されている生物学的配列情報検索装置であって、中央処理部と、中央処理部とは別個の素子に設けられている並列処理部と、を備え、中央処理部は、検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得する問い合わせ構造パターン取得部と、問い合わせ構造パターンに基づいて、問い合わせ構造パターンに生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数を取得する第一の問い合わせ関数取得部と、を含み、並列処理部は、第一の問い合わせ関数を用いて、検索対象データベースに対して関数計算を行い、第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の検索対象データベース中の座標を抽出する１次候補配列抽出部を含み、さらに、中央処理部は、問い合わせ構造パターンに基づいて、問い合わせ構造パターンに生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数と異なる第二の問い合わせ関数を取得する第二の問い合わせ関数取得部と、第二の問い合わせ関数を用いて、１次候補配列または前記検索対象データベース中の１次候補配列の座標の近傍領域に対して関数計算を行い、第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出する２次候補配列抽出部と、２次候補配列に基づく検索結果を出力する出力部と、を含む、ことを特徴とする生物学的配列情報検索装置が提供される。
【００１３】
この構成によれば、まず、中央処理部において問い合わせ構造パターンの２次構造情報に基づいて第一の問い合わせ関数を取得し、次いで、並列処理部において検索対象データベースから第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列の抽出を行い、そして、再び、中央処理部において問い合わせ構造パターンの２次構造情報に基づいて第二の問い合わせ関数を取得し、次いで、１次候補配列から第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列の抽出を行う。
【００１４】
すなわち、この構成によれば、互いに別個の素子に設けられている中央処理部および並列処理部が、問い合わせ構造パターンの２次構造情報を考慮して取得される第一の問い合わせ関数および第二の問い合わせ関数をそれぞれ用いて、１次候補配列および２次候補配列の抽出をそれぞれ行うという、それぞれの役割を効率的に分担している。
【００１５】
このため、この構成によれば、並列処理部では、問い合わせ構造パターンの２次構造情報に基づいて得られる第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列を高速に抽出し、中央処理部では、問い合わせ構造パターンの２次構造情報に基づいて得られるが第一の問い合わせ関数とは異なる第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を精度よく抽出することができる。
【００１６】
その結果、この構成によれば、中央処理部および並列処理部が、問い合わせ構造パターンの２次構造情報を考慮したそれぞれ異なる種類の関数を用いることにより、大量の生物学的な配列情報を格納している検索対象データベースから、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００１７】
また、本発明によれば、生物学的配列情報に関する検索対象データベースとの間で通信可能に構成されている生物学的配列情報検索装置であって、中央処理部と、並列処理部と、を備え、中央処理部は、検索されるべき生物学的配列情報の構造を規定する問い合わせ構造パターンを取得する問い合わせ構造パターン取得部と、問い合わせ構造パターンに基づいて、問い合わせ構造パターンに生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数を取得する第一の問い合わせ関数取得部と、を含み、並列処理部は、第一の問い合わせ関数を用いて、検索対象データベースに対して関数計算を行い、第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列または該１次候補配列の前記検索対象データベース中の座標を抽出する１次候補配列抽出部を含み、さらに、中央処理部は、問い合わせ構造パターンに基づいて、問い合わせ構造パターンに生物学的配列情報をあてはめた場合の構造妥当性を計算する、第一の問い合わせ関数と異なる第二の問い合わせ関数を取得する第二の問い合わせ関数取得部と、第二の問い合わせ関数を用いて、１次候補配列または検索対象データベース中の１次候補配列の座標の近傍領域に対して関数計算を行い、第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を抽出する２次候補配列抽出部と、２次候補配列に基づく検索結果を出力する出力部と、を含む、ことを特徴とする生物学的配列情報検索装置が提供される。
【００１８】
なお、この構成においては、中央処理部および並列処理部は、互いに別個の素子に設けられてもよく、あるいは互いに同一の素子に設けられてもよい。
【００１９】
この構成においても、まず、中央処理部において問い合わせ構造パターンの２次構造情報に基づいて第一の問い合わせ関数を取得し、次いで、並列処理部において検索対象データベースから第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列の抽出を行い、そして、再び、中央処理部において問い合わせ構造パターンの２次構造情報に基づいて第二の問い合わせ関数を取得し、次いで、１次候補配列から第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列の抽出を行う。
【００２０】
すなわち、この構成によれば、中央処理部および並列処理部が、問い合わせ構造パターンの２次構造情報を考慮して取得される第一の問い合わせ関数および第二の問い合わせ関数をそれぞれ用いて、１次候補配列および２次候補配列の抽出をそれぞれ行うという、それぞれの役割を効率的に分担している。
【００２１】
このため、この構成によれば、並列処理部では、問い合わせ構造パターンの２次構造情報に基づいて得られる第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列を高速に抽出し、中央処理部では、問い合わせ構造パターンの２次構造情報に基づいて得られるが第一の問い合わせ関数とは異なる第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を精度よく抽出することができる。
【００２２】
その結果、この構成によれば、中央処理部および並列処理部が、問い合わせ構造パターンの２次構造情報を考慮したそれぞれ異なる種類の関数を用いることにより、大量の生物学的な配列情報を格納している検索対象データベースから、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００２３】
なお、上記の装置は本発明の一態様であり、本発明の装置は、以上の構成要素の任意の組合せであってもよい。また、本発明の生物学的配列情報検索方法、生物学的配列情報検索システム、生物学的配列情報検索プログラム、そのプログラムを格納する記録媒体なども、同様の構成を有し、同様の作用効果を奏する。
【発明の効果】
【００２４】
本発明によれば、中央処理部および並列処理部が、問い合わせ構造パターンの２次構造情報を考慮したそれぞれ異なる種類の関数を用いることにより、大量の生物学的な配列情報を格納している検索対象データベースから、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００２６】
図１は、実施の形態に係る生物学的配列情報検索装置の構成を説明するための機能ブロック図である。生物学的配列情報検索装置１００は、中央処理部２００と、中央処理部２００とは別個の素子に設けられている並列処理部３００と、出力部１２２と、問い合わせ関数記憶部１２４と、を備えている。また、生物学的配列情報検索装置１００は、生物学的配列情報に関する検索対象データベース１０２との間で通信可能な形で接続している。
【００２７】
生物学的配列情報検索装置１００では、以下のような手順で生物学的な配列情報の検索が行われる。まず、中央処理部２００において問い合わせ構造パターンの２次構造情報に基づいて第一の問い合わせ関数を取得する。次いで、並列処理部３００において検索対象データベース１０２から第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列の抽出を行う。そして、再び、中央処理部２００において問い合わせ構造パターンの２次構造情報に基づいて第二の問い合わせ関数を取得する。次いで、中央処理部２００において１次候補配列から第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列の抽出を行う。
【００２８】
生物学的配列情報検索装置１００では、このような形で、互いに別個の素子に設けられている中央処理部２００および並列処理部３００が、問い合わせ構造パターンの２次構造情報を考慮して取得される第一の問い合わせ関数および第二の問い合わせ関数をそれぞれ用いて、１次候補配列および２次候補配列の抽出をそれぞれ行うという、それぞれの役割を効率的に分担している。
【００２９】
このため、並列処理部３００では、問い合わせ構造パターンの２次構造情報に基づいて得られる第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列を高速に抽出し、中央処理部２００では、問い合わせ構造パターンの２次構造情報に基づいて得られるが第一の問い合わせ関数とは異なる第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を精度よく抽出することができる。
【００３０】
その結果、生物学的配列情報検索装置１００では、中央処理部２００および並列処理部３００が、問い合わせ構造パターンの２次構造情報を考慮したそれぞれ異なる種類の関数を用いることにより、大量の生物学的な配列情報を格納している検索対象データベース１０２から、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００３１】
生物学的配列情報検索装置１００は、生物学的配列情報検索装置１００に対する操作を受け付ける操作部１０６を備える。また、生物学的配列情報検索装置１００は、外部ネットワーク１１２を介して別のＰＣ（パーソナルコンピュータ）１０８およびサーバ１１０に接続している。生物学的配列情報検索装置１００は、これらの操作部１０６、スキャナ１０４、外部ネットワーク１１２などから生物学的情報についての問い合わせ構造パターンを取得することができる。
【００３２】
また、生物学的配列情報検索装置１００には、上記の検索結果を画像として表示する画像表示装置１０４が接続している。また、生物学的配列情報検索装置１００には、上記の検索結果を印刷するプリンタ１１４が接続している。さらに、生物学的配列情報検索装置１００には、上記の検索結果を外部ネットワーク１１６を介して取得する別のＰＣ（パーソナルコンピュータ）１２０およびサーバ１１８が接続している。そして、出力部１２２は、これらの画像表示装置１０４、プリンタ１１４、外部ネットワーク１１６などに検索結果を出力することができる。
【００３３】
図２は、実施の形態に係る生物学的配列情報検索装置を構成する個別の素子を説明するための機能ブロック図である。なお、図２は、図１の機能面に重心をおいた機能ブロック図と異なり、ハードウェア面に重心をおいた機能ブロック図である。もっとも、図１および図２のいずれも、観点が異なるだけであり、同一の生物学的配列情報検索装置１００を説明するための機能ブロック図である点では同様である。
【００３４】
図２に示すようにハードウェア面に重心をおいて説明すると、生物学的配列情報検索装置１００は、中央演算部に相当するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０と、ＣＰＵ１０とは別個の素子であり並列処理部に相当するＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ／Ｍｕｌｔｉｐｌｅ  Ｄａｔａ）２０と、ゲノム配列に関する配列情報を格納しているゲノムデータベース４０と、これらを互いに接続するバス３０と、を備える。
【００３５】
また、ＳＩＭＤ２０内部には、複数のＰＥ（Ｐｒｏｃｅｓｓｉｎｇ  Ｅｌｅｍｅｎｔ）２２が設けられている。そして、これらの複数のＰＥ２２は、互いの有する配列情報を互いに参照可能に構成されている。
【００３６】
本明細書において、ＣＰＵは、コンピュータの中で各装置の制御やデータの計算または加工を行なう中枢部分を意味する。すなわち、ＣＰＵは、メモリに記憶されたプログラムを実行する装置であり、入力装置や記憶装置からデータを受け取り、演算または加工した上で、出力装置や記憶装置に出力する機能を有する。なお、通常のパソコンでは、ＣＰＵの機能を一つのチップに集積されたマイクロプロセッサが利用され、例えばＩｎｔｅｌ社のｘ８６シリーズまたは各社の互換プロセッサを好適に使用可能である。
【００３７】
本明細書において、ＳＩＭＤは、１つの命令で、複数のデータを同時に並列的に処理する並列型情報処理装置、もしくはそのための命令を意味する。一般に、ＳＩＭＤに含まれる各演算器は、簡単な論理演算を大量かつ高速に処理することを得意とするため、マルチメディアデータを取り扱うマイクロプロセッサや、ＤＳＰ、スーパーコンピュータなどにおいて実装されている。
【００３８】
すなわち、ＳＩＭＤでは、音声や画像などのマルチメディアデータに対する処理や、３次元グラフィックス用途などに用いるとき、固定的なフォーマットのデータに対して、同じ種類の演算を繰り返し適用することが多い。そこで、ＳＩＭＤにおいて、１つの命令で多量のデータに対して同じ種類の演算を一斉に並列的に行うようにして、データ処理能力を高めるために用意されるのがＳＩＭＤ命令である。
【００３９】
ＳＩＭＤ命令を実装するためには、データを格納するための比較的大量のレジスタ（データ供給が滞らないようにするため）と、複数のＰＥ（演算器）２２とを用いる必要があるため、ＳＩＭＤ２０内部には、多くのＰＥ（演算器）２２と、これらのＰＥ２２にそれぞれ対応する複数のレジスタ（不図示）とが設けられている。
【００４０】
なお、最近の高性能なＣＰＵの多くでは、ＣＰＵ全体の演算能力を飛躍的に増大させるため、このようなデータを格納するための比較的大量のレジスタ（データ供給が滞らないようにするため）と、複数のＰＥ（演算器）とをＣＰＵの内部に備えることもある。しかし、本実施形態では、ＣＰＵおよびＳＩＭＤの役割分担を明確にし、互いに異なる情報処理にＣＰＵによる配列情報処理およびＳＩＭＤによる並列処理の効率を向上させるため、ＳＩＭＤ２０は、ＣＰＵ１０とは別個の素子上に設けられている。
【００４１】
すなわち、生物学的配列情報検索装置１００は、ＣＰＵ１０と、並列処理回路であるＳＩＭＤ２０と、ゲノムデータが格納されたメモリであるゲノムデータベース４０とが、バス３０により互いに接続されて構成された装置である。また、生物学的配列情報検索装置１００は、ゲノムデータベース４０に格納されているゲノムデータ中から問い合わせ配列を検索して、その検索結果をネットワーク回線などによる通知などの形で出力することを目的とする装置でもある。
【００４２】
生物学的配列情報検索装置１００の特徴は、検索処理において、ＣＰＵ１０と、並列処理回路であるＳＩＭＤとに適切な機能分担を行わせている点である。
【００４３】
つまり、ＣＰＵ１０は、汎用的なプログラムコードにより動作し、そのプログラムコードにより複雑な処理も可能であるが、処理速度の面で改善の余地がある。一方、ＳＩＭＤ２０をはじめとする並列処理回路は、制限があるプログラムコードにより動作し、高速な処理が可能であるが、条件分岐等の制御処理の面で改善の余地がある（条件分岐等の制御処理をできないことはないが、実質的に困難である）。
【００４４】
これに対して、生物学的配列情報検索装置１００は、機能性ＲＮＡなどの問い合わせ構造パターンにあてはめた場合の構造妥当性が高い配列を検索するために、まず、ＳＩＭＤ２０で簡単な計算式からなる自由エネルギーの近似計算により高速にスクリーニングを行い、そのスクリーニング結果をＣＰＵ１０でギブズの自由エネルギーまたはヘルムホルツの自由エネルギーの計算式を用いて精度の高い自由エネルギー計算により念入りに条件確認を行い、条件にあったものを最終結果とする方式をとっている。このため、大量の生物学的な配列情報を格納しているゲノムデータベース４０から、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００４５】
図３は、実施の形態に係る生物学的配列情報検索装置を構成する個別の素子の機能の概要を説明するための概念図である。生物学的配列情報検索装置１００では、以下のような手順で生物学的な配列情報の検索が行われる。
【００４６】
まず、生物学的情報についての問い合わせ構造パターンがＣＰＵ１０に入力される。続いて、ＣＰＵ１０は、問い合わせ構造パターンに対応しＳＩＭＤ２０での処理に適した第一の問い合わせ関数を選択する。そして、第一の問い合わせ関数は、ＣＰＵ１０から出力されてＳＩＭＤ２０に入力される。
【００４７】
ＳＩＭＤ２０は、ゲノムデータベース４０からゲノムデータを取得して、第一の問い合わせ関数に対する１ｓｔスクリーニングを並列処理により行って、第一の問い合わせ関数にあてはめた場合の自由エネルギーの近似値の小さい１次候補配列を抽出する。得られた１次候補配列は、ＳＩＭＤ２０から出力されてＣＰＵ１０に入力される。
【００４８】
そして、ＣＰＵ１０は、ＳＩＭＤ２０から１次候補配列を取得して、第二の問い合わせ関数に対する２ｎｄスクリーニングを行って、第二の問い合わせ関数にあてはめた場合の自由エネルギーの近似値の小さい２次候補配列を抽出する。こうして得られた２次候補配列に基づく検索結果は、ＣＰＵ１０から出力される。このような形で、互いに別個の素子に設けられているＣＰＵ１０およびＳＩＭＤ２０がそれぞれの役割を効率的に分担している。
【００４９】
そのため、ＳＩＭＤ２０は、第一の問い合わせ関数にあてはめた場合の自由エネルギーの近似値の小さい１次候補配列を高速に抽出することができる。そして、ＣＰＵ１０は、第二の問い合わせ関数にあてはめた場合の自由エネルギーの近似値の小さい２次候補配列を精度よく抽出することができる。その結果、生物学的配列情報検索装置１００では、大量の生物学的な配列情報を格納しているゲノムデータベース４０から、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００５０】
図４は、実施の形態における中央処理部および並列処理部の内部構成を説明するため機能ブロック図である。なお、この図４は、上記の図１の中央処理部２００および並列処理部３００の内部構成を示している。
【００５１】
より詳細に説明すると、中央処理部２００では、生物学的情報についての問い合わせ構造パターンは、問い合わせ構造パターン取得部２０２により取得され、問い合わせ構造パターン記憶部２０８に格納される。次いで、第一の問い合わせ関数取得部２０４が、問い合わせ構造パターン記憶部２０８から問い合わせ構造パターンを読み出し、問い合わせ関数記憶部１２４に格納されている複数種類の問い合わせ関数の中から、問い合わせ構造パターンに基づいて第一の問い合わせ関数を選択して取得し、第一の問い合わせ関数記憶部２０６に格納する。
【００５２】
続いて、並列処理部３００では、１次候補配列抽出部３０２が、第一の問い合わせ関数記憶部２０６から第一の問い合わせ関数を読み出し、検索対象データベース１０２から取得したゲノムデータをはじめとする生物学的な配列情報を第一の問い合わせ関数にあてはめて、得られた自由エネルギーの近似値が所定の閾値以下である１次候補配列を、並列処理により抽出し、１次候補配列記憶部３０４に格納する。
【００５３】
一方、中央処理部２００では、上記の１次候補配列の抽出と併行または前後して、第二の問い合わせ関数取得部２１０が、問い合わせ構造パターン記憶部２０８から問い合わせ構造パターンを読み出し、問い合わせ関数記憶部１２４に格納されている複数種類の問い合わせ関数の中から、問い合わせ構造パターンに基づいて第二の問い合わせ関数を選択して取得し、第二の問い合わせ関数記憶部２１２に格納する。
【００５４】
そして、２次候補配列抽出部２１０が、１次候補配列記憶部３０４から１次候補配列を読み出し、さらに、第二の問い合わせ関数記憶部２１２から第二の問い合わせ関数を読み出す。そして、２次候補配列抽出部２１０は、１次候補配列を第二の問い合わせ関数にあてはめて、得られた自由エネルギーの値（近似値を含む）が所定の閾値以下である２次候補配列を抽出し、２次候補配列記憶部２１６に格納する。その後、出力部１２２は、２次候補配列記憶部２１６から２次候補配列を読み出し、２次候補配列に基づく検索結果を出力する。
【００５５】
一部の説明は繰り返しになるが、生物学的配列情報検索装置１００では、上記のような構成を用いて生物学的な配列情報の検索が行われる。すなわち、並列処理部３００では、問い合わせ構造パターンの２次構造情報に基づいて得られる第一の問い合わせ関数により得られる値が所定の閾値以下である１次候補配列を高速に抽出し、中央処理部２００では、問い合わせ構造パターンの２次構造情報に基づいて得られるが第一の問い合わせ関数とは異なる第二の問い合わせ関数により得られる値が所定の閾値以下である２次候補配列を精度よく抽出するという形で、それぞれの役割を効率的に分担している。
【００５６】
その結果、生物学的配列情報検索装置１００では、中央処理部２００および並列処理部３００が、問い合わせ構造パターンの２次構造情報を考慮した異なる種類の関数をそれぞれ用いることにより、大量の生物学的な配列情報を格納している検索対象データベース１０２から、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【００５７】
図５は、実施の形態に係る生物学的配列情報検索装置の動作を説明するためのフローチャートである。生物学的配列情報検索装置１００の一連の動作が開始すると、まず、中央処理部２００の問い合わせ構造パターン取得部２０２は、外部から問い合わせ構造パターンを取得する（Ｓ１０２）。
【００５８】
次いで、中央処理部２００の第一の問い合わせ関数取得部２０４は、問い合わせ関数記憶部１２４に格納されている複数種類の問い合わせ関数の中から、問い合わせ構造パターンに基づいて第一の問い合わせ関数を選択して取得する（Ｓ１０４）。
【００５９】
そして、並列処理部３００の１次候補配列抽出部３０２は、検索対象データベース１０２から取得したゲノムデータをはじめとする生物学的な配列情報を第一の問い合わせ関数にあてはめて、得られた自由エネルギーの近似値が所定の閾値以下である１次候補配列を、並列処理により抽出する（Ｓ１０６）。
【００６０】
次に、中央処理部２００の第二の問い合わせ関数取得部２１０は、問い合わせ関数記憶部１２４に格納されている複数種類の問い合わせ関数の中から、問い合わせ構造パターンに基づいて第二の問い合わせ関数を選択して取得する（Ｓ１０８）。
【００６１】
２次候補配列抽出部２１４は、検索対象データベース１０２から取得したゲノムデータをはじめとする生物学的な配列情報を第二の問い合わせ関数にあてはめて、得られた自由エネルギーの値（近似値を含む）が所定の閾値以下である２次候補配列を抽出する（Ｓ１１０）。そして、出力部１２２は、このようにして得られた２次候補配列に基づく検索結果を出力して（Ｓ１１２）、一連の動作を終了する。
【００６２】
図６は、実施の形態における中央処理部において選択される第一の関数の選択肢の一例を説明するための概念図である。また、図７は、実施の形態における中央処理部において選択される第一の関数の選択肢の他の例を説明するための概念図である。
【００６３】
この例では、問い合わせ構造パターンは、機能性ＲＮＡの２次構造パターンであり、検索対象データベース１０２には、ゲノム配列情報のデータベースが格納されており、問い合わせ関数記憶部１２４には、複数の第一の問い合わせ関数である関数１、関数２、関数３が格納されているものとする。
【００６４】
この例では、図６に示すように、中央処理部２００の問い合わせ構造パターン取得部２０２が、１つのステム構造および１つのループ構造からなる問い合わせ構造パターンを取得しているため、第一の問い合わせ関数取得部２０４は、関数記憶部１２４に格納されている関数１、関数２、関数３の中から、１つのステム構造および１つのループ構造からなる問い合わせ構造パターンに対応する、Σ（ｉ＝０，ｐ）ｅｎｇ［ｄｎａ［ｉ］，ｄｎａ［ｎ−ｉ−１］］という式からなる関数１を選択する。
【００６５】
なお、この関数１では、ｄｎａ［ｘ］は、ゲノムデータベース配列を意味し、ｅｎｇ［ｘ］は、自由エネルギーテーブルを意味し、パラメータｎは、関数１にあてはめられる配列の幅に相当する塩基数（問い合わせ構造パターンの全長に相当する塩基数であり、ｎの中間でＲＮＡ鎖の折り返しを想定している）を意味し、パラメータｐは、問い合わせ構造パターンのステム構造の長さ（片方の鎖の塩基配列数）を示す。なお、自由エネルギーテーブルの一例を、下記の表１に示す。
【００６６】
すなわち、ｄｎａ［ｉ］およびｄｎａ［ｎ−ｉ−１］は、問い合わせ構造パターンのステム構造の中で、互いに相補的な位置に配置される塩基ペアである。また、ｉの値が０からｐへと増加するにつれて、自由エネルギーテーブルにあてはめられる塩基ペアの位置が図に示す問い合わせ構造パターンのステム構造の左側から右側へとシフトしていく（図の下側の配列の展開図においては、両端から外側から内側に向かって１塩基ずつシフトしていくことになる）。すなわち、図の下側に示したように、ｉ＝０の場合には、ａとｔとの塩基ペア、ｉ＝１の場合には、ｔとｇとの塩基ペア、ｉ＝２の場合には、ｃとｃとの塩基ペアが自由エネルギーテーブルにあてはめられ、それぞれ下記に説明するように、スコア−１、＋１、＋１が関数１に代入されることになる。
【００６７】
【表１】
2007257017.tif 000003
【００６８】
この表１に示すように、この例では、ｄｎａ［ｉ］およびｄｎａ［ｎ−ｉ−１］が互いに相補的である場合には、−１または−２の値を代入する。このとき、ｄｎａ［ｉ］およびｄｎａ［ｎ−ｉ−１］がＡＴペアを形成する場合には、−１を代入し、ｄｎａ［ｉ］およびｄｎａ［ｎ−ｉ−１］がＧＣペアを形成する場合には、−２を代入する。一方で、ｄｎａ［ｉおよびｄｎａ［ｎ−ｉ−１］が互いに相補的でない場合には、＋１の値を代入する。ここで、ＡＴペアが−１であり、ＧＣペアが−２である理由は、ＧＣペアの結合強度はＡＴペアの結合強度よりも一般的に強いため、ＧＣペアの方がエネルギー的に安定であると考えられるからである。
【００６９】
このようにして、問い合わせ構造パターンのステム構造の塩基ペアを自由エネルギーテーブルにあてはめて、塩基ペアごとに求められたスコアについては、各塩基ペアのスコアをステム構造全体にわたって集計（ｅｎｇ［ｄｎａ［ｉ］，ｄｎａ［ｎ−ｉ−１］の値をｉ＝０からｉ＝ｐまで集計）することにより、問い合わせ構造パターンに対応する第一の問い合わせ関数に配列をあてはめた場合のスコアが得られることになる。
【００７０】
なお、図６に示す例では、１つのステム構造および１つのループ構造からなる問い合わせ構造パターンに対して、関数１が選択されたが、特に限定する趣旨ではない。例えば、図７（ａ）に示すように、２つのステム構造および２つのループ構造がタンデムに並んでいる問い合わせ構造パターンに対しては、関数２が選択される。また、図７（ｂ）に示すように、３つのステム構造および３つのループ構造がクローバ状に配置している問い合わせ構造パターンに対しては、関数３が選択される。
【００７１】
なお、関数２および関数３の数式については記載を省略するが、例えば、関数１の例にならって、問い合わせ構造パターンに含まれるステム構造を構成する塩基ペアごとに、表１に記載されている自由エネルギーテーブルを用いてスコアを求め、これらの塩基ペアごとのスコアをステム構造全体にわたって集計する、加減乗除算およびシフト演算などの単純な計算式のみからなる数式を好適に用いることができる。このような数式を用いることにより、図７（ａ）および図７（ｂ）に示す問い合わせ構造パターンの構造妥当性を適切に評価しうるとともに、並列処理部３００において高速計算可能な関数が得られる。
【００７２】
図８は、実施の形態における１次候補配列抽出部および１次候補配列記憶部の内部構成を説明するため機能ブロック図である。１次候補配列抽出部３０２には、同一の素子に設けられている複数の演算器５０４が設けられている。
【００７３】
まず、１次候補配列抽出部３０２では、検索対象データ取得部５１２が、検索対象データベース１０２中の生物学的配列情報を取得する。次いで、所定長区切部５１０が、検索対象データベース１０２中の生物学的配列情報を複数の所定長の配列情報に区切り、区切って得られた所定長検索対象データを所定長検索対象データ記憶部５０８に格納する。
【００７４】
その後、データ割振部５０２が、第一の問い合わせ関数記憶部２０６から第一の問い合わせ関数を取得し、複数の演算器５０４のそれぞれに、同一の第一の問い合わせ関数を割り振る。また、一方では、データ割振部５０６が、所定長検索対象データ記憶部５０８から区切って得られた所定長検索対象データを読み出し、複数の演算器５０４のそれぞれに割り振る。また、これらの複数の演算器５０４は、それぞれ閾値記憶部５１６から所定の閾値を読み出す。
【００７５】
次いで、複数の演算器５０４は、それぞれ検索対象データベース１０２から取得したゲノムデータをはじめとする生物学的な配列情報を、第一の問い合わせ関数にあてはめて、自由エネルギーの近似値を得る。そして、複数の演算器５０４は、それぞれ得られた自由エネルギーの近似値が所定の閾値以下である１次候補配列を抽出し、１次候補配列記憶部３０４に格納する。
【００７６】
このとき、一次候補配列抽出部３０２は、同一の素子に設けられている複数の演算器５０４を含み、検索対象データベース１０２中の生物学的配列情報を複数の所定長の配列情報に区切って、複数の演算器５０４のそれぞれに割り振ることにより、第一の問い合わせ関数と検索対象データベースとの間で、第一の問い合わせ関数に生物学的配列情報をあてはめて得られる自由エネルギーの近似値が所定の閾値以下である１次候補配列を並列処理的に抽出するように構成されている。
【００７７】
一次候補配列抽出部３０２の複数の演算器５０４により、自由エネルギーの近似値が所定の閾値以下であることを基準に抽出された複数の１次候補配列は、それぞれ１次候補配列記憶部３０４内の対応する記憶部５１４（記憶部５１４ａ、記憶部５１４ｂ、記憶部５１４ｃ・・・）に格納される。また、複数の演算器５０４のうち、互いに隣接する前記所定長の配列情報を割り振られた演算器５０４同士は、所定長の配列情報を互いに参照可能に構成されている。
【００７８】
図９は、実施の形態における１次候補配列抽出部および１次候補配列記憶部の機能の概要を説明するための概念図である。まず、図９（ａ）および図９（ｂ）に示すように、所定長区切部５１０が、検索対象データベース１０２から取得されたゲノムデータの一部（区分１、区分２、区分３・・・）を複数の所定長のゲノムデータに区切る。そして、このようにして所定長区切部５１０により区切られて得られた所定長ゲノムデータを、データ割振部５０６が、複数の演算器５０４（ＰＥ０、ＰＥ１、ＰＥ２、・・・・ＰＥ３５１）のそれぞれに割り振る。すなわち、データ割振部５０６は、ゲノムデータの一部を３５２個に区切って、３５２個のＰＥに割り振ることになる。
【００７９】
一方では、図９（ｂ）および図９（ｃ）に示すように、データ割振部５０２が、第一の問い合わせ関数記憶部２０６から取得された第一の問い合わせ関数を、複数の演算器５０４のそれぞれに割り振る。すなわち、データ割振部５０２は、互いに同一の第一の問い合わせ関数を３５２個のＰＥに割り振ることになる。
【００８０】
その後、複数の演算器５０４のそれぞれにおいて、第一の問い合わせ関数と検索対象データベース１０２との間で、第一の問い合わせ関数に生物学的配列情報をあてはめて得られる自由エネルギーの近似値が所定の閾値以下である１次候補配列を並列処理的に抽出する。なお、複数の演算器５０４（３５２個のＰＥ）は、並列処理による第一の問い合わせ関数の計算を行うが、その際、第一の問い合わせ関数の対象領域のウインドウ（第一の問い合わせ関数にあてはめる配列）をＰＥ１つ分の領域内で１塩基相当分の幅ずつずらしながら、並列処理による第一の問い合わせ関数の計算を行う。
【００８１】
図１０は、実施の形態における１次候補配列抽出部および１次候補配列記憶部の動作を説明するためのフローチャートである。まず、所定長区切り部５１０が、検索対象データベース１０２から検索対象データ取得部５１２を介して取得した検索対象データベースの一部（１区分目、２区分目、３区分目・・・）をそれぞれ所定長ごとに区切る。そして、データ割振部５０６が、所定長に区切られたゲノムデータを演算器５０４（演算器１、演算器２、演算器３・・・）に割り振る（Ｓ２０２）。
【００８２】
一方で、データ割振部５０２が、第一の問い合わせ関数記憶部２０６から取得した同一の第一の問い合わせ関数を、複数の演算器５０４（演算器１、演算器２、演算器３・・・）に割り振る（Ｓ２０４）。そして、第一の問い合わせ関数の対象領域のウインドウを１塩基分ずつずらしながら、それぞれの演算器５０４（演算器１、演算器２、演算器３・・・）で第一の問い合わせ関数へのあてはめ計算を並列的に行う（Ｓ２０６）。また、それぞれの演算器５０４は、第一の問い合わせ関数へのあてはめ計算と併行または前後して、第一の問い合わせ関数により得られる自由エネルギーの所定の閾値を、閾値記憶部５１６から読み込む。
【００８３】
そして、それぞれの演算器５０４（演算器１、演算器２、演算器３・・・）で、第一の問い合わせ関数へのあてはめ計算が行われ、自由エネルギーの近似値が得られる。それぞれの演算器５０４は、こうして得られた自由エネルギーの近似値が所定の閾値以下である１次候補配列を抽出する。そして、それぞれの演算器５０４は、それぞれ抽出した１次配列候補を１次候補配列候補記憶部３０４内の記憶部５１４（記憶部１、記憶部２、記憶部３・・・・）に格納される。そして、中央処理部２００からの求めに応じて、これらの関数計算の結果である１次候補配列は、中央処理部２００に送られる（Ｓ２０８）。
【００８４】
その後、中央処理部２００において、ゲノムデータの全区分の関数計算が完了したか否かが判定される（Ｓ２１０）。未だ完了していないと判定された場合には、前回にゲノムデータのｎ区分目を割り振ったのであれば、今回は、データ割振部５０６は、ｎ＋１区分目を新たにそれぞれの演算器５０４（演算器１、演算器２、演算器３・・・）に割り振って、再度、上記のサイクルを繰り返す（Ｓ２１２）。一方、既に完了したと判定された場合には、１次候補配列抽出部３０２および１次候補配列記憶部３０４は、一連の動作を終了する。
【００８５】
図１１は、実施の形態における２次候補配列抽出部の内部構成を説明するため機能ブロック図である。２次候補配列抽出部２１４は、１次候補配列取得部６０２と、第二の問い合わせ関数あてはめ部６０４と、閾判定部６０６と、閾値記憶部６０８と、を備える。１次候補配列取得部６０２は、１次候補配列記憶部３０４に含まれる複数の記憶部５１４（記憶部１、記憶部２、記憶部３・・・）から、それぞれに格納されている１次候補配列を取得し、第二の問い合わせ関数あてはめ部６０４に受け渡す。
【００８６】
次いで、第二の問い合わせ関数あてはめ部６０４は、第二の問い合わせ関数記憶部２１０から、第二の問い合わせ関数として、ギブズの自由エネルギーまたはヘルムホルツの自由エネルギーを計算する関数を取得する。そして、第二の問い合わせ関数あてはめ部６０４は、１次候補配列取得部６０２から受け取った１次候補配列を第二の問い合わせ関数にあてはめることにより、１次候補配列が問い合わせ構造パターンの２次構造を取った場合のギブズの自由エネルギーまたはヘルムホルツの自由エネルギーの値を得る。
【００８７】
その後、閾判定部６０６は、第二の問い合わせ関数あてはめ部６０４から取得した１次候補配列の自由エネルギーの値を、閾値記憶部６０８から取得した所定の閾値と比較することにより、自由エネルギーの値が所定の閾値以下である配列を、２次候補配列として抽出する。そして、閾判定部６０６は、このようにしてギブズの自由エネルギーまたはヘルムホルツの自由エネルギーの値が所定の閾値以下であると判断した２次候補配列を、２次候補配列記憶部２１２に格納する。
【００８８】
このような２次候補配列抽出が必要な理由は、１次候補配列では、並列処理の特徴を活かして高速で配列マッチングを行える代わりに、加減乗除算およびシフト演算などの単純な計算式のみからなる数式により自由エネルギーの近似値を計算しているため、問い合わせ構造パターンにあてはめた場合の構造妥当性が実際には低い１次候補配列を含んでいる可能性がある。そのため、そのような構造妥当性の低い１次候補配列を適切に除去するために、２次候補配列抽出が必要なのである。
【００８９】
なお、ギブズの自由エネルギー（Ｇｉｂｂｓ  ｆｒｅｅ  ｅｎｅｒｇｙ）は、熱力学や電気化学などで用いられるエネルギー量（示量性状態量）である。ちなみにＩＵＰＡＣではギブズエネルギーという名称の使用を勧告している。通常Ｇとあらわされ、等温等圧条件下で仕事として取り出し可能なエネルギー量である。ギブズの自由エネルギー変化が負であれば化学反応は自発的に起こり、極小の一定値を取ることは、系が平衡状態にあることに等しい。
【００９０】
ギブズの自由エネルギーは、Ｇ＝Ｈ−ＴＳ＝Ｕ＋ＰＶ−ＴＳの式を満たす。
ここで、Ｈはエンタルピー、Ｕは内部エネルギー、Ｐは圧力、Ｖは系の体積、Ｔは温度、そしてＳはエントロピーを表す。
【００９１】
一方、ヘルムホルツの自由エネルギー（Ｈｅｌｍｈｏｌｔｚ  ｆｒｅｅ  ｅｎｅｒｇｙ）も、同様に熱力学における示量性状態量のひとつであり、Ｆで表されることが多い。ヘルムホルツの自由エネルギーは、等温等積条件で取り出し可能なエネルギー量である。等温等積の条件では、自発変化はヘルムホルツの自由エネルギーが減少する方向へ進む。また、熱平衡条件とは、ヘルムホルツの自由エネルギーが極小値をとることである。
【００９２】
ヘルムホルツの自由エネルギーは、Ｆ＝Ｕ−ＴＳの式を満たす。
ここで、Ｕは内部エネルギー、Ｔは温度、Ｓはエントロピーを示す。
【００９３】
図１２は、実施の形態における２次候補配列抽出部の動作を説明するためのフローチャートである。まず、１次候補配列取得部６０２が、１次候補配列記憶部３０４に含まれる複数の記憶部５１４（記憶部１、記憶部２、記憶部３・・・）から、それぞれに格納されている１次候補配列を取得し（Ｓ３０２）、第二の問い合わせ関数あてはめ部６０４に受け渡す。
【００９４】
そして、第二の問い合わせ関数あてはめ部６０４は、第二の問い合わせ関数記憶部２１０から、第二の問い合わせ関数を取得し、第二の問い合わせ関数に１次候補配列をあてはめてギブズの自由エネルギーまたはヘルムホルツの自由エネルギーを関数計算し（Ｓ３０４）、閾判定部６０４に受け渡す。
【００９５】
その後、閾判定部６０４は、閾値記憶部６０６から所定の閾値を読み出し、第二の問い合わせ関数によるギブズの自由エネルギーまたはヘルムホルツの自由エネルギーの値（近似値を含む）が所定の閾値以下である１次候補配列を、２次候補配列を抽出し（Ｓ３０６）、２次候補配列記憶部２１２に格納して、一連の動作を終了する。
【００９６】
以下、本実施形態に係る生物学的配列情報検索装置の作用効果について、説明する。
本実施形態に係る生物学的配列情報検索装置１００では、まず、中央処理部２００において問い合わせ構造パターンの２次構造情報に基づいて第一の問い合わせ関数を取得し、次いで、並列処理部３００において検索対象データベース１０２から第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列の抽出を行い、そして、再び、中央処理部２００において問い合わせ構造パターンの２次構造情報に基づいて第二の問い合わせ関数を取得し、次いで、１次候補配列から第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列の抽出を行う。
【００９７】
すなわち、この構成によれば、互いに別個の素子に設けられている中央処理部２００および並列処理部３００が、問い合わせ構造パターンの２次構造情報を考慮して取得される第一の問い合わせ関数および第二の問い合わせ関数をそれぞれ用いて、１次候補配列および２次候補配列の抽出をそれぞれ行うという、それぞれの役割を効率的に分担している。
【００９８】
このため、この構成によれば、並列処理部３００では、問い合わせ構造パターンの２次構造情報に基づいて得られる第一の問い合わせ関数により得られる値が所定の基準を満たす１次候補配列を高速に抽出し、中央処理部２００では、問い合わせ構造パターンの２次構造情報に基づいて得られるが第一の問い合わせ関数とは異なる第二の問い合わせ関数により得られる値が所定の基準を満たす２次候補配列を精度よく抽出することができる。
【００９９】
その結果、この構成によれば、中央処理部２００および並列処理部３００が、問い合わせ構造パターンの２次構造情報を考慮したそれぞれ異なる種類の関数を用いることにより、大量の生物学的な配列情報を格納している検索対象データベース１０２から、目的の生物学的な配列情報を高速かつ精度よく検索することができる。
【０１００】
本実施形態に係る生物学的配列情報検索装置１００において、上記の第一の問い合わせ関数取得部２０４は、問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合の自由エネルギーを近似的に計算する関数であって、加減乗除算およびシフト演算からなる群から選らばれる一種以上の演算の組み合わせからなる関数を含む第一の問い合わせ関数を取得するように構成されてもよい。
【０１０１】
この構成によれば、第一の問い合わせ関数は、加減乗除算およびシフト演算などの単純な計算式により、自由エネルギーを近似的に計算するため、任意の配列をあてはめた問い合わせ構造パターンの構造妥当性について、高速な計算によってある程度の精度で評価することができる。そのため、簡単な論理演算を大量かつ高速に処理することを得意とする並列処理部３００において、１次候補配列の抽出を高速化することができる。
【０１０２】
本実施形態に係る生物学的配列情報検索装置１００において、上記の生物学的配列情報は、ゲノム配列情報であってもよく、問い合わせ構造パターンは、ＲＮＡの２次構造パターンであってもよい。この場合、第一の問い合わせ関数は、ＲＮＡの２次構造パターンのステム領域におけるＲＮＡ残基ペアの個別の自由エネルギーを近似する値を、記憶するテーブルを含み、ＲＮＡ残基ペアに該当する値をＲＮＡ全体にわたって集計してＲＮＡの２次構造パターンの自由エネルギーを近似的に計算するように構成されてもよい。
【０１０３】
この構成によれば、第一の問い合わせ関数は、ＲＮＡの２次構造パターンのステム領域におけるＲＮＡ残基ペアの個別の自由エネルギーを近似する値を、ＲＮＡ全体にわたって集計してＲＮＡの２次構造パターンの自由エネルギーを近似的に計算するため、任意の配列をあてはめた問い合わせ構造パターンの構造妥当性について、高速な計算によってある程度の精度で評価することができる。そのため、簡単な論理演算を大量かつ高速に処理することを得意とする並列処理部３００において、１次候補配列の抽出を高速化することができる。
【０１０４】
本実施形態に係る生物学的配列情報検索装置１００において、上記の第二の問い合わせ関数取得部２１０は、問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合のギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値を計算する、第二の問い合わせ関数を取得するように構成されてもよい。
【０１０５】
この構成によれば、第二の問い合わせ関数は、問い合わせ構造パターンに任意の生物学的配列情報をあてはめた場合のギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値を計算するため、任意の配列をあてはめた問い合わせ構造パターンの構造妥当性を、高い精度で評価することができる。
【０１０６】
そのため、第一の問い合わせ関数を用いてある程度の精度で評価して１次候補配列を抽出した場合に、得られた１次候補配列をあてはめた問い合わせ構造パターンの構造妥当性を、高い精度で再度評価することができる。その結果、１次候補配列に紛れ込む構造妥当性の低い配列を効率的に除去して２次候補配列を抽出することができる。
【０１０７】
本実施形態に係る生物学的配列情報検索装置１００において、上記の並列処理部３００は、複数の演算器５０４を含んでもよく、検索対象データベース１０２中の生物学的配列情報を複数の所定長の配列情報に区切って、複数の演算器５０４のそれぞれに割り振ることにより、複数の演算器５０４において、第一の問い合わせ関数を用いて、検索対象データベース１０２に対して関数計算を並列処理的に行うように構成されてもよい。なお、これらの複数の演算器５０４は、互いに同一の素子に設けられていてもよく、互いに個別の素子に設けられていてもよい。
【０１０８】
この構成によれば、並列処理部３００において、複数の演算器５０４を用いて、検索対象データベース１０２中の生物学的配列情報を複数の所定長の配列情報に区切って、複数の演算器のそれぞれに割り振るため、簡単な論理演算を大量かつ高速に処理することを得意とする並列処理部３００の複数の演算器５０４において、それぞれ割り振られた配列情報から１次候補配列を高速に抽出することができる。
【０１０９】
本実施形態に係る生物学的配列情報検索装置１００において、複数の演算器５０４のうち、互いに隣接する所定長の配列情報を割り振られた演算器５０４同士は、所定長の配列情報を互いに参照可能に構成されてもよい。
【０１１０】
この構成によれば、互いに隣接する所定長の配列情報を割り振られた演算器５０４同士は、所定長の配列情報を互いに参照可能であるため、これらの複数の演算器５０４は、複数の演算器５０４にまたがって割り振られている配列情報（割り振られた配列情報の区切り目にまたがって、存在する配列情報）からも、１次候補配列を抽出することができる。そのため、複数の演算器５０４に対して、区切り目にまたがって存在する配列情報を重複して割り振る必要が無いので、複数の演算器に割り振られた配列情報の区切り目にまたがる配列情報からも、１次候補配列を高速かつ精度よく抽出することができる。
【０１１１】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【０１１２】
例えば、上記実施の形態では、１次候補配列抽出部３０２は、第一の問い合わせ関数による自由エネルギーの近似値が所定の閾値以下である１次候補配列を抽出する構成としたが、特に限定する意図はなく、例えば、第一の問い合わせ関数による自由エネルギーの近似値が所定の閾値以下である１次候補配列の検索対象データベース１０２中の座標を抽出する構成としてもよい。
【０１１３】
このようにすれば、並列処理部３００から中央処理部２００に返す１次候補配列の配列情報の容量を、単なる１次候補配列の座標の容量に低減することができるため、生物学的配列情報検索装置１００の処理速度をさらに向上することができる。
【０１１４】
同様に、上記実施の形態では、２次候補配列抽出部２１４は、第二の問い合わせ関数によるギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値が所定の閾値以下である２次候補配列を抽出する構成としたが、特に限定する意図はなく、例えば、第二の問い合わせ関数に検索対象データベース１０２中の１次候補配列の座標の近傍領域の配列をあてはめて、ギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値が所定の閾値以下である２次候補配列を抽出する構成としてもよい。
【０１１５】
このようにしても、並列処理部３００から中央処理部２００に返す１次候補配列の配列情報の容量を、単なる１次候補配列の座標の容量に低減することができるため、生物学的配列情報検索装置１００の処理速度をさらに向上することができる。
【０１１６】
また、上記実施の形態では、中央処理部２００および並列処理部３００は別個の素子に設けられているが、特に限定する意図はなく、中央処理部２００および並列処理部３００は同一の素子に設けられていてもよい。
【０１１７】
この場合にも、並列処理部３００では、第一の問い合わせ関数による自由エネルギーの近似値が所定の閾値以下である１次候補配列を高速に抽出し、中央処理部２００では、が所定の閾値以下である２次候補配列を精度よく抽出することができるという作用効果は同様だからである。
【０１１８】
また、上記実施の形態では、２次候補配列抽出部２１４において、ギブズの自由エネルギーまたはヘルムホルツの自由エネルギーに対して同一または近似の値が所定の閾値以下である２次候補配列を抽出する構成としたが、特に限定する趣旨ではなく、例えば、他の構造妥当性を評価するための指標（既知の機能性ＲＮＡの構造に対するステム構造の配列長およびループ構造の配列長のパターンに関する構造類似性指標や、既知の機能性ＲＮＡに対するＢＬＡＳＴなどによる配列相同性に関する配列類似性指標など）の値が所定の基準を満たす２次候補配列を抽出してもよい。
【０１１９】
この場合には、例えば、２次候補配列抽出部２１４において、機能性ＲＮＡの２次構造の自由エネルギーの安定性とは異なる観点に立って、すなわち、機能性ＲＮＡの既知の２次構造との構造類似性や配列類似性などの観点に立って、複数の観点から構造安定性を評価された２次候補配列を抽出することができる。
【０１２０】
また、上記実施の形態では、問い合わせ構造パターンとして、機能性ＲＮＡの２次構造パターンを例に挙げたが、特に限定する趣旨ではなく、例えば、タンパク質の２次構造パターンやＤＮＡの２次構造パターンなども好適に用いることができる。
【０１２１】
いずれの場合にも、並列処理部３００では、並列処理用問い合わせ配列に対応する１次候補配列を高速に抽出し、中央処理部２００では、問い合わせ配列に対応する２次候補配列を精度よく抽出することができるという作用効果は同様だからである。
【０１２２】
また、上記実施の形態では、検索対象データベース１０２をゲノムデータベースとしたが、特に限定する趣旨ではなく、例えば、ＰＤＢ、ＳＷＩＳＳ  ＰＲＯＴなどのプロテインデータベースや、糖鎖データベースなども好適に用いうる。
【０１２３】
いずれにしても、並列処理部３００では、並列処理用問い合わせ配列に対応する１次候補配列を高速に抽出し、中央処理部２００では、問い合わせ配列に対応する２次候補配列を精度よく抽出することができるという作用効果は同様だからである。
【０１２４】
また、上記実施の形態では、３５２個のＰＥを備えるＳＩＭＤ２０を並列処理部３００として用いたが、特に限定する趣旨ではなく、ＰＥの数は２以上であれば変動してもよく、ＳＩＭＤ２０以外の並列処理装置を用いてもよい。
【０１２５】
例えば、近年開発された、ＩＮＴＥＬ（登録商標）のＣＯＲＥ  ＤＵＯ（登録商標）や、ＳＯＮＹ（登録商標）のＣＥＬＬ（登録商標）なども用いることができる。いずれも、コア数２、コア数９、とコア数は少ないが、並列処理が可能な点では、ＳＩＭＤ２０と同様であるためである。
【産業上の利用可能性】
【０１２６】
以上のように、本発明にかかる生物学的な配列情報の検索装置は、大量の生物学的な配列情報を格納している検索対象データベースから、目的の生物学的な配列情報を高速かつ精度よく検索することができるという効果を有し、生物学的な配列情報の検索装置、検索方法および検索プログラム等として有用である。
【図面の簡単な説明】
【０１２７】
【図１】実施の形態に係る生物学的配列情報検索装置の構成を説明するための機能ブロック図である。
【図２】実施の形態に係る生物学的配列情報検索装置を構成する個別の素子を説明するための機能ブロック図である。
【図３】実施の形態に係る生物学的配列情報検索装置を構成する個別の素子の機能の概要を説明するための概念図である。
【図４】実施の形態における中央処理部および並列処理部の内部構成を説明するため機能ブロック図である。
【図５】実施の形態に係る生物学的配列情報検索装置の動作を説明するためのフローチャートである。
【図６】実施の形態における中央処理部において選択される第一の関数の選択肢の一例を説明するための概念図である。
【図７】実施の形態における中央処理部において選択される第一の関数の選択肢の他の例を説明するための概念図である。
【図８】実施の形態における１次候補配列抽出部および１次候補配列記憶部の内部構成を説明するため機能ブロック図である。
【図９】実施の形態における１次候補配列抽出部および１次候補配列記憶部の機能の概要を説明するための概念図である。
【図１０】実施の形態における１次候補配列抽出部および１次候補配列記憶部の動作を説明するためのフローチャートである。
【図１１】実施の形態における２次候補配列抽出部の内部構成を説明するため機能ブロック図である。
【図１２】実施の形態における２次候補配列抽出部の動作を説明するためのフローチャートである。
【符号の説明】
【０１２８】
１０  ＣＰＵ
２０  ＳＩＭＤ
２２  ＰＥ
３０  バス
４０  ゲノムデータベース
１００  生物学的配列情報検索装置
１０２  検索対象データベース
１０４  画像表示装置
１０６  操作部
１０８  ＰＣ
１１０  サーバ
１１２  外部ネットワーク
１１４  プリンタ
１１６  外部ネットワーク
１１８  サーバ
１２０  ＰＣ
１２２  出力部
１２４  問い合わせ関数記憶部
２００  中央処理部
２０２  問い合わせ構造パターン取得部
２０４  第一の問い合わせ関数取得部
２０６  第一の問い合わせ関数記憶部
２０８  問い合わせ構造パターン記憶部
２１０  第二の問い合わせ関数取得部
２１２  第二の問い合わせ関数記憶部
２１４  ２次候補配列抽出部
２１６  ２次候補配列記憶部
３００  並列処理部
３０２  １次候補配列抽出部
３０４  １次候補配列記憶部
５０２  データ割振部
５０４  演算器
５０６  データ割振部
５０８  所定長検索対象データ記憶部
５１０  所定長区切部
５１２  検索対象データ取得部
５１４  記憶部
６０２  一次候補配列取得部
６０４  第二の問い合わせ関数あてはめ部
６０６  閾判定部
６０８  閾値記憶部
【図１】
2007257017.tif 000004
【図２】
2007257017.tif 000005
【図３】
2007257017.tif 000006
【図４】
2007257017.tif 000007
【図５】
2007257017.tif 000008
【図６】
2007257017.tif 000009
【図７】
2007257017.tif 000010
【図８】
2007257017.tif 000011
【図９】
2007257017.tif 000012
【図１０】
2007257017.tif 000013
【図１１】
2007257017.tif 000014
【図１２】
2007257017.tif 000015
【配列表】
2007257017000001.app