JP 4774528 B2 2011.9.14(57)【特許請求の範囲】【請求項１】
所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレー
ション対象物の変化量をシミュレーションするハードウエアシミュレータであって、シミュレーション対象物ごとに設けられ、当該シミュレーション対象物に関する値を演
算する複数の演算素子と、前記シミュレーション対象物間の反応に応じて演算素子の値を変化させる反応回路と、
前記シミュレーション対象物間の反応に応じて前記反応回路と前記演算素子との接続を切り換える切り換え回路と、シミュレーションの終了条件を記憶する終了条件記憶回路と、10

前記演算素子の値から決定されるシミュレーション結果が前記終了条件記憶回路に記憶されている終了条件を満たすか否かを判定する判定回路とを備え、
前記終了条件記憶回路は、前記演算素子の時系列値から決定される終了条件を記憶し、前記演算素子ごとに設けられ、当該演算素子の時系列値を記憶時間に対応付けて記憶する時系列値記憶回路をさらに備え、
前記判定回路は、前記演算素子の時系列値から決定されるシミュレーション結果が前記
終了条件記憶回路に記憶されている終了条件を満たすか否かを判定することを特徴とする
ハードウエアシミュレータ。
【請求項２】
前記終了条件記憶回路は、前記演算素子ごとに設けられ、当該演算素子の値から決定さ

20

(2)

JP 4774528 B2 2011.9.14

れるシミュレーション結果に対するシミュレーションの終了条件を記憶する個別終了条件
記憶回路を含み、
前記判定回路は、前記演算素子ごとに設けられ、当該演算素子の値から決定されるシミュレーション結果が当該演算素子に対して設けられている終了条件記憶回路に記憶されている終了条件を満たすか否かを判定する個別判定回路を含むことを特徴とする請求項１記載のハードウエアシミュレータ。
【請求項３】
前記終了条件記憶回路は、前記演算素子の値から決定される分布を終了条件として記憶し、前記演算素子の値から当該値に関する分布を演算する分布演算回路をさらに備え、

10

前記判定回路は、前記分布演算回路により演算された分布が前記終了条件記憶回路に記憶されている終了条件を満たすか否かを判定することを特徴とする請求項１記載のハード
ウエアシミュレータ。
【請求項４】
前記分布演算回路は、
前記演算素子の値から分布を演算するときに使用する演算方式を指定する指定回路と、
前記指定回路により指定された演算方式に従い、前記演算素子の値から当該値に関する分布を計算する分布計算回路とを含むことを特徴とする請求項３記載のハードウエアシミ
ュレータ。
【請求項５】

20

前記複数の演算素子の中から任意の演算素子の値を選択して前記判定回路へ出力する選択回路をさらに備えることを特徴とする請求項１〜４のいずれかに記載のハードウエアシ
ミュレータ。
【請求項６】
前記演算素子の値、前記終了条件記憶回路に記憶されている終了条件及び前記判定回路の判定結果のうち少なくとも一の値を用いて前記終了条件記憶回路に記憶されている終了
条件を更新する更新回路をさらに備えることを特徴とする請求項１〜５のいずれかに記載のハードウエアシミュレータ。
【発明の詳細な説明】【技術分野】

30【０００１】
本発明は、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションするハードウエアシミュレータに関するものである。
【背景技術】【０００２】
従来の化学反応シミュレーション方法としては、例えば、シミュレーションプログラム
を計算機で実行することにより、有限温度及び有限時間を設定し、これら有限温度及び有限時間における分子動力学計算を行い、分子動力学計算により求められた励起状態を含む構造のすべてを用いて物質の全原子に働く力がすべて緩和される安定構造を複数求める処

40

理等を行うものがある（特許文献１参照）。
【０００３】
このように、従来の化学反応シミュレーション方法では、微分方程式に代表されるような数学関数等を用いて汎用の計算機によりソフトウエア処理され、この場合、シミュレー
ションの終了条件を指定する方法としては、シミュレーション対象の現象が生じる実時間を指定する方法と、シミュレーション結果として満たすべき何らかの条件を指定する方法との２種類に大別することができる。
【特許文献１】特開２００２−２６０９７５号公報【発明の開示】【発明が解決しようとする課題】

50

(3)

JP 4774528 B2 2011.9.14【０００４】
しかしながら、シミュレーション対象の現象が生じる実時間を指定したのでは、実時間自体が長い場合にはシミュレーション結果を得るまでに長時間を要する。一方、シミュレ
ーション結果として満たすべき何らかの条件を指定する場合は、シミュレーションの終了
条件を満たしているか否かを判定する終了判定処理に長時間を要し、特に、シミュレーシ
ョン終了条件が複数の条件の組み合わせである場合には、終了判定処理に要する計算時間が指数的に増加する。このことは、設定される終了条件の複雑さにはシミュレーションを実行する計算機の処理能力から課される上限が存在することを意味し、シミュレーション
対象及び現象が複雑であればあるほど終了条件も複雑になる傾向があり、現実的にはシミュレーション可能な現象に上限が存在することになる。

10【０００５】
また、計算機の処理速度を向上させるためにクラスタシステム等を導入して並列度を上げた場合でも、シミュレーション処理と終了判定処理とは同じ計算機で実行されるため、上記の問題に対する根本的な解決とはならない。さらに、シミュレーション終了条件が複数の条件の組み合わせである場合には、並列処理を行っても終了判定結果を収集して処理する必要があり、通信のオーバーヘッドが生じる。
【０００６】
このように、従来のソフトウエアによるシミュレーション方法では、終了判定処理に膨大な時間を要する場合があり、終了条件の複雑さによっては、終了判定処理に要する時間
がシミュレーションに要する全時間の大半を占める場合もあり得る。また、シミュレーシ

20

ョンの対象となる現象の複雑さとシミュレーションの終了条件とが比例する傾向にあるため、終了判定処理に要する時間からシミュレーション可能な現象の規模が制限される。
【０００７】
本発明の目的は、シミュレーション可能な現象の規模を過度に制限することなく、シミュレーションの終了判定を高速に実行することができるハードウエアシミュレータを提供することである。
【課題を解決するための手段】【０００８】
本発明に係るハードウエアシミュレータは、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーション対象物の変化量をシミュレーションす30

るハードウエアシミュレータであって、シミュレーション対象物ごとに設けられ、当該シミュレーション対象物に関する値を演算する複数の演算素子と、前記シミュレーション対
象物間の反応に応じて演算素子の値を変化させる反応回路と、前記シミュレーション対象
物間の反応に応じて前記反応回路と前記演算素子との接続を切り換える切り換え回路と、シミュレーションの終了条件を記憶する終了条件記憶回路と、前記演算素子の値から決定されるシミュレーション結果が前記終了条件記憶回路に記憶されている終了条件を満たすか否かを判定する判定回路とを備え、前記終了条件記憶回路は、前記演算素子の時系列値から決定される終了条件を記憶し、前記演算素子ごとに設けられ、当該演算素子の時系列
値を記憶時間に対応付けて記憶する時系列値記憶回路をさらに備え、前記判定回路は、前記演算素子の時系列値から決定されるシミュレーション結果が前記終了条件記憶回路に記40

憶されている終了条件を満たすか否かを判定する。
【０００９】
本発明に係るハードウエアシミュレータでは、シミュレーション対象物ごとに当該シミュレーション対象物に関する値を演算する演算素子が設けられ、反応回路によりシミュレーション対象物間の反応に応じて演算素子の値が変化されることにより、シミュレーショ
ン対象物間の反応によるシミュレーション対象物の変化量がシミュレーションされ、演算素子の値から決定されるシミュレーション結果が終了条件記憶回路に記憶されているシミュレーションの終了条件を満たすか否かが判定回路により判定されるので、シミュレーシ
ョン処理のみならず、終了判定処理をもハードウエアで行うことができ、シミュレーショ
ン可能な現象の規模を過度に制限することなく、シミュレーションの終了判定を高速に実

50

(4)

JP 4774528 B2 2011.9.14

行することができる。
【００１１】
この場合、演算素子の時系列値から決定されるシミュレーション結果が終了条件を満たすか否かを判定することができるので、演算素子の値の微分値、例えば、反応速度及び反応加速度等を終了条件として用いることができる。
【００１２】
前記終了条件記憶回路は、前記演算素子ごとに設けられ、当該演算素子の値から決定されるシミュレーション結果に対するシミュレーションの終了条件を記憶する個別終了条件
記憶回路を含み、前記判定回路は、前記演算素子ごとに設けられ、当該演算素子の値から決定されるシミュレーション結果が当該演算素子に対して設けられている終了条件記憶回

10路に記憶されている終了条件を満たすか否かを判定する個別判定回路を含むことが好ましい。
【００１３】
この場合、演算素子の値から決定されるシミュレーション結果ごとに終了条件を満たすか否かを判定することができるので、終了判定を並列的に行うことができ、より高速にシ
ミュレーションの終了判定を実行することができる。
【００１４】
前記終了条件記憶回路は、前記演算素子の値から決定される分布を終了条件として記憶し、前記演算素子の値から当該値に関する分布を演算する分布演算回路をさらに備え、前記判定回路は、前記分布演算回路により演算された分布が前記終了条件記憶回路に記憶さ20れている終了条件を満たすか否かを判定することが好ましい。
【００１５】
この場合、演算素子の値から決定された分布が終了条件を満たすか否かを判定することができるので、演算素子の個々の値だけでなく、複数の値から決定される分布を終了条件として用いることができる。
【００１６】
前記分布演算回路は、前記演算素子の値から分布を演算するときに使用する演算方式を指定する指定回路と、前記指定回路により指定された演算方式に従い、前記演算素子の値から当該値に関する分布を計算する分布計算回路とを含むことが好ましい。
【００１７】

30

この場合、分布計算回路で使用する演算方式を任意に選択することができるので、種々の分布を終了条件として用いることができる。
【００１８】
前記複数の演算素子の中から任意の演算素子の値を選択して前記判定回路へ出力する選択回路をさらに備えることが好ましい。
【００１９】
この場合、複数の演算素子のうち所定の演算素子の値から決定されるシミュレーション
結果が終了条件を満たすか否かを判定することができるので、使用する演算素子の値を動的に切り換えることができるとともに、必要な値のみを用いてシミュレーションの終了判定をより高速に実行することができる。

40【００２０】
前記演算素子の値、前記終了条件記憶回路に記憶されている終了条件及び前記判定回路の判定結果のうち少なくとも一の値を用いて前記終了条件記憶回路に記憶されている終了
条件を更新する更新回路をさらに備えることが好ましい。
【００２１】
この場合、演算素子の値、終了条件記憶回路に記憶されている終了条件及び判定回路の判定結果の中から任意に選択した値を用いて終了条件を更新することができるので、動的に終了条件を種々の値に変更することができる。
【発明の効果】【００２２】50

(5)JP 4774528 B2 2011.9.14

本発明によれば、演算素子の値から決定されるシミュレーション結果が終了条件記憶回路に記憶されているシミュレーションの終了条件を満たすか否かが判定回路により判定されるので、シミュレーション処理のみならず、終了判定処理をもハードウエアで行うことができ、シミュレーション可能な現象の規模を過度に制限することなく、シミュレーショ
ンの終了判定を高速に実行することができる。
【発明を実施するための最良の形態】【００２３】
以下、本発明によるハードウエアシミュレータの一例として、生化学反応をシミュレー
ションし、シグナル伝達ネットワーク、遺伝子ネットワーク等の解明に好適に用いられる
化学反応シミュレーション装置について図面を参照しながら説明する。

10【００２４】
図１は、本発明の第１の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。図１に示すハードウエアシミュレータは、複数の乱数発生器Ｒ１〜Ｒｎ（ｎは任意の正数）、複数の酵素カウンタＫ１〜Ｋｎ、複数の絞り回路Ｖ１〜Ｖｎ、複数の反応実行回路Ｈ１〜Ｈｎ、複数の物質カウンタＢ１〜Ｂｍ（ｍは任意の正数）、接続切り換え回路ＳＷ、複数の終了条件判定部Ｃ１〜Ｃｍ及び終了条件検出ネットワーク回路ＳＮを備える。
【００２５】
酵素カウンタＫ１〜Ｋｎ、絞り回路Ｖ１〜Ｖｎ及び反応実行回路Ｈ１〜Ｈｎは、シミュレーションに使用される生化学反応ごとに設けられ、物質カウンタＢ１〜Ｂｍは、シミュ20

レーションに使用される物質ごとに設けられ、終了条件判定部Ｃ１〜Ｃｍは、物質カウン
タＢ１〜Ｂｍごとに設けられる。
【００２６】
乱数発生器Ｒ１は、絞り回路Ｖ１の入力側に接続され、反応実行回路Ｈ１は、絞り回路
Ｖ１の出力側に接続され、酵素カウンタＫ１は、絞り回路Ｖ１に接続される。他の乱数発
生器、酵素カウンタ、絞り回路及び反応実行回路も上記と同様に接続される。
【００２７】
接続切り換え回路ＳＷは、例えば、空間スイッチ等から構成され、複数の増加指令用の入力配線Ｉ１〜Ｉｎ及び減少指令用の入力配線Ｄ１〜Ｄｎと、複数の増加指令用の出力配線ｉ１〜ｉｍ及び減少指令用の出力配線ｄ１〜ｄｍを含み、各配線がマトリックス状に配30置されている。
【００２８】
反応実行回路Ｈ１は、接続切り換え回路ＳＷの増加指令用の入力配線Ｉ１及び減少指令用の入力配線Ｄ１に接続され、他の反応実行回路も同様に接続される。物質カウンタＢ１
は、接続切り換え回路ＳＷの増加指令用の出力配線ｉ１及び減少指令用の出力配線ｄ１に接続され、他の物質カウンタも同様に接続される。また、接続切り換え回路ＳＷにおいて
図中に黒丸で示す各配線の交点ＮＤには、時分割ゲート及び時分割ゲートのオン／オフを制御する保持メモリ等から構成されるスイッチ（図示省略）が配置されている。
【００２９】
接続切り換え回路ＳＷは、各スイッチをオン／オフすることにより、増加指令用の入力

40

配線Ｉ１〜Ｉｎと複数の増加指令用の出力配線ｉ１〜ｉｍとの接続状態及び減少指令用の入力配線Ｄ１〜Ｄｎと減少指令用の出力配線ｄ１〜ｄｍとの接続状態を制御し、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応前の物質を表す物質カウンタ及び反応後の物質を表す物質カウンタと対応する反応実行回路とを接続する。なお、接続切り換え回路ＳＷは、上記の空間スイッチに特に限定されず、反応実行回路と物質カウンタとの接続状態を切り換えることができるものであれば、他の接続切り換え回路を用いてもよい。
【００３０】
物質カウンタＢ１〜Ｂｍは、例えば、バイナリカウンタ等から構成され、反応前の各物
質の数、すなわち分子数又は原子数を初期カウント値として設定され、反応実行回路Ｈ１〜Ｈｎの減少指令及び増加指令に応じて、そのカウント値を減少及び増加させる。なお、

50

(6)

JP 4774528 B2 2011.9.14

物質カウンタは、上記のバイナリカウンタに特に限定されず、シミュレーション対象物ごとに設けられ、当該シミュレーション対象物に関する値を演算する演算素子であれば、他のカウンタ等を用いてもよい。例えば、代謝経路におけるクエン酸回路のような生化学反応を状態遷移と捉え、状態遷移機械（有限状態オートマトン）を組み合わせて使用する場
合、物質カウンタとしてジョンソンカウンタを用いることにより、コンパクトな回路により高速にシミュレーションすることができる。
【００３１】
乱数発生器Ｒ１は、生化学反応の反応速度を制御するための所定の乱数を、絞り回路Ｖ
１を介して反応実行回路Ｈ１に出力する。乱数発生器としては、擬似乱数を発生させる擬
似乱数発生回路、カオス的な乱数を発生させるカオス発生回路、熱雑音に基づく乱数を発10生させる熱雑音発生回路等を用いることができる。
【００３２】
例えば、擬似乱数発生回路としては、線形フィードバックシフトレジスタを用いることによって、線形フィードバックシフトレジスタがＬ個のレジスタから構成されると、２L−１の長周期を有するが、ほぼランダムな乱数を発生させることができる。カオス発生回
路としては、コンデンサと可変抵抗回路とで構成される閉ループにより不規則な信号を発生させる回路等を用いることによって、カオス的な振る舞いを行う不規則な乱数を発生させることができる。熱雑音発生回路としては、短周期のパルスを長周期のパルスによりラ
ッチし、ラッチされた短周期のパルスのレベルを乱数として出力する回路等を用いることによって、ホワイトノイズによる周期性のない乱数を発生させることができる。

20【００３３】
酵素カウンタＫ１は、反応実行回路Ｈ１が表す生化学反応に使用される酵素物質の数、すなわち酵素物質の分子数をそのカウント値として設定され、設定されたカウント値に応じて絞り回路Ｖ１の絞り量が調整される。なお、一般の化学反応の場合は、酵素カウンタ
が触媒カウンタに変更され、生細胞内で作られる蛋白性の生体触媒である酵素の代わりに、触媒物質の数がそのカウント値として設定される。また、触媒（酵素）を使用しない化
学反応の場合、触媒（酵素）カウンタ及び絞り回路は不要となる。
【００３４】
具体的には、乱数発生器Ｒ１が乱数として

１

又はし、酵素カウンタＫ１がそのカウント値に応じて
１

又は

０

０

０

のデータをランダムに発生

に対する

１

の頻度を調整して30のデータを出力する。このとき、絞り回路Ｖ１は両データの論理積を取り、その結果を反応実行回路Ｈ１へ出力する。したがって、酵素カウンタＫ１のカウント
値に応じて反応実行回路Ｈ１へ入力される

１の頻度が調整される。

【００３５】
反応実行回路Ｈ１は、データとして１が入力された場合、反応を実行させるため、増加指令用の入力配線Ｉ１にカウント値を１だけ増加させるための増加指令を出力するとともに、減少指令用の入力配線Ｄ１にカウント値を１だけ減少させるための減少指令を出力する。一方、反応実行回路Ｈ１は、データとして０が入力された場合、反応を行わないようにするため（不実行の状態）、増加指令及び減少指令を出力しない。
【００３６】

40

このとき、接続切り換え回路ＳＷは、減少指令用の入力配線Ｄ１と、反応実行回路Ｈ１が表す生化学反応における反応前の物質の数、すなわち分子数又は原子数を表す物質カウンタに接続されている減少指令用の出力配線とを接続している。したがって、反応実行回
路Ｈ１から出力される減少指令が反応前の物質に対して設けられた物質カウンタへ入力され、当該物質カウンタが自身のカウント値を１だけ減少させる。また、接続切り換え回路
ＳＷは、増加指令用の入力配線Ｉ１と、反応実行回路Ｈ１が表す生化学反応における反応
後の物質の数、すなわち分子数又は原子数を表す物質カウンタに接続されている増加指令用の出力配線とを接続している。したがって、反応実行回路Ｈ１から出力される増加指令が反応後の物質に対して設けられた物質カウンタへ入力され、当該物質カウンタが自身のカウント値を１だけ増加させる。

50

(7)

JP 4774528 B2 2011.9.14【００３７】
他の乱数発生器、酵素カウンタ、絞り回路及び反応実行回路も、上記と同様に構成され、生化学反応に応じて上記と同様に動作する。なお、酵素カウンタに割り当てられる酵素の数が生化学反応等により増減する場合は、酵素カウンタも物質カウンタと同様に構成されて接続切り換え回路に接続され、対応する反応実行回路によりそのカウント値が増減される。
【００３８】
終了条件判定部Ｃ１は、所定の論理回路及びメモリ等から構成され、シミュレーション
動作を終了させるための終了条件を予め記憶し、接続されている物質カウンタＢ１のカウント値から決定されるシミュレーション結果が記憶している終了条件を満たすか否かを判10定し、比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。他の終了条件判定部も、上記と同様に構成され、上記と生化学反応に応じて同様に動作する。
【００３９】
終了条件検出ネットワーク回路ＳＮは、所定の論理回路等から構成され、終了条件判定
部Ｃ１〜Ｃｍの比較結果を集計して最終的に終了条件を満たしているか否かの判断を行い、最終的に終了条件を満たしていると判断した場合、最終比較結果として反応実行回路Ｈ
１〜Ｈｎへ終了信号を出力し、反応実行回路Ｈ１〜Ｈｎの動作を停止させてシミュレーシ
ョンを終了させる。終了条件検出ネットワーク回路ＳＮとして、例えば、平均経路長が短いというランダムネットワークの特徴とクラスター係数が大きいというレギュラーネット
ワークの特徴との双方を合わせ持つスモールワールドネットワークを用いることができる

20

が、この例に特に限定されず、他のネットワークを用いてもよい。
【００４０】
図２は、図１に示す終了条件判定部Ｃ１の一例の構成を示すブロック図である。図２に示す終了条件判定部Ｃ１は、結果記憶部Ｃ１１、終了指定値記憶部Ｃ１２及び比較器Ｃ１３を備える。結果記憶部Ｃ１１は、演算結果として物質カウンタＢ１から出力されるカウ
ント値を記憶する。終了指定値記憶部Ｃ１２は、シミュレーションの終了条件となる終了
指定値を記憶する。比較器Ｃ１３は、結果記憶部Ｃ１１に記憶されているカウント値と終了指定値記憶部Ｃ１２に記憶されている終了指定値とが一致するか否かを判定し、比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。なお、比較器Ｃ１３が物質カウンタ
Ｂ１から出力されるカウント値を終了指定値記憶部Ｃ１２に記憶されている終了指定値と30直接比較できる場合は、結果記憶部Ｃ１１を省略してもよい。この点に関して以下の他の例も同様である。
【００４１】
本実施の形態において、物質カウンタＢ１〜Ｂｍが演算素子の一例に相当し、反応実行
回路Ｈ１〜Ｈｎ、乱数発生器Ｒ１〜Ｒｎ、酵素カウンタＫ１〜Ｋｎ、絞り回路Ｖ１〜Ｖｎ
及び接続切り換え回路ＳＷが反応回路の一例に相当し、終了指定値記憶部Ｃ１２が終了条
件記憶回路及び個別終了条件記憶回路の一例に相当し、比較器Ｃ１３が判定回路及び個別判定回路の一例に相当する。
【００４２】
次に、上記のように構成されたハードウエアシミュレータの動作について説明する。ま40ず、シミュレーションの対象となる物質、生化学反応及び酵素等に関する必要なデータを用いて、物質カウンタＢ１〜Ｂｍに各物質の数を表すカウンタの初期値が設定されるとともに、酵素カウンタＫ１〜Ｋｎに各酵素の数を表すカウンタの初期値が設定される。次に、乱数発生器Ｒ１〜Ｒｎは上記の乱数を発生させ、絞り回路Ｖ１〜Ｖｎは、酵素カウンタ
Ｋ１〜Ｋｎの酵素の数に応じて乱数を補正する。反応実行回路Ｈ１〜Ｈｎは、酵素数により補正された乱数の値に応じて反応が実行されるように、反応前の物質の分子数又は原子数を表す物質カウンタＢ１〜Ｂｍのカウント値を１だけ減少させるとともに、反応後の物
質の分子数又は原子数を表す物質カウンタＢ１〜Ｂｍのカウント値を１だけ増加させる。
【００４３】
このようにして、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応速度が反応実行回

50

(8)

JP 4774528 B2 2011.9.14

路Ｈ１〜Ｈｎごとに調整され、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応の反応前後の物質に対応する物質カウンタＢ１〜Ｂｍが対応する反応実行回路Ｈ１〜Ｈｎに接続されるとともに、各反応実行回路Ｈ１〜Ｈｎが表す生化学反応に応じて反応前後の物質に対応す
る物質カウンタＢ１〜Ｂｍのカウント値が減少又は増加され、複数の生化学反応が並列的にシミュレーションされる。
【００４４】
このように、反応前後の各物質の量をカウント値、すなわち数（整数）として捉え、生化学反応による物質の変化量をシミュレーションしているので、物質カウンタＢ１〜Ｂｍの数を増加するだけでシミュレーションに使用する物質の種類を増加させることができる。また、未知の生化学反応が新たにわかった場合、病体等によりある生化学反応が欠損し10ている場合及び野生種のために生化学反応が通常と異なる場合でも、新たな生化学反応、欠損した生化学反応及び通常と異なる生化学反応に応じて接続切り換え回路ＳＷにより反応実行回路Ｈ１〜Ｈｎと物質カウンタＢ１〜Ｂｍとの接続状態を変更等することにより容易に対処することができる。
【００４５】
また、上記のシミュレーション動作時に、物質カウンタＢ１〜Ｂｍの値と各終了指定値
記憶部Ｃ１２に記憶されている終了指定値とが一致するか否かが各比較器Ｃ１３により判定されるので、シミュレーション処理のみならず、終了判定処理をもハードウエア（専用の電気回路）で行うことができ、シミュレーション可能な現象の規模を過度に制限することなく、シミュレーションの終了判定を高速に且つ並列に実行することができる。

20【００４６】
なお、本実施の形態では、すべての物質カウンタＢ１〜Ｂｍに対して終了判定を行っているが、この例に特に限定されず、物質カウンタＢ１〜Ｂｍの一部の物質カウンタのみに対して終了条件判定部を設けたり、後述する第３の実施の形態と同様に物質カウンタＢ１〜Ｂｍと終了条件判定部との間等に入力選択回路を設けることにより、複数の物質カウン
タＢ１〜Ｂｍのうち一部の物質カウンタＢ１〜Ｂｍの値から決定されるシミュレーション
結果が終了条件を満たすか否かを判定するようにしてもよい。この場合、必要な値のみを用いてシミュレーションの終了判定をより高速に実行することができる。
【００４７】
ここで、終了条件としては、シミュレーションデータの絶対値（直接比較可能な値）、

30

絶対値又は数学関数によって指定可能なシミュレーションデータの分布、シミュレーショ
ン結果の時系列データ（指定時の値や指定時間後の値）又は当該データを用いた演算結果等を用いることができる。
【００４８】
例えば、絶対値を用いた終了条件の例としては、物質Ａと物質Ｂとが反応Ｃを行う場合に、物質Ａの量（カウント値）が１０００〜２０００の範囲内であること、物質Ａの量と物質Ｂの量との合計が３０００以上であること、物質Ａの量と物質Ｂの量との差（Ａ−Ｂ
及びＢ−Ａの双方を含む）が１０００以上であること等が該当する。
【００４９】
上記のような種々の終了条件を判定する場合、終了条件判定部Ｃ１として以下に説明す

40

る他の終了条件判定部を用いることができる。図３は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ａの構成を示すブロック図である。図３に示す終了条件判定部Ｃ１ａと図２に示す終了条件判定部Ｃ１とで異なる点は、結果記憶部Ｃ１１と比較器Ｃ１３との間に演算回路Ｃ１４が追加された点であり、その他の点は図２に示す
終了条件判定部Ｃ１と同様であるので詳細な説明は省略する。
【００５０】
演算回路Ｃ１４は、結果記憶部Ｃ１１に記憶されている物質カウンタＢ１のカウント値
に対して所定の演算を行い、カウント値から演算された演算値を比較器Ｃ１３へ出力する。比較器Ｃ１３は、演算回路Ｃ１４から出力される演算値と終了指定値記憶部Ｃ１２に記憶されている終了条件とが一致するか否かを判定し、比較結果を終了条件検出ネットワー

50

(9)

JP 4774528 B2 2011.9.14

ク回路ＳＮへ出力する。この場合、カウント値から演算される種々の演算値を終了条件として用いることができる。
【００５１】
図４は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｂの構成を示すブロック図である。図４に示す終了条件判定部Ｃ１ｂと図２に示す終了条件判定部Ｃ１とで異なる点は、結果記憶部Ｃ１１のカウント値、終了指定値記憶部Ｃ１２の終了条件及び比較器Ｃ１３の比較結果を用いて終了条件を演算する演算回路Ｃ１４ａが付加された点であり、その他の点は図２に示す終了条件判定部Ｃ１と同様であるので詳細な説
明は省略する。
【００５２】

10

演算回路Ｃ１４ａは、結果記憶部Ｃ１１に記憶されている物質カウンタＢ１のカウント
値、終了指定値記憶部Ｃ１２の終了指定値及び比較器Ｃ１３の比較結果値の少なくとも一つを用いて、入れ替え又は加算、減算等の種々の演算を行い、演算値を新たな終了条件として終了指定値記憶部Ｃ１２に記憶させる。比較器Ｃ１３は、結果記憶部Ｃ１１から出力される物質カウンタＢ１のカウント値と終了指定値記憶部Ｃ１２に記憶されている現在の終了条件とが一致するか否かを判定し、比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。本例では、演算回路Ｃ１４ａが更新回路の一例に相当する。
【００５３】
この場合、結果記憶部Ｃ１１に記憶されている物質カウンタＢ１のカウント値、終了指
定値記憶部Ｃ１２の終了指定値及び比較器Ｃ１３の比較結果値の中から任意に選択した値

20を用いて終了条件を更新することができるので、動的に終了条件を種々の値に変更することができる。
【００５４】
図５は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｃの構成を示すブロック図である。図５に示す終了条件判定部Ｃ１ｃと図３に示す終了条件判
定部Ｃ１ａとで異なる点は、結果記憶部Ｃ１１が複数の時系列結果記憶部Ｃ１１１〜Ｃ１
１ｋ（ｋは任意の正数）に変更され、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋの出力に対して所定の演算を行う演算回路Ｃ１４ｂが付加された点であり、その他の点は図３に示す終了条件判定部Ｃ１ａと同様であるので詳細な説明は省略する。
【００５５】

30

複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋは、物質カウンタＢ１のカウント値の時系
列データとして記録時間に対応付けて当該記録時間のカウント値をそれぞれ記憶する。演
算回路Ｃ１４ｂは、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋに記憶されている物質カ
ウンタＢ１の時系列データに対して所定の演算を行い、時系列データから演算された演算値を比較器Ｃ１３へ出力する。比較器Ｃ１３は、演算回路Ｃ１４ｂから出力される演算値と終了指定値記憶部Ｃ１２に記憶されている終了指定値とが一致するか否かを判定し、比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。本例では、時系列結果記憶部Ｃ
１１１〜Ｃ１１ｋが時系列値記憶回路の一例に相当する。
【００５６】
例えば、演算回路Ｃ１４ｂは、差分Ｑ（ｔ）−Ｑ（ｔ−１）（ここで、Ｑ（ｔ）は時間40ｔにおける物質の量、Ｑ（ｔ−１）は時間ｔより１つ前の時間ｔ−１における物質の量）により算出される反応速度、差分の差分Ｐ（ｔ）−Ｐ（ｔ−１）（ここで、Ｐ（ｔ）＝Ｑ（ｔ）−Ｑ（ｔ−１）、Ｐ（ｔ−１）＝Ｑ（ｔ−１）−Ｑ（ｔ−２））により算出される反応加速度等を演算する。この場合、数学関数を用いた終了条件として、反応速度が５００〜７００であること、反応加速度が１００以上であること等を用いることができる。このように、本例では、物質カウンタＢ１〜Ｂｍの時系列データから決定されるシミュレー
ション結果が終了条件を満たすか否かを判定することができるので、反応速度及び反応加速度等の微分値を終了条件として用いることができる。
【００５７】
図６は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｄの

50

(10)

JP 4774528 B2 2011.9.14

構成を示すブロック図である。図６に示す終了条件判定部Ｃ１ｄと図５に示す終了条件判
定部Ｃ１ｃとで異なる点は、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋの出力から演算
回路Ｃ１４ｃへの入力を選択する入力選択回路Ｃ１５が付加された点であり、その他の点は図５に示す終了条件判定部Ｃ１ｃと同様であるので詳細な説明は省略する。
【００５８】
入力選択回路Ｃ１５は、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋの時系列データの中から外部からの選択信号等に応じて所定の時系列データを選択して演算回路Ｃ１４ｃへ出力する。演算回路Ｃ１４ｃは、入力される時系列データに対して所定の演算を行い、演算値を比較器Ｃ１３へ出力する。比較器Ｃ１３は、演算回路Ｃ１４ｃから出力される演算
値と終了指定値記憶部Ｃ１２に記憶されている終了指定値とが一致するか否かを判定し、10

比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。本例では、入力選択回路Ｃ１
５が選択回路の一例に相当する。
【００５９】
この場合、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋのうち所定の時系列結果記憶部の時系列データから演算されるシミュレーション結果が終了条件を満たすか否かを判定することができるので、使用する時系列データを動的に切り換えることができるとともに、必要な時系列データのみを用いてシミュレーションの終了判定をより高速に実行することができる。
【００６０】
図７は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｅの20構成を示すブロック図である。図７に示す終了条件判定部Ｃ１ｅと図５に示す終了条件判
定部Ｃ１ｃとで異なる点は、演算回路Ｃ１４ｂが複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋの出力の分布を計算する分布計算回路Ｃ１６に変更されるとともに、終了指定値記憶部Ｃ１２が終了指定分布記憶部Ｃ１７に変更された点であり、その他の点は図５に示す終了条件判定部Ｃ１ｃと同様であるので詳細な説明は省略する。
【００６１】
分布計算回路Ｃ１６は、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋに記憶されている物質カウンタＢ１の時系列データの分布を演算し、演算した分布を比較器Ｃ１３へ出力する。終了指定分布記憶部Ｃ１７は、シミュレーションの終了条件となる終了指定分布を記憶する。比較器Ｃ１３は、分布計算回路Ｃ１６から出力される分布と終了指定分布記憶部

30

Ｃ１７に記憶されている終了指定分布とが一致するか否かを判定し、比較結果を終了条件
検出ネットワーク回路ＳＮへ出力する。本例では、分布計算回路Ｃ１６が分布演算回路の一例に相当し、終了指定分布記憶部Ｃ１７が終了条件記憶回路及び個別終了条件記憶回路の一例に相当する。
【００６２】
この場合、時系列データから演算された分布が終了条件を満たすか否かを判定することができるので、時系列データの個々の演算値だけでなく、複数の時系列データから決定される分布を終了条件として用いることができる。
【００６３】
図８は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｆの40構成を示すブロック図である。図８に示す終了条件判定部Ｃ１ｆと図６に示す終了条件判
定部Ｃ１ｄとで異なる点は、演算回路Ｃ１４ｃが分布計算回路Ｃ１６に変更された点であり、その他の点は図６に示す終了条件判定部Ｃ１ｄと同様であるので詳細な説明は省略する。
【００６４】
分布計算回路Ｃ１６は、入力選択回路Ｃ１５により選択された時系列データ分布を演算し、演算した分布を比較器Ｃ１３へ出力する。比較器Ｃ１３は、分布計算回路Ｃ１６から出力される分布と終了指定分布記憶部Ｃ１７に記憶されている終了指定分布とが一致するか否かを判定し、比較結果を終了条件検出ネットワーク回路ＳＮへ出力する。
【００６５】50

(11)JP 4774528 B2 2011.9.14

この場合、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋのうち所定の時系列結果記憶部の時系列データから演算される分布が終了条件を満たすか否かを判定することができるので、所定の時系列データから演算される分布を終了条件として用いることができ、また、使用する時系列データを動的に切り換えることができるとともに、必要な時系列データのみを用いてシミュレーションの終了判定をより高速に実行することができる。
【００６６】
図９は、図１に示す終了条件判定部Ｃ１として使用可能な他の終了条件判定部Ｃ１ｇの構成を示すブロック図である。図９に示す終了条件判定部Ｃ１ｇと図７に示す終了条件判
定部Ｃ１ｅとで異なる点は、演算回路Ｃ１４ｄが付加され、分布計算回路Ｃ１６が演算回
路Ｃ１４ｄの演算値の分布を求める点であり、その他の点は図７に示す終了条件判定部Ｃ

10

１ｅと同様であるので詳細な説明は省略する。
【００６７】
演算回路Ｃ１４ｄは、複数の時系列結果記憶部Ｃ１１１〜Ｃ１１ｋに記憶されている物
質カウンタＢ１の時系列データに対して所定の演算を行い、時系列データから演算された演算値を分布計算回路Ｃ１６へ出力する。分布計算回路Ｃ１６は、演算回路Ｃ１４ｄから出力される演算値の分布を計算し、計算した分布を比較器Ｃ１３へ出力する。比較器Ｃ１３は、分布計算回路Ｃ１６から出力される分布と終了指定分布記憶部Ｃ１７に記憶されている終了指定分布とが一致するか否かを判定し、比較結果を終了条件検出ネットワーク回
路ＳＮへ出力する。
20【００６８】
この場合、時系列データから演算された演算値の分布が終了条件を満たすか否かを判定することができるので、時系列データの個々の演算値だけでなく、複数の時系列データに対して種々の演算を行った演算値の分布を終了条件として用いることができる。
【００６９】
図１０は、図１に示すハードウエアシミュレータによるシミュレーションの例を説明するための模式図である。図１０に示す例は、ｇｌｕｃｏｓｅ（グルコース）を分解する代謝過程であるＧｌｙｃｏｌｙｓｉｓ（解糖）を示しており、ｈｅｘｏｋｉｎａｓｅ（ヘキソキナーゼ）が酵素となり、ｇｌｕｃｏｓｅ及びＡＴＰ（アデノシン三リン酸）からｇｌ
ｕｃｏｓｅ６Ｐ（グルコース−６−リン酸）、ＡＤＰ（アデノシン二リン酸）及びＨ+ が30生成される。
【００７０】
この例では、まず、乱数発生器Ｒから所定の乱数が絞り回路Ｖへ入力される。このとき、酵素カウンタＫには、ｈｅｘｏｋｉｎａｓｅの分子数がそのカウント値として設定され、ｈｅｘｏｋｉｎａｓｅの分子数に応じて絞り回路Ｖの出力が絞られ、乱数発生器Ｒの乱数及びｈｅｘｏｋｉｎａｓｅの分子数に応じて反応実行回路ＨによるＧｌｙｃｏｌｙｓｉ
ｓの実行及び不実行が制御される。
【００７１】
反応実行回路Ｈは、反応前の物質であるｇｌｕｃｏｓｅ及びＡＴＰの分子数を表す物質
カウンタＢａ，Ｂｂと、反応後の物質であるｇｌｕｃｏｓｅ６Ｐ、ＡＤＰ及びＨ+ の分子
数又は原子数を表す物質カウンタＢｃ，Ｂｄ，Ｂｅとに接続切り換え回路（図示省略）に40より接続されている。
【００７２】
反応実行回路Ｈは、絞り回路Ｖを介して出力されるデータが１、すなわち反応を実行する場合、物質カウンタＢａ，Ｂｂにそのカウント値を１だけ減少するように指示するとともに、物質カウンタＢｃ，Ｂｄ，Ｂｅにそのカウント値を１だけ増加するように指示
し、物質カウンタＢａ，Ｂｂは、１だけカウント値を減少させ、物質カウンタＢｃ，Ｂｄ，Ｂｅは、１だけカウント値を増加させる。
【００７３】
このようにして、図１に示すハードウエアシミュレータを用い、ｈｅｘｏｋｉｎａｓｅを酵素としてｇｌｕｃｏｓｅ及びＡＴＰからｇｌｕｃｏｓｅ６Ｐ、ＡＤＰ及びＨ+ を生成

50

(12)

JP 4774528 B2 2011.9.14

するＧｌｙｃｏｌｙｓｉｓによる各物質の変化量をシミュレーションすることができる。
【００７４】
その後、物質カウンタＢａ〜Ｂｅのカウンタ値と記憶されている終了値Ａ〜Ｅとが一致するか否かが終了条件判定部Ｃａ〜Ｃｅによりそれぞれ判定され、最終的に、終了条件検出ネットワーク回路Ｓにより終了条件判定部Ｃａ〜Ｃｅの比較結果を集計して最終終了条
件を満たしているか否かの判断が行われ、最終終了条件を満たしていると判断された場合、反応実行回路Ｈの動作が停止され、シミュレーションが終了される。
【００７５】
次に、細胞内の各物質の濃度勾配を考慮して細胞内の生化学反応をシミュレーションする場合について説明する。図１１は、細胞内の各物質の濃度勾配を考慮して細胞内の生化

10

学反応をシミュレーションする方法を説明するための模式図である。
【００７６】
図１１に示すように、細胞内の生化学反応をシミュレーションする場合、一つの細胞を複数のセルＣＥに空間分割し、セルＣＥごとに物質の量を保持させ、セルラーオートマト
ンにより各物質の濃度勾配をシミュレーションする。すなわち、対象とするセル内の各物質の濃度（量）と近傍の６個のセル内の物質の濃度（量）とからセル間での各物質の拡散をシミュレーションする。
【００７７】
例えば、隣接する２つのセルＣ１，Ｃ２に、濃度の異なる物質１、物質２及び物質３がそれぞれ含まれている場合、セルＣ１，Ｃ２間では、濃度の高い方から低い方へ各物質が20

拡散し、このセル間での拡散を以下のようにしてシミュレーションすることができる。
【００７８】
図１２は、図１１に示す２つのセルにおける物質の拡散をシミュレーションする場合のハードウエアシミュレータの構成を示すブロック図である。図１２に示すハードウエアシ
ミュレータは、セルＣ１用のハードウエアシミュレータＣＢ１、セルＣ２用のハードウエ
アシミュレータＣＢ２及び拡散回路ＫＣを備える。
【００７９】
図１２に示すハードウエアシミュレータＣＢ１内の物質カウンタＢ１〜Ｂ３の各カウン
ト値は、セルＣ１内の物質１〜物質３の分子数又は原子数を表し、ハードウエアシミュレ
ータＣＢ２内の物質カウンタＢ１〜Ｂ３の各カウント値は、セルＣ２内の物質１〜物

質３の分子数又は原子数を表し、各物質カウンタＢ１〜Ｂ３，Ｂ１

〜Ｂ３

30

は、拡散回

路ＫＣを介して接続されている。
【００８０】
拡散回路ＫＣは、物質カウンタＢ１〜Ｂ３，Ｂ１〜Ｂ３のカウント値、すなわち各物質の分子数又は原子数に応じて各物質が拡散するように、物質カウンタＢ１〜Ｂ３，Ｂ
１〜Ｂ３のカウント値を制御する。例えば、物質カウンタＢ１のカウント値が物質カ

ウンタＢ１のカウント値より大きい場合、平衡状態になるまで、所定の拡散速度に従い、物質カウンタＢ１のカウント値を順次減少させるとともに、これに対応させて物質カウ
ンタＢ１のカウント値を順次増加させる。
40【００８１】
なお、図１２では、セルＣ１，Ｃ２用のハードウエアシミュレータＣＢ１，ＣＢ２において物質カウンタＢ１〜Ｂ３、Ｂ１
Ｃ３〜Ｂ３

及び終了条件判定部Ｃ１〜Ｃ３、Ｃ１〜

のみを図示しているが、各ハードウエアシミュレータＣＢ１，ＣＢ２も、図１に示すハードウエアシミュレータと同様に構成され、乱数発生器、酵素カウンタ、絞り回路、反応実行回路、接続切り換え回路及び終了条件検出ネットワーク回路（図示省略）を有している。したがって、ハードウエアシミュレータＣＢ１，ＣＢ２も、図１に示すハードウ
エアシミュレータと同様に動作し、各セルＣ１，Ｃ２ごとに内部の生化学反応がシミュレーションされ、終了条件を満たした場合にその動作が停止される。
【００８２】
上記のように、細胞を複数のセルに分割し、セルごとに生化学反応による物質の変化量

50

(13)

JP 4774528 B2 2011.9.14をシミュレーションするとともに、隣接するセル間での各物質の拡散をシミュレーション
することにより、細胞内の各物質の濃度勾配を考慮して細胞内の物質の変化量をシミュレ
ーションすることができ、終了条件を満たした場合にシミュレーションを終了させることができる。
【００８３】
次に、多細胞の生化学反応をシミュレーションする場合について説明する。図１３は、多細胞の生化学反応をシミュレーションする方法を説明するための概略図である。図１３に示すように、図１１と同様に各細胞を複数のセルＣＥ（図中のハッチングのないセル）に分割するとともに、細胞間に存在する細胞壁を複数の細胞壁セルＷＣ（図中のハッチングを施したセル）に分割する。この場合、各細胞内では、図１１及び図１２を用いて説明

10した細胞内のシミュレーションと同様に生化学反応がシミュレーションされる。
【００８４】
また、細胞壁を表す細胞壁セルＷＣの部分は、例えば、拡散が起こらない、すなわち細胞間で物質が拡散しないものとしてシミュレーションを行ってもよく、また、細胞壁でもある程度の拡散が行われるとして、細胞内の細胞セルと同様に拡散回路を用いて拡散をシ
ミュレーションしてもよい。
【００８５】
上記のように、各細胞を複数のセルに分割するとともに、細胞壁を複数の細胞壁セルに分割し、セルごとに生化学反応による物質の変化量をシミュレーションするとともに、細胞内で隣接するセル間の各物質の拡散等をシミュレーションすることにより、多細胞につ20

いても、その生化学反応を同様にシミュレーションし、終了条件を満たした場合にシミュ
レーションを終了させることができる。
【００８６】
次に、本発明の第２の実施の形態によるハードウエアシミュレータについて説明する。
図１４は、本発明の第２の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。図１４に示すハードウエアシミュレータと図１に示すハードウエアシミュ
レータとで異なる点は、複数の終了条件判定部Ｃ１〜Ｃｍ及び終了条件検出ネットワーク
回路ＳＮに代えて複数の結果記憶部Ｍ１〜Ｍｍ、分布関数選択回路ＫＣ、分布計算回路Ｂ
Ｃ、比較器ＣＭ及び終了指定分布記憶部ＦＢが付加された点であり、その他の点は図１に示すハードウエアシミュレータと同様であるので詳細な説明は省略する。

30【００８７】
結果記憶部Ｍ１〜Ｍｍは、物質カウンタＢ１〜Ｂｍから出力されるカウント値をそれぞれ記憶する。分布関数選択回路ＫＣは、分布計算回路ＢＣが分布計算に使用する分布関数を選択する。分布計算回路ＢＣは、予め複数の分布関数を記憶しており、分布関数選択回
路ＫＣにより選択された分布関数を用いて結果記憶部Ｍ１〜Ｍｍに記憶されているカウント値の分布を算出し、比較器ＣＭへ出力する。終了指定分布記憶部ＦＢは、シミュレーシ
ョンの終了条件となる終了指定分布を記憶する。比較器ＣＭは、分布計算回路ＢＣから出力されるカウント値の分布と終了指定分布記憶部ＦＢに記憶されている終了指定分布とが一致するか否かを判定し、分布が一致していると判断した場合、比較結果として反応実行
回路Ｈ１〜Ｈｎへ終了信号を出力し、反応実行回路Ｈ１〜Ｈｎの動作を停止させてシミュ

40

レーションを終了させる。
【００８８】
本実施の形態において、終了指定分布記憶部ＦＢが終了条件記憶回路の一例に相当し、比較器ＣＭが判定回路の一例に相当し、結果記憶部Ｍ１〜Ｍｍ、分布関数選択回路ＫＣ、
分布計算回路ＢＣが分布演算回路の一例に相当し、分布関数選択回路ＫＣが指定回路の一例に相当し、分布計算回路ＢＣが分布計算回路の一例に相当し、その他は第１の実施の形態と同様である。
【００８９】
上記の動作により、本実施の形態では、第１の実施の形態と同様の効果を奏するともに、物質カウンタＢ１〜Ｂｍのカウント値から算出された分布が終了指定分布を満たすか否

50

(14)

JP 4774528 B2 2011.9.14

かを判定することができるので、物質カウンタＢ１〜Ｂｍの個々のカウント値だけでなく、複数のカウント値から決定される分布を終了条件として用いることができる。また、分布計算回路ＢＣで使用する演算方式を任意に選択することができるので、種々の分布を終了条件として用いることができる。
【００９０】
次に、本発明の第３の実施の形態によるハードウエアシミュレータについて説明する。
図１５は、本発明の第３の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。図１５に示すハードウエアシミュレータと図１４示すハードウエアシミュ
レータとで異なる点は、入力選択回路ＩＳが付加された点であり、その他の点は図１４に示すハードウエアシミュレータと同様であるので詳細な説明は省略する。

10【００９１】
入力選択回路ＩＳは、結果記憶部Ｍ１〜Ｍｍに記憶されている物質カウンタＢ１〜Ｂｍのカウント値の中から外部からの選択信号等に応じて所定のカウント値を選択して分布計
算回路ＢＣへ出力する。分布計算回路ＢＣは、分布関数選択回路ＫＣにより選択された分布関数を用いて入力選択回路ＩＳにより選択された結果記憶部Ｍ１〜Ｍｍに記憶されているカウント値の分布を算出し、比較器ＣＭへ出力する。比較器ＣＭは、分布計算回路ＢＣから出力されるカウント値の分布と終了指定分布記憶部ＦＢに記憶されている終了指定分
布とが一致するか否かを判定し、分布が一致していると判断した場合、比較結果として反応実行回路Ｈ１〜Ｈｎへ終了信号を出力し、反応実行回路Ｈ１〜Ｈｎの動作を停止させてシミュレーションを終了させる。本実施の形態において、入力選択回路ＩＳが選択回路の20

一例に相当し、その他は第２の実施の形態と同様である。
【００９２】
上記の動作により、本実施の形態では、第２の実施の形態と同様の効果を奏するとともに、複数の物質カウンタＢ１〜Ｂｍのうち所定の物質カウンタＢ１〜Ｂｍのカウント値から演算される分布が終了指定分布を満たすか否かを判定することができるので、使用する物質カウンタＢ１〜Ｂｍのカウント値を動的に切り換えることができるとともに、必要なカウント値のみを用いてシミュレーションの終了判定をより高速に実行することができる。
【００９３】
次に、本発明の第４の実施の形態によるハードウエアシミュレータについて説明する。

30

図１６は、本発明の第４の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。図１６に示すハードウエアシミュレータと図１４示すハードウエアシミュ
レータとで異なる点は、分布計算回路ＢＣの分布、終了指定分布記憶部ＦＢの終了指定分
布及び比較器ＣＭの比較結果を用いて終了指定分布を演算する演算回路ＣＣが付加された点であり、その他の点は図１４に示すハードウエアシミュレータと同様であるので詳細な説明は省略する。
【００９４】
演算回路ＣＣは、分布計算回路ＢＣにより算出された分布、終了指定分布記憶部ＦＢの終了指定分布及び比較器ＣＭの比較結果値の少なくとも一つを用いて所定の演算を行い、演算値を新たな終了指定分布として終了指定分布記憶部ＦＢに記憶させる。比較器ＣＭは40、分布計算回路ＢＣから出力されるカウント値の分布と終了指定分布記憶部ＦＢに記憶されている終了指定分布とが一致するか否かを判定し、分布が一致していると判断した場合、比較結果として反応実行回路Ｈ１〜Ｈｎへ終了信号を出力し、反応実行回路Ｈ１〜Ｈｎの動作を停止させてシミュレーションを終了させる。本実施の形態において、演算回路Ｃ
Ｃが更新回路の一例に相当し、その他は第２の実施の形態と同様である。
【００９５】
上記の動作により、本実施の形態では、第２の実施の形態と同様の効果を奏するとともに、分布計算回路ＢＣにより算出された分布、終了指定分布記憶部ＦＢの終了条件及び比較器ＣＭの比較結果の中から任意に選択した値を用いて終了条件を更新することができる
ので、終了条件を種々の値に変更することができる。

50

(15)

JP 4774528 B2 2011.9.14【００９６】
なお、上記の各実施の形態は、任意に組み合わせることができ、その場合、組み合わせ
た各実施の形態の効果を奏することができ、例えば、図１４乃至図１６に示す結果記憶部
Ｍ１〜Ｍｍに代えて図５に示す時系列結果記憶部Ｃ１１１〜Ｃ１１ｋを用いる等の種々の変更が可能である。
【００９７】
また、本発明が適用可能なハードウエアシミュレータは、上記の例に特に限定されず、所定のハードウエアから構成され、シミュレーション対象物間の反応によるシミュレーシ
ョン対象物の変化量をシミュレーションするハードウエアシミュレータであれば、種々の分野に適用可能である。例えば、脳細胞及び神経回路網等の生物シミュレーション、遺伝

10

子進化及び生物の個体進化シミュレーション、渡り鳥の移動等に関する生態系シミュレー
ション、移動物に関する交通システムシミュレーション、避難シミュレーション、数値流
体シミュレーション、気象シミュレーション、ロジスティクスシミュレーション、電力供給シミュレーション、都市計画等に関する都市シミュレーション、企業間取引及び株式・先物取引等に関する経済システムシミュレーション、経営シミュレーション、電気回路及び集積回路等の電磁シミュレーション、半導体及び材料の電子レベルシミュレーションに適用することができる。
【図面の簡単な説明】【００９８】【図１】本発明の第１の実施の形態によるハードウエアシミュレータの構成を示すブロッ20ク図である。
【図２】図１に示す終了条件判定部の一例の構成を示すブロック図である。
【図３】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図４】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図５】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図６】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。

30【図７】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図８】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図９】図１に示す終了条件判定部として使用可能な他の終了条件判定部の構成を示すブ
ロック図である。
【図１０】図１に示すハードウエアシミュレータによるシミュレーションの例を説明するための模式図である。
【図１１】細胞内の各物質の濃度勾配を考慮して細胞内の生化学反応をシミュレーションする方法を説明するための模式図である。

40【図１２】図１１に示す２つのセルにおける物質の拡散をシミュレーションする場合のハードウエアシミュレータの構成を示すブロック図である。
【図１３】多細胞の生化学反応をシミュレーションする方法を説明するための概略図である。
【図１４】本発明の第２の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。
【図１５】本発明の第３の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。
【図１６】本発明の第４の実施の形態によるハードウエアシミュレータの構成を示すブロ
ック図である。

50

(16)JP 4774528 B2 2011.9.14【符号の説明】【００９９】
Ｒ１〜Ｒｎ

乱数発生器

Ｋ１〜Ｋｎ

酵素カウンタ

Ｖ１〜Ｖｎ

絞り回路

Ｈ１〜Ｈｎ

反応実行回路

Ｂ１〜Ｂｍ

物質カウンタＳＷ

接続切り換え回路

Ｃ１〜Ｃｍ，Ｃ１ａ〜Ｃ１ｇ
ＳＮ

終了条件判定部
10終了条件検出ネットワーク回路

Ｃ１１，Ｍ１〜Ｍｍ
Ｃ１２

結果記憶部

終了指定値記憶部

Ｃ１３，ＣＭ

比較器

Ｃ１４，Ｃ１４ａ〜Ｃ１４ｄ，ＣＣ
Ｃ１５，ＩＳ

入力選択回路Ｃ１６，ＢＣ

分布計算回路Ｃ１１１〜Ｃ１１ｋ

時系列結果記憶部

ＫＣ

分布関数選択回路

ＦＢ

終了指定分布記憶部

【図１】

演算回路

【図２】

【図３】

(17)
【図４】

【図６】

【図７】
【図５】

【図８】

【図９】

【図１０】

JP 4774528 B2 2011.9.14

(18)
【図１１】

【図１３】

【図１２】

【図１４】

【図１５】

JP 4774528 B2 2011.9.14

(19)
【図１６】

JP 4774528 B2 2011.9.14

(20)JP 4774528 B2 2011.9.14

フロントページの続き(72)発明者 下原 勝憲
京都府相楽郡精華町光台二丁目２番地２ 株式会社国際電気通信基礎技術研究所内
審査官 神田 和輝(56)参考文献 特開２００３−１８０４００（ＪＰ，Ａ）(58)調査した分野(Int.Cl.，ＤＢ名)
Ｇ０６Ｆ

１９／００

Ｂ０１Ｊ

１９／００

10