(57)【特許請求の範囲】
【請求項１】
所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションするハードウエアシミュレータであって、
シミュレーション対象物に対して設けられ、当該シミュレーション対象物に関する値を演算する複数の演算素子と、
前記シミュレーション対象物間の反応に応じて演算素子の値を変化させる反応回路と、
前記シミュレーション対象物間の反応に応じて前記反応回路と前記演算素子との接続を切り換える切り換え回路とを備え、
前記反応回路は、前記反応に関係するシミュレーション対象物に対して設けられた演算素子を特定するための素子特定情報を予め記憶しており、
前記反応回路から取得した素子特定情報を基に、前記シミュレーション対象物をノード、前記反応をリンクとして表現した前記シミュレーション対象物のネットワーク構造を抽出する抽出回路をさらに備え、
前記演算素子は、前記シミュレーション対象物に関する値をカウントするカウント回路を含み、
前記反応回路は、原料物質から生成物質を生成する反応の進行状態に応じて、反応前の原料物質である各シミュレーション対象物の量を表すカウント回路に対して減少指令信号を出力して当該カウント回路のカウント値を減少させるとともに、反応後の生成物質である各シミュレーション対象物の量を表すカウント回路に対して増加指令信号を出力して当該カウント回路のカウント値を増加させ、さらに、前記減少指令信号及び増加指令信号の出力状態を特定するための出力特定情報を前記抽出回路へ出力し、
前記抽出回路は、前記出力特定情報から前記減少指令信号及び前記増加指令信号の出力頻度を算出し、算出した出力頻度から反応速度を特定し、所定の反応速度以上の反応速度を有する反応を表すシミュレーション対象物のネットワーク構造を抽出することを特徴とするハードウエアシミュレータ。
【請求項２】
前記抽出回路は、前記反応回路から取得した素子特定情報及び出力特定情報に加えて前記カウント回路から取得したカウント値を基に前記シミュレーション対象物のネットワーク構造を抽出することを特徴とする請求項１記載のハードウエアシミュレータ。
【請求項３】
前記抽出回路は、前記反応回路から取得した素子特定情報を基に演算素子と反応回路との組み合わせをマトリックス形式で記憶する記憶回路と、
前記記憶回路に記憶されている演算素子と反応回路との組み合わせから前記シミュレーション対象物のネットワーク構造を抽出する構造抽出回路とを含むことを特徴とする請求項１又は２記載のハードウエアシミュレータ。
【請求項４】
前記構造抽出回路は、抽出したネットワーク構造を基に当該ネットワーク構造の特徴を表す特徴情報を演算することを特徴とする請求項３記載のハードウエアシミュレータ。
【請求項５】
前記抽出回路により抽出されたネットワーク構造を提示する提示装置をさらに備えることを特徴とする請求項１〜４のいずれかに記載のハードウエアシミュレータ。
【請求項６】
前記提示装置は、前記抽出回路により抽出されたネットワーク構造を２部グラフ表現することを特徴とする請求項５記載のハードウエアシミュレータ。
【請求項７】
前記提示装置は、前記抽出回路により抽出されたネットワーク構造をハイパーグラフ表現することを特徴とする請求項５記載のハードウエアシミュレータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションするハードウエアシミュレータに関するものである。
【背景技術】
【０００２】
従来の化学反応シミュレーション方法としては、例えば、シミュレーションプログラムを計算機で実行することにより、有限温度及び有限時間を設定し、これら有限温度及び有限時間における分子動力学計算を行い、分子動力学計算により求められた励起状態を含む構造のすべてを用いて物質の全原子に働く力がすべて緩和される安定構造を複数求める処理等を行うものがある（特許文献１参照）。
【０００３】
一方、上記のような化学反応シミュレーションにおいて多数の物質を容易に取り扱うことができるように、本願発明者は、化学反応シミュレーションを所定のハードウエアを用いて行うことを提案しており、この場合、化学反応ごとに反応実行回路が設けられ、この反応実行回路により各物質カウンタの値を増減させてシミュレーションが行われる（特許文献２参照）。
【特許文献１】特開２００２−２６０９７５号公報
【特許文献２】特開２００２−１２６４９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の化学反応シミュレーションでは、単に化学反応をシミュレーションできるだけで、シミュレーション対象物のネットワーク構造を抽出することはできない。特に、シミュレーション対象物の数が膨大になった場合、シミュレーション対象物間の関係が非常に複雑となり、シミュレーション対象物のネットワーク構造を抽出することがより困難となる。また、シミュレーション対象物間の反応の中には、発生頻度が非常に低く、シミュレーション対象物のネットワークとして無視できるものもあるが、上記の化学反応シミュレーションでは、このような反応を無視して主要な反応のみを表すシミュレーション対象物のネットワーク構造を抽出することもできない。
【０００５】
本発明の目的は、シミュレーション動作を行いながら、簡略な回路構成でシミュレーション対象物のネットワーク構造を抽出することができるハードウエアシミュレータを提供することである。
【課題を解決するための手段】
【０００６】
本発明に係るハードウエアシミュレータは、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションするハードウエアシミュレータであって、シミュレーション対象物に対して設けられ、当該シミュレーション対象物に関する値を演算する複数の演算素子と、前記シミュレーション対象物間の反応に応じて演算素子の値を変化させる反応回路と、前記シミュレーション対象物間の反応に応じて前記反応回路と前記演算素子との接続を切り換える切り換え回路とを備え、前記反応回路は、前記反応に関係するシミュレーション対象物に対して設けられた演算素子を特定するための素子特定情報を予め記憶しており、前記反応回路から取得した素子特定情報を基に、前記シミュレーション対象物をノード、前記反応をリンクとして表現した前記シミュレーション対象物のネットワーク構造を抽出する抽出回路をさらに備え、前記演算素子は、前記シミュレーション対象物に関する値をカウントするカウント回路を含み、前記反応回路は、原料物質から生成物質を生成する反応の進行状態に応じて、反応前の原料物質である各シミュレーション対象物の量を表すカウント回路に対して減少指令信号を出力して当該カウント回路のカウント値を減少させるとともに、反応後の生成物質である各シミュレーション対象物の量を表すカウント回路に対して増加指令信号を出力して当該カウント回路のカウント値を増加させ、さらに、前記減少指令信号及び増加指令信号の出力状態を特定するための出力特定情報を前記抽出回路へ出力し、前記抽出回路は、前記出力特定情報から前記減少指令信号及び前記増加指令信号の出力頻度を算出し、算出した出力頻度から反応速度を特定し、所定の反応速度以上の反応速度を有する反応を表すシミュレーション対象物のネットワーク構造を抽出する。
【０００７】
本発明に係るハードウエアシミュレータでは、シミュレーション対象物間の反応に応じてシミュレーション対象物に関する値を演算する複数の演算素子の値が反応回路によって変更されることにより、シミュレーション対象物間の反応によるシミュレーション対象物の変化量がシミュレーションされる。ここで、反応回路は反応に関係するシミュレーション対象物に対して設けられた演算素子を特定するための素子特定情報を予め記憶しており、反応回路から取得した素子特定情報を基にシミュレーション対象物のネットワーク構造を抽出しているので、素子特定情報から各反応回路に接続される演算素子を特定することができ、シミュレーション動作を行いながら、シミュレーション対象物のネットワーク構造を簡略な回路構成で抽出することができる。
【０００９】
この場合、反応の進行状態に応じて、反応前の各シミュレーション対象物の量を表すカウント回路に対して減少指令信号を出力して当該カウント回路のカウント値を減少させるとともに、反応後の各シミュレーション対象物の量を表すカウント回路に対して増加指令信号を出力して当該カウント回路のカウント値を増加させ、このときの減少指令信号及び増加指令信号の出力状態を特定するための出力特定情報をも取得してシミュレーション対象物のネットワーク構造を抽出しているので、この出力特定情報から減少指令信号及び増加指令信号の出力頻度、すなわち反応速度を特定することができ、所定の反応速度以上の反応速度を有する主要な反応を表すシミュレーション対象物のネットワーク構造を抽出することができる。
【００１０】
前記抽出回路は、前記反応回路から取得した素子特定情報及び出力特定情報に加えて前記カウント回路から取得したカウント値を基に前記シミュレーション対象物のネットワーク構造を抽出することが好ましい。
【００１１】
この場合、反応回路から取得した素子特定情報及び出力特定情報に加えてカウント回路から取得したカウント値を基にシミュレーション対象物のネットワーク構造を抽出しているので、カウント回路のカウント値、すなわちシミュレーション対象物に関する値、例えば、シミュレーション対象物の現在の数が所定数以上あり、充分な反応を行うことができる主要な反応を表すシミュレーション対象物のネットワーク構造を抽出することができる。
【００１２】
前記抽出回路は、前記反応回路から取得した素子特定情報を基に演算素子と反応回路との組み合わせをマトリックス形式で記憶する記憶回路と、前記記憶回路に記憶されている演算素子と反応回路との組み合わせから前記シミュレーション対象物のネットワーク構造を抽出する構造抽出回路とを含むことが好ましい。
【００１３】
この場合、演算素子と反応回路との組み合わせがマトリックス形式で記憶され、記憶されている演算素子と反応回路との組み合わせからシミュレーション対象物のネットワーク構造を抽出しているので、演算素子、すなわちシミュレーション対象物をノード、反応回路、すなわち反応をリンクとしてシミュレーション対象物のネットワーク構造を容易に抽出することができる。
【００１４】
前記構造抽出回路は、抽出したネットワーク構造を基に当該ネットワーク構造の特徴を表す特徴情報を演算することが好ましい。
【００１５】
この場合、抽出したネットワーク構造を基に当該ネットワーク構造の特徴を表す特徴情報を演算しているので、演算素子、すなわちシミュレーション対象物をノード、反応回路、すなわち反応をリンクとした場合、各シミュレーション対象物に対するリンク数、その平均値及び最大値等のネットワーク構造の特徴的な情報を容易に検出することができる。
【００１６】
前記抽出回路により抽出されたネットワーク構造を提示する提示装置をさらに備えることが好ましい。この場合、ネットワーク構造を提示することができるので、ユーザはネットワーク構造を容易に理解することができる。
【００１７】
前記提示装置は、前記抽出回路により抽出されたネットワーク構造を２部グラフ表現することが好ましい。この場合、ネットワーク構造が２部グラフ表現されるので、演算素子、すなわちシミュレーション対象物及び反応回路、すなわち反応をノードとし、両者の関係をリンクとして表示すること等ができ、ネットワーク構造をユーザがより容易に理解することができる。
【００１８】
前記提示装置は、前記抽出回路により抽出されたネットワーク構造をハイパーグラフ表現してもよい。この場合、ネットワーク構造がハイパーグラフ表現されるので、演算素子、すなわちシミュレーション対象物及び反応回路、すなわち反応を頂点とし、両者の関係を辺として表示すること等ができ、ネットワーク構造をユーザがより容易に理解することができる。
【発明の効果】
【００１９】
本発明によれば、反応回路から取得した素子特定情報を基にシミュレーション対象物のネットワーク構造を抽出しているので、素子特定情報から各反応回路に接続される演算素子を特定することができ、シミュレーション動作を行いながら、シミュレーション対象物間のネットワーク構造を簡略な回路構成で抽出することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明によるハードウエアシミュレータの一例として、生化学反応をシミュレーションし、シグナル伝達ネットワーク、遺伝子ネットワーク等の解明に好適に用いられる化学反応シミュレーション装置について図面を参照しながら説明する。
【００２１】
図１は、本発明の一実施の形態によるハードウエアシミュレータの構成を示すブロック図である。図１に示すハードウエアシミュレータは、複数の乱数発生器Ｒ１〜Ｒｎ（ｎは任意の正数）、複数の酵素カウンタＫ１〜Ｋｎ、複数の絞り回路Ｖ１〜Ｖｎ、複数の反応実行回路Ｈ１〜Ｈｎ、複数の物質カウンタＢ１〜Ｂｍ（ｍは任意の正数）、接続切り換え回路ＳＷ、ネットワーク回路ＮＣ、構造情報記憶回路ＳＭ、構造抽出回路ＳＤ及び表示装置ＤＤを備える。
【００２２】
酵素カウンタＫ１〜Ｋｎ、絞り回路Ｖ１〜Ｖｎ及び反応実行回路Ｈ１〜Ｈｎは、シミュレーションに使用される生化学反応ごとに設けられ、物質カウンタＢ１〜Ｂｍは、シミュレーションに使用される物質ごとに設けられる。乱数発生器Ｒ１は、絞り回路Ｖ１の入力側に接続され、反応実行回路Ｈ１は、絞り回路Ｖ１の出力側に接続され、酵素カウンタＫ１は、絞り回路Ｖ１に接続される。他の乱数発生器、酵素カウンタ、絞り回路及び反応実行回路も上記と同様に接続される。
【００２３】
接続切り換え回路ＳＷは、例えば、空間スイッチ等から構成され、複数の増加指令信号用の入力配線Ｉ１〜Ｉｎ及び減少指令信号用の入力配線Ｄ１〜Ｄｎと、複数の増加指令信号用の出力配線ｉ１〜ｉｍ及び減少指令信号用の出力配線ｄ１〜ｄｍを含み、各配線がマトリックス状に配置されている。
【００２４】
反応実行回路Ｈ１は、接続切り換え回路ＳＷの増加指令信号用の入力配線Ｉ１及び減少指令信号用の入力配線Ｄ１に接続され、他の反応実行回路も同様に接続される。物質カウンタＢ１は、接続切り換え回路ＳＷの増加指令信号用の出力配線ｉ１及び減少指令信号用の出力配線ｄ１に接続され、他の物質カウンタも同様に接続される。また、接続切り換え回路ＳＷにおいて図中に黒丸で示す各配線の交点ＮＤには、時分割ゲート及び時分割ゲートのオン／オフを制御する保持メモリ等から構成されるスイッチ（図示省略）が配置されている。
【００２５】
接続切り換え回路ＳＷは、各スイッチをオン／オフすることにより、増加指令信号用の入力配線Ｉ１〜Ｉｎと増加指令信号用の出力配線ｉ１〜ｉｍとの接続状態及び減少指令信号用の入力配線Ｄ１〜Ｄｎと減少指令信号用の出力配線ｄ１〜ｄｍとの接続状態を制御し、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応前の物質を表す物質カウンタ及び反応後の物質を表す物質カウンタと対応する反応実行回路とを接続する。なお、接続切り換え回路ＳＷは、上記の空間スイッチに特に限定されず、反応実行回路と物質カウンタとの接続状態を切り換えることができるものであれば、他の接続切り換え回路を用いてもよいし、また、接続切り換え回路を用いることなく、反応実行回路と物質カウンタとを配線により直接接続するようにしてもよい。
【００２６】
物質カウンタＢ１〜Ｂｍは、例えば、バイナリカウンタ等から構成され、反応前の各物質の数、すなわち分子数又は原子数を初期カウント値として設定され、反応実行回路Ｈ１〜Ｈｎの減少指令信号及び増加指令信号に応じて、そのカウント値を減少及び増加させる。なお、物質カウンタは、上記のバイナリカウンタに特に限定されず、シミュレーション対象物ごとに設けられ、当該シミュレーション対象物に関する値を演算する演算素子であれば、他のカウンタ等を用いてもよい。例えば、代謝経路におけるクエン酸回路のような生化学反応を状態遷移と捉え、状態遷移機械（有限状態オートマトン）を組み合わせて使用する場合、物質カウンタとしてジョンソンカウンタを用いることにより、コンパクトな回路により高速にシミュレーションすることができる。
【００２７】
乱数発生器Ｒ１は、生化学反応の反応速度を制御するための所定の乱数を、絞り回路Ｖ１を介して反応実行回路Ｈ１に出力する。乱数発生器としては、擬似乱数を発生させる擬似乱数発生回路、カオス的な乱数を発生させるカオス発生回路、熱雑音に基づく乱数を発生させる熱雑音発生回路等を用いることができる。
【００２８】
例えば、擬似乱数発生回路としては、線形フィードバックシフトレジスタを用いることによって、線形フィードバックシフトレジスタがＬ個のレジスタから構成されると、２L−１の長周期を有するが、ほぼランダムな乱数を発生させることができる。カオス発生回路としては、コンデンサと可変抵抗回路とで構成される閉ループにより不規則な信号を発生させる回路等を用いることによって、カオス的な振る舞いを行う不規則な乱数を発生させることができる。熱雑音発生回路としては、短周期のパルスを長周期のパルスによりラッチし、ラッチされた短周期のパルスのレベルを乱数として出力する回路等を用いることによって、ホワイトノイズによる周期性のない乱数を発生させることができる。
【００２９】
酵素カウンタＫ１は、反応実行回路Ｈ１が表す生化学反応に使用される酵素物質の数、すなわち酵素物質の分子数をそのカウント値として設定され、設定されたカウント値に応じて絞り回路Ｖ１の絞り量が調整される。なお、一般の化学反応の場合は、酵素カウンタが触媒カウンタに変更され、生細胞内で作られる蛋白性の生体触媒である酵素の代わりに、触媒物質の数がそのカウント値として設定される。また、触媒（酵素）を使用しない化学反応の場合、触媒（酵素）カウンタ及び絞り回路は不要となる。
【００３０】
具体的には、乱数発生器Ｒ１が乱数として“１”又は“０”のデータをランダムに発生し、酵素カウンタＫ１がそのカウント値に応じて“０”に対する“１”の頻度を調整して“１”又は“０”のデータを出力する。このとき、絞り回路Ｖ１は両データの論理積を取り、その結果を反応実行回路Ｈ１へ出力する。したがって、酵素カウンタＫ１のカウント値に応じて反応実行回路Ｈ１へ入力される“１”の頻度が調整される。
【００３１】
反応実行回路Ｈ１は、データとして“１”が入力された場合、反応を実行させるため、増加指令信号用の入力配線Ｉ１にカウント値を１だけ増加させるための増加指令信号を出力するとともに、減少指令信号用の入力配線Ｄ１にカウント値を１だけ減少させるための減少指令信号を出力する。一方、反応実行回路Ｈ１は、データとして“０”が入力された場合、反応を行わないようにするため（不実行の状態）、増加指令信号及び減少指令信号を出力しない。
【００３２】
このとき、接続切り換え回路ＳＷは、減少指令信号用の入力配線Ｄ１と、反応実行回路Ｈ１が表す生化学反応における反応前の物質の数、すなわち分子数又は原子数を表す物質カウンタに接続されている減少指令信号用の出力配線とを接続している。したがって、反応実行回路Ｈ１から出力される減少指令信号が反応前の物質に対して設けられた物質カウンタへ入力され、当該物質カウンタが自身のカウント値を１だけ減少させる。また、接続切り換え回路ＳＷは、増加指令信号用の入力配線Ｉ１と、反応実行回路Ｈ１が表す生化学反応における反応後の物質の数、すなわち分子数又は原子数を表す物質カウンタに接続されている増加指令信号用の出力配線とを接続している。したがって、反応実行回路Ｈ１から出力される増加指令信号が反応後の物質に対して設けられた物質カウンタへ入力され、当該物質カウンタが自身のカウント値を１だけ増加させる。
【００３３】
他の乱数発生器、酵素カウンタ、絞り回路及び反応実行回路も、上記と同様に構成され、生化学反応に応じて上記と同様に動作する。なお、酵素カウンタに割り当てられる酵素の数が生化学反応等により増減する場合は、酵素カウンタも物質カウンタと同様に構成されて接続切り換え回路に接続され、対応する反応実行回路によりそのカウント値が増減される。
【００３４】
また、反応実行回路Ｈ１〜Ｈｎは、内部にメモリを有し、自身が割り当てられた反応における反応前の物質に割り当てられた物質カウンタ及び反応後の物質に割り当てられた物質カウンタを特定するための素子特定情報として部分ネットワーク構造情報を予め記憶している。ここで、物質カウンタＢ１〜Ｂｍ及び反応実行回路Ｈ１〜Ｈｎには、各々を識別可能な識別情報が予め付与されており、反応実行回路Ｈ１は、反応前後の物質カウンタの識別情報を部分ネットワーク構造情報として予め記憶している。他の反応実行回路も同様に自身の部分ネットワーク構造情報を予め記憶している。
【００３５】
反応実行回路Ｈ１は、自身の部分ネットワーク構造情報を出力信号Ｓ１としてネットワーク回路ＮＣを介して反応実行回路Ｈ２へ出力する。反応実行回路Ｈ２は、受信した反応実行回路Ｈ１の部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加して出力信号Ｓ２としてネットワーク回路ＮＣを介して反応実行回路Ｈ３へ出力する。以降、反応実行回路Ｈ３〜Ｈｎ−１は、受信した部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加してネットワーク回路ＮＣを介して次の反応実行回路へ出力する。最後に、反応実行回路Ｈｎは、受信した反応実行回路Ｈｎ−１までの部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加して出力信号Ｓｎとしてネットワーク回路ＮＣへ出力する。
【００３６】
ネットワーク回路ＮＣは、例えば、平均経路長が短いというランダムネットワークの特徴とクラスター係数が大きいというレギュラーネットワークの特徴との双方を合わせ持つスモールワールドネットワーク回路から構成され、反応実行回路Ｈｎから送信された全ての部分ネットワーク構造情報を構造情報記憶回路ＳＭへ出力する。このように、スモールワールドネットワーク回路を用いて、部分ネットワーク構造情報を順次送信することによりネットワーク回路ＮＣにおける通信のオーバーヘッドを低減することができ、短時間で全ての部分ネットワーク構造情報を構造情報記憶回路ＳＭへ送信することができる。
【００３７】
なお、ネットワーク回路は、上記の例に特に限定されず、他のネットワークを用いてもよい。また、部分ネットワーク構造情報の送信方法も、上記の例に特に限定されず、全ての反応実行回路Ｈ１〜Ｈｎが自身の部分ネットワーク構造情報をネットワーク回路ＮＣを介して構造情報記憶回路ＳＭへ直接送信したり、一部の反応実行回路が自身の部分ネットワーク構造情報を順次送信し、他の反応実行回路が自身の部分ネットワーク構造情報を直接送信する等の種々の変更が可能である。
【００３８】
構造情報記憶回路ＳＭは、メモリ等から構成され、反応実行回路Ｈ１〜Ｈｎから送信された部分ネットワーク構造情報から反応実行回路と当該反応実行回路に接続される物質カウンタとが識別可能なように、反応実行回路と物質カウンタとの組み合わせをマトリックス形式で記憶する。
【００３９】
構造抽出回路ＳＤは、所定の論理回路等から構成され、構造情報記憶回路ＳＭに記憶されている反応実行回路と物質カウンタとの組み合わせから、物質カウンタ、すなわち反応前後の物質をノード、反応実行回路、すなわち反応をリンクとするネットワーク構造を抽出し、抽出したネットワーク構造を２部グラフ表現するための画像データを表示装置ＤＤへ出力する。
【００４０】
表示装置ＤＤは、ＣＲＴ（陰極線管）又は液晶表示装置等から構成され、構造抽出回路ＳＤから出力された画像データを用いてネットワーク構造を２部グラフ表現を用いて表示する。なお、ネットワーク構造のユーザへの提示方法は、上記の例に特に限定されず、ネットワーク構造をハイパーグラフ（例えば、グラフの理論III、Ｃ．ベルジェ著、サイエンス社参照）、双対グラフ等の他のグラフ表現を用いて表示したり、印刷装置を用いて印字する等の種々の変更が可能である。例えば、ハイパーグラフの場合、物質カウンタ（反応前後の物質）及び反応実行回路（反応）を頂点、両者の関係を辺として表示したり、物質カウンタ（反応前後の物質）を頂点、反応実行回路（物質間の反応）を辺として表示したりすることができる。
【００４１】
また、反応実行回路Ｈ１〜Ｈｎは、減少指令信号及び増加指令信号を出力するとき、減少指令信号及び増加指令信号を出力したことを示すとともに、出力した信号が減少指令信号及び増加指令信号のいずれであるかを特定するための出力特定情報を出力信号Ｓ１〜Ｓｎとしてネットワーク回路ＮＣへ出力する。ネットワーク回路ＮＣは、反応実行回路Ｈ１〜Ｈｎから送信された出力特定情報を構造情報記憶回路ＳＭへ出力する。構造情報記憶回路ＳＭは、受信された出力特定情報を用いて各反応実行回路Ｈ１〜Ｈｎが出力している減少指令信号及び増加指令信号の単位時間当りの送信回数（送信頻度）を算出して反応実行回路Ｈ１〜Ｈｎに対応付けて送信頻度を記憶する。構造抽出回路ＳＤは、構造情報記憶回路ＳＭに記憶されている送信頻度を読み出し、所定の下限値以上の送信頻度、すなわち所定の反応速度以上の反応速度で反応が行われている主要な反応を抽出する。構造抽出回路ＳＤは、この主要な反応に該当する反応実行回路と物質カウンタとの組み合わせからネットワーク構造を抽出し、反応速度が充分に速い主要な反応のみを表すネットワーク構造を表示装置ＤＤに２部グラフ表示させる。
【００４２】
また、物質カウンタＢ１〜Ｂｍは、現在のカウント値、すなわち各物質の分子数又は原子数をネットワーク回路ＮＣへ出力する。ネットワーク回路ＮＣは、物質カウンタＢ１〜Ｂｍから送信された各物質の分子数又は原子数を構造情報記憶回路ＳＭへ出力する。構造情報記憶回路ＳＭは、受信された各物質の分子数又は原子数を反応実行回路Ｈ１〜Ｈｎ又は物質カウンタＢ１〜Ｂｍに対応付けて記憶する。構造抽出回路ＳＤは、構造情報記憶回路ＳＭに記憶されている各物質の分子数又は原子数を読み出し、所定の下限値以上の分子数又は原子数が存在して充分な反応が行われている主要な反応を抽出する。構造抽出回路ＳＤは、この主要な反応に該当する反応実行回路と物質カウンタとの組み合わせからネットワーク構造を抽出し、反応物質が充分に存在する主要な反応のみを表すネットワーク構造を表示装置ＤＤに２部グラフ表示させる。
【００４３】
また、構造抽出回路ＳＤは、抽出したネットワーク構造を基に当該ネットワーク構造の特徴を表す特徴情報を演算して表示装置ＤＤに表示させる。例えば、構造抽出回路ＳＤは、内部の加算器を用いて、構造情報記憶回路ＳＭに記憶されている反応実行回路と物質カウンタとの組み合わせから物質カウンタに接続されている反応実行回路の数、すなわちリンク数を算出したり、内部の除算器を用いて、全ての物質カウンタのリンク数を加算した値を物質カウンタの総数で除算して物質カウンタの平均リンク数を算出したり、内部の最大値検出器を用いて、物質カウンタの最大リンク数を算出したり、所定範囲ごとに最大リンク数を算出してリンク数の分布を算出する等の種々の演算を行う。
【００４４】
本実施の形態において、物質カウンタＢ１〜Ｂｍが演算素子及びカウント回路の一例に相当し、反応実行回路Ｈ１〜Ｈｎ、乱数発生器Ｒ１〜Ｒｎ、酵素カウンタＫ１〜Ｋｎ、絞り回路Ｖ１〜Ｖｎ及び接続切り換え回路ＳＷが反応回路の一例に相当し、構造情報記憶回路ＳＭ及び構造抽出回路ＳＤが抽出回路の一例に相当し、構造情報記憶回路ＳＭが記憶回路の一例に相当し、構造抽出回路ＳＤが構造抽出回路の一例に相当し、表示装置ＤＤが提示装置の一例に相当する。
【００４５】
次に、上記のように構成されたハードウエアシミュレータの動作について説明する。まず、シミュレーションの対象となる物質、生化学反応及び酵素等に関する必要なデータを用いて、物質カウンタＢ１〜Ｂｍに各物質の数を表すカウンタの初期値が設定されるとともに、酵素カウンタＫ１〜Ｋｎに各酵素の数を表すカウンタの初期値が設定される。次に、乱数発生器Ｒ１〜Ｒｎは上記の乱数を発生させ、絞り回路Ｖ１〜Ｖｎは、酵素カウンタＫ１〜Ｋｎの酵素の数に応じて乱数を補正する。反応実行回路Ｈ１〜Ｈｎは、酵素数により補正された乱数の値に応じて反応が実行されるように、反応前の物質の分子数又は原子数を表す物質カウンタＢ１〜Ｂｍのカウント値を１だけ減少させるとともに、反応後の物質の分子数又は原子数を表す物質カウンタＢ１〜Ｂｍのカウント値を１だけ増加させる。
【００４６】
このようにして、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応速度が反応実行回路Ｈ１〜Ｈｎごとに調整され、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応前後の物質に対応する物質カウンタＢ１〜Ｂｍが対応する反応実行回路Ｈ１〜Ｈｎに接続されるとともに、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応に応じて反応前後の物質に対応する物質カウンタＢ１〜Ｂｍのカウント値が減少又は増加され、複数の生化学反応が並列的にシミュレーションされる。
【００４７】
このように、反応前後の各物質の量をカウント値、すなわち数（整数）として捉え、生化学反応による物質の変化量をシミュレーションしているので、物質カウンタＢ１〜Ｂｍの数を増加するだけでシミュレーションに使用する物質の種類を増加させることができる。また、未知の生化学反応が新たにわかった場合、病体等によりある生化学反応が欠損している場合及び野生種のために生化学反応が通常と異なる場合でも、新たな生化学反応、欠損した生化学反応及び通常と異なる生化学反応に応じて接続切り換え回路ＳＷにより反応実行回路Ｈ１〜Ｈｎと物質カウンタＢ１〜Ｂｍとの接続状態を変更等することにより容易に対処することができる。
【００４８】
ここで、反応実行回路Ｈ１〜Ｈｎは、自身の部分ネットワーク構造情報を順次送信しており、最終的に、構造情報記憶回路ＳＭは、全ての部分ネットワーク構造情報を受信して反応実行回路と物質カウンタとの組み合わせをマトリックス形式で記憶する。構造抽出回路ＳＤは、構造情報記憶回路ＳＭに記憶されている反応実行回路と物質カウンタとの組み合わせから、物質カウンタ（反応前後の物質）をノード、反応実行回路（反応）をリンクとするネットワーク構造を抽出し、抽出したネットワーク構造を表示装置ＤＤに２部グラフ表示させる。
【００４９】
図２は、物質をノード、反応をリンクとした場合の物質間の反応をネットワーク表現した一例を示す図である。なお、図中の丸はノードとなる物質を、矢印はリンクとなる反応を、矢印方向は反応方向をそれぞれ示しており、反応に応じてリンクの始点側の物質カウンタの値が減少し、リンクの終点側の物質カウンタの値が増加する。図２に示す例では、物質Ａから反応Ｒ１により物質Ｂが生成され、物質Ｂから反応Ｒ２により物質Ｃが生成されるとともに、反応Ｒ４により物質Ｄが生成され、物質Ｄは反応Ｒ３により物質Ｃからも生成される反応をネットワーク表現したものである。なお、ネットワーク表現としては、上記の例に特に限定されず、例えば、反応をノード、物質をリンクとして表現することもできる。
【００５０】
図３は、図２に示す反応に対応して反応実行回路間で転送される部分ネットワーク構造情報の一例を示す図である。反応Ｒ１〜Ｒ４が反応実行回路Ｈ１〜Ｈ４に割り当てられ、物質Ａ〜Ｄが物質カウンタＢ１〜Ｂ４に割り当てられているとすると、まず、反応実行回路Ｈ１は、図３の（ａ）に示す部分ネットワーク構造情報を反応実行回路Ｈ２へ送信する。ここで、図３中の“１”は当該位置の物質に割り当てられている物質カウンタと反応に割り当てられている反応回路とが接続されていることを示す情報であり、“０”は当該位置の物質に割り当てられている物質カウンタと反応に割り当てられている反応実行回路とが接続されていないことを示す情報である。
【００５１】
次に、反応実行回路Ｈ２は、受信した反応実行回路Ｈ１の部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加し、図３の（ｂ）に示す部分ネットワーク構造情報を反応実行回路Ｈ３へ送信する。次に、反応実行回路Ｈ３は、受信した部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加し、図３の（ｃ）に示す部分ネットワーク構造情報を反応実行回路Ｈ３へ送信する。最後に、反応実行回路Ｈ４は、受信した部分ネットワーク構造情報に自身の部分ネットワーク構造情報を付加し、図３の（ｄ）に示す部分ネットワーク構造情報を構造情報記憶回路ＳＭへ送信する。なお、上記の部分ネットワーク構造情報の送信方法としては、“１”及び“０”を全て送信してもよいし、マトリックス上の位置を特定する情報とともに“１”のみを送信してもよい。
【００５２】
構造情報記憶回路ＳＭは、図３の（ｄ）に示す部分ネットワーク構造情報を受信して記憶する。構造抽出回路ＳＤは、図３の（ｄ）に示す部分ネットワーク構造情報から“１”が記憶されている反応実行回路と物質カウンタとの組み合わせを抽出することによりネットワーク構造を抽出し、抽出したネットワーク構造を２部グラフ表現を用いて表示装置ＤＤに表示させる。
【００５３】
図４は、表示装置ＤＤに表示される２部グラフの一例を示す図である。上記の動作により、図４に示すように、ノードの集合が２分割され、リンクが２つの部分集合を結ぶ２部グラフが表示され、この場合、反応Ｒ１〜Ｒ４と物質Ａ〜Ｄとがそれぞれ部分集合を形成し、反応Ｒ１〜Ｒ４と物質Ａ〜Ｄとの間がリンクで結ばれた２部グラフが表示装置ＤＤに表示される。この場合、ネットワーク構造を２部グラフ表現されるので、物質カウンタＢ１〜Ｂ４及び反応実行回路Ｈ１〜Ｈ４をノードとし、両者の関係をリンクとして表示することができ、ネットワーク構造をユーザが容易に理解することができる。
【００５４】
また、上記のシミュレーション中に、反応実行回路Ｈ１〜Ｈｎは、減少指令信号及び増加指令信号を出力したことを示すとともに、出力した信号が減少指令信号及び増加指令信号のいずれであるかを特定するための出力特定情報を構造情報記憶回路ＳＭに記憶させる。構造情報記憶回路ＳＭは、受信された出力特定情報を用いて各反応実行回路Ｈ１〜Ｈｎが出力している減少指令信号及び増加指令信号の送信頻度、すなわち反応速度を算出して記憶する。構造抽出回路ＳＤは、この送信頻度を読み出して所定の反応速度以上の反応速度で反応が行われている主要な反応を抽出し、部分ネットワーク構造情報を用いてこの主要な反応のみを表すネットワーク構造を抽出して表示装置ＤＤに２部グラフを表示させる。この場合、出力特定情報から反応方向を特定して有効グラフにより２部グラフを表示してもよい。
【００５５】
さらに、上記のシミュレーション中に、物質カウンタＢ１〜Ｂｍは、現在のカウント値、すなわち各物質の分子数又は原子数を構造情報記憶回路ＳＭに記憶させる。構造抽出回路ＳＤは、各物質の分子数又は原子数を読み出して分子数又は原子数が充分に存在して充分な反応が行われている主要な反応を抽出し、部分ネットワーク構造情報を用いてこの主要な反応のみを表すネットワーク構造を抽出して表示装置ＤＤに２部グラフ表示させる。
【００５６】
また、上記のシミュレーション中又はシミュレーション後に、構造抽出回路ＳＤは、抽出したネットワーク構造のリンク数、平均リンク数、最大リンク数及びリンク数の分布等を算出し、当該ネットワーク構造の特徴を表す特徴情報として表示装置ＤＤに表示させる。
【００５７】
上記のように、本実施の形態では、反応実行回路Ｈ１〜Ｈｎが自身の部分ネットワーク構造情報を順次送信して反応実行回路と物質カウンタとの組み合わせがマトリックス形式で構造情報記憶回路ＳＭに記憶され、構造抽出回路ＳＤが構造情報記憶回路ＳＭに記憶されている反応実行回路と物質カウンタとの組み合わせからネットワーク構造を抽出しているので、シミュレーション動作を行いながら、部分ネットワーク構造情報から各反応実行回路Ｈ１〜Ｈｎに接続される物質カウンタＢ１〜Ｂｍを特定することができ、物質と反応との関係を表すネットワーク構造を簡略な回路構成で抽出することができる。
【００５８】
また、構造抽出回路ＳＤは出力特定情報をも取得してネットワーク構造を抽出することができるので、この出力特定情報から反応速度を特定して所定の反応速度以上の反応速度を有する主要な反応を表すネットワーク構造をも抽出することができる。また、構造抽出回路ＳＤは物質カウンタＢ１〜Ｂｍのカウント値、すなわち各物質の分子数又は原子数をも取得してネットワーク構造を抽出することができるので、各物質の分子数又は原子数から充分な反応が行われている主要な反応を表すネットワーク構造を抽出することができる。さらに、構造抽出回路ＳＤは抽出したネットワーク構造のリンク数、平均リンク数、最大リンク数及びリンク数の分布等を算出することができるので、ネットワーク構造の特徴的な部分を容易に検出することができる。
【００５９】
次に、細胞内の各物質の濃度勾配を考慮して細胞内の生化学反応をシミュレーションする場合について説明する。図５は、細胞内の各物質の濃度勾配を考慮して細胞内の生化学反応をシミュレーションする方法を説明するための模式図である。
【００６０】
図５に示すように、細胞内の生化学反応をシミュレーションする場合、一つの細胞を複数のセルＣＥに空間分割し、セルＣＥごとに物質の量を保持させ、セルラーオートマトンにより各物質の濃度勾配をシミュレーションする。すなわち、対象とするセル内の各物質の濃度（量）と近傍の６個のセル内の物質の濃度（量）とからセル間での各物質の拡散をシミュレーションする。
【００６１】
例えば、隣接する２つのセルＣ１，Ｃ２に、濃度の異なる物質１、物質２及び物質３がそれぞれ含まれている場合、セルＣ１，Ｃ２間では、濃度の高い方から低い方へ各物質が拡散し、このセル間での拡散を以下のようにしてシミュレーションすることができる。
【００６２】
図６は、図５に示す２つのセルにおける物質の拡散をシミュレーションする場合のハードウエアシミュレータの構成を示すブロック図である。図６に示すハードウエアシミュレータは、セルＣ１用のハードウエアシミュレータＣＢ１、セルＣ２用のハードウエアシミュレータＣＢ２、拡散回路ＫＣ、ネットワーク回路ＮＣ、構造情報記憶回路ＳＭ、構造抽出回路ＳＤ及び表示装置ＤＤを備える。
【００６３】
図６に示すハードウエアシミュレータＣＢ１内の物質カウンタＢ１〜Ｂ３の各カウント値は、セルＣ１内の物質１〜物質３の分子数又は原子数を表し、ハードウエアシミュレータＣＢ２内の物質カウンタＢ１’〜Ｂ３’の各カウント値は、セルＣ２内の物質１〜物質３の分子数又は原子数を表し、各物質カウンタＢ１〜Ｂ３，Ｂ１’〜Ｂ３’は、拡散回路ＫＣを介して接続されている。
【００６４】
拡散回路ＫＣは、物質カウンタＢ１〜Ｂ３，Ｂ１’〜Ｂ３’のカウント値、すなわち各物質の分子数又は原子数に応じて各物質が拡散するように、物質カウンタＢ１〜Ｂ３，Ｂ１’〜Ｂ３’のカウント値を制御する。例えば、物質カウンタＢ１のカウント値が物質カウンタＢ１’のカウント値より大きい場合、平衡状態になるまで、所定の拡散速度に従い、物質カウンタＢ１のカウント値を順次減少させるとともに、これに対応させて物質カウンタＢ１’のカウント値を順次増加させる。ネットワーク回路ＮＣは、ハードウエアシミュレータＣＢ１，ＣＢ２に接続され、構造情報記憶回路ＳＭは、ハードウエアシミュレータＣＢ１，ＣＢ２の部分ネットワーク構造情報等を記憶し、構造抽出回路ＳＤは、部分ネットワーク構造情報等を用いてハードウエアシミュレータＣＢ１，ＣＢ２のネットワーク構造を抽出して表示装置ＤＤに表示させる。
【００６５】
なお、図６では、セルＣ１，Ｃ２用のハードウエアシミュレータＣＢ１，ＣＢ２において物質カウンタＢ１〜Ｂ３，Ｂ１’〜Ｂ３’のみを図示しているが、各ハードウエアシミュレータＣＢ１，ＣＢ２も、図１に示すハードウエアシミュレータと同様に構成され、乱数発生器、酵素カウンタ、絞り回路、反応実行回路及び接続切り換え回路（図示省略）を有している。したがって、ハードウエアシミュレータＣＢ１，ＣＢ２も、図１に示すハードウエアシミュレータと同様に動作し、各セルＣ１，Ｃ２ごとに内部の生化学反応がシミュレーションされ、構造抽出回路ＳＤは、反応実行回路から送信された部分ネットワーク構造情報等を用いてネットワーク構造を抽出して表示装置ＤＤに表示させる。
【００６６】
上記のように、細胞を複数のセルに分割し、セルごとに生化学反応による物質の変化量をシミュレーションするとともに、隣接するセル間での各物質の拡散をシミュレーションすることにより、細胞内の各物質の濃度勾配を考慮して細胞内の物質の変化量をシミュレーションすることができるとともに、各セルＣ１，Ｃ２ごとに内部の生化学反応がシミュレーションされ、反応実行回路から送信された部分ネットワーク構造情報等を用いてネットワーク構造を抽出することができ、シミュレーション動作を行いながら、物質と反応との関係を表すネットワーク構造を簡略な回路構成で抽出することができる。
【００６７】
次に、多細胞の生化学反応をシミュレーションする場合について説明する。図７は、多細胞の生化学反応をシミュレーションする方法を説明するための概略図である。図７に示すように、図５と同様に各細胞を複数のセルＣＥ（図中のハッチングのないセル）に分割するとともに、細胞間に存在する細胞壁を複数の細胞壁セルＷＣ（図中のハッチングを施したセル）に分割する。この場合、各細胞内では、図５及び図６を用いて説明した細胞内のシミュレーションと同様に生化学反応がシミュレーションされる。
【００６８】
また、細胞壁を表す細胞壁セルＷＣの部分は、例えば、拡散が起こらない、すなわち細胞間で物質が拡散しないものとしてシミュレーションを行ってもよく、また、細胞壁でもある程度の拡散が行われるとして、細胞内の細胞セルと同様に拡散回路を用いて拡散をシミュレーションしてもよい。
【００６９】
上記のように、各細胞を複数のセルに分割するとともに、細胞壁を複数の細胞壁セルに分割し、セルごとに生化学反応による物質の変化量をシミュレーションするとともに、細胞内で隣接するセル間の各物質の拡散等をシミュレーションすることにより、多細胞についても、その生化学反応を同様にシミュレーションできるとともに、反応実行回路から送信された部分ネットワーク構造情報等を用いてネットワーク構造を抽出することができ、シミュレーション動作を行いながら、物質と反応との関係を表すネットワーク構造を簡略な回路構成で抽出することができる。
【００７０】
なお、本発明が適用可能なハードウエアシミュレータは、上記の例に特に限定されず、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションするハードウエアシミュレータであれば、種々の分野に適用可能である。例えば、脳細胞及び神経回路網等の生物シミュレーション、遺伝子進化及び生物の個体進化シミュレーション、渡り鳥の移動等に関する生態系シミュレーション、移動物に関する交通システムシミュレーション、避難シミュレーション、数値流体シミュレーション、気象シミュレーション、ロジスティクスシミュレーション、電力供給シミュレーション、都市計画等に関する都市シミュレーション、企業間取引及び株式・先物取引等に関する経済システムシミュレーション、経営シミュレーション、電気回路及び集積回路等の電磁シミュレーション、半導体及び材料の電子レベルシミュレーションに適用することができる。
【図面の簡単な説明】
【００７１】
【図１】本発明の一実施の形態によるハードウエアシミュレータの構成を示すブロック図である。
【図２】物質をノード、反応をリンクとした場合の物質間の反応をネットワーク表現した一例を示す図である。
【図３】図２に示す反応に対応して反応実行回路間で転送される部分ネットワーク構造情報の一例を示す図である。
【図４】表示装置に表示される２部グラフの一例を示す図である。
【図５】細胞内の各物質の濃度勾配を考慮して細胞内の生化学反応をシミュレーションする方法を説明するための模式図である。
【図６】図５に示す２つのセルにおける物質の拡散をシミュレーションする場合のハードウエアシミュレータの構成を示すブロック図である。
【図７】多細胞の生化学反応をシミュレーションする方法を説明するための概略図である。
【符号の説明】
【００７２】
Ｒ１〜Ｒｎ  乱数発生器
Ｋ１〜Ｋｎ  酵素カウンタ
Ｖ１〜Ｖｎ  絞り回路
Ｈ１〜Ｈｎ  反応実行回路
Ｂ１〜Ｂｍ  物質カウンタ
ＳＷ  接続切り換え回路
ＮＣ  ネットワーク回路
ＳＭ  構造情報記憶回路
ＳＤ  構造抽出回路
ＤＤ  表示装置
【図１】
0004761286.tif 000002
【図２】
0004761286.tif 000003
【図３】
0004761286.tif 000004
【図４】
0004761286.tif 000005
【図５】
0004761286.tif 000006
【図６】
0004761286.tif 000007
【図７】
0004761286.tif 000008