(57)【要約】【課題】生体モデルを構成するモジュールを他のモジュールと入れ替えること、およびモジュール間の構造を変更することを可能にする。【解決手段】  モジュール２００が含む構造的関係属性２０１は、生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、機能的結合関係属性２０２は、生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、構造的関係属性２０１によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、機能的結合関係属性２０２によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されている。【選択図】図１
2009104558.tif 000002
【特許請求の範囲】
【請求項１】
生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置であって、
上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、
上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、
上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、
上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、
上記状態情報は、当該モジュールの状態を示す情報であり、
上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行うシミュレーション手段を備えることを特徴とするシミュレーション装置。
【請求項２】
上記シミュレーション手段がシミュレーションを行うときの時間を刻む計時手段をさらに備え、
上記計時手段は、複数段階の時間スケールの時間を刻むことを特徴とする請求項１に記載のシミュレーション装置。
【請求項３】
生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置に利用される生体モデルのデータ構造であって、
上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、
上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、
上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、
上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、
上記状態情報は、当該モジュールの状態を示す情報であり、
上記シミュレーション装置が、上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行うことを特徴とする、生体モデルのデータ構造。
【請求項４】
生体を数理モデルによって表現した生体モデルを構築するモデル作成装置であって、
上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、
上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、
上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、
上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、
上記状態情報は、当該モジュールの状態を示す情報であり、
上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、
上記モジュールデータを取得するモジュール取得手段と、
ユーザの指示を受け付ける指示受付手段と、
上記指示受付手段が受け付けた指示に従い、上記モジュール取得手段が取得したモジュールデータが表現するカプセル化モジュールを単位として、上記構造的関係情報および上記機能的結合関係情報を変更する構造形成手段とを備えることを特徴とするモデル作成装置。
【請求項５】
上記機能的結合関係情報は、モジュール間を結ぶ結合線の始点および終点によって、当該モジュールが結合する他のモジュールおよび上記信号の流れる方向を特定しており、
上記構造形成手段は、上記機能的結合関係情報が示す上記結合線の始点または終点、もしくはその両方を変更することにより、上記生体の機能的構造に従ったモジュールの結合を変更することを特徴とする請求項４に記載のモデル作成装置。
【請求項６】
請求項４または５に記載のモデル作成装置を動作させるためのモデル作成プログラムであって、コンピュータを上記各手段として機能させるためのモデル作成プログラム。
【請求項７】
請求項６に記載のモデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
生体を数理モデルによって表現した生体モデルを検索する検索装置であって、
上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、
上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、
上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、
上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、
上記状態情報は、当該モジュールの状態を示す情報であり、
上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、
ユーザが注目するモジュールを特定する特定情報を受け付ける特定情報受付手段と、
上記特定情報受付手段が受け付けた特定情報が示すモジュールデータが表現するモジュールと結合関係にあるモジュールを、上記構造的関係情報または上記機能的結合関係情報を解析することにより特定するモジュール特定手段とを備えることを特徴とする検索装置。
【請求項９】
データベースに登録されている生体モデルに含まれる各モジュールの使用頻度が記録された使用頻度テーブルを参照することにより、使用頻度に基づいてモジュールが配列された使用頻度リストを作成する使用頻度リスト作成手段をさらに備えることを特徴とする請求項８に記載の検索装置。
【請求項１０】
請求項３に記載の生体モデルのデータ構造が登録されたデータベースを管理するデータベース管理装置と、
請求項１に記載のシミュレーション装置と、
請求項４に記載のモデル作成装置と、
請求項８に記載の検索装置とを備える生体モデル開発システムであって、
上記シミュレーション装置は、上記データベースに登録されたデータ構造を用いてシミュレーションを行い、
上記モデル作成装置は、上記データベースに登録されたデータ構造を用いて生体モデルを作成し、
上記データベース管理装置は、上記モデル作成装置が作成した生体モデルを上記データベースに登録し、
上記検索装置は、上記データベースに登録された生体モデルを検索することを特徴とする生体モデル開発システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数理モデルによって表現された生体モデルを作成するモデル作成装置、生体モデルを用いたシミュレーションを行うシミュレーション装置、生体モデルデータ構造、生体モデルを検索する検索装置および生体モデル開発システムに関するものである。
【背景技術】
【０００２】
遺伝子発現、細胞膜の電気的興奮、心臓などの臓器の機能発現、筋の収縮、人体の運動制御などの生体の動態は、多スケールおよび多階層に渡り複雑で多様である。こうした現象は、しばしば数理モデルによって記述され、再現される。生体の構造や機能を記述する数理モデルは、モデル化の対象や目的に応じて、常微分方程式（ODE）、差分方程式（DE）、偏微分方程式（PDE）、確率微分方程式（SDE）あるいはエージェントベースモデル（ABM）など様々な形式で表わされる。
【０００３】
生命科学・生体工学の発展に伴い、こうした数理モデルの数の増大と各モデルの複雑化が進み、論文発表されたモデルであっても第三者によるその再現が困難になっており、科学的研究の進展に支障をきたしつつある。
【０００４】
例えば、細胞を構成する蛋白質や細胞内器官等の複数の要素モデルがすでに論文発表されているとして、その中の特定の要素モデルをさらに詳細化した新たなモデルを開発する場合、あるいは複数のモデルを相互作用させて新たな結合系モデル（大規模モデル）を構築するような場合などにおいて、まず、既存のモデルの動作を正しく再現する必要がある。その上で、既存モデルの個々の要素モデルの改訂や、結合系の構築をすることになる。
【０００５】
このとき、新規モデル開発者が、修正・編集・結合等の操作を容易に実施できるように、個々のモデルの数学的および物理的実体の幾何学的構造がデータ構造化され、その構造が優れたグラフィックインターフェースによって操作可能であることが重要である。この問題を解決するために、ＸＭＬを用いた数理モデル記述フォーマットの標準化とモデルのデータベース化が始まっている（例えば、非特許文献１および非特許文献２を参照）。
【非特許文献１】ＣｅｌｌＭＬ、[online]、（平成１９年１０月１５日検索）インターネット（http://www.cellml.org）
【非特許文献２】ＳＢＭＬ、[online]、（平成１９年１０月１５日検索）インターネット（http://sbml.org）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
これまでのところ、特定のタイプ（特に常微分方程式タイプ）の数理モデルあるいは特定の生命現象（化学反応式で記述される細胞代謝機能）に限った標準フォーマットは開発されているが、モデル化の対象とする生命・生体現象が限定的で、例えばABMのようなモデル自身が物理的実体の幾何学的構造を含むようなものは記述できないなど、既存のモデル記述形式の汎用性は高くない。
【０００７】
また、単一のモデルを複数の機能単位（要素モデル）の集合体として明示的に階層構造化する取り組みが不十分で、要素モデル毎の再利用や、複数の機能要素を階層化することで新たなモデルを構築するといった目的に適したモデル記述様式は未だ開発されていない。
【０００８】
従来のモデル記述様式（言語）は、対象とする数理モデルの構造化、すなわち、そのモデルがどのような機能単位（要素モデル）の複合体として構成されているか、あるいは複数の機能単位の階層的関係や機能単位間の機能的関わりの表現が不十分であった。
【０００９】
したがって、既存のモデルデータベースでは、特定の生命・生体機能を記述するモデルを検索する場合、検索対象のモデルの規模に関わらず、そのモデル全体をモデル名やモデル提案者等の索引的情報のみから検索する機能しか実現されていない。このため、１つのモデルを構成する機能要素単位での検索や、ある機能要素単位に関連する別の要素単位の検索といった詳細な検索をすることは困難である。また、ある機能要素単位が別のモデルの中で利用されていても、そのことを認識することができない。
【００１０】
現在、すでにモデルデータベースとモデルシミュレーションシステムとを統合するシステムも存在し、それを用いることで、特定のモデルを検索し、目的とするモデルの記述ファイルを取得し、対応するシミュレーションシステムを用いてモデルの動態をシミュレーションすることは実現されている。
【００１１】
しかし、例えば、あるモデルの一部分としての要素モデルを別の要素モデルと入れ替えることでより詳細で高精度なモデルを構築するといったモデルの修正や新規開発、あるいは、複数のモデルを階層的に組み合わせて相互作用させることで、より規模の大きな新規モデルを構築する（例えば細胞モデルの結合系として臓器・器官のモデルを構築する）ことなどを行うこと、さらには、そうして得られた新規モデルの動態をシミュレーションする機能は実現されていない。
【００１２】
本発明は、上記の問題点を解決するためになされたもので、その目的は、生体モデルにおける複数のモジュールの階層的関係および機能単位間の機能的関わりが明確に表現されており、生体モデルを構成するモジュールを他のモジュールと入れ替えること、およびモジュール間の構造を変更することができる生体モデルデータ構造、当該生体モデルを形成するモデル作成装置、当該生体モデルを検索する検索装置、当該生体モデルを用いてシミュレーションを行うシミュレーション装置を提供することにある。
【課題を解決するための手段】
【００１３】
上記の課題を解決するために、本発明に係るシミュレーション装置は、生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行うシミュレーション手段を備えることを特徴としている。
【００１４】
本発明の、生体モデルのデータ構造は、生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置に利用される生体モデルのデータ構造であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記シミュレーション装置が、上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行うことを特徴としている。
【００１５】
数理モデルによって表現された生体モデルの状態の経時変化は、各モジュールの経時変化の集合として表現され、各モジュールの状態の経時変化は、他のモジュールの状態変化によって影響を受ける。
【００１６】
上記の構成によれば、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでいる。モジュールは、自身の特徴を表現した構造的関係情報、機能的結合関係情報、状態情報を少なくとも含んでいる。
【００１７】
構造的関係情報は、生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報である。すなわち、構造的関係情報は、モジュール間の構造的関係を規定する。
【００１８】
機能的結合関係情報は、生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報である。すなわち、機能的結合関係情報は、モジュール間の機能的な結合関係を規定する。
【００１９】
この機能的結合関係情報に関しては、構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールは、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限される。
【００２０】
すなわち、カプセル化されたモジュールの内部に含まれるモジュールは、当該カプセル化されたモジュールの外部に存在するモジュールとは機能的な結合関係を結ぶことができない。モジュールがカプセル化されているが故に、カプセル化モジュールをひとつの機能単位として扱うことができる。
【００２１】
また、状態情報は、当該モジュールの状態を示す情報である。
【００２２】
シミュレーション手段は、上記生体モデルに与えられた、状態変化を誘発する信号（例えば、カルシウムイオンの濃度変化を示す信号）を、各モジュールデータの機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行う。
【００２３】
それゆえ、生体を数理モデルによって表現した生体モデルにおいて、当該生体モデルを構成するカプセル化モジュールをひとつの機能単位として扱うことができ、ある生体モデルに含まれるカプセル化モジュールを、別のカプセル化モジュールに入れ替えることができる。
【００２４】
上記シミュレーション手段がシミュレーションを行うときの時間を刻む計時手段をさらに備え、上記計時手段は、複数段階の時間スケールの時間を刻むことが好ましい。
【００２５】
上記の構成によれば、計時手段は、シミュレーション手段がシミュレーションを行うときの時間を、複数段階の時間スケールで刻む。
【００２６】
それゆえ、生体構成要素の状態変化をシミュレートするのに適した時間スケールでシミュレーションを行うことができる。
【００２７】
本発明のモデル作成装置は、生体を数理モデルによって表現した生体モデルを構築するモデル作成装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、上記モジュールデータを取得するモジュール取得手段と、ユーザの指示を受け付ける指示受付手段と、上記指示受付手段が受け付けた指示に従い、上記モジュール取得手段が取得したモジュールデータが表現するカプセル化モジュールを単位として、上記構造的関係情報および上記機能的結合関係情報を変更する構造形成手段とを備えることを特徴としている。
【００２８】
上記の構成によれば、モジュール取得手段は、モジュールデータを取得し、構造形成手段は、指示受付手段が受け付けたユーザの指示に従い、モジュール取得手段が取得したモジュールデータが表現するカプセル化モジュールを単位として、上記構造的関係情報および上記機能的結合関係情報を変更する。
【００２９】
それゆえ、既存の生体モデルのデータ構造を変更すること、および既存の生体モデルに含まれるカプセル化モジュールを、別の生体モデルに組み込むことができ、生体モデルのデータ構造を変更した場合またはモジュールを入れ替えた場合でも、再構築した生体モデルにおいて、その経時的な状態変化を適切にシミュレートできる。
【００３０】
上記機能的結合関係情報は、モジュール間を結ぶ結合線の始点および終点によって、当該モジュールが結合する他のモジュールおよび上記信号の流れる方向を特定しており、上記構造形成手段は、上記機能的結合関係情報が示す上記結合線の始点または終点、もしくはその両方を変更することにより、上記生体の機能的構造に従ったモジュールの結合を変更することが好ましい。
【００３１】
上記の構成によれば、機能的結合関係情報が示す結合線の始点または終点、もしくはその両方を変更することにより、当該モジュールと他のモジュールとの間の機能的な結合関係が変更されるとともに、信号が流れる方向が変更される。
【００３２】
それゆえ、モジュール間の機能的な結合関係を変更した新たな生体モデルを容易に構築することができ、構築された生体モデルを用いて、機能的な結合関係の変更を反映したシミュレーションを行うことができる。
【００３３】
上記モデル作成装置を動作させるためのモデル作成プログラムであって、コンピュータを上記各手段として機能させるためのモデル作成プログラムおよび当該モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体も本発明の技術的範囲に含まれる。
【００３４】
本発明の検索装置は、生体を数理モデルによって表現した生体モデルを検索する検索装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、ユーザが注目するモジュールを特定する特定情報を受け付ける特定情報受付手段と、上記特定情報受付手段が受け付けた特定情報が示すモジュールデータが表現するモジュールと結合関係にあるモジュールを、上記構造的関係情報または上記機能的結合関係情報を解析することにより特定するモジュール特定手段とを備えることを特徴としている。
【００３５】
上記の構成によれば、特定情報受付手段は、ユーザが注目するモジュールを示す特定情報を受け付け、モジュール特定手段は、特定情報が示すモジュールデータが表現するモジュールと結合関係にあるモジュールを、構造的関係情報または機能的結合関係情報を解析することにより特定する。
【００３６】
それゆえ、ユーザが指定したモジュールと構造的関係または機能的な結合関係にあるモジュールをユーザに報知することができる。その結果、ユーザは、あるモジュールを起点として、そのモジュールと構造的関係または機能的な結合関係にあるモジュールを検索することができる。
【００３７】
上記検索装置は、データベースに登録されている生体モデルに含まれる各モジュールの使用頻度が記録された使用頻度テーブルを参照することにより、使用頻度に基づいてモジュールが配列された使用頻度リストを作成する使用頻度リスト作成手段をさらに備えることが好ましい。
【００３８】
上記の構成によれば、使用頻度リスト作成手段は、データベースに登録されている生体モデルに含まれるモジュールの使用頻度に基づいてモジュールが配列された使用頻度リストを作成する。
【００３９】
それゆえ、使用頻度が高い順番または使用頻度が低い順番でモジュールをユーザに提示することができる。
【００４０】
本発明の生体モデル開発システムは、上記生体モデルのデータ構造が登録されたデータベースを管理するデータベース管理装置と、上記シミュレーション装置と、上記モデル作成装置と、上記検索装置とを備える生体モデル開発システムであって、上記シミュレーション装置は、上記データベースに登録されたデータ構造を用いてシミュレーションを行い、上記モデル作成装置は、上記データベースに登録されたデータ構造を用いて生体モデルを作成し、上記データベース管理装置は、上記モデル作成装置が作成した生体モデルを上記データベースに登録し、上記検索装置は、上記データベースに登録された生体モデルを検索することを特徴としている。
【００４１】
上記の構成により、生体モデルの作成、登録、検索およびシミュレーションを統合的に行うことができる。
【発明の効果】
【００４２】
以上のように、本発明に係るシミュレーション装置は、生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行うシミュレーション手段を備える構成である。
【００４３】
本発明に係る、生体モデルのデータ構造は、生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記シミュレーション装置が、上記生体モデルに与えられた、状態変化を誘発する信号を、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行う構成である。
【００４４】
本発明に係るモデル作成装置は、生体を数理モデルによって表現した生体モデルを構築するモデル作成装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、上記モジュールデータを取得するモジュール取得手段と、ユーザの指示を受け付ける指示受付手段と、上記指示受付手段が受け付けた指示に従い、上記モジュール取得手段が取得したモジュールデータが表現するカプセル化モジュールを単位として、上記構造的関係情報および上記機能的結合関係情報を変更する構造形成手段とを備える構成である。
【００４５】
それゆえ、生体を数理モデルによって表現した生体モデルにおいて、当該生体モデルを構成するカプセル化モジュールをひとつの機能単位として扱うことができ、ある生体モデルに含まれるカプセル化モジュールを、別のカプセル化モジュールに入れ替えることができるという効果を奏する。
【００４６】
本発明に係る検索装置は、生体を数理モデルによって表現した生体モデルを検索する検索装置であって、上記生体モデルは、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、上記モジュールを表現したモジュールデータは、構造的関係情報、機能的結合関係情報、状態情報を少なくとも含み、上記構造的関係情報は、上記生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であり、上記機能的結合関係情報は、上記生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、上記構造的関係情報によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、上記機能的結合関係情報によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されており、上記状態情報は、当該モジュールの状態を示す情報であり、上記生体モデルに与えられた、状態変化を誘発する信号が、各モジュールデータの上記機能的結合関係情報に従い、結合したモジュールに順次伝達されて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションが行われ、ユーザが注目するモジュールを特定する特定情報を受け付ける特定情報受付手段と、上記特定情報受付手段が受け付けた特定情報が示すモジュールデータが表現するモジュールと結合関係にあるモジュールを、上記構造的関係情報または上記機能的結合関係情報を解析することにより特定するモジュール特定手段とを備える構成である。
【００４７】
それゆえ、あるモジュールを起点として、そのモジュールと構造的関係または機能的な結合関係にあるモジュールを検索することができるという効果を奏する。
【発明を実施するための最良の形態】
【００４８】
本発明の実施の一形態について図１〜図２３に基づいて説明すれば、以下のとおりである。
【００４９】
（本発明の基本概念）
本発明は、生体の構造と機能の数理モデルを、その規模や、ODEやABMといったモデル化の形式に依存しない汎用的で統合的に記述する新規様式の開発を基盤とするものである。この新規記述様式は、対象とする生体の構造および機能のモデルを複数のモジュール（要素モデル）の集合体として表現する。モジュールの集合体もまたモジュールとして扱う。
【００５０】
まず、個々のモジュール間の幾何学的包含関係・接触関係・連結関係、あるいは論理的関係（以下構造的関係と呼ぶ）を定義した。これによって、対象とする生体機能を発現に関わる複数の物理的実体の構造、個々の物理的実体間の幾何学的関係、および機能発現に関わる機能要素、機能要素間の論理的構造を、階層的なモジュール構造（モジュラー構造）として記述することができる。
【００５１】
次に、個々のモジュールは生体機能に関係する状態をその属性として有する。この状態属性の経時変化が生体機能の発現過程に対応する。数理モデルの動態の数値シミュレーションは連続時間システムを離散化して行われるが、その時間刻みをΔtとしたとき、時刻t＋Δtにおけるあるモジュールの状態は、時刻tにおけるそのモジュール自身およびそのモジュールの状態更新に影響を与える他のモジュールの状態によって決まる。以下では、あるモジュールの状態更新時に影響し合うモジュールは機能的結合関係にあると呼ぶ。
【００５２】
モジュール間の機能的結合関係は、モジュラー構造とは別にネットワーク構造によって記述した。
【００５３】
本発明は、階層的モジュラー構造（構造的関係）およびネットワーク構造（機能的結合関係）を用いた、生体の構造および機能の数理モデルを記述する新しい汎用的データ構造の開発と、それを基盤とする新規モデル開発システム、モデルシミュレーションシステム、モデルデータベース、モデルデータベースを用いた生体の構造と機能に関する知識獲得システム、およびこれらの統合に関するものである。
【００５４】
（モデル開発システム１００の構成）
図２は、本実施形態に係るモデル開発システム１００の構成を示す概略図である。同図に示すように、モデル開発システム１００は、データベース１、モデル作成部（モデル作成装置）２、モデル検索部（モデル検索装置）３およびシミュレーション部（シミュレーション装置）４、入出力部（指示受付手段）５を備えるサーバ６、および端末装置７を備えている。
【００５５】
データベース１には、数理モデルによって表現された生体モデルが複数登録されている。ユーザは、端末装置７を介して、サーバ６にアクセスし、データベース１に登録された生体モデルを、モデル検索部３を操作することにより検索したり、シミュレーション部４を操作することにより、当該生体モデル用いて新たな生体モデルを作成したりすることができる。
【００５６】
端末装置７は、ネットワーク（例えば、インターネット）を介してサーバ６に通信可能に接続されており、主制御部７１、入出力部７２、操作部７３、表示部７４を備えている。操作部７３は、ユーザの指示を受け付けるものであり、例えば、キーボード、マウス等である。入出力部７２は、操作部７３が受け付けた指示をサーバ６へ送信するとともに、サーバ６から信号およびデータを受信する。
【００５７】
表示部７４は、操作用の画面等を表示するものである。モデル開発システム１００は、生体モデルデータ構造に従う生命・生体の動態モデルを容易に構築、改訂し、その動態をシミュレーションすることができるグラフィックユーザインターフェイス（ＧＵＩ）を備えている。表示部７４は、このＧＵＩとしての役割を果たす。
【００５８】
主制御部７１は、端末装置７の各部を制御するとともに、サーバ６から送信された各種のデータを処理する。
【００５９】
（生体モデル１０のデータ構造）
本実施形態で用いられる生体モデル（生体モデル構造データ）１０のデータ構造について説明する。
【００６０】
生体モデル１０では、対象とする生体の構造および機能の数理モデルを、モジュラー構造およびネットワーク構造によってデータ構造化された複数のモジュールから構成されるモジュールとして表現し、個々のモジュールおよびその集合体であるモジュールをＸＭＬ（eXtensible Markup Language）によって記述した。
【００６１】
すなわち、生体モデル１０では、生体機能をモデル化した１つの機能単位をモジュールとして表現し、その複数のモジュールを階層的に構造化することにより、１つの生体モデルを形成している。
【００６２】
本実施形態では、モジュール（モジュールデータ）のデータ構造をＸＭＬ（eXtensible Markup Language）によって記述している。モジュールを他の言語（例えば、ＨＴＭＬ（Hyper Text Markup Language）で記述してもよいが、構造化されたドキュメントを記述するという目的に適した、オブジェクト指向のプログラム言語を用いることが好ましい。ＸＭＬは、この目的に適した言語である。
【００６３】
図１は、生体モデル１０を構成するモジュール２００の構造を示す概略図である。同図に示すように、モジュール２００は、複数の属性（プロパティ）と、属性を変更するメソッドである関数群２１０とを含むモジュールクラスとして定義されている。モジュールクラスに具体的にデータを与え、コンピュータのメモリの中で実体のあるものとして具現化したものがモジュール２００である。
【００６４】
すなわち、生命機能を表現したモジュールを特定するための属性の集合（リスト）によって、モジュール２００のデータ構造が形成されている。さらに換言すれば、モジュール２００を構成する属性によって、当該モジュール２００が特徴付けられており、属性とは、モジュール２００を定義するためのデータのセットである。
【００６５】
（属性の具体例）、、
モジュール２００は、属性として、構造的関係属性（構造的関係情報）２０１、機能的結合関係属性（機能的結合関係情報）２０２、メタデータ２０２ａ、状態属性（状態情報）２０４、状態更新属性２０５、パラメータ値属性２０６、位置・姿勢属性２０７、形状属性２０８、ＩＤ属性（ＩＤ情報）２０９および入出力ポート属性（入出力ポート情報）２１０を含んでいる。
【００６６】
（構造的関係属性２０１）
構造的関係属性２０１は、複数のモジュール間の構造的関係（モジュラー構造）を規定する。構造的関係とは、幾何学的（構造的）および論理的包含関係（inclusion）、構成関係（constituent）および接触・連結関係（attachment）を含むものである。この論理的包含関係および構造的包含関係における一種の親子関係では、通常の木構造よりも拡張され、ある子モジュールが複数の親モジュールを持つことができる。従って、１つの機能モジュールは、階層的に構造化された複数のモジュール（モジュラー構造）で構成することができる。
【００６７】
脂質二重膜（lipid bilayer）と膜蛋白質（protein）とで構成される細胞膜（cell membrane）を例にとると、細胞膜モジュールは、脂質二重膜モジュールと膜蛋白質モジュールとによって構成される、すなわち、‘constituents of the cell membrane module are the lipid bilayer module and the protein modules'（細胞膜モジュールの構成要素は、脂質二重膜と膜蛋白質を含んでいる）と階層化することができる。
【００６８】
別の例として、物理的に細胞膜の中に含まれる細胞内筋小胞体（sarcoplasmic reticulum）は、それぞれをモジュールとし、‘The cell membrane module includes the sarcoplasmic reticulum module'（細胞膜モジュールは、細胞内筋小胞体を含んでいる）のように階層化することができる。
【００６９】
なお、あるモジュールと別のモジュールとが階層構造あるいは親子関係をとることなく、数珠繋がり的に接触・連結している関係をattachment属性（接触・連結関係）で表現する。
【００７０】
図３は、構造的関係属性２０１および機能的結合関係属性２０２が示すモジュール間の関係の一例を説明するための図である。同図に示すように、構造的関係属性２０１では、自身と直接的に構造的関係にあるモジュールとを結ぶ結合線（エッジ）が示されている。すなわち、直接の親と直接の子とが示されている。親のモジュールが、複数存在する場合には、すべての親モジュールと結合するエッジが示される。
【００７１】
構造的関係属性２０１では、各エッジの種類（すなわち、包含関係、構成関係、接触・連結関係のいずれを表すエッジなのか）と、各エッジを特定する番号（ＩＤ）と、各エッジの始点となるモジュールおよび終点となるモジュールとが示されている。包含関係のように、上下関係が存在する場合には、上位に位置するモジュール側のエッジを始点とし、下位に位置するモジュール側のエッジを終点とすることによって、上下関係を表現してもよい。または、上下関係を別の項目として表現してもよい。
【００７２】
図３に示す例では、自身のモジュールをモジュールＸとして、親のモジュールをモジュールＡ、子のモジュールをモジュールＢとして、始点および終点によって上下関係を表現している。各モジュールを特定する情報として、ＲＭＩＤが用いられればよい。
【００７３】
（機能的結合関係属性２０２）
機能的結合関係属性２０２は、複数のモジュール間の機能的結合関係（ネットワーク構造）を規定する。ある機能モジュールの状態は状態更新のルール（後述）によって時々刻々と変化する。上述したように、生体機能の数理モデルの動態シミュレーションは、連続時間システムを離散化して行われるが、その時間刻みをΔtとしたとき、時刻t＋Δtにおける特定のモジュールの状態は、時刻tにおけるそのモジュール自身およびそのモジュールの状態更新に影響を与える他のモジュールの状態によって決まる。このようなモジュール間の相互作用（機能的結合関係）は、モジュラー構造とは別に、ネットワーク構造によって記述する。
【００７４】
機能的結合関係属性２０２は、構造的関係属性２０１と同様に、自身のモジュールと機能的結合関係を有するモジュールとを結ぶエッジによって機能的結合関係を示す。具体的には、機能的結合関係属性２０２は、モジュール間を結ぶエッジ（結合線）の始点および終点によって、当該モジュールが結合する他のモジュールおよび生体モデルに与えられる、生体モデルの状態変化を誘発する信号の流れる方向を特定している。
【００７５】
機能的結合関係と構造的関係とは、モジュール間の有方向性結合と関係を表す単一のクラス(エッジクラス（Edge Class）（図１において、エッジ属性２０３に対応)で統一して管理されてもよい。各モジュールはエッジクラスオブジェクトをもつことで、当該モジュールと他のモジュールとの関係が記述される。
【００７６】
例えば、図３に示すように、自身のモジュールＸと機能的結合関係にあるモジュールＥとの機能的結合関係は、エッジ「５」によって示され、エッジ「５」の始点であるモジュールＥから終点のモジュールＸへと、状態変化に関する信号が伝達されることが示されている。
【００７７】
なお、図３では、説明のために構造的関係および機能的結合関係をテーブルとして表現したが、構造的関係属性２０１および機能的結合関係属性２０２において、構造的関係および機能的結合関係がテーブルとして表現されている必要はない。
【００７８】
メタデータ２０２ａは、機能的結合関係属性２０２を説明するためのデータである。具体的には、メタデータ２０２ａは、機能的結合関係にあるモジュール間で、どのような種類の信号（例えば、カルシウムイオン）が流れているのかを記述している。換言すれば、メタデータ２０２ａは、機能的結合関係を示すエッジのそれぞれにおいて、どのような種類の信号が流れているのかを記述している。
【００７９】
図１では、説明を簡略化するために機能的結合関係属性２０２に対応するメタデータのみを明記しているが、実際には、他の重要な属性に対して、それぞれメタデータが設けられている。
【００８０】
（状態属性２０４）
状態属性２０４は、モジュールの「状態」を表す属性である。モジュールは生体機能（生体構成要素）をモデル化したものである。生体機能は、その機能に関連する物理的実体（分子、細胞内器官、細胞、臓器など）の「状態」が時間的変化によって発現する。
【００８１】
例えば、ある生体分子を表す分子モジュールの「状態」として、その分子の重心位置とその変化速度、および、姿勢とその変化速度を定義することができる。分子は複数の原子から構成されるので、分子モジュールは、複数の原子モジュールから構成される（constituentな関係）としてモデル化した場合、個々の原子モジュールの「状態」属性として、その位置および速度を定義することができる。「定義することができる」という表現は、ある生体機能をモデル化（モジュールによる構造化）する仕方は唯一ではなく、モデル提案者（作成者）の考え方に依存して種々のモデル化が可能であることを意味する。
【００８２】
後述の機能的結合関係を含め、種々の機能モジュールの集合体としてより複雑な機能モジュールが構成されている場合、ある機能モジュールが別の機能モジュールと如何なる構造的および機能的関係を定義するかは、モデル提案者の「考え方」、「論理的思考」を反映するものである。後述するように、モデル検索部３は、データベースに登録された多数の生体モデル（モジュール）に対してデータマイニングを実施し、モジュール間の構造的関係および機能的結合関係から、モデル提案者の「考え方」あるいは「論理的思考」を統計的に抽出する。
【００８３】
（状態更新属性２０５）
状態更新属性２０５は、モジュールの状態更新（状態属性値を時々刻々と更新する）のルールを記述する属性である。対象とするモジュールと機能的結合関係をもつ複数のモジュールの状態に、数学あるいは論理演算を施すことによって、そのモジュールの新しい状態が計算される。この状態更新属性２０５は、ここで用いる数学あるいは論理演算を文字列として定義するものである。この演算は、数学関数はもとより、IF-THENルール的な論理演算も構造化して記述することができる。これにより、常微分方程式、偏微分方程式に限らず、ABMのようなルールベースの生体機能数理モデルを扱うことが可能になる。
【００８４】
後述するシミュレーション実行部４２は、他のモジュールから信号を受け取った場合、状態更新属性２０５を参照して、その信号に対して演算を行い、その演算結果に基づいて状態属性２０４を変更することにより、モジュールの状態を変化させる。
【００８５】
（パラメータ値属性２０６）
パラメータ値属性２０６は、モジュールの性質（パラメータ値）を記述する属性である。各モジュールの状態更新を表す数学および論理演算には、複数のパラメータ（状態とは異なり通常定数値）が用いられる。このパラメータ値属性２０６はこれらのデフォルトパラメータ値とその物理・化学・生理学的意味とを記述するメタデータを管理する。
【００８６】
（位置・姿勢属性２０７）
位置・姿勢属性２０７は、モジュールの位置・姿勢を記述する属性である。この位置・姿勢属性２０７は、対象とするモジュールが物理的実体である場合、その実体の３次元空間内の位置と姿勢とを表す座標系を定義する。あるモジュールが階層的に親モジュールの子である場合、子モジュールの位置および姿勢は、親モジュールの座標系からの相対座標系として定義される。
【００８７】
また、位置・姿勢属性２０７は、ルートモジュールの座標系を基準（ワールド座標系）としたモジュールの位置および姿勢も管理する。モジュールの状態属性にそのモジュールの位置・姿勢が含まれる場合は、状態更新と共に位置・姿勢も変化する。
【００８８】
（形状属性２０８）
形状属性２０８は、モジュールの形状を表す属性であり、原則的には時間的に変化しない形状データを管理する属性である。従って、物理的実体の形状変化をモデル化する場合は、形状が変化しない「アトム」的モジュールに至るまで全体を細分化し、複数の形状の変化しないモジュールの集合体が構成される。
【００８９】
形状データは、例えば、３Ｄ-ＣＡＤ（Computer Aided Design）が標準的にサポートするｖｒｍｌ（virtual reality modeling language）形式あるいは、一般的ボリュームデータであるが、他の形式にも拡張可能である。この形状データは、モデル全体の形状の可視化、およびABMなどにおいて、モデルの状態更新がモデルを構成する物理的実体の形状に依存する場合に使用される。
【００９０】
例えば、細胞膜（細胞膜モジュール）の中に、種々の細胞内器官（細胞内器官モジュール）や蛋白質（蛋白質モジュール）が存在し、その合い間を複数の陽および陰イオン（イオンモジュール）が拡散し、膜電位等の状態が変化するモデルを考えた場合、細胞膜モジュール、細胞内器官モジュール、蛋白質モジュールの形状が、イオンモジュールが移動する空間を決定する。
【００９１】
各イオンモジュールは、その位置を状態属性として持ち、それが時々刻々と変化する。各状態更新に際して、それぞれのイオンモジュールは、細胞膜モジュール、細胞内器官モジュールおよび蛋白質モジュールと衝突判定を行う。このとき、各イオンモジュールの状態更新は、細胞膜モジュール、細胞内器官モジュールおよび蛋白質モジュールの位置と形状情報とに依存する。従って、各イオンモジュールは、細胞膜モジュール、細胞内器官モジュールおよび蛋白質モジュールと機能的結合関係をもつ。
【００９２】
（ＩＤ属性２０９）
ＩＤ属性２０９は、モジュールを識別するための識別子（ＩＤ）を記述する属性である。モジュールに入出力ポートをもつカプセル化を施すことによって一旦作成されたモジュールの再利用性と編集（改訂）性を向上させた。カプセル化されたモジュールは特別なＩＤ(RMID: Registered Module ID)を持つことができる。ＩＤ属性２０９は、このＲＭＩＤを記述している。
【００９３】
（入出力ポート属性２１０）
入出力ポート属性２１０は、カプセル化されたモジュールが有する入力ポートおよび出力ポートの数を規定する。
【００９４】
すなわち、モジュールは、モジュールの状態変化を誘発する信号を送受信するための入力ポートまたは出力ポートもしくはその両方を有しており、当該入力ポートおよび出力ポートの数は、属性の少なくとも１つである入出力ポート属性２１０によって規定されている。構造形成部２３は、モジュール間の機能的結合関係を変更するときに、入出力ポート属性２１０を変更する。
【００９５】
なお、入出力ポートの数は、機能的結合関係を示すエッジの端部の数と一致している必要はない。例えば、ひとつの出力ポートから複数のエッジか延びていてもよい。
【００９６】
カプセル化の具体的内容を以下に記す。図４は、カプセル化されたモジュール間の構造的関係および機能的結合関係を視覚的に示す図である。同図には、あるモジュール２００ａと、モジュール２００ａに影響を与え得るモジュール２００ｄとが示されている。両者の構造的関係は、エッジ２５１で示されており、機能的結合関係は、エッジ２６１で示されている。
【００９７】
モジュール２００ａは、下位の構成要素としてのモジュール２００ｂおよび２００ｃと、エッジ２５２および２５３によって構造的関係を結んでおり、エッジ２６２および２６３によって機能的結合関係を結んでいる。モジュール２００ｂとモジュール２００ｃとの構造的関係は、エッジ２５４で示されている。
【００９８】
カプセル化によって、幾何学的あるいは論理的包含関係(inclusion, constituent)、接触・連結関係(attachment)を含むモジュラー構造、および機能的結合関係に関して閉じたモジュールの内部には、その外からアクセスできなくなる。すなわち、カプセル化されたモジュールの内部にあるモジュールは、カプセル外のモジュールと如何なる構造的関係も機能的結合も結ぶことができない。
【００９９】
一方、カプセル化されたモジュールは、カプセル化されたモジュールの内部において、他のモジュールと構造的関係を結ぶことはでき、他のモジュールの下位の構成要素となることができる。
【０１００】
また、カプセル化されたモジュールの内部では、モジュールの追加や削除によってその構造を変更することができる。従って、カプセル化されたモジュールを下位方向に拡張するには、カプセル化されたモジュールの内部にカプセル化された、あるいはカプセル化されていない下位モジュールを付加すればよい。
【０１０１】
カプセル化されたモジュールは複数の入出力ポートをもつことができ、これらのポートを介してのみ、当該モジュールおよびその下層モジュールは外部と機能的結合を結ぶことができる。
【０１０２】
入出力ポートは、入出力ポート属性２１０としてクラス化されており、各ポートはカプセル化されたモジュール内でユニークなＩＤをもち、入力を受け付ける信号の型、その物理・化学単位(mVやmA，kgなど)、および信号の物理・化学・生理学的な意味に関するメタデータをもつことができる。この機能によって、小さな生体機能単位を表現する複数のカプセル化されたモジュールを組み合わせて複雑な生体機能を表現するモジュールを構築することが容易になる。
【０１０３】
上述の属性を有するクラスを定義することにより、常微分方程式（ODE）、差分方程式（DE）、偏微分方程式（PDE）、確率微分方程式（SDE）あるいはエージェントベースモデル（ABM）の任意のタイプ、あるいはこれらを複合したハイブリッド型のモデルが、同じデータ構造で記述でき、単一の階層的データベース・モデル開発・シミュレーション統合システムの上で統一的に管理・シミュレーションを実施することが可能になる。
【０１０４】
以上のように、生体モデル１０は、生体を数理モデルによって表現した生体モデルを用いてシミュレーションを行うシミュレーション装置に利用される生体モデルである。生体モデル１０は、生体を構成する複数の構成要素をそれぞれモデル化した複数のモジュールを含んでおり、モジュールを表現したモジュールデータは、構造的関係属性２０１、機能的結合関係属性２０２、状態属性２０４を少なくとも含んでいる。
【０１０５】
構造的関係属性２０１は、生体の物理的構造に従って、当該モジュールが結合する他のモジュールを特定する情報である。機能的結合関係属性２０２は、生体の機能的構造に従って、当該モジュールが結合する他のモジュールを特定する情報であるとともに、構造的関係属性２０１によって規定されるモジュールの階層構造に基づき、１つの上位モジュールと当該上位モジュールに従属するすべての下位モジュールよりなるカプセル化モジュールが設定されている場合には、機能的結合関係属性２０２によって特定される当該モジュールと結合可能なモジュールが、当該モジュールの属するカプセル化モジュールに属する他のモジュールに制限されている。状態属性２０４は、当該モジュールの状態を示す情報である。
【０１０６】
シミュレーション部４が、生体モデル１０に与えられた、状態変化を誘発する信号を、各モジュールデータの機能的結合関係属性２０２に従い、結合したモジュールに順次伝達させて、当該伝達された信号に対する各モジュールの状態変化を決定することにより、生体モデル全体の状態変化のシミュレーションを行う。
【０１０７】
なお、上述した属性は、あくまで一例であり、上述以外の属性のセットを用いてもよい。
【０１０８】
（属性を変更するメソッド）
関数群２２０は、モジュール２００の属性を設定または変更する関数、および、属性が有する値を用いて演算を行う関数のセットである。換言すれば、関数群２２０は、データ構造を操作する操作方法のリストである。構造形成部２３は、関数群２２０を用いてモジュール２００の属性の設定、変更等を行う。
【０１０９】
関数群２２０の例として、構造的関係属性変更メソッド２２１、機能的結合関係属性変更メソッド２２２、状態属性更新メソッド２２３について説明する。関数群２２０には、これらのメソッド以外のメソッドも含まれているが、発明の特徴点とは直接関係ないため、その説明は省略する。
【０１１０】
（構造的関係属性変更メソッド２２１）
構造的関係属性変更メソッド２２１は、構造的関係属性２０１を変更するためのメソッドである。具体的には、構造的関係属性変更メソッド２２１は、構造的関係属性２０１が示す各エッジの始点または終点の変更、特定のエッジの消去、新たなエッジの追加等の処理を行うためのメソッドである。
【０１１１】
（機能的結合関係属性変更メソッド２２２）
機能的結合関係属性変更メソッド２２２は、機能的結合関係属性２０２を変更するためのメソッドである。具体的には、機能的結合関係属性変更メソッド２２２は、機能的結合関係属性２０２が示す各エッジの始点または終点の変更、特定のエッジの消去、新たなエッジの追加等の処理を行うためのメソッドである。
【０１１２】
なお、構造的関係属性変更メソッド２２１と機能的結合関係属性変更メソッド２２２とを統合して、ひとつのメソッドとしてもよい。
【０１１３】
（状態属性更新メソッド２２３）
状態属性更新メソッド２２３は、モジュールの状態更新のルール属性に従ったシステムランタイムにおける、状態属性の状態属性値を更新するためのメソッドである。状態更新を行う時には、モデル全体の時間発展（シミュレーション）を制御する時計モジュール４３（図１０参照）によって歩調取りを行う。
【０１１４】
（ＸＭＬ文書の具体例）
図５は、モジュール２００のデータ構造をＸＭＬ文書で記述した場合の具体例を示す図である。同図には、モジュールのデータ構造を示すＸＭＬ文書の一部のみが示されている。同図に示すＸＭＬ文書は、あくまで一例であり、上述したデータ構造を実現できるものであれば、どのようなＸＭＬ文書を用いてもよい。
【０１１５】
（サーバ６の構成）
次に、サーバ６の構成の概略について説明する。サーバ６を構成する各部における処理の詳細については、後述する。
【０１１６】
（データベース１）
データベース１は、生体モデル１０を登録する登録装置である。図６は、データベース１の構成を示す概略図である。同図に示すように、データベース１は、モデル格納部１１およびモデル管理部１２を備えている。
【０１１７】
モデル格納部１１は、生体モデル１０（すなわち、モジュール２００の集合）およびモジュール２００を管理するためのモジュール管理テーブル２３０を格納する。
【０１１８】
モデル管理部１２は、モデル格納部１１へのモジュールの格納、およびモデル格納部１１に格納されたモジュールの削除、モジュールの追加および削除に伴うモジュール管理テーブル２３０の書き換えを行う。モデル管理部１２は、特に、変更履歴記録部１３、使用頻度記録部１４、ＩＤ管理部１５を備えている。
【０１１９】
変更履歴記録部１３は、各モジュールの変更履歴をモジュール管理テーブル２３０に記録する。具体的には、変更履歴記録部１３は、モジュールの更新時間、当該モジュールを変更することによって生じた新たなモジュールを示す情報（派生履歴）、および変更されたモジュールは、もともとどのモジュールを修正することによって構築されたかというモジュールの修正履歴を２３０に記録する。
【０１２０】
使用頻度記録部１４は、あるモジュールが別の生体モデルの一部として利用されるごとに、その回数を使用頻度としてモジュール管理テーブル２３０に記録する。すなわち、使用頻度記録部１４は、モデル格納部１１に登録されている生体モデルにおける、各モジュールの使用頻度をモジュール管理テーブル２３０に記録する。
【０１２１】
ＩＤ管理部１５は、モデル格納部１１に登録されたモジュールのＲＭＩＤを管理する。具体的には、ＩＤ管理部１５は、モデル格納部１１内の同じＲＭＩＤをもつモジュールどうしをＸＭＬ形式で全文またはその一部を比較することによって、当該モジュールが更新されたかどうかを判定し、更新されたと判定した場合に、更新されたモジュールに対して新たなＲＭＩＤを付与する。
【０１２２】
図７（ａ）および図７（ｂ）は、モジュール管理テーブル２３０の一例を示す図である。同図（ａ）に示すように、モジュール管理テーブル２３０は、各モジュールのＲＭＩＤ、登録日時、最終更新日時、修正履歴、派生履歴および使用頻度を示すものである。モジュール管理テーブル２３０には、これらの情報の他に、モジュールの作成者の名前、モジュールの名称、カテゴリなどの情報が含まれていてもよい。
【０１２３】
修正履歴とは、そのモジュールは、どのモジュールを修正することによって生じたのかを示す情報である。例えば、図７において、ＲＭＩＤ「１０１」のモジュールは、ＲＭＩＤ「９０」のモジュールを修正したものである。
【０１２４】
派生履歴とは、そのモジュールを変更することによって作成されたモジュールの情報であり、進化の系統樹において当該モジュールの子にあたるモジュールを示している。例えば、図７（ａ）において、ＲＭＩＤ「１０１」のモジュールを変更することによって作成されたモジュールとして、ＲＭＩＤ「１１２」、「１１３」の２つのモジュールが存在することが示されている。
【０１２５】
なお、モデル格納部１１には、生体モデルとして構造化されていない単独のモジュールが登録されていてもよい。
【０１２６】
また、図７（ｂ）に示すように、モジュール管理テーブル２３０は、あるモジュールと構造的関係および機能的結合関係を有するモジュールを示す情報を含んでいてもよい。図７（ｂ）に示す例では、注目するモジュールと関係を有するモジュールのＲＭＩＤが「対象ＩＤ」として示されており、ＲＭＩＤ「１０１」のモジュールは、ＲＭＩＤ「１０２」のモジュールと包含関係にあるとともに機能的結合関係にもあり、ＲＭＩＤ「１０３」のモジュールとは構成関係にあることを示している。
【０１２７】
後述の説明では、関係情報取得部３２は、構造的関係属性２０１および機能的結合関係属性２０２を解析することにより、ユーザが指定したモジュール（指定モジュール）と関係を有しているモジュールを特定しているが、この特定は、モジュール管理テーブル２３０を参照することによって、指定モジュールと関係を有しているモジュールを特定することで行われることが好ましい。
【０１２８】
（モデル作成部２）
モデル作成部２は、ユーザの指示に従い、モデル格納部１１に格納された生体モデル１０を用いて、新しい生体モデルを作成する。図８は、モデル作成部２の構成を示す概略図である。同図に示すように、モデル作成部２は、モデル入出力部（モジュール取得手段）２１、記憶部２２、構造形成部（構造形成手段）２３を備えている。
【０１２９】
モデル入出力部２１は、モデル管理部１２を介して、モデル格納部１１に格納された生体モデル１０を取得するとともに、構造形成部２３によって変更または新たに生成された生体モデル１０（モジュール２００）をモデル管理部１２へ出力する。モデル入出力部２１は、モデル格納部１１から取得した生体モデル１０を一時的に記憶部２２に格納する。
【０１３０】
構造形成部２３は、モデル入出力部２１が取得した、生体モデル１０を構成するモジュール間の構造的関係、機能的結合関係および位置等を変更または新たに形成するものである。換言すれば、構造形成部２３は、入出力部５が受け付けた指示に従い、モデル入出力部２１が取得したモジュールデータが表現するカプセル化モジュールを単位として、少なくとも構造的関係属性２０１および機能的結合関係属性２０２を変更する。
【０１３１】
この構造形成部２３は、少なくとも構造的関係形成部２４、機能的結合関係形成部２５および位置変更部２６を備えている。構造形成部２３は、変更または新たに生成したモジュールをモデル入出力部２１を介してモデル管理部１２へ出力する。なお、構造形成部２３は、構造的関係形成部２４、機能的結合関係形成部２５および位置変更部２６以外の、モジュールの属性を変更する機能ブロックを備えているが、これらの機能ブロックについては発明の特徴点とは直接関係がないため、その説明を省略する。
【０１３２】
構造的関係形成部２４は、入出力部５が受け付けたユーザの指示に従い、モジュール間の構造的関係を変更または新たに形成する。具体的には、構造的関係形成部２４は、モデル入出力部２１が取得したモジュールのデータ構造にアクセスし、当該モジュールに含まれる構造的関係属性変更メソッド２２１を用いて、当該モジュールの構造的関係属性２０１を変更する。
【０１３３】
より具体的には、構造的関係形成部２４は、構造的関係属性２０１が規定するエッジの始点または終点の変更、既存のエッジの削除、新規のエッジの追加などの処理を行う。
【０１３４】
機能的結合関係形成部２５は、入出力部５が受け付けたユーザの指示に従い、モジュール間の機能的結合関係を変更または新たに形成する。具体的には、機能的結合関係形成部２５は、モデル入出力部２１が取得したモジュールのデータ構造にアクセスし、当該モジュールに含まれる機能的結合関係属性変更メソッド２２２を用いて、当該モジュールの機能的結合関係属性２０２を変更する。
【０１３５】
より具体的には、機能的結合関係形成部２５は、機能的結合関係属性２０２が規定するエッジの始点または終点の変更、既存のエッジの削除、新規のエッジの追加などの処理を行う。すなわち、構造形成部２３は、機能的結合関係属性２０２が示すエッジの始点または終点、もしくはその両方を変更することにより、生体の機能的構造に従ったモジュールの結合を変更する。
【０１３６】
また、機能的結合関係形成部２５は、入出力ポート属性２１０を変更する機能も有しており、モジュール間の機能的結合関係を変更する場合に、その変更に合わせて入出力ポートの数（すなわち、入出力ポート属性）を変更することができる。入出力属性を変更するためのメソッドは、関数群２２０に含まれている。
【０１３７】
ユーザは、ＧＵＩを介して、変更（または追加）対象のエッジの始点または終点となるモジュール、または、削除対象のエッジを指定する。換言すれば、入出力部５は、変更（または追加）対象のエッジを特定する情報および当該エッジの始点または終点となるモジュールを特定する情報、または、削除対象のエッジを特定する情報を、ユーザから取得する。
【０１３８】
位置変更部２６は、入出力部５が受け付けたユーザの指示に従い、モデル入出力部２１が取得したモジュールのデータ構造にアクセスし、状態属性更新メソッド２２３を用いて、当該モジュールの位置・姿勢属性２０７を変更する。
【０１３９】
ユーザは、追加または変更するモジュールの位置に関する情報（位置情報）をＧＵＩを介して入力する。位置情報の入力は、所定の選択肢のうちのひとつを選択することによって入力されてもよいし、数値等を直接入力することによって入力されてもよい。
【０１４０】
（モデル検索部３）
図９は、モデル検索部３の構成を示す概略図である。同図に示すように、モデル検索部３は、キーワード検索部３１、関係情報取得部（モジュール特定手段）３２、記憶部３３、ツリー作成部３４、モジュール取得部３５、履歴情報取得部３６、系統樹作成部３７、使用頻度リスト作成部（使用頻度リスト作成手段）３８を備えている。
【０１４１】
キーワード検索部３１は、ユーザが入力したキーワードを用いて、モジュール管理テーブル２３０を検索し、その検索結果を端末装置７へ出力する。なお、モデル検索部３は、ユーザが入力したキーワードおよび指示を、入出力部５を介して取得する。入出力部５は、ユーザが注目する（ユーザが指定する）モジュール（指定モジュール）を特定するモジュール指定情報（特定情報）を受け付ける特定情報受付手段として機能する。
【０１４２】
関係情報取得部３２は、指定モジュールと構造的関係または機能的結合関係にあるモジュール、もしくはその両方を特定する情報（関係情報）を取得する。
【０１４３】
具体的には、関係情報取得部３２は、指定モジュールのデータ構造にアクセスし、その構造的関係属性２０１または機能的結合関係属性２０２、もしくはその両方によって記述された、当該指定モジュールと関係を有するモジュールのＲＭＩＤを、指定モジュールとの関係（構造的関係または機能的結合関係）と対応付けて取得する。換言すれば、関係情報取得部３２は、入出力部５が受け付けたモジュール指定情報が示すモジュールデータが表現するモジュールと結合関係にあるモジュールを、構造的関係属性２０１または機能的結合関係属性２０２を解析することにより特定する。関係情報取得部３２は、取得した関係情報を記憶部３３に格納する。
【０１４４】
ツリー作成部３４は、関係情報取得部３２が取得した関係情報を用いて、指定モジュールと構造的関係または機能的結合関係にあるモジュールを示すツリー（関係ツリー）を作成し、端末装置７へ出力する。
【０１４５】
モジュール取得部３５は、ユーザの指示に従い、指定モジュールのデータ構造をモデル格納部１１から取得する。
【０１４６】
履歴情報取得部３６は、モジュール管理テーブル２３０から、指定モジュールの派生履歴の情報（派生履歴情報）を取得し、当該派生履歴情報を記憶部３３に格納する。
【０１４７】
系統樹作成部３７は、履歴情報取得部３６が取得した派生履歴情報を用いて、指定モジュールの進化の系統樹を作成し、作成した系統樹を端末装置７へ出力する。
【０１４８】
使用頻度リスト作成部３８は、データベース１に登録されている生体モデルに含まれる各モジュールの使用頻度が記録されたモジュール管理テーブル２３０（使用頻度テーブル）を参照することにより、使用頻度に基づいてモジュールが配列された使用頻度リストを作成する。
【０１４９】
（シミュレーション部４）
図１０は、シミュレーション部４の構成を示す概略図である。同図に示すように。シミュレーション部４は、モデル取得部４１、シミュレーション実行部（シミュレーション手段）４２、時計モジュール（計時手段）４３、記憶部４４を備えている。
【０１５０】
モデル取得部４１は、ユーザが指定した生体モデル１０（モジュール２００）をモデル格納部１１から取得し、記憶部４４に格納する。
【０１５１】
シミュレーション実行部４２は、モデル取得部４１が取得した生体モデル１０を用いてシミュレーションを行う。この時、シミュレーション実行部４２は、ユーザから各種のシミュレーション条件（パラメータ）を取得し、そのシミュレーション条件下でシミュレーションを行い、その結果を入出力部５を介して端末装置７へ出力する。シミュレーション実行部４２が用いるシミュレーションプログラムは、既存のシミュレーションプログラムでよく、特に限定されない。
【０１５２】
時計モジュール４３は、シミュレーション実行部４２がシミュレーションを行う時の時間を刻むモジュールである。この時計モジュール４３も階層構造を持つことができ、複数段階の時間スケールで時刻を刻むことが可能である。生体モデル１０を構成する各モジュールの状態更新は、複数の時間スケールのうち特定の時間刻み毎に実施される。モジュールの状態更新は純粋仮想関数として定義され、時計モジュール４３から状態更新の指令を受けた各モジュールは、自分自身の状態更新のルール属性に記述された個別のルール従って、自らの状態属性を更新する。
【０１５３】
（モデル開発システム１００における処理の流れ）
次に、モデル開発システム１００における処理の流れの一例について、各処理ごとに説明する。ただし、後述する処理の流れは、あくまで一例に過ぎず、ある処理が終了した後に引き続いて別の処理が行われてもよい。
【０１５４】
（モデル登録処理の流れ）
図１１は、生体モデルの登録処理の流れの一例を示すフローチャートである。新規の生体モデルをデータベース１に登録する場合、まず、ユーザは、登録する生体モデル（生体モデルＡ）のデータ構造を、端末装置７を介してサーバ６に送信する（Ｓ１）。
【０１５５】
サーバ６の入出力部５は、生体モデルＡを受信すると、その生体モデルＡをモデル管理部１２へ出力する（Ｓ２）。
【０１５６】
モデル管理部１２のＩＤ管理部１５は、生体モデルＡを一時記憶部（不図示）に格納し、当該生体モデルＡに対してＲＭＩＤを付与する。すなわち、ＩＤ管理部１５は、生体モデルＡのＩＤ属性２０９に対してＲＭＩＤを記述する（Ｓ３）。
【０１５７】
ＲＭＩＤの付与が終了すると、モデル管理部１２は、生体モデルＡをモデル格納部１１に格納する。
【０１５８】
生体モデルＡの格納が終了すると、モデル管理部１２は、その旨を示す登録完了情報を、入出力部５を介して端末装置７へ送信する（Ｓ４）。
【０１５９】
端末装置７の主制御部７１は、登録完了情報を受け取ると、その旨を表示部７４に表示する（Ｓ５）。
【０１６０】
なお、既存のカプセル化されたモジュールを新たなモデルの構成要素として使用した場合は、もし既存のモジュール自体に何の変更もなされていなければ、その部分には新たなＲＭＩＤは付与されない。
【０１６１】
（モデル作成処理の流れ）
図１２は、生体モデル作成処理の流れの一例を示すフローチャートである。ここでは、生体モデル作成処理の一例として、既存の生体モデルＢ（その内部に複数のモジュールを有するモジュール）に、別の生体モデルＣの構成要素であるモジュールｃを組み込む場合の処理について説明する。
【０１６２】
まず、ユーザは、端末装置７を介して、生体モデルＢおよびモジュールｃを取得する命令（生体モデル取得命令）をサーバ６へ送信する（Ｓ１１）。
【０１６３】
サーバ６の入出力部５は、生体モデル取得命令を受信すると、その命令をモデル作成部２へ出力する。
【０１６４】
モデル作成部２のモデル入出力部２１は、受信した生体モデル取得命令が示す生体モデルＢおよびモジュールｃを、モデル管理部１２を介してモデル格納部１１から取得し、記憶部２２に格納する（Ｓ１２）。
【０１６５】
続いて、構造形成部２３は、記憶部２２に格納された生体モデルＢおよびモジュールｃのデータ構造を解析することにより、生体モデルＢを構成するモジュールの構造的関係および機能的結合関係を示す概念図（例えば、図４に示した模式図）、およびモジュールｃの概念図を端末装置７の表示部７４にそれぞれ表示するためのデータ（表示用データ）を生成し、入出力部５を介して端末装置７へ送信する（Ｓ１３）。
【０１６６】
端末装置７の主制御部７１は、入出力部７２を介して表示用データを受信すると、当該表示用データが示す概念図を表示部７４に表示する（Ｓ１４）。
【０１６７】
その後、ユーザは、図１３に示すように、表示部７４に表示された概念図を見ながら、生体モデルＢに含まれる特定のモジュールを削除し、モジュールｃを生体モデルＢに追加する操作を行う。
【０１６８】
この時、ユーザは、表示部７４に表示されたカーソル７５を用いて、構造的関係を表すエッジの始点（または終点）をモジュールｃに接続し、他方の端部を生体モデルＢに含まれるモジュールに接続することにより、両モジュール間の構造的関係を決定する。また、ユーザは、機能的結合関係を表すエッジの始点（または終点）をモジュールｃに接続し、他方の端部を生体モデルＢに含まれるモジュールに接続することにより、両モジュール間の機能的結合関係を決定する。
【０１６９】
また、ユーザは、構造的関係を示すエッジの種類、すなわち、包含関係、構成関係、接触・連結関係を入力するとともに、機能的結合関係を示すエッジに沿って伝達される信号の種類（例えば、カルシウム濃度変化を示す信号または電位の変化を示す信号）を入力する。
【０１７０】
さらに、ユーザは、モジュールｃが表現する生体構成要素を生体モデルＢが表現する生体構成要素に追加するときの位置（位置情報）を入力する。
【０１７１】
すなわち、ユーザは、端末装置７を介して、構造的関係および機能的結合関係を表すエッジを変更するための情報（エッジ変更情報）および位置情報を、モデル作成部２の構造形成部２３へ送信する（Ｓ１５）。
【０１７２】
構造形成部２３は、入出力部５を介してエッジ変更情報を受信すると、当該エッジ変更情報に基づいて、生体モデルＢの構造的関係属性２０１、機能的結合関係属性２０２および入出力ポート属性２１０を変更する（Ｓ１６）。
【０１７３】
具体的には、構造的関係形成部２４は、構造的関係属性変更メソッド２２１を用いて、構造的関係属性２０１に記述されたエッジの追加、削除、始点および／または終点の変更を行う。このとき、構造的関係形成部２４は、追加されたエッジに対してＩＤを付与する。
【０１７４】
また、機能的結合関係形成部２５は、機能的結合関係属性変更メソッド２２２を用いて、機能的結合関係属性２０２に記述されたエッジの追加、削除、始点および／または終点の変更、および信号の種類を記述したメタデータ２０２ａの変更を行う。
【０１７５】
さらに、機能的結合関係形成部２５は、機能的結合関係の変更に伴い、入出力ポート属性２１０に記述された入出力ポートの数を変更する。
【０１７６】
また、位置変更部２６は、位置情報を受信すると、当該位置変更情報に基づいて、形状属性２０８を変更する。例えば、位置情報は、所定の位置関係のうちのひとつを特定する識別子として示され、位置変更部２６は、関数群２２０のひとつを用いて、位置情報が示す識別子を形状属性２０８に記述してもよい。
【０１７７】
構造形成部２３は、データ構造の変更が完了すると、変更した生体モデルＢ（新生体モデルＢ）を記憶部２２に格納し、変更が完了した旨を示す変更完了情報を端末装置７へ送信する（Ｓ１７）。
【０１７８】
端末装置７の主制御部７１は、変更完了情報を受け取ると、その旨を表示部７４に表示する（Ｓ１８）。
【０１７９】
新生体モデルＢをデータベース１に登録する場合、ユーザは、端末装置７を介して、新生体モデルＢを登録する命令（登録命令）をモデル作成部２へ送信する（Ｓ１９）。
【０１８０】
モデル作成部２のモデル入出力部２１は、登録命令を受け取ると、記憶部２２に格納された新生体モデルＢをモデル管理部１２へ出力する（Ｓ２０）。
【０１８１】
モデル管理部１２のＩＤ管理部１５は、新生体モデルＢを受信すると、当該新生体モデルＢと変更前の生体モデルＢとを比較し、両者が異なっていると判定した場合に、新生体モデルＢに新たなＲＭＩＤを付与する（Ｓ２１）。
【０１８２】
そして、変更履歴記録部１３は、モジュール管理テーブル２３０に、付与されたＲＭＩＤと対応付けて新生体モデルＢを追加し、新生体モデルＢが生体モデルＢを修正したものであることを示す修正履歴をモジュール管理テーブル２３０に記述するとともに、生体モデルＢの派生履歴に新生体モデルＢを追加する（Ｓ２２）。
【０１８３】
さらに、使用頻度記録部１４は、モジュール管理テーブル２３０において、モジュールｃの使用頻度を「１」増加する（Ｓ２３）。
【０１８４】
その後、モデル管理部１２は、新生体モデルＢをモデル格納部１１に格納する（Ｓ２４）。
【０１８５】
モデル管理部１２は、新生体モデルＢの格納が完了すると、新生体モデルＢの登録が完了した旨を示す登録完了情報を端末装置７へ送信する（Ｓ２５）。
【０１８６】
端末装置７は、登録完了情報を受信すると、その旨を表示部７４に表示する（Ｓ２６）。
【０１８７】
なお、既存の生体モデルである生体モデルＢに含まれるモジュール間の構造を変更する場合には、モデル入出力部２１は、ステップ１２において、生体モデルＢのみを取得すればよい。
【０１８８】
また、複数のモジュールを用いて、全く新しい生体モデルを構築する場合には、モデル入出力部２１は、ステップ１２において、当該複数のモジュールを取得すればよい。
【０１８９】
（モデル検索処理の流れ）
図１４は、モデル検索処理の流れの一例を示すフローチャートである。ここでは、ユーザが検索キーワードを入力して、注目する生体モデル（注目生体モデル）を特定し、注目生体モデルと関係を有する生体モデルをさらに調べていく場合の処理の流れについて説明する。
【０１９０】
まず、ユーザは、端末装置７の操作部７４を用いて検索キーワードを入力する。換言すれば、端末装置７の主制御部７１は、ユーザが入力した検索キーワードを受け付ける（Ｓ３１）。主制御部７１は、受け付けた検索キーワードをモデル検索部３へ送信する。
【０１９１】
モデル検索部３のキーワード検索部３１は、入出力部５を介して検索キーワードを受け取ると、モデル格納部１１に格納されているモジュールが含む各種のメタデータを検索することにより、検索キーワードに対応したモジュールを特定する（Ｓ３２）。
【０１９２】
検索キーワードは、例えば、モジュールの作成者の名前、モジュールのカテゴリー、モジュールが表現している生体構成要素の名称、生体機能およびその全般的説明、発現部位、関連文献（オリジナル論文、引用文献、被引用文献のＩＤ、タイトル）情報、モデル登録者名、登録日時、修正日時等である。
【０１９３】
また、各モジュールには、複数のメタデータが存在しているが、キーワード検索部３１は、そのすべてのメタデータについて検索してもよいし、検索キーワードに対応する情報が記述されているメタデータのみを検索してもよい。
【０１９４】
キーワード検索部３１は、メタデータの検索が終了すると、検索結果、すなわち、検索キーワードに対応したモジュールの情報を端末装置７へ送信する（Ｓ３３）。
【０１９５】
端末装置７の主制御部７１は、検索結果を受け取ると、当該検索結果を表示部７４に表示する（Ｓ３４）。
【０１９６】
ユーザは、検索結果としてリストアップされたモジュールのうちからひとつを選択する。すなわち、主制御部７１は、ユーザが指定したモジュール（指定モジュール）を特定する情報（モジュール指定情報）を受け付ける（Ｓ３５）。そして、主制御部７１は、モジュール指定情報をモデル検索部３へ送信する。
【０１９７】
モデル検索部３の関連情報取得部３２は、入出力部５を介してモジュール指定情報を受け取ると、モジュール指定情報が示す指定モジュールのデータ構造にアクセスし、指定モジュールと構造的関係および機能的結合関係にあるモジュールを特定する情報（関係情報）を取得する。
【０１９８】
具体的には、関係情報取得部３２は、指定モジュールの構造的関係属性２０１および機能的結合関係属性２０２によって記述された、当該指定モジュールと関係を有するモジュールのＲＭＩＤを、指定モジュールとの関係と対応付けて取得し、取得した関係情報を記憶部３３に格納する（Ｓ３６）。
【０１９９】
ツリー作成部３４は、関係情報取得部３２が取得した関係情報を用いて、指定モジュールと構造的関係または機能的結合関係にあるモジュールを、その関係とともに示すツリー（関係ツリー）を作成し、端末装置７へ出力する（Ｓ３７）。
【０２００】
端末装置７の主制御部７１は、関係ツリーを受け取ると、当該関係ツリーを表示部７４に表示する（Ｓ３８）。
【０２０１】
ユーザは、関係ツリーに示された、指定モジュールと関係のあるモジュールのうちのひとつを新たな指定モジュールとして指定する。すなわち、主制御部７１は、新たなモジュール指定情報を受け付ける（Ｓ３９）。
【０２０２】
その後、関連情報の取得（Ｓ４０）、関係ツリーの作成（Ｓ４１）、関係ツリーの表示（Ｓ４２）を同様に繰り返す。
【０２０３】
最終的にユーザは、関係ツリーに示されたモジュールのデータ構造をモデル格納部１１から取得してもよい。この場合、モジュール取得部３５は、ユーザの指示に従い、指定モジュールのデータ構造をモデル格納部１１から取得する。また、ユーザは、全く別の検索を開始してもよい。
【０２０４】
なお、ステップ３１において、主制御部７１は、検索キーワードではなく、指定モジュールのＲＭＩＤを受け付けてもよい。この場合、キーワード検索部３１は、ＩＤ属性２０９を検索することにより、当該ＲＭＩＤを有するモジュールを検索してもよい。
【０２０５】
（進化の系統樹に沿った検索処理）
モデル開発システム１００では、指定モジュールを変更することによって作成されたモジュールを示す進化の系統樹に沿ってモジュールを調べることができる。
【０２０６】
図１５は、モデル検索処理の流れの別の例を示すフローチャートである。まず、主制御部７１は、ユーザから、指定モジュールを特定するモジュール指定情報を受け付けると、当該モジュール指定情報をモデル検索部３へ送信する（Ｓ５１）。
【０２０７】
モデル検索部３の履歴情報取得部３６は、入出力部５を介してモジュール指定情報を受け取ると、そのモジュール指定情報が示す指定モジュールの派生履歴を示す派生履歴情報を、モジュール管理テーブル２３０を参照することにより取得する（Ｓ５２）。履歴情報取得部３６は、取得した派生履歴情報を記憶部３３に格納する。
【０２０８】
系統樹作成部３７は、記憶部３３に格納された派生履歴情報を用いて、指定モジュールの進化の系統樹を作成し、作成した系統樹を端末装置７へ出力する（Ｓ５３）。
【０２０９】
端末装置７の主制御部７１は、受信した進化の系統樹を表示部７４に表示する（Ｓ５４）。
【０２１０】
なお、系統樹作成部３７は、モジュール管理テーブル２３０の修正履歴も参照して、指定モジュールの先祖および子孫を含む進化の系統樹を作成してもよい。
【０２１１】
（モジュールの使用頻度の調査）
モデル開発システム１００では、モデル格納部１１に登録された生体モデルにおいて、どのモジュールがどれくらいの頻度で使用されているのかを調べることができる。
【０２１２】
図１６は、モジュールの使用頻度を調査する処理の流れの一例を示すフローチャートである。まず、ユーザは、使用頻度を調査することを命じる命令（使用頻度調査命令）を端末装置７に入力する。すなわち、端末装置７の主制御部７１は、使用頻度調査命令をユーザから受け付ける（Ｓ６１）。主制御部７１は、受け付けた使用頻度調査命令をモデル検索部３へ送信する。
【０２１３】
モデル検索部３の使用頻度リスト作成部３８は、入出力部５を介して使用頻度調査命令を受け取ると、モジュール管理テーブル２３０の使用頻度の欄を参照することにより、各モジュールの使用頻度を、当該モジュールのＲＭＩＤと対応付けて取得する（Ｓ６２）。
【０２１４】
そして、使用頻度リスト作成部３８は、各モジュールの使用頻度を比較し、使用頻度の高い順番にモジュールの名称を配列したリスト（使用頻度リスト）を作成し、作成した使用頻度リストを端末装置７へ送信する（Ｓ６３）。
【０２１５】
端末装置７の主制御部７１は、使用頻度リストを受け取ると、当該使用頻度リストを表示部７４に表示する（Ｓ６４）。
【０２１６】
なお、モデル検索部３における検索方法は、上述のものに限定されない。例えば、モデル検索部３は、モジュールの検索履歴を記録しておき、検索対象となった回数（検索回数）の多いモジュールをリストアップしてもよい。この場合、モデル検索部３は、モジュールのＲＭＩＤと、当該モジュールの検索回数とが対応付けられたテーブルを記憶部３３に格納すればよい。
【０２１７】
また、検索方法の一覧を表示部７４に表示し、ユーザに検索方法を選択させてもよい。
【０２１８】
また、モデル検索部３は、同じ進化の系統樹に属するモジュールを１つのグループとし、そのグループを単位として、当該グループの使用頻度を求めてもよいし、当該グループごとに構造的および機能的関係を示す関係ツリーを作成してもよい。
【０２１９】
（モデル検索部３の効果）
以上のように、カプセル化されたモジュールをデータベース化することで、生体機能モデル（モジュール）の検索が可能になっている。
【０２２０】
種々のキーワード検索によってリストアップされた生体モデル（モジュール）の中から目的とするモジュールが探索できた場合、そのモジュールを起点に関連モジュールを種々の関係に対して調査・探索することができる。
【０２２１】
この調査は上述の構造的関係および機能的結合関係に沿ったものである。すなわち、起点モジュールは他のモジュールと構造的関係、すなわち、幾何学的あるいは論理的包含関係(inclusion, constituent)、接触・連結関係(attachment)、および機能的結合関係をもつ。モデル検索部３における探索は、このどれかを指定して、その結合関係を順方向および逆方向に実施できる。
【０２２２】
例えば、複数の細胞が相互作用する細胞集団の動態モデルを考える。このとき、個々の細胞には様々な種類のイオンチャネル蛋白質があり、各チャネル蛋白質は複数のサブユニットから構成されている。さらに、細胞内には種々の細胞内器官があるとする。このような多数の細胞の中で、特定の細胞同士が相互作用する細胞集団の動態がモデル化されているとする。
【０２２３】
起点となるモジュールとして、ある特定の細胞が選択された場合、例えば、細胞モジュールの構成要素の調査・探索を行い、その中である特定のイオンチャネルモジュールを選択し、そのイオンチャネルモジュールの構成要素の探索、あるいはそのイオンチャネルモジュールが影響を受けている（機能的結合関係のある）細胞構成要素の調査・探索をする、といった細部（ミクロ）構造、細部の機能的結合関係を調査することができる。
【０２２４】
逆に、マクロな方向へ、その細胞モジュールが構成要素となっている細胞集団モデルの調査・探索や、その細胞モジュールが影響を受けている、あるいは影響を与えている別の細胞モジュールの調査・探索が可能である。
【０２２５】
また、例えば他の研究者によって、この細胞集団モデルがより大規模なモデルの構成要素（モデルの一部）として使用されている場合は、よりマクロな方向への調査・探索、あるいはそれに引き続いて逆にこの細胞集団モデルとは比較的関係の小さい別の機能をミクロな方向へ調査・探索することが可能である。
【０２２６】
また、データベースに登録された多数の生体モデルに対して、ある特定のモジュールが種々の生体モデルの要素として、どこにどの程度再利用されているか、また、あるモジュールのどの部分が変更され、新たにどのような機能のモジュールとしてデータベースに登録されたか（更新履歴）、あるいは、あるモジュールは他のどのモジュールとどのように構造的・機能的に関係しているかをマイニングすることができる。これよって、多数の機能要素が階層的に複雑に相互作用することによって発現する生体機能に関する新しい知識獲得に関するモデルベースの方法論を提供することができる。
【０２２７】
（シミュレーション処理の流れ）
図１７は、シミュレーション処理の流れの一例を示すフローチャートである。まず、ユーザは、シミュレーションに用いる生体モデル（シミュレートモジュール）を特定する情報（シミュレートモジュール特定情報）を端末装置７に入力する。すなわち、端末装置７の主制御部７１は、シミュレートモジュール特定情報をユーザから受け付ける（Ｓ７１）。主制御部７１は、受け付けたシミュレートモジュール特定情報をシミュレーション部４へ送信する。
【０２２８】
シミュレーション部４のモデル取得部４１は、入出力部５を介してシミュレートモジュール特定情報を受け取ると、当該シミュレートモジュール特定情報が示すモジュールをモデル格納部１１から取得する（Ｓ７２）。モデル取得部４１は、取得したモジュールを記憶部４４に格納する。
【０２２９】
そして、シミュレーション実行部４２は、シミュレーション条件の入力をユーザに促すためのシミュレーション条件要求を端末装置７へ送信する（Ｓ７３）。
【０２３０】
端末装置７の主制御部７１は、シミュレーション条件要求を表示部に表示する（Ｓ７４）。
【０２３１】
ユーザは、シミュレーション条件を操作部７３を介して入力し、シミュレーション部４へ送信する。すなわち、主制御部７１は、シミュレーション条件をユーザから受け付け、受け付けたシミュレーション条件をシミュレーション実行部４２へ送信する（Ｓ７５）。
【０２３２】
シミュレーション実行部４２は、シミュレーション条件を受け取ると、記憶部４４に格納されたシミュレートモジュールを用いて、当該シミュレーション条件下でシミュレーションを行う（Ｓ７６）。
【０２３３】
シミュレーション条件には、シミュレーションを行う時の時間スケールも含まれており、シミュレーション実行部４２は、ユーザが指定した時間スケールに対応した時間スケールの時間を時計モジュール４３に刻ませてシミュレーションを行う。
【０２３４】
シミュレーションのプログラムは、特に限定されず、どのようなものであってもよい。
【０２３５】
シミュレーション実行部４２は、シミュレーションを終えると、その結果を入出力部５を介して端末装置７へ出力する（Ｓ７７）。
【０２３６】
端末装置７の主制御部７１は、シミュレーション結果を表示部７４に表示する（Ｓ７８）。
【０２３７】
（シミュレーション部４の効果）
以上のように、データベース１に登録された既存のモジュールをモデル作成部２およびシミュレーション部４にインポートし、モジュールを容易に編集・改訂・シミュレーションすることができる。
【０２３８】
同様に、データベース１から複数のモジュールをモデル作成部２にインポートし、各モジュールの入出力ポートを、ＧＵＩを用いて相互に結合することにより、新しい結合モデルを容易に構築・シミュレーションすることができる。また、あるモジュールがいくつかのモジュールの集合体であった場合、その中の特定のモジュールを別のモジュールと入れ替えることができる。
【０２３９】
このことにより、例えば次のようなモデルシミュレーション実験を容易に実施することが可能になる。すなわち、もともとの生体モデル全体の動態と、特定のモジュールを異なるモジュールに入れ替えた場合の生体モデルの動態とを比較する数値実験である。複雑で大規模な生体システムの動態（機能発現）が、それを構成する下位層の要素の動態にどのような影響を受けるかを解析し、明らかにすることは重要な課題である。しかし、このような解析を実施するには、複雑で大規模なシステムを統一的かつ系統的に扱うツールが必要であり、これまで容易に実施することは困難であった。本モデル開発システム１００は、このような解析を容易にするものである。
【０２４０】
（モデル開発システム１００の利用の具体例）
既存の心筋細胞膜の電気的興奮現象を再現する数理モデルに、新たなイオン電流を導入し、より詳細な新規モデルを、モデル開発システム１００によって構築する場合の具体例について説明する。
【０２４１】
（１）まず、モデル作成部２に既存の膜モデルをインポートする。図１８は、既にデータベース１に登録されている膜モデルの概念図を表示した、表示部７４の画面を示す図である。同図において、四角で表示されているのがカプセル化されたモジュール（７７の符号を付している）である。一方、四角で囲まれていない円形は、カプセル化されていないモジュール（７８の符号を付している）を表している。
【０２４２】
（２）このモデルは、筋小胞体のモデルを持たない。そこで、モデル検索部３を用いて筋小胞体をモデル化したモジュールを検索する。図１９は、モジュール検索用画面の一例を示す図である。
【０２４３】
（３）筋小胞体モジュールの検索が終了すると、図２０に示したような、筋小胞体モジュールのＸＭＬ形式ファイルが表示部７４に表示される。
【０２４４】
（４）上記ＸＭＬ形式ファイルをモデル作成部２にインポートする。図２１は、筋小胞体モジュール７９が追加された状態を示す概念図を表示した表示部７４の画面を示す図である。
【０２４５】
（５）筋小胞体モジュール７９を膜モジュール８０の下位層に配置し、モデル作成部２のＧＵＩを利用して、図１３に示したように、膜モジュール８０および筋小胞体モジュール７９の入出力ポートを結合する。入出力ポートは、モジュールを表す図形の外周部に円形７６（例えば、Caiと命名されている円）で示されている。
【０２４６】
（６）筋小胞体も含む新規の心筋細胞膜モデルの膜電位変化（活動電位生成）のシミュレーションを実行する。図２２は、表示部７４に表示されるシミュレーション結果の一例を示す図である。
【０２４７】
その他、モデル開発システム１００を用いた生体の構造・機能モデル構築の具体例として、単一イオンチャネルのイオン透過に関するABM、細胞内微細構造とカルシウム動態に関するABM、脊髄神経回路（ニューラルネットワーク）動態に関する大規模ODEモデル、ヒト骨格系の運動に関するODEモデルを挙げることができる。どのモデルも本発明で提案するデータ構造および対応するXMLによって記述され、それぞれのモデルを構成するモジュール単位でデータベース化される。
【０２４８】
その他、上述以外の様々な生体モデルをモデル開発システム１００において用いてもよい。
【０２４９】
（ＧＵＩ画面の具体例）
上述した以外のＧＵＩ画面の具体例を図２３に示す。同図には、モジュールを検索する場合に表示される、モジュールのリスト（データベースのエントリ表示）と、検索結果として表示される関係ツリーとが示されている。
【０２５０】
（モデル開発システム１００の効果）
以上のように、モデル開発システム１００では、ＸＭＬ化された生体モデル全体およびそれを構成するモジュールをデータベース化することで、生体モデル全体としてのモジュールだけでなく、例え小さくても一定の機能をもつモジュール単位で、モジュールを検索することができる。
【０２５１】
また、生体モデル名やモジュール化された生体機能の名称などのキーワード検索によって目的とするモジュールが検索できた場合、そのモジュールを起点として、そのモジュールを要素とする生体モデル全体に渡って、関連するモジュールを複数の階層に渡って調査・探索することができる。この調査・探索は、個々のモジュール間に定義された構造的関係および機能的関係を利用することで実現されている。
【０２５２】
また、あるモジュールの一部を変更し、新たなモジュールを構築し、データベース１に登録する場合に対して、モジュールの更新履歴も調査できる。モジュールの更新履歴は、構造的関係や機能的関係とは異なる意味で、複数のモジュール間の関係を進化の系統樹として表す指標となる。これら２つの探索は、データベース１のデータマイニングに基づく生体機能の知識獲得において解析対象となっている。
【０２５３】
また、カプセル化されたモジュール、または、あるモジュールの構成要素としてのモジュールをデータベースから検索することができ、階層的モデル開発システムおよびシミュレーションの統合システムと連携することで、その動態をシミュレーション解析すること、および新たなモデルの構築を系統的に実施することができる。
【０２５４】
また、データベース１に登録された生体モデルのデータ構造をマイニングすることによって、生命・生体機能に関する新たな知識を獲得することができる。データベース化されたモデルは、複数のモジュールが階層的に組み合わされ、また機能的に結合した系として表現される。このとき、各モジュールの関係を表す構造的関係および機能的結合関係は、生体のある特定の機能単位（モジュール）と他の機能単位（モジュール）との相互関係を表している。データベースに登録された多数のモデル（モジュール）のそれぞれに対して以下の解析を実施することができる。
（１）他のどのモジュールの要素としてどの程度再利用されているかを解析する。
（２）他のどのモジュールとどのように構造的・機能的に関係しているかを解析する。
（３）どのモジュールのどこの部分が変更され、新たにどのような機能のモジュールとしてデータベースに登録されたのか（更新履歴）、更新履歴に基づくモジュール進化の系統樹を解析する。
（４）解析（３）によって得られた同じ系統樹に属するモジュールを一つのグループとし、グループを単位として、解析（１）および解析（２）を行う。
【０２５５】
解析（１）は、ある機能単位の汎用性に関する知識をもたらす。これは分子生物学において、ある種の遺伝子が生体内のどの器官で発現しているかを知ることに似ており、その生体機能版と言える。
【０２５６】
解析（２）は、ある生体機能が他のどのような生体機能と連携して発現しているかに関する知識を与える。解析（３）によって、詳細には異なるモジュールをグループ化することで生体機能を粗視化し、そのグループに基づく解析（１）および（２）によって、生体機能間の関係を理解しやすくする。
【０２５７】
これらの解析を、ミクロな機能モジュールからマクロな機能モジュールに至る様々なスケールで行うことで、例えば、どのようなミクロな機能が直接的にマクロな機能の発現に影響を与えているか、あるいはその逆があるかといった知識を得ることができる。
【０２５８】
以上のように、モデル開発システム１００では、生体の構造と機能に関する数理モデルの系統的管理・運用・再利用が促進し、その結果、既存モデルおよび新規モデルの研究者間の交換が促進する。また、複雑で大規模なモデルの開発が容易になり、加速される。生体の構造と機能の数理モデルの発達は、予測生物学、予測生命科学、最終的には予測医学の基盤構築へと繋がる。すなわち、生体機能を数理モデルによって再現するだけでなく、種々の条件（環境や治療方法）によって、生体機能がどのような影響を受けるかをモデルシミュレーションベースで予測することが可能になると考えられる。本発明はこのような予測生命科学の基盤技術と言える。
【０２５９】
（変更例）
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【０２６０】
例えば、サーバ６は、ユーザの情報を管理するためのユーザ管理部を備えていてもよい。また、ユーザがモデル開発システム１００を利用するときに、サーバ６は、ユーザにログインパスワードの入力を要求してもよい。
【０２６１】
また、モデル作成部２、モデル検索部３、シミュレーション部４は、それぞれ独立した装置として実現されていてもよい。その場合、各装置は、入出力部５に相当する入出力部をそれぞれ備えていればよい。
【０２６２】
また、上述したデータベース１、モデル作成部２、モデル検索部３およびシミュレーション部４の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０２６３】
すなわち、データベース１、モデル作成部２、モデル検索部３およびシミュレーション部４は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるデータベース１、モデル作成部２、モデル検索部３およびシミュレーション部４の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記データベース１、モデル作成部２、モデル検索部３およびシミュレーション部４に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０２６４】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０２６５】
また、データベース１、モデル作成部２、モデル検索部３およびシミュレーション部４を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【産業上の利用可能性】
【０２６６】
生体モデルの構成要素の組み換えを容易に行えるため、既存の生体モデルを改変した生体モデルを容易に作成することができ、作成した生体モデルでシミュレーションを行うことができる。また、登録された生体モデルを検索することにより、様々な情報を抽出することができる。それゆえ、生体モデルの開発、調査、シミュレーションのためのモデル作成装置、モデル登録装置、検索装置、シミュレーション装置およびそれらを統合したシステムとして利用できる。
【図面の簡単な説明】
【０２６７】
【図１】生体モデルを構成するモジュールの構造を示す概略図である。
【図２】本発明の一実施形態に係るモデル開発システムの構成を示す概略図である
【図３】構造的関係属性および機能的結合関係属性が示すモジュール間の関係の一例を説明するための図である。
【図４】カプセル化されたモジュール間の構造的関係および機能的結合関係を視覚的に示す図である。
【図５】モジュールのデータ構造をＸＭＬ文書で記述した場合の具体例を示す図である。
【図６】データベースの構成を示す概略図である。
【図７】（ａ）および（ｂ）は、モジュール管理テーブルの一例を示す図である。
【図８】モデル作成部の構成を示す概略図である。
【図９】モデル検索部の構成を示す概略図である。
【図１０】シミュレーション部の構成を示す概略図である。
【図１１】生体モデルの登録処理の流れの一例を示すフローチャートである。
【図１２】生体モデル作成処理の流れの一例を示すフローチャートである。
【図１３】表示部に表示される画面の一例を示す図である。
【図１４】モデル検索処理の流れの一例を示すフローチャートである。
【図１５】モデル検索処理の流れの別の例を示すフローチャートである。
【図１６】モジュールの使用頻度を調査する処理の流れの一例を示すフローチャートである。
【図１７】シミュレーション処理の流れの一例を示すフローチャートである。
【図１８】ある生体モデルの概念図を表示した表示部の画面を示す図である。
【図１９】モジュール検索用画面の一例を示す図である。
【図２０】ＸＭＬ文書が表示された表示部の画面を示す図である。
【図２１】別のモジュールが追加された状態を表す表示部の画面を示す図である。
【図２２】シミュレーション結果の一例を示す図である。
【図２３】ＧＵＩ画面の具体例を示す図である。
【符号の説明】
【０２６８】
１  データベース
２  モデル作成部（モデル作成装置）
３  モデル検索部（モデル検索装置）
４  シミュレーション部（シミュレーション装置）
５  入出力部（指示受付手段）
１０  生体モデル
２１  モデル入出力部（モジュール取得手段）
２３  構造形成部（構造形成手段）
３２  関係情報取得部（モジュール特定手段）
３８  使用頻度リスト作成部（使用頻度リスト作成手段）
４２  シミュレーション実行部（シミュレーション手段）
４３  時計モジュール（計時手段）
１００  モデル開発システム
２００  モジュール（モジュールデータ）
２０１  構造的関係属性（構造的関係情報）
２０２  機能的結合関係属性（機能的結合関係情報）
２０４  状態属性（状態情報）
２０５  状態更新属性（状態更新属性データ）
２１０  入出力ポート属性（入出力ポート属性データ）
２３０  モジュール管理テーブル（使用頻度テーブル）
【図１】
2009104558.tif 000003
【図２】
2009104558.tif 000004
【図３】
2009104558.tif 000005
【図４】
2009104558.tif 000006
【図５】
2009104558.tif 000007
【図６】
2009104558.tif 000008
【図７】
2009104558.tif 000009
【図８】
2009104558.tif 000010
【図９】
2009104558.tif 000011
【図１０】
2009104558.tif 000012
【図１１】
2009104558.tif 000013
【図１２】
2009104558.tif 000014
【図１４】
2009104558.tif 000015
【図１５】
2009104558.tif 000016
【図１６】
2009104558.tif 000017
【図１７】
2009104558.tif 000018
【図２２】
2009104558.tif 000019
【図１３】
2009104558.tif 000020
【図１８】
2009104558.tif 000021
【図１９】
2009104558.tif 000022
【図２０】
2009104558.tif 000023
【図２１】
2009104558.tif 000024
【図２３】
2009104558.tif 000025