(57)【特許請求の範囲】
【請求項１】
タンパク質の二つの立体構造に関するデータを計算機により処理し，これらの二つの立体構造を重ね合わせる立体構造処理装置であって，
タンパク質の立体構造に関するデータが登録されたデータベース(21)と，
前記データベース(21)に登録されているデータおよびユーザからの指示情報を読み込むデータ入力処理手段(17)と，
前記データ入力処理手段(17)が読み込んだデータに基づき，タンパク質の二つの立体構造について，タンパク質を構成する各アミノ酸を単位としアミノ酸の属性を有しアミノ酸配列番号に従った順序関係を持ちかつ点としての座標を有する要素の集合として記述されたデータを各々取得し，前記タンパク質の二つの立体構造についての集合間で各要素を対応付ける際に，集合の中から新たに対応付ける候補要素に関して，既に対応付けられた要素と候補要素との間で満たすべき二要素間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の角度関係またはそれらの組み合わせの集合間での差異に応じ対応付けを制約する幾何学的制約による候補の絞り込み，および対応する要素が存在しないことを示すｎｉｌの数の制限または集合間で既に対応付けられた各要素の間および候補要素の間の平均二乗距離の平方根の値の制限または不連続サイト数の制限またはサイト構成残基数の制限に関する所定のしきい値条件による候補の絞り込み，およびアミノ酸の属性による候補の絞り込みを行い，これらの幾何学的制約およびしきい値条件およびアミノ酸の属性を満たす新たに対応が付けられる要素を組み入れて対応付けられた要素とし対応付けられた要素の組合せを生成する組合せ生成処理手段(14)と，
前記組合せ生成処理手段(14)により生成された対応付けられた要素の組合せの複数の中から集合間で対応付けられた各要素の間の平均二乗距離の平方根が所定のしきい値より小さく，かつ対応付けられた各要素の間の各距離も所定のしきい値より小さい組合せを探し出し，その探し出した組合せについてタンパク質の二つの立体構造の最もよく一致する重ね合わせのための位置と方向を算出する重ね合わせ算出処理手段(15)と，
前記重ね合わせ算出処理手段(15)により算出された結果に基づいてタンパク質の二つの立体構造を重ね合わせて表示する結果出力処理手段(18)とを備えた
ことを特徴とする立体構造処理装置。
【請求項２】
タンパク質の立体構造に関するデータが格納されたデータベース(21)を備え，指定された立体構造を検索キーとして前記データベース(21)を検索することにより，該データベース(21)中から類似した立体構造を抽出する立体構造処理装置であって，
前記データベース(21)に登録されているデータおよびユーザからの検索キーとなる立体構造の指示情報を読み込むデータ入力処理手段(17)と，
前記データ入力処理手段(17)が前記データベース(21)から読み込んだデータに基づき，前記データベース(21)に登録されているタンパク質の立体構造と前記検索キーとなる立体構造との二つの立体構造の類似性の判定のために前記二つの立体構造について，タンパク質を構成する各アミノ酸を単位としアミノ酸の属性を有しアミノ酸配列番号に従った順序関係を持ちかつ点としての座標を有する要素の集合として記述されたデータを各々取得し，前記タンパク質の二つの立体構造についての集合間で各要素を対応付ける際に，集合の中から新たに対応付ける候補要素に関して，既に対応付けられた要素と候補要素との間で満たすべき二要素間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の角度関係またはそれらの組み合わせの集合間での差異に応じ対応付けを制約する幾何学的制約による候補の絞り込み，および対応する要素が存在しないことを示すｎｉｌの数の制限または集合間で既に対応付けられた各要素の間および候補要素の間の平均二乗距離の平方根の値の制限または不連続サイト数の制限またはサイト構成残基数の制限に関する所定のしきい値条件による候補の絞り込み，およびアミノ酸の属性による候補の絞り込みを行い，これらの幾何学的制約およびしきい値条件およびアミノ酸の属性を満たす新たに対応が付けられる要素を組み入れて対応付けられた要素とし対応付けられた要素の組合せを生成する組合せ生成処理手段(14)と，
前記組合せ生成処理手段(14)により生成された対応付けられた要素の組合せの複数の中から集合間で対応付けられた各要素の間の平均二乗距離の平方根が所定のしきい値より小さく，かつ対応付けられた各要素の間の各距離も所定のしきい値より小さい組合せを探し出し，前記データベース(21)に登録されているタンパク質の各立体構造から前記検索キーとなる立体構造に類似性の高い立体構造を選び出す類似性算出処理手段(16)と，
前記類似性算出処理手段(16)により選び出された類似性の高い立体構造を検索結果として出力する結果出力処理手段(18)とを備えた
ことを特徴とする立体構造処理装置。
【請求項３】
タンパク質の立体構造に関するデータが格納されたデータベース(21)を備え，指定されたある機能を発現する立体構造をもとに，それに類似する機能を発現する立体構造を前記データベース(21)中から抽出して収集し，タンパク質の機能と関連する立体構造に関するデータが格納された機能データベース(24)を生成する立体構造処理装置であって，
前記データベース(21)に登録されているデータおよびユーザからのある機能を発現する立体構造の指示情報を読み込むデータ入力処理手段(17)と，
前記データ入力処理手段(17)が読み込んだデータに基づき，前記データベース(21)に登録されているタンパク質の立体構造と前記ある機能を発現する立体構造との二つの立体構造の類似性の判定のために前記二つの立体構造について，タンパク質を構成する各アミノ酸を単位としアミノ酸の属性を有しアミノ酸配列番号に従った順序関係を持ちかつ点としての座標を有する要素の集合として記述されたデータを各々取得し，前記タンパク質の二つの立体構造についての集合間で各要素を対応付ける際に，集合の中から新たに対応付ける候補要素に関して，既に対応付けられた要素と候補要素との間で満たすべき二要素間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の角度関係またはそれらの組み合わせの集合間での差異に応じ対応付けを制約する幾何学的制約による候補の絞り込み，および対応する要素が存在しないことを示すｎｉｌの数の制限または集合間で既に対応付けられた各要素の間および候補要素の間の平均二乗距離の平方根の値の制限または不連続サイト数の制限またはサイト構成残基数の制限に関する所定のしきい値条件による候補の絞り込み，およびアミノ酸の属性による候補の絞り込みを行い，これらの幾何学的制約およびしきい値条件およびアミノ酸の属性を満たす新たに対応が付けられる要素を組み入れて対応付けられた要素とし対応付けられた要素の組合せを生成する組合せ生成処理手段(14)と，
前記組合せ生成処理手段(14)により生成された対応付けられた要素の組合せの複数の中から集合間で対応付けられた各要素の間の平均二乗距離の平方根が所定のしきい値より小さく，かつ対応付けられた各要素の間の各距離も所定のしきい値より小さい組合せを探し出し，前記データベース(21)に登録されているタンパク質の各立体構造から前記ある機能を発現する立体構造に類似性の高い立体構造を選び出す類似性算出処理手段(16)と，
前記類似性算出処理手段(16)により選び出された類似性の高い立体構造を収集し，その収集した立体構造に関するデータを，前記ユーザからの指示情報によって指定された機能に対応させて格納することにより前記機能データベース(24)を生成する機能データベース生成処理手段(19)とを備えた
ことを特徴とする立体構造処理装置。
【請求項４】
タンパク質の機能と関連する立体構造に関するデータが格納された機能データベース(24)を備え，指定されたあるタンパク質の立体構造をもとに，その立体構造が発現する機能を予測する立体構造処理装置であって，
前記機能データベース(24)に登録されているタンパク質の立体構造に関するデータおよびユーザから指定されたタンパク質の立体構造の指示情報を読み込むデータ入力処理手段(17)と，
前記データ入力処理手段(17)が読み込んだデータに基づき，前記機能データベース(24)に登録されているタンパク質の立体構造と前記指定されたタンパク質の立体構造との二つの立体構造の類似性の判定のために前記二つの立体構造について，タンパク質を構成する各アミノ酸を単位としアミノ酸の属性を有しアミノ酸配列番号に従った順序関係を持ちかつ点としての座標を有する要素の集合として記述されたデータを各々取得し，前記タンパク質の二つの立体構造についての集合間で各要素を対応付ける際に，集合の中から新たに対応付ける候補要素に関して，既に対応付けられた要素と候補要素の間で満たすべき二要素間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の距離関係もしくは既に対応付けられた複数要素と候補要素との間の角度関係またはそれらの組み合わせの集合間での差異に応じ対応付けを制約する幾何学的制約による候補の絞り込み，および対応する要素が存在しないことを示すｎｉｌの数の制限または集合間で既に対応付けられた各要素の間および候補要素の間の平均二乗距離の平方根の値の制限または不連続サイト数の制限またはサイト構成残基数の制限に関する所定のしきい値条件による候補の絞り込み，およびアミノ酸の属性による候補の絞り込みを行い，これらの幾何学的制約およびしきい値条件およびアミノ酸の属性を満たす新たに対応が付けられる要素を組み入れて対応付けられた要素とし対応付けられた要素の組合せを生成する組合せ生成処理手段(14)と，
前記組合せ生成処理手段(14)により生成された対応付けられた要素の組合せの複数の中から集合間で対応付けられた各要素の間の平均二乗距離の平方根が所定のしきい値より小さく，かつ対応付けられた各要素の間の各距離も所定のしきい値より小さい組合せを探し出し，前記機能データベース(24)に登録されているタンパク質の各立体構造から前記指定されたタンパク質の立体構造に類似性の高い立体構造を選び出す類似性算出処理手段(16)と，
前記類似性算出処理手段(16)により選び出された類似性の高い立体構造が発現する機能を前記機能データベース(24)から取得し，前記指定されたタンパク質の立体構造が発現する機能であるとして予測し，その機能および機能部位に関する情報を出力する機能予測処理手段(20)とを備えた
ことを特徴とする立体構造処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は，物質の二つの立体構造を重ね合わせたり，類似部分を抽出したりする立体構造処理装置に関するものである。
【０００２】
物理・化学の分野では，新しい（未知の）物質の性質を調べたり，新しい物質を人工的に創製するために，分子構造を分析し，物質が持つ機能の発現メカニズムを解明する研究が行われている。これまでの研究成果により，物質の持つ機能と立体構造との間には密接な関係があることが知られており，構造的に類似した部分（あるいは特異的な部分）が物質の機能に大きく関与すると考えられている。このため，Ｘ線結晶解析装置やＮＭＲなどによって物質の立体構造を決定し，その結果明らかになった立体構造のデータベース化が図られている。
【０００３】
例えば，このデータベースから立体構造中の類似部分を計算機で自動的に抽出したり，検索したりすることができれば，従来研究者が行ってきた一連の作業を軽減することができる。
【０００４】
【従来の技術】
物理・化学の分野では，新しい（未知の）物質の性質を調べたり，新しい物質を人工的に創製するために，Ｘ線結晶解析装置やＮＭＲ等の手法で物質の立体構造を決定し，決定された立体構造の情報をデータベースに蓄積することが行われている。代表的なデータベースとして，タンパク質のＸ線結晶解析により明らかになったタンパク質等の立体構造を登録したプロテイン・データ・バンク（ＰＤＢ：Protein Data Bank)が広く知られており，世界的に用いられている。また，化学物質が登録されているデータベースとして，ケンブリッジ・ストラクチャー・データベース（ＣＳＤ：Cambridge Structural Database)が知られている。
【０００５】
タンパク質は複数のアミノ酸が一本の鎖のように連結し，この鎖が生体内で折りたたまることによって立体構造を形成し，各種の機能を発現するようになっている。各アミノ酸はＮ端末からＣ端末に向けて１から順に番号付けることによって表現される。これらの番号はアミノ酸番号，アミノ酸配列番号またはアミノ酸残基番号などと呼ばれている。また，各アミノ酸はその種類に応じて複数の原子より構成される。したがって，上記ＰＤＢには，タンパク質の名前，管理番号，タンパク質を形成するアミノ酸番号，各アミノ酸を構成する各原子の種類と三次元座標等の情報が登録されている。
【０００６】
これまでの化学的な研究成果から，物質の立体構造とその機能との間には密接な関係があることが知られており，物質の改変や新しい機能を持つ物質を創製するために，化学的な実験を通じて立体構造と機能の関係が解明されつつある。その中でも，同じ機能を持つ物質間で構造的に類似した部分（あるいは特異的な部分）が物質の機能に大きく関与すると考えられるため，立体構造中に共通に存在する類似な構造を探し出すことは必要不可欠である。
【０００７】
しかし，三次元座標から直接特徴的な部分を取り出す手法がないため，研究者は，各立体構造を三次元グラフィックシステムで表示し，それを見て人手で特徴的な部分を探しているのが現状である。一般に物質には定まった向きの決め方がなく，片方の物質を基準としてもう一方の物質を回転させながら特徴的な部分を探し出すため，これらの作業にはかなりの時間を要している。
【０００８】
研究者が類似する立体構造を探す際，物質の立体構造の類似性の尺度として r.m.s.d.(root mean square distance)値が使用されている。r.m.s.d.値は互いに対応付けられた物質の構成要素間の平均二乗距離の平方根を表す値である。経験的には，物質間のr.m.s.d.値が１Å以下の場合に，それらの物質はきわめて類似していると考えられている。
【０００９】
図２にr.m.s.d.値の算出方法を示す。
例えば図２の(a) に示すような点集合Ａ＝｛ａ1 ，ａ2 ，…，ａi ，…，ａm ｝で表される物質と，(b) に示すような点集合Ｂ＝｛ｂ1 ，ｂ2 ，…，ｂj ，…，ｂn ｝で表される物質があったとする。これらの物質ＡとＢを構成する要素を(c) に示すように互いに対応付け，対応付けられた要素間のr.m.s.d.値が最小になるように物質Ｂを回転，移動させていく。r.m.s.d.値は，対応付ける点の数をＮ，回転行列をＵ，各重みをｗn とすると，次式の
r.m.s.d.＝｛（Σｗn （Ｕｂn −ａn ）2 ）／Ｎ｝1/2 
（ただし，ｎは１からＮまでの総和）
で求められる。なお，この対応付けられた点同士間でr.m.s.d.値を最小化する物質の回転，移動を求める手法はカブシュ等により提案され，現在広く利用されている。しかし，本手法は同数の点同士を比較するため，一方の物質中のどの構成要素を他方の物質のどの構成要素に対応付けるとr.m.s.d.値が最小になるかについて，研究者が試行錯誤しながら求めているのが現状である。
【００１０】
また，新しい物質を創製するためには，既存の物質を調べる必要がある。例えばある物質の耐熱性を強化したい場合には，耐熱性の強い物質に共通する構造を探し出し，そのような構造を新たに作成する物質に付加することによって機能の強化を図ったりする。これには，データベースの中から必要な構造を検索する機能が必要になるが，前述の理由により同様にコンピュータグラフィックシステムを用いて研究者が試行錯誤しながら必要な構造をデータベースから探し出しているのが現状である。
【００１１】
以上のように，従来，作業者は解析したい物質の立体構造をグラフィックシステムを用いてグラフィカルに表示し，画面上で他の分子との視覚的な比較，重ね合わせなどの操作により手作業で解析を行わなければならなかった。
【００１２】
そこで，これらの一連の処理を計算機を使用して，自動的に行うことが考えられるが，対象となる２つの立体構造を形成するそれぞれの点集合間の要素を対応付けて，類似構造を抽出する場合でも，それぞれの点集合の構成要素数をｍ，ｎ個とすると，比較するために生成される組合せ数はｍn 個という膨大な数となり，実際には計算不可能である。
【００１３】
さらに，これらの対応付けを生成するにあたり，各点集合の要素間の距離などの幾何学的関係，r.m.s.d.値，ｎｉｌの個数などのしきい値条件，また，構成要素の属性（タンパク質の場合，アミノ酸の種類など）を考慮することにより，最適な組合せを生成することができるが，それでもなお，立体構造の形状，点集合を構成する要素数，幾何学的制約，しきい値などの設定条件によっては計算時間が非常に長くなるという問題がある。
【００１４】
【発明が解決しようとする課題】
以上のように従来，ＣＳＤやＰＤＢを利用して物質の立体構造を解析する場合，大量のデータからの構造的な検索，構造比較を手作業，または非常に長い処理時間のために，多くの時間や労力を要し，作業者の大きな負担となっていた。また，そのためにデータベースのデータを有効に利用することができず，物質の構造解析を十分にできないといった問題点があった。したがって，高速で効率の良い実用的な立体構造データベースの立体構造の類似性による検索システムが必要とされていた。
【００１５】
本発明は上記問題点の解決を図るため，対象となる立体構造を形成する点集合間の要素を対応付ける場合，それぞれの点集合を構成する要素の順序を考慮し，さらに，しきい値条件や点の属性を絞り込むことによって，立体構造の類似した部分構造を自動的に抽出することによる複数の立体構造の重ね合わせ表示や，データベースからの類似構造の検索や，化学物質やタンパク質の構造解析における構造比較や，類似構造の検索の作業を効率化し，作業に要する時間や作業者の負担を軽減し，また従来ではできなかった全データを対象とした立体構造の解析を可能とするシステムを提供することを目的とする。
【００１６】
すなわち，本発明は，立体構造中の類似部分を計算機で自動的に抽出することによってコンピュータグラフィックスにおける立体構造の重ね合わせ表示の自動化を可能とすることを目的とする。
【００１７】
また，本発明は，データベースから類似な立体構造を検索することを可能とし，各作業に要する時間，人員等のコストを削減するとともに，各作業を効率化する物質の解析・検索システムを提供することを目的とする。
【００１８】
また，本発明は，物質の立体構造が格納されたデータベースから，ある既知の機能を発現する立体構造と類似するものを探し出すことによって，機能データベースを自動生成する手段を提供することを目的とする。
【００１９】
また，本発明は，物質の機能と関連する立体構造に関するデータが格納された機能データベースをもとに，ある立体構造の未知の機能を予測する手段を提供することを目的とする。
【００２０】
また，本発明は，組合せ候補のうち，無駄または無意味な候補を除外して，以上の処理を高速化し，実用上十分な短時間で処理するシステムを提供することを目的とする。
【００２１】
【課題を解決するための手段】
図１は本発明の原理説明図である。
図１において，１０はＣＰＵおよびメモリなどからなる処理装置，１１はオペレーティング・システムなどの制御部，１４は二つの集合の各要素を対応付ける組合せを所定の制約条件のもとに生成する組合せ生成処理手段，１５は二つの物質等を重ね合わせる重ね合わせ算出処理手段，１６は二つの物質の類似性を調べる類似性算出処理手段，１７は物質等のデータを入力するデータ入力処理手段，１８は検索結果等を出力する結果出力処理手段，１９は機能データベースを自動生成する機能データベース生成処理手段，２０は指定された物質の未知の機能を予測する機能予測処理手段，２１は物質の立体構造に関するデータが格納されたデータベース，２２はキーボードやポインティング・デバイス等の入力装置，２３は表示装置，２４は機能データベースを表す。
【００２２】
組合せ生成処理手段１４は，タンパク質や各種分子等の立体構造を構成する要素に関する二つの集合の各要素を対応付ける際に，順序による候補の絞り込み，幾何学的な関係による候補の絞り込み，所定のしきい値条件による候補の絞り込み，または点の属性による候補の絞り込みを行い，これらの幾何学的制約，しきい値条件または点の属性を満たす要素の組合せを生成する処理手段である。
【００２３】
重ね合わせ算出処理手段１５は，組合せ生成処理手段１４により生成された組合せの中で各要素間の平均二乗距離の平方根（root mean square distance, r.m.s.d. ，以下r.m.s.d.値と記す）が所定のしきい値（threshold ）より小さく，かつ対応付けられる要素間の距離も所定のしきい値（Emax）より小さい対応付けを探し出すことによって二つの立体構造の最もよく一致する重ね合わせのための位置と方向を算出する処理手段である。
【００２４】
結果出力処理手段１８は，算出された重ね合わせの結果または後述する検索結果などを表示装置２３に出力する処理手段である。
データベース２１には，タンパク質などの物質の立体構造に関するデータが登録されている。データ入力処理手段１７は，データベース２１に登録されているデータを読み込んだり，また入力装置２２からユーザが入力したコマンド等の指示情報を読み込んだりする処理手段である。
【００２５】
類似性算出処理手段１６は，指定された物質の立体構造を検索キーとし，データベース２１中の類似した立体構造を検索するために，組合せ生成処理手段１４が生成した二つの立体構造の要素の組合せについて，空間的に類似するものを探し出す処理手段である。
【００２６】
機能データベース生成処理手段１９は，指定されたある機能を発現する立体構造をもとに，それに類似する機能を発現する立体構造をデータベース２１中から抽出して収集するために，類似性算出処理手段１６が選び出した高い類似性を持つ立体構造を収集し，その収集した立体構造に関するデータを機能別に格納することにより機能データベース２４を生成する処理手段である。
【００２７】
機能予測処理手段２０は，指定された機能が未知の物質の立体構造と機能データベース２４に登録されている機能が既知の立体構造とを照合し，組合せ生成処理手段１４および類似性算出処理手段１６の処理により選び出された類似性の高い立体構造が発現する機能を，指定された物質の立体構造が発現する機能であるとして予測し，その結果を出力する処理手段である。
【００２８】
また，組合せ生成処理手段１４は，立体構造を形成する２つの順序付けられた点集合Ａ，Ｂの各要素を対応付ける際に，点集合Ｂの要素の先頭から順に点集合Ａの要素と対応づけていく。
【００２９】
【作用】
本発明によれば，立体構造を形成する点集合，順序関係のある点集合および部分的に対応付けられた点集合同士をr.m.s.d.値が最適な値をとるように重ね合わせることができるため，従来人手に頼っていた立体構造の重ね合わせ作業を自動化することができ，作業の効率化を図ることができる。
【００３０】
また，本発明によれば，タンパク質の立体構造データベースより，類似性の高い構造を探し出すことを自動化することにより，作業者の負担を軽減することができる。従来のように，グラフィカルに表示して他のタンパク質と比較する手間を減らすことができる。また，作業を自動化することにより，従来ではできなかった全データを対象とした立体構造の解析を行うことが可能になる。
【００３１】
また，機能データベースの自動生成や，機能データベースを用いることによる機能予測の自動化が可能になる。
特に，対応付けられた要素間の距離が所定のしきい値より大きい場合には，組合せの候補から外されるので，絞り込みの処理が高速化される。
【００３２】
また，本発明によれば，立体構造を形成する点集合の各要素の順序に着目し，幾何学的制約，しきい値条件または点の属性を考慮しながら，一方の集合の要素を先頭から順に他方の集合の要素に対応づけて組合せ候補とし，検索のキーとなる構造が複数サイト（連続した複数要素の列部分）からなる場合においても，各サイト内で要素が連続していれば１番目のサイトから順に１サイトずつ対応付けを行い，対応付けの候補と考えられる二点対間の距離が一定値以下であるものだけを候補とし，また，生成した組合せの中で，各点間のr.m.s.d.値が所定のしきい値（threshold ）より小さく，かつ対応付けられる点間の距離も所定のしきい値（Emax）より小さい候補に絞り込み，さらに，例えばアミノ酸残基番号が連続しない箇所のように不連続なサイト数や，サイトを構成する要素の残数を考慮して，組合せ候補のうち，無駄または無意味な候補を除外するので，処理が高速になり，実用上十分な短時間で処理するシステムの提供が可能となる。
【００３３】
【実施例】
以下，図面を参照しつつ本発明の実施例を説明する。
最初に，図１に示す組合せ生成処理手段１４により点を対応付ける基本的な処理について説明する。
〔組合せ生成処理手段１４による対応付けの処理の説明〕
(1) 点集合の対応付け
物質Ａと物質Ｂが各々点集合Ａ＝｛ａ1 ，ａ2 ，…，ａi ，…，ａm ｝，１≦ｉ≦ｍ，Ｂ＝｛ｂ1 ，ｂ2 ，…，ｂj ，…，ｂn ｝，１≦ｊ≦ｎで形成され，各点はａi ＝（ｘi ，ｙi ，ｚi ），ｂj ＝（ｘj ，ｙj ，ｚj ）からなる三次元座標であるとする。この場合，各点集合の要素の対応付けは原理的には各集合内の点を順次対応付けていき，図３の（Ａ）に示すような木構造を作成することによってすべての組合せを生成することができる。
【００３４】
図３の（Ｂ）は，点集合Ａの要素が３個，点集合Ｂの集合が４個の場合の対応付けの例，すなわち点集合Ａ＝｛ａ1 ，ａ2 ，ａ3 ｝とＢ＝｛ｂ1 ，ｂ2 ，ｂ3 ，ｂ4 ｝の対応付けを表している。点線は生成された候補を表し，その中で最適な対応付け（ａ1 とｂ2 ，ａ2 とｂ3 ，ａ3 とｂ4 ）を実線で表している。
【００３５】
図中のｎｉｌは，対応する点が存在しない場合に相当する。ｎｉｌを対応付けることによって比較する点集合の要素の数が異なる場合でも，最適な対応付けを生成することができる。このようにして生成された組合せの中から，平均二乗距離の平方根の値（r.m.s.d.値）が最小になる組合せを選択することにより最良の対応付けを生成することができる。
【００３６】
図４に順序付けられていない点の要素からなる点集合ＡとＢの対応付けアルゴリズムの例を示す。
点集合Ａから１つずつ要素ａを取り出し，まだ木構造中の先祖，兄弟に含まれていない要素ｂj と組合せて，それが制約条件を満たすかどうかを調べる。制約条件を満たしていれば，それを木構造中に登録し，次の要素についての対応付けを行っていく。
【００３７】
しかし，このような手法を取ると，例えばｎのｍ乗個の組合せが生成されるため，一般には計算不可能な問題となってしまう。具体的には，順序づけられていない点集合Ａ（ｍ点）と点集合Ｂ（ｎ点）の場合，生成される組合せの数は，ｉをｎｉｌの数とすると，
【００３８】
【数１】
0003867863.tif 000002
【００３９】
となる。ここで，ｎ＝４，ｍ＝３とすると，
【００４０】
【数２】
0003867863.tif 000003
【００４１】
となる。すなわち，図３（Ｂ）に示す点集合Ａ（３点）と点集合Ｂ（４点）のような場合，生成される組合せの数は７３通りとなる。実際には，これらの点（要素）の数はもっとずっと多いのが普通であるので，組合せの数は膨大な数となる。
【００４２】
そこで，これらの対応付けを行う際に，以下の(4) ，(5) ，(6) に示す各点集合内の幾何学的な関係，しきい値条件，点の属性を考慮することによって最適な組合せを生成することを図る。
【００４３】
(2) 順序付けられた点集合の対応付け
物質Ａと物質Ｂが各々点集合Ａ＝｛ａ1 ，ａ2 ，…，ａi ，…，ａm ｝，１≦ｉ≦ｍ，Ｂ＝｛ｂ1 ，ｂ2 ，…，ｂj ，…，ｂn ｝，１≦ｊ≦ｎで形成され，各点はａi ＝（ｘi ，ｙi ，ｚi ），ｂj ＝（ｘj ，ｙj ，ｚj ）からなる三次元座標であり，点集合Ａでは，ａ1 ＜ａ2 ＜…＜ａi ＜…＜ａm （またはａ1 ＞ａ2 ＞…＞ａi ＞…＞ａm ）なる順序関係が成り立ち，同様に点集合Ｂ内でもｂ1 ＜ｂ2 ＜…＜ｂj ＜…＜ｂn （またはｂ1 ＞ｂ2 ＞…＞ｂj ＞…＞ｂn ）なる順序関係が成り立つとする。
【００４４】
この場合，各点集合の要素の対応付けは原理的には各集合内の点を順序関係に基づいて順次対応付けていき，図５（Ａ）に示す木構造を作成することによってすべての組合せを生成することができる。図５（Ｂ）は，点集合Ａの要素が３点，点集合Ｂの要素が４点の場合の例である。すなわち図５（Ｂ）は，順序付けられた点集合Ａ＝｛ａ1 ，ａ2 ，ａ3 ｝，（順序関係はａ1 ＜ａ2 ＜ａ3 ）と，同様に順序付けられた点集合Ｂ＝｛ｂ1 ，ｂ2 ，ｂ3 ，ｂ4 ｝，（順序関係はｂ1 ＜ｂ2 ＜ｂ3 ＜ｂ4 ）の対応付けを表している。
【００４５】
点線は生成された候補を表し，その中で最適な対応付け（ａ1 とｂ2 ，ａ2 とｂ3 ，ａ3 とｂ4 ）を実線で表している。図中のｎｉｌは対応する点が存在しない場合に相当する。ｎｉｌを対応付けることによって比較する点集合の要素の数が異なる場合でも最適な対応付けを生成することができる。このようにして生成された組合せの中から，r.m.s.d.値が最小になる組合せを選択することにより，最良の対応付けを生成することができる。
【００４６】
また，点集合内の各要素に対して順序関係を導入することによって上記(1) と比べて大幅に生成する組合せの数を減らすことができる。さらに，これらの対応付けを行う際に，後述する(4) ，(5) ，(6) に示す各点集合内の幾何学的な関係，しきい値，点の属性を考慮することによって，最適な組合せを生成することができる。
【００４７】
図６に順序付けられた点集合の対応付けアルゴリズムの例を示す。
点集合Ａから１つずつ要素ａを取り出し，まだ木構造中の先祖，兄弟に含まれていない要素の中で親ノードの要素より大きい要素ｂj と組み合わせて，それが制約条件を満たすかどうかを調べる。制約条件を満たしていれば，それを木構造中に登録し，次の要素についての対応付けを行っていく。
【００４８】
このように順序付けられた点集合の場合，生成される組合せの数は，
【００４９】
【数３】
0003867863.tif 000004
【００５０】
となる。ここで，ｎ＝４，ｍ＝３とすると，
【００５１】
【数４】
0003867863.tif 000005
【００５２】
となり，図５（Ｂ）のような点集合Ａ（３点）と点集合Ｂ（４点）の場合には，生成される組合せの数は３５通りとなる。
(3) 部分的に対応付けられた点集合または順序付けられた点集合の対応付け
上記(1) または(2) の場合において，部分的に対応付けられる点同士が決まっていることがある。この場合，各点集合の要素の対応付けは，予め部分的に対応が付けられている点の情報を参照しながら，残りの点に対して(1) ，(2) の手法と同様に各集合内の点を順次対応付けていき，図７に示すような木構造を作成することによってすべての組合せを生成することができる。
【００５３】
図７中の×印は部分的な対応付けによって枝刈りされる部分を表す。図では予め点集合Ａの要素ａ1 と点集合Ｂの要素ｂ2 とが対応付けられていた場合の対応付けを表している。また，(1) ，(2) と同様にこれらの対応付けを行う際に，後述する(4) ，(5) ，(6) に示す各点集合内の幾何学的な関係，しきい値条件，点の属性を考慮することによって最適な組合せを生成することができる。
【００５４】
(4) 幾何学的な関係による候補の絞り込み
幾何学的関係に基づいて点集合の要素を対応付けることによって，無駄な組合せを生成することを防ぐことができるため，効率よく点集合を対応付けることができる。
【００５５】
(a) 空間における二点対間の関係による候補の絞り込み
r.m.s.d.値は平均化された距離のため，ある対応付けられた２点間の距離が大きい場合でもその他の点間の距離が小さければ結果的に算出されるr.m.s.d.値は小さくなる。しかし，このような検索結果には意味がないため対応付けられた点間の距離がある一定値より小さくなるような制限が必要になる。そこで図８に示すような空間上のある２点対（ａi ，ａk ）をもう一方の２点対（ｂj ，ｂl ）の点間（ａi とｂj ，ａk とｂl ）の距離が一定値（Ｅｍａｘ）以下で重ね合わせるとする。この場合，各点対間の距離を｜ａi −ａk ｜＝ｄa ，｜ｂj −ｂl ｜＝ｄb とすると図９，図１０により明らかなように各点対間の距離の差は
｜ｄa −ｄb ｜≦２×Ｅｍａｘ  ・・・（式１）
となる。従って点集合の要素を対応付ける際に，上述の式を満たすかチェックすることによって対応付ける点の候補を絞り込むことできる。
【００５６】
ただし（式１）は必要十分条件ではないため，回転行列Ｕを算出した後で再度各点間の距離がＥｍａｘより小さいかチェックする必要がある。再チェックにより対応付けられた各店間の距離はＥｍａｘより小さくなることが保証されるためr.m.s.d.値は次の条件式（式２）を満たすことになる。
【００５７】
【数５】
0003867863.tif 000006
【００５８】
(b) 距離関係（式１）による候補の絞り込み
点集合Ａの要素ａi と点集合Ｂの要素ｂj を対応付ける際に，すでに対応付けられた点集合ＡとＢのｓ個の要素の各々について（式１）を満たすかチェックする。これにより複数点間で距離関係を満たす必要があるためより効率良く候補とする点を絞り込むことができる。図１１に複数点間の距離関係による候補点の絞り込みを示す。すでに対応付けられた点を塗りつぶした円で示し，ａi に対応する点をｂj-3,ｂj-2,ｂj から選択する場合を表している。図１１（Ｂ）では，すでに対応付けられた点との距離関係より点ｂj が選択される。
【００５９】
(c) 角度による候補の絞り込み
立体構造が類似している場合には，立体構造を形成する各点間の角度の関係も類似していると考えることができる。立体では，図１２（Ａ）に示すように，３点間の角度θと４点間のうち各３点から形成される面間の角度φが存在する。以下では，３点間の角度θを例として対応付ける点を絞り込む方法について述べる。
【００６０】
対応付けを行う際に，点集合Ａ内の要素ａi と近接するｓ個（２≦ｓ≦ｍ−１，ｎ−１）の点間に成り立つ角度に対し，点集合Ｂ内の要素ｂj と近接するｓ個の要素間の角度が許容誤差範囲Δθである点のみを選択し，対応付けることによって対応付ける候補数を絞り込む。
【００６１】
図１２（Ｂ）に，点集合Ａの間に成り立つ幾何学的な関係として各要素間の角度を考え，それに基づいて点集合Ｂの点を対応付ける場合の例を示す。
点集合Ａ内の要素ａi と近接するｓ＝２個の点ａi-1 ，ａi-2 間に成り立つ角度がθa ，点集合Ｂ内の要素ｂp ，ｂq ，ｂr の中で各点と隣接する２個の要素ｂj-1 ，ｂj-2 間の角度が各々θb1，θb2，θb3の場合，角度差が許容誤差範囲Δθである点のみを選択し，それらを対応付ける。本図では点ｂq に関してのみ許容誤差範囲｜θa −θb1｜≦Δθを満たすため，ｂj の候補としてｂq が選択される。
【００６２】
(d) 重心からの距離，角度による候補の絞り込み
立体構造が類似している場合には，重心からの距離，角度も類似していると考えられる。従って，選択した点間で重心を算出し，上記(a) ，(b) と同様の手法で距離，角度を比較することによって，対応付ける候補を絞り込むことができる。
【００６３】
(5) しきい値条件による候補の絞り込み
上述の(1) 〜(4) の方法において，所定のしきい値を設定し，候補の持つ属性値がしきい値より大きい値を持つならば探索の枝刈りをすることによって，対応付けの効率化を図ることができる。このしきい値として，例えばｎｉｌ数の制限やr.m.s.d.値の制限を用いることができる。
【００６４】
(a) ｎｉｌ数の制限
生成した組合せの中でｎｉｌの総数が多くなり過ぎると，結果的に意味のない組合せの候補が生成される。そこで，点集合Ａと点集合Ｂの各要素間の対応付けを行う際に，ｎｉｌの総数があるしきい値以上になったならば，それを組合せの候補から除外することによって無駄な候補の生成を避け，効率よく対応付けを行うことができる。
【００６５】
図１３は，点集合Ａ＝｛ａ1 ，ａ2 ，ａ3 ｝，Ｂ＝｛ｂ1 ，ｂ2 ，ｂ3 ，ｂ4 ｝を対応付ける際にｎｉｌの総数を０個に制限した場合の枝刈りの例を示す。図中，木構造中で×印が付けられた部分が，枝刈りされる部分である。
【００６６】
(b) r.m.s.d.値の制限
点集合Ａの要素ａi に点集合Ｂの要素ｂj を対応付けることによって，これまでに対応付けられた全点間のr.m.s.d.値が極端に悪くなる場合には，その点を候補から除外することが望ましい。そこで，要素ａi に要素ｂj を対応付けた場合の全点間のr.m.s.d.値を算出し，r.m.s.d.値があるしきい値以下ならばその点を候補とし，そうでなければ候補から除外することによって対応付ける点の候補を効率よく生成することができる。
【００６７】
(c) 不連続サイト数の制限
生成した組合せの中でアミノ酸残基番号が連続しない箇所（不連続なサイト数）が多くなり過ぎると結果的に意味のない組合せの候補が生成される。そこで，点集合Ａと点集合Ｂの各要素間の対応付けを行う際に，不連続なサイト数があるしきい値以上になる場合には，組合せの候補から除外することによって無駄な候補の生成を避け，効率のよい対応付けを実現する。例えば不連続サイト数が３までと制限したとき，ｂ1 ｂ3 ｂ4 ｂ7 ｂ10では不連続なサイト数が４となるため，ｂ10を対応付ける際に枝刈りされる。
【００６８】
(d) サイト構成残基数の制限
生成した組合せの中でサイトを構成するアミノ酸残基数（サイト構成残基数）が小さくなり過ぎると，結果的に意味のない組合せの候補が生成される。そこで，点集合Ａと点集合Ｂの各要素間の対応付けを行う際に，サイト構成残基数があるしきい値以下になる場合は，組合せの候補から除外することによって無駄な候補の生成を避け，効率のよい対応付けを実現する。例えばサイト構成残基数が２までと制限したとき，ｂ1 ｂ2 ｂ3 ｂ5 ｂ10ではｂ5 は１残基で１つのサイトを構成するためｂ6 以外の要素（ｂ10）を対応付ける際に枝刈りされる。
【００６９】
(6) 点の属性による候補の絞り込み
点集合Ａの要素ａi に点集合Ｂの要素ｂj を対応付ける際に，点の属性を利用することによって対応付ける点の候補を絞り込むことができる。点の属性として，例えば原子，原子団，分子の種類や，親水性，疎水性や，電荷の正負などを挙げることができる。これらが一致するかどうかを調べることによって，候補に加えるかどうかを判定する。
【００７０】
例えば，タンパク質の構成要素間を対応付ける場合には，点の属性としてアミノ酸残基の種類（原子団に相当する）を用いることにより，対応付ける候補を絞り込むことができる。なお，アミノ酸残基の種類等に関しては，例えば「“生化学の基礎”（東京化学同人出版）p.21〜26」等の参考資料を参照されたい。
【００７１】
また，ある特定の要素に対して制限を加えることによって，同様に対応付ける点の候補を絞ることができる。例えば，ある点に対してはｎｉｌを挿入しないという制限を設けたり，ある点に対して点の属性を指定することなどにより，検索するものに対してよりきめの細かい絞り込みが可能になる。
【００７２】
次に，物質の立体構造としてタンパク質を題材とした例を説明する。ただし，対象は基本的には立体座標であれば特に限定されないため，一般の分子構造についても同様の手法で適用することができる。
【００７３】
(1) 分子構造を重ね合わせる処理装置の例
物質の性質を調べるときには，各分子同士を重ね合わせてお互いに共通な部分や特異的な部分を判別することによって，各物質の性質を分析したり，あるいは予測したりすることができる。これらの作業は，従来人手で行われているため，各分子構造を自動的に重ね合わせて表示する装置が必要とされている。
【００７４】
それを実現する分子構造重ね合わせ表示装置のシステムは，図１に示す装置構成のうち，物質の立体構造に関する情報を登録したデータベース２１，登録されたデータおよびユーザからの入力コマンドを読み込むデータ入力処理手段１７，重ね合わせる立体構造の要素を対応付ける組合せ生成処理手段１４，データベース２１から読み込んだ物質の立体構造（三次元座標）に基づいて，r.m.s.d.値が最小となるように立体構造同士を重ね合わせる重ね合わせ算出処理手段１５および算出された結果に基づいて立体構造同士を重ね合わせて表示する結果出力処理手段１８等を用いて構成される。
【００７５】
(a) データベース２１
物質の立体構造に関する情報を格納したデータベース２１である。データベース２１には，物質の名称，物質を構成する原子の三次元座標等が格納されている。
【００７６】
(b) データ入力処理手段１７
データ入力処理手段１７では，ユーザの入力コマンドに基づいて重ね合わせる物質のデータ（三次元座標）をデータベース２１から読み込み，組合せ生成処理手段１４，重ね合わせ算出処理手段１５へ送る処理を行う。
【００７７】
(c) 組合せ生成処理手段１４
各要素を対応付ける際に，幾何学的な関係による候補の絞り込み，所定のしきい値条件による候補の絞り込み，または点の属性による候補の絞り込みを行い，これらの幾何学的制約，しきい値条件または点の属性を満たす要素の組合せを生成する。
【００７８】
ここでの対応付けでは，タンパク質を構成するアミノ酸配列順序に基づいて空間的に類似な部分を対応付ける機能とアミノ酸配列順序とは無関係に空間的に類似な部分を対応付ける機能を提供する。アミノ酸配列順序に基づいて空間的に類似な部分を検索する場合には，タンパク質を構成する各アミノ酸をアミノ酸配列番号により順序付けられた順序集合として捉えることができ，対応付け処理の説明における(2) 〜(6) で述べた方式で類似な部分を算出することができる。また，各アミノ酸を単なる集合として捉えることによって，上記(1) ，(3) 〜(6) で述べた方式により，アミノ酸配列順序とは無関係に空間的に類似な部分を算出することができる。
【００７９】
(d) 重ね合わせ算出処理手段１５
重ね合わせ算出処理手段１５では，物質の立体構造（三次元座標）について，r.m.s.d.値が最適な値をとるように物質を構成する要素間の対応付けを行い，その座標変換情報を求めて，結果を結果出力処理手段１８へ送る。
【００８０】
(e) 結果出力処理手段１８
結果出力処理手段１８によるグラフィック表示では，重ね合わせ算出処理手段１５で算出された結果に基づいて物質の立体構造を重ね合わせて表示する。表示結果を回転させながら見ることができるようにすることによって，どの部分がどのように重なっているかを三次元グラフィックにより判別することを，さらに容易化することができる。
【００８１】
タンパク質Calmodulinのアミノ酸残基配列を図１４（Ａ）に，TroponinＣのアミノ酸残基配列を図１４（Ｂ）に示す。図１４（Ｃ）はTroponinＣの立体構造を示している。なお，図１４（Ａ），（Ｂ）は，プロテイン・データ・バンク（ＰＤＢ）に登録されているアミノ酸残基配列を抜粋したものである。
【００８２】
図１４（Ａ）に示したアミノ酸残基配列は，本来のアミノ酸残基配列に対してアミノ酸配列番号１−４，１４８番に相当するアミノ酸が欠落しているため番号がずれているが，以降の説明では，図に示したアミノ酸配列番号を使用することにする。
【００８３】
Calmodulinは生化学的な実験結果より，４個のＣａ2+を結合することが知られている。Ｃａ2+の結合部位はアミノ酸配列中に４箇所（サイト）あり，その中でアミノ酸配列番号８１−１０８，１１７−１４３は，TroponinＣ中に２箇所あるＣａ2+の結合部位と各々似た骨格を取ることが知られている。タンパク質はアミノ酸で構成されるが，その骨格は各アミノ酸を構成する一つの原子（Ｃα）の座標で代表できることが知られている。
【００８４】
そこで，CalmodulinのＣａ2+の結合部位８１−１０８を検索キー（検索キーをプローブともいう）として，アミノ酸配列順序に基づいて空間的に類似な部分（単一サイト）を検索した結果を，図１５に示す。図１５の結果から，CalmodulinのＣａ2+の結合部位８１−１０８に対応付けられたTroponinＣ中のアミノ酸配列番号は９６−１２３番であることがわかる。本結果は，生化学的な実験結果と一致するものである。
【００８５】
図１６にCalmodulinのＣａ2+の結合部位８１−１０８と１１７−１４３とをプローブとしてアミノ酸配列順序に基づいて空間的に類似な部分（複数サイト）を検索した結果を示す。図１６から，CalmodulinのＣａ2+の結合部位８１−１０８，１１７−１４３に対応付けられたTroponinＣ中のアミノ酸配列番号は，各々９６−１２３，１３２−１５８であることがわかる。本結果も同様に生化学的な実験結果と一致するものである。
【００８６】
このように，本装置を使用すれば，物質間の立体構造のr.m.s.d.値が小さくなるような物質の構成要素間の対応付けがなされるため，対応付けられた部分を重ね合わせて表示することによって，物質の最適な重ね合わせ表示を実現することができる。
【００８７】
(2) 立体構造検索装置，機能データベース生成装置の例
新薬の開発のように新しい機能を持つ物質を開発したり，既に存在する物質の機能強化を図るためには，物質の機能と構造の相関関係を解明することが不可欠である。このような作業を進めるに当たって，類似な立体構造を持つ物質を多数参照する必要が生じる。そのためには，データベースから立体構造が類似した物質を簡単に取り出せる立体構造検索装置が必要になる（また，このような装置があると機能と関係する立体構造を収集した機能データベースを作成することができる。機能データベースについては次の(3) で後述する）。
【００８８】
それを実現する立体構造検索装置は，図１に示す装置構成のうち，物質の立体構造に関する情報を登録したデータベース２１，登録されたデータおよびユーザからの入力コマンドを読み込むデータ入力処理手段１７，比較する立体構造の要素を対応づける組合せ生成処理手段１４，データベース２１から読み込んだ物質の立体構造（三次元座標）について，r.m.s.d.値が最小となる類似な構造を検索する類似性算出処理手段１６，および検索結果を表示する結果出力処理手段１８等を用いて構成される。
【００８９】
同様に機能データベース生成装置は，データベース２１，データ入力処理手段１７，組合せ生成処理手段１４，類似性算出処理手段１６および機能データベース生成処理手段１９等を用いて構成される。
【００９０】
(a) データベース２１
物質の立体構造に関する情報を格納したデータベースである。データベースには，物質の名称，物質を構成する原子の三次元座標等が格納されている。
【００９１】
(b) データ入力処理手段１７
立体構造のデータおよびユーザからの入力コマンドに基づいて検索のキーとなる立体構造および検索時に参照するデータベース２１に登録されている立体構造のデータを読み込み，組合せ生成処理手段１４および類似性算出処理手段１６へ送る。
【００９２】
(c) 組合せ生成処理手段１４および類似性算出処理手段１６
類似性判定のために各要素を対応付ける際に，幾何学的な関係による候補の絞り込み，所定のしきい値条件による候補の絞り込み，または点の属性による候補の絞り込みを行い，これらの幾何学的制約，しきい値条件または点の属性を満たす要素の組合せを生成する。この際，タンパク質を構成するアミノ酸配列順序に基づいて空間的に類似な部分を検索する機能とアミノ酸配列順序とは無関係に空間的に類似な部分を検索する機能を提供する。アミノ酸配列順序に基づいて空間的に類似な部分を検索する場合には，タンパク質を構成する各アミノ酸をアミノ酸配列番号により順序付けられた順序集合として捉えることができ，対応付け処理の説明における(2) 〜(6) で述べた方式で類似な部分を算出することができる。また，各アミノ酸を単なる集合として捉えることによって，上記(1) ，(3) 〜(6) で述べた方式により，アミノ酸配列順序とは無関係に空間的に類似な部分を算出することができる。これにより類似性算出処理手段１６は，類似性の高い立体構造をデータベース２１中から選出する。
【００９３】
(d) 結果出力処理手段１８
結果出力処理手段１８では，類似性算出処理手段１６の結果に基づいて類似な部分をアミノ酸配列名およびアミノ酸番号で表し，類似性の尺度としてr.m.s.d.値を表示する。
【００９４】
(e) 機能データベース生成処理手段１９
また，機能データベース生成装置の場合，機能データベース生成処理手段１９は，類似性算出処理手段１６の結果に基づいて，プローブの立体構造と類似する立体構造を，プローブの立体構造が発現する機能と同じ機能を持つものとする。そして，その情報を機能データベース２４に格納する。
【００９５】
タンパク質elongation factor のＧＴＰ（グアノシン３リン酸）のリン酸結合部位であるアミノ酸残基番号７から１４に対応するＣαの座標をプローブとしてＰＤＢから類似な立体構造の検索を行った結果を，図１７に示す。
【００９６】
この例では，プロテイン・データ・バンク（ＰＤＢ）に登録されているデータ９０５件中でタンパク質の立体構造７４４件を検索の対象とした。検索結果として，図１７に示すように，検索したターゲットタンパク質のアミノ酸残基番号，アミノ酸残基配列，プローブのアミノ酸残基配列およびターゲットとプローブの立体構造のr.m.s.d.値等の情報が出力される。途中の出力を図示省略するが，検索の結果，８個の立体構造が検索されている（プローブ自身を含む）。
【００９７】
タンパク質の種類別にみると，adenylate kinaseが３件，elongation factor が２件（内１件はプローブ自身），ras protein が３件であり，いずれもＡＴＰまたはＧＴＰのリン酸結合部位であった。これから，ＡＴＰまたはＧＴＰのリン酸との結合という機能と立体構造は非常に密接な関係にあり，かつ他のリン酸結合部位とは無関係な構造と偶然一致することがないため非常に特異的な構造を持っていることがわかる。
【００９８】
このように，本装置を使用すれば，プローブ（検索キー）となる物質の立体構造を指定することによって，物質の立体構造を格納したデータベース２１から類似構造を検索することができる。また，この検索結果を利用し，機能データベース２４を自動生成することができる。
【００９９】
(3) 機能予測装置
図１７に示した結果から推察されるように，タンパク質は，ある機能を発現するためにその機能に特異的な立体構造を持っていると考えられている。したがって，機能ごとにその機能に特異的な立体構造のデータベース（図１に示す機能データベース２４）があると，新しくＸ線結晶解析やＮＭＲ等の手法で物質の立体構造が決定された際に，その機能データベース２４に登録されている構造が立体構造内にあるかを調べることによって，その物質がどのような機能を持っており，その機能は立体構造中のどの部分（以下機能部位とよぶ）によって司られているかを予測することができる。
【０１００】
それを実現する機能予測装置は，図１に示す装置構成のうち，データ入力処理手段１７，機能と関連した立体構造を登録した機能データベース２４，これから読み込んだ立体構造の要素と，比較する立体構造の要素とを対応付ける組合せ生成処理手段１４，類似性を調べる類似性算出処理手段１６，その結果から機能と機能部位を予測する機能予測処理手段２０等を用いて構成される。
【０１０１】
(a) データ入力処理手段１７
物質を構成する立体構造のデータを読み込み，組合せ生成処理手段１４へ送る。
【０１０２】
(b) 機能データベース２４
物質の機能とその機能に特異的な立体構造に関する情報を格納したデータベースである。機能データベース２４には，機能の名称，機能に特異的な立体構造を構成する原子の三次元座標等が格納されている。
【０１０３】
(c) 組合せ生成処理手段１４および類似性算出処理手段１６
ここでは，機能データベース２４に登録されている立体構造と入力された立体構造間の最適な重ね合わせを算出する。この際，タンパク質を構成するアミノ酸配列順序に基づいて空間的に類似な部分を検索する機能とアミノ酸配列順序とは無関係に空間的に類似な部分を検索する機能を提供する。アミノ酸配列順序に基づいて空間的に類似な部分を検索する場合には，タンパク質を構成する各アミノ酸をアミノ酸配列番号により順序付けられた順序集合として捉えることができ，対応付け処理の説明における(2) 〜(6) で述べた方式で類似な部分を算出することができる。また，各アミノ酸を単なる集合として捉えることによって，上記(1) ，(3) 〜(6) で述べた方式により，アミノ酸配列順序とは無関係に空間的に類似な部分を算出することができる。
【０１０４】
(d) 機能予測処理手段２０
機能予測処理手段２０では，類似性算出処理手段１６の結果に基づいて機能データベース２４に登録されている機能名，機能部位のアミノ酸配列名およびアミノ酸残基番号で表し，類似性の尺度としてr.m.s.d.値を表示する。
【０１０５】
以上の実施例で説明した立体構造の検索システムでは，立体構造を形成する点集合間の要素の対応付けを，各集合内の点を順次対応付けていくことにより自動化した。この手法では，対応付けるべき点がない場合にｎｉｌを対応付けることによって，比較する点集合の要素の数が異なる場合でも，最適な対応付けを生成することができるようにしている。このようにして，生成された組合せの中から各点間のr.m.s.d.値が所定のしきい値より小さく，かつ対応付けられる点間の距離も所定のしきい値より小さい対応付けを探し出すことによって最良の対応付けを生成する。
【０１０６】
ここで，組合せに関する探索の枝刈りが行われない場合，それぞれの点集合の構成要素数をｍ，ｎ個とすると，生成される組合せ数はｍn 個となり，実質的に計算不可能な問題となってしまう。そこで，これらの対応付けを行う際に，各点集合の要素間の距離などの幾何学的関係，r.m.s.d.値，ｎｉｌの個数などのしきい値条件，また，構成要素の属性（タンパク質の場合，アミノ酸の種類など）を考慮することによって最適な組合せを生成するようにしている。どのような条件下でも常に高速に処理する手法を確立することは困難である。
【０１０７】
しかし，タンパク質を構成するアミノ酸はＮ末端からＣ末端に向けてアミノ酸残基番号が付けられており，順序付けられた点集合として捉えることができること，また，タンパク質の機能などの解析を行う際に，類似構造の抽出，検索キーとなる立体構造はアミノ酸配列上で連続している（点集合において連続した要素である）場合が多いことから，このような連続した構造に対して，点集合Ａ，Ｂの構成要素の順序を考慮して対応付けを行うことで，処理の一層の高速化を可能とする。
【０１０８】
本実施例では，立体構造を形成する点集合Ａ，Ｂ間の要素の対応付けを行う際，点集合Ａ，Ｂを構成する要素の順序に着目する。また，上記のように要素を対応付ける際に各点集合間の距離などの幾何学的関係，r.m.s.d.値，ｎｉｌの個数などのしきい値条件，または構成要素の属性を考慮することで，効率良く組合せを生成する。さらに検索のキーとなる構造が複数のサイトからなる場合にも，各サイト内で要素が連続している場合には，１番目のサイトから順に１サイトずつ対応付けを行うことにより，複数サイト全体の対応付けを行う。以下において，対応付けの候補となる部分集合を求める手段について述べる。
【０１０９】
(1) 順序づけられた点集合Ａ，Ｂの構成要素順序に従った対応づけ
図１８は，点集合Ａの構成要素数ｍを求め，点集合Ｂから構成要素順序に従ってｍ個ずつ要素を選んで点集合Ａの各要素と対応づける例を説明するための図である。点集合Ａ，Ｂは順序づけられた点集合であり，その構成要素は，点集合Ａ＝｛ａ1 ，…，ａm ｝，点集合Ｂ＝｛ｂ1 ，…，ｂi ，…，ｂn ｝である。
【０１１０】
図１９は, 順序付けられた点集合Ａ，Ｂの構成要素順序に従った対応付けのアルゴリズムを示す図である。
順序付けられた点集合Ａ＝｛ａ1 ，…，ａm ｝，Ｂ＝｛ｂ1 ，…，ｂi ，…，ｂn ｝において，以下の処理を行う。
【０１１１】
処理１：点集合Ａの要素数ｍを求める。
処理２：ｉ＝１とする。
処理３：点集合Ｂのｉ番目の要素から順にｍ個の要素を選び，点集合Ａの各要素と対応づける。
【０１１２】
処理４：点集合Ｂの最後の要素が対応付けられたとき終了する。点集合Ｂの最後の要素が対応付けられていないとき，ｉ＝ｉ＋１にして処理３に戻る。
(2) 順序付けられた点集合Ａ，Ｂの構成要素順序，制約条件を考慮した対応づけ
点集合Ａの要素数ｍを求め，点集合Ｂから構成要素順序に従ってｍ個ずつ要素を選んで点集合Ａの各要素と対応づけを行うが，その際に上述した各点集合内の幾何学的な関係, しきい値条件, 点の属性を考慮することによって最適な対応づけを行う。
【０１１３】
図２０（Ａ）は，順序付けられた点集合Ａ，Ｂの構成要素順序，制約条件を考慮した対応付けのアルゴリズムを示す図であり，図２0 （Ｂ）は，対応付け処理のアルゴリズムを示す図である。
【０１１４】
図２０（Ａ）では，順序付けられた点集合Ａ＝｛ａ1 ，…，ａm ｝，Ｂ＝｛ｂ1 ，…，ｂi ，…，ｂn ｝において，点集合Ａの要素数ｍを求め，制約条件として，ｎｉｌｍａｘ＝ＮＩＬ総数のしきい値，とする。また，ｉ＝１，ｎｉｌ＝０と初期設定する。その後，図２０（Ｂ）に示す対応付け処理を呼び出す。この対応付け処理では，以下の処理を行う。
【０１１５】
処理１：ｋ＝ｉとする。
処理２：点集合Ｂのｉ番目の要素から一つずつ要素（点ｂk ）を選び，点ｂk が制約条件を満たしていたら，点ｂk を点集合Ａの要素と対応付ける。満たしていない場合はｎｉｌと対応付け，ｎｉｌ＝ｎｉｌ＋１とする。
【０１１６】
処理３：ｍ個の要素が対応付くか，またはｎｉｌがｎｉｌｍａｘの値を超えるまで，ｋ＝ｋ＋１として処理２を繰り返す。
処理４：点集合Ｂの最後の要素が選ばれたとき終了する。点集合Ｂの最後の要素がまだ選ばれていないとき，ｉ＝ｉ＋１にして処理１に戻る。
【０１１７】
(3) 順序付けられた点集合Ａ，Ｂの構成要素順序，制約条件を考慮した対応づけ（複数サイトの場合）
図２１（Ａ）に示すように，キーとなる構造である点集合Ａが複数のサイトからなる場合，図２１（Ｂ）に示すように，まずサイト１（site１）の対応づけを上記(2) で述べた方法によって行う。対応付けが成功したら, 図２１（Ｃ）に示すように，ターゲットである点集合Ｂのサイト１と対応付けられた要素よりも後の要素を対象に，サイト２（site２）の対応付けを，上記(2) で述べた方法によって行う。同様に最後のサイトまで処理を行う。
【０１１８】
図２２は，順序付けられた点集合Ａ，Ｂの構成要素順序，制約条件を考慮した複数サイトの対応付けのアルゴリズムを示す図である。
順序付けられた点集合Ａ＝｛ａ1 ，…，ａm ｝，Ｂ＝｛ｂ1 ，…，ｂi ，…，ｂn ｝に対し，以下の処理を行う。
【０１１９】
処理１：点集合Ａのサイトの総数を求める。
ｓｉｔｅｍａｘ＝サイト総数，
ｎｉｌｍａｘ＝ＮＩＬ総数のしきい値，
ｓｔａｒｔ＝１，ｎ＝１とする。
【０１２０】
処理２：図２０（Ｂ）に示す対応づけ処理を行う。
処理３：ｎ番目のサイトの対応付けに失敗したならば，処理を終了する。
処理４：すべてのサイトが対応付くか，またはｎｉｌがｎｉｌｍａｘの値を超えたならば，処理を終了する。
【０１２１】
処理５：ｎ番目のサイトが対応付けられた位置の次の要素を開始位置（strat)とし，ｎ＝ｎ＋１として処理２以下を繰り返す。
本実施例による物質の立体構造を重ね合わせて表示するシステムについても，最初に説明した実施例の場合と同様な構成で実現することができる。ただし，図１に示す組合せ生成処理手段１４による対応付け方法が異なる。
【０１２２】
始めに，１つのサイトからなるプローブ（検索キー）の具体例を説明する。タンパク質Trypsin のアミノ酸（残基）配列を図２３（Ａ）に，Elastaseのアミノ酸配列を図２３（Ｂ）に示す。図２３はＰＤＢに登録されているアミノ酸配列を抜粋したものである。図２３に示したアミノ酸配列番号は，ＰＤＢに記載されているアミノ酸に対して単純に１から番号をふったものであるので，本来のアミノ酸番号とは異なっているが，以降の説明では図に示したアミノ酸番号を使用することにする。
【０１２３】
図２３に示したTrypsin ，Elastaseはセリンプロテアーゼと呼ばれるタンパク質分解酵素の仲間で，活性部位にヒスチジン，セリン，アスパラギン酸が不可欠な酵素である。これらの酵素の基質特異性は全く異なるが，構造および触媒機構などの点で類似していることから進化的には一群の酵素であろうと考えられている。
【０１２４】
図２４（Ａ）に，Trypsin のヒスチジン活性部位（３６−４１）をプローブとして，Elastaseのヒスチジン活性部位を検索した結果を示す。この結果によると，Trypsin の活性部位３６−４１に対して，Elastaseの４１−４６が対応付けられたことがわかる。
【０１２５】
また，図２４（Ｂ）に，Trypsin のセリン活性部位（１７５−１７９）をプローブとして，Elastaseのセリン活性部位を検索した結果を示す。この結果によると，Trypsin の活性部位１７５−１７９に対して，Elastaseの１８６−１９０が対応付けられたことがわかる。これらの結果は，生化学的な実験で得られた結果と合致するものである。
【０１２６】
次に，複数のサイトからなるプローブ（検索キー）の具体例として，タンパク質elongation factor のＧＴＰ（グアノシン３リン酸）結合部位であるアミノ酸残基番号７−１４，４８−５１，１０３−１０６の３サイトに対応する構造をプローブとして，ras protein から類似構造を検索した結果を図２５に示す。
【０１２７】
ras protein もＧＴＰを結合することが知られており，図２６に示すように，elongation factor のサイト１（７−１４）に対してras protein の１０−１７残基が，サイト２（４８−５１）に対して５７−６０残基が，サイト３（１０３−１０６）に対して１１１−１１４残基が対応付けられたことがわかる。これらの結果は，生化学的な実験で得られた結果と合致するものである。
【０１２８】
このように，本装置によってプローブとなる物質の立体構造を指定することによって，物質の立体構造を格納したデータベースからr.m.s.d.値が最小となる対応付けが算出できるため，対応付けられた部分を重ね合わせて表示することによって物質の最適な重ね合わせ表示を実現することができる。
【０１２９】
例えば，新薬の開発のように求める機能を持つ物質を開発する場合などには，物質の機能と構造の相関関係を解明するため，類似な立体構造を持つ物質を多数参照する必要が生じる。そのため，データベースから立体構造が類似した物質を簡単に取り出せる立体構造の検索システムが必要になるが，前述した例と同様に高速な検索システムを構成することができる。
【０１３０】
先に説明した実施例の手法により，組合せ生成処理手段１４によって効率よく要素の組合せを生成し，類似性算出処理手段１６によって類似する立体構造をデータベース２１から抽出する。そして，結果出力処理手段１８により，類似性算出処理手段１６の結果に基づいて，類似な部分をアミノ酸配列名，およびアミノ酸番号で表し，類似性の尺度としてr.m.s.d.値を表示する。
【０１３１】
このように，本装置によってプローブ（検索キー）となる物質の立体構造を指定することによって，物質の立体構造を格納したデータベース２１からr.m.s.d.値が最小となる類似構造を検索することができる。
【０１３２】
【発明の効果】
以上説明したように，本発明によれば，立体構造を形成する点同士を自動的に重ね合わせることができるため，グラフィックシステムにより立体構造を自動的に重ね合わせて表示することや，立体構造が類似した構造をデータベースから自動的に検索することが可能になる。また，機能データベースを生成し，新しい物質の機能を予測することが可能になる。したがって，新薬の開発やタンパク質の研究等に寄与するところが大きい。
【図面の簡単な説明】
【図１】本発明の原理説明図である。
【図２】本発明に関係するr.m.s.d.値の算出方法を示す図である。
【図３】順序付けられていない点集合ＡとＢの対応付け説明図である。
【図４】順序付けられていない点集合ＡとＢの対応付けアルゴリズムの例を示す図である。
【図５】順序付けられた点集合ＡとＢの対応付け説明図である。
【図６】順序付けられた点集合ＡとＢの対応付けアルゴリズムの例を示す図である。
【図７】部分的に対応付けられた点集合ＡとＢの対応付け説明図である。
【図８】対応付けられる２点間の関係を示す図である。
【図９】２点間の距離を説明するための図である（ｄa ≧２×Ｅｍａｘ）。
【図１０】２点間の距離を説明するための図である（ｄa ＜２×Ｅｍａｘ）。
【図１１】複数点間の距離関係による候補の絞り込みを説明するための図である。
【図１２】幾何学的制約による候補の絞り込みを説明するための図である。
【図１３】ｎｉｌ数を制限した点集合ＡとＢの対応付け説明図である。
【図１４】タンパク質の例を示す図である。
【図１５】本発明の実施例による検索結果の例を示す図である。
【図１６】本発明の実施例による検索結果の例を示す図である。
【図１７】立体構造検索結果の例を示す図である。
【図１８】順序付けられた点集合Ａ，Ｂの構成要素順序に従った対応付けを説明する図である。
【図１９】順序付けられた点集合Ａ，Ｂの構成要素順序に従った対応付けアルゴリズムの例を示す図である。
【図２０】順序付けられた点集合Ａ，Ｂの構成要素順序，制約条件を考慮した対応付けアルゴリズムの例を示す図である。
【図２１】点集合の構成要素順序，制約条件を考慮した複数サイトの対応付けを説明する図である。
【図２２】点集合の構成要素順序，制約条件を考慮した複数サイトの対応付けアルゴリズムの例を示す図である。
【図２３】アミノ酸配列の例を示す図である（１サイトの場合）。
【図２４】本実施例による検索結果の例を示す図である（１サイトの場合）。
【図２５】アミノ酸配列の例を示す図である（複数サイトの場合）。
【図２６】本実施例による検索結果の例を示す図である（複数サイトの場合）。
【符号の説明】
１０    処理装置
１１    制御部
１４    組合せ生成処理手段
１５    重ね合わせ算出処理手段
１６    類似性算出処理手段
１７    データ入力処理手段
１８    結果出力処理手段
１９    機能データベース生成処理手段
２０    機能予測処理手段
２１    データベース
２２    入力装置
２３    表示装置
２４    機能データベース
【図１】
0003867863.tif 000007
【図２】
0003867863.tif 000008
【図３】
0003867863.tif 000009
【図４】
0003867863.tif 000010
【図５】
0003867863.tif 000011
【図６】
0003867863.tif 000012
【図７】
0003867863.tif 000013
【図８】
0003867863.tif 000014
【図９】
0003867863.tif 000015
【図１０】
0003867863.tif 000016
【図１１】
0003867863.tif 000017
【図１２】
0003867863.tif 000018
【図１３】
0003867863.tif 000019
【図１４】
0003867863.tif 000020
【図１５】
0003867863.tif 000021
【図１６】
0003867863.tif 000022
【図１７】
0003867863.tif 000023
【図１８】
0003867863.tif 000024
【図１９】
0003867863.tif 000025
【図２０】
0003867863.tif 000026
【図２１】
0003867863.tif 000027
【図２２】
0003867863.tif 000028
【図２３】
0003867863.tif 000029
【図２４】
0003867863.tif 000030
【図２５】
0003867863.tif 000031
【図２６】
0003867863.tif 000032