(57)【特許請求の範囲】
【請求項１】
コンピュータを用いたシミュレーションシステムであって、
前記コンピュータは、
シミュレーションモデルに自己の動作に係わる判断機能を持たせてシミュレーションが半自律的に進行される環境を形成する手段と、
前記シミュレーションモデルが置かれるコンディションごとに当該シミュレーションモデルの判断項目を対応付けてテーブル化した複数のディシジョンテーブルと、前記シミュレーションモデルが存在し得るポジションごとに前記複数のディシジョンテーブルのうちいずれか１つを対応付けたマヌーバ・スケジュールとを記憶する記憶手段と、
前記シミュレーションの進行に伴い前記シミュレーションモデルのポジションを認識し、このポジションに基づき前記マヌーバ・スケジュールを参照して当該ポジションに対応するディシジョンテーブルを選択し、前記シミュレーションモデルの置かれるコンディションに対応する判断項目を前記選択されたディシジョンテーブルから決定して当該シミュレーションモデルに渡す手段とを具備することを特徴とするシミュレーションシステム。
【請求項２】
さらに、実施すべきシミュレーションの仕様に応じて前記マヌーバ・スケジュールまたはディシジョンテーブルの少なくとも一方をユーザが作成するためのテーブル作成処理手段を具備することを特徴とする請求項１に記載のシミュレーションシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータを用いるシミュレーションシステムおよびシミュレーションモデルの動きを制御する方法に関する。
【０００２】
【従来の技術】
近年、コンピュータを用いたシミュレーションに関する研究が盛んであり、特にＳＡＦ（Semi Automated Forces）またはＣＧＦ（Computer Generated Forces）と称される制御方式が注目されている。この方式によるシミュレーションシステムでは、コンピュータの画面上で移動する航空機や車両などのキャラクタ（以下シミュレーションモデルと称する）は、あたかも自ら判断能力を持つようにふるまう。
【０００３】
シミュレーションモデルにこのようなふるまいをさせるために、シミュレーションモデルが判断すべき項目をまとめたデータベースが使用される。この種のデータベースはマヌーバ・スケジュールやディシジョンテーブルと称されることがある。
【０００４】
【発明が解決しようとする課題】
しかしながらこの種のシミュレーションシステムにおいて、シミュレーションモデルは、ディシジョンテーブルに基づく判断を時間ベースで実施する。すなわちシミュレーションモデルは、例えば０．１秒ごとに、ディシジョンテーブルに基づく種々の事柄を判断し、自己の動きに反映しなくてはならない。このため、シミュレーションを実施するコンピュータの処理負荷が大きいという不具合が有る。時に、リアルタイム性を要求される高度なシミュレーションでは、コンピュータの負荷はますます大きくなる。
【０００５】
本発明は上記事情によりなされたもので、その目的は、シミュレーションを実施するコンピュータの処理負荷を軽減することが可能なシミュレーションシステムを提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために本発明に係わるシミュレーションシステムは、コンピュータを用いたシミュレーションシステムであって、前記コンピュータは、シミュレーションモデルに自己の動作に係わる判断機能を持たせてシミュレーションが半自律的に進行される環境を形成する手段と、前記シミュレーションモデルが置かれるコンディションごとに当該シミュレーションモデルの判断項目を対応付けてテーブル化した複数のディシジョンテーブルと、前記シミュレーションモデルが存在し得るポジションごとに前記複数のディシジョンテーブルのうちいずれか１つを対応付けたマヌーバ・スケジュールとを記憶する記憶手段と、前記シミュレーションの進行に伴い前記シミュレーションモデルのポジションを認識し、このポジションに基づき前記マヌーバ・スケジュールを参照して当該ポジションに対応するディシジョンテーブルを選択し、前記シミュレーションモデルの置かれるコンディションに対応する判断項目を前記選択されたディシジョンテーブルから決定して当該シミュレーションモデルに渡す手段とを具備することを特徴とする。
【０００７】
このような手段を講じたことにより、シミュレーションモデルは移動するにつれ自己のポジションに応じた判断項目を渡され、コンディションに応じた判断を行えば良くなる。
【０００８】
すなわち本発明によれば、シミュレーションの進行と共に移動するシミュレーションモデルが判断すべき項目は、そのポジションに応じた項目のみで良くなる。いわば、ロケーションベース（位置ベース）での判断がなされる。つまり従来であれば、予め用意されたディシジョンテーブルに記された項目の全てが時間ベースで判断されたのに対し、本発明では、シミュレーションモデルのポジションに応じた必要最小限の項目が、判断の対象となる。
従って、シミュレーションを実施するコンピュータが不必要な判断を実行することを防止でき、これによりコンピュータの負荷を軽減することが可能になる。
【０００９】
また本発明は、さらに、実施すべきシミュレーションの仕様に応じて前記マヌーバ・スケジュール（ディシジョンテーブル）をユーザが作成するためのテーブル作成処理手段を具備することを特徴とする。
これにより、シミュレーションの仕様に応じたマヌーバ・スケジュール（ディシジョンテーブル）を作成することが可能になる。
【００１０】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１１】
図１は、本発明の実施の形態に関わるシミュレーションモデルの動き制御方法を実施するコンピュータを示す概略図である。コンピュータＰＣは、表示器１１とキーボード１２とを備える。コンピュータＰＣには、シミュレーションを実現するための制御プログラムが予め記憶される。
【００１２】
図２は、コンピュータＰＣの表示器１１に表示されるシミュレーションの状態を示す概略図である。図２において、シミュレーションモデルとしての列車シンボル１００は、シミュレーションの進行に伴い線路２００に沿って移動する。線路２００には、駅や分岐ポイントなどの複数のポジションＰ１〜Ｐ１１が設定される。例えばポジションＰ３は、線路２００が二手に分かれる分岐ポイントである。ポジションＰ３においていずれの方向に向かうかは、列車１００の半自律的な判断に任される。
【００１３】
図３は、コンピュータＰＣの構成を示す機能ブロック図である。コンピュータＰＣは、入力制御部１４、記憶部１５、ＣＰＵ（Central Processing Unit）１６、表示制御部１７、及び、これらを互いに接続するバスライン１３を備える。
【００１４】
入力制御部１４は、キーボード１２やマウス（図示せず）を介して入力された情報をＣＰＵ１６に通知する。表示制御部１７は、ＣＰＵ１６から通知される情報に基づき、表示器１１におけるシミュレーションモデルの動きを制御する。
【００１５】
記憶部１５は、シミュレーションの実施に係わる既知の制御プログラムに加え、マヌーバ・スケジュール１５ａを構成する、複数のディシジョンテーブル（コンディションテーブル、アクションテーブル）ＤＴ１，ＤＴ２，ＤＴ３を備える。
【００１６】
図４は、図３に示されるマヌーバ・スケジュール１５ａを示す概念図である。マヌーバ・スケジュール１５ａは、図２に示される各ポジションごとに一つのディシジョンテーブルを対応付けたテーブルである。
【００１７】
図５は、図３に示されるディシジョンテーブルを示す概念図である。図５に示されるディシジョンテーブルは、各コンディションごとに、列車シンボル１００が如何なるアクションを実施するかという情報を対応付けたテーブルである。図５のテーブルでは、列車シンボル１００が線路上に有る場合、列車シンボル１００は線路の起伏の有無、及び信号機のチェックを実施する。図５のテーブルは、例えばポジションＰ１において使用される。また、各テーブルの設定（例えば○印）は、ユーザが自由に設定できる。
【００１８】
図６は、ディシジョンテーブルの別の例を示す概念図である。図６に示されるテーブルには、図５と異なるコンディションが記述され、また列車シンボル１００が実施すべきアクションも異なる。図６のテーブルは、例えばポジションＰ３において使用される。また、図５のテーブルと同様に、各テーブルの設定（例えば○印）は、ユーザが自由に設定できる。
【００１９】
ところで、ＣＰＵは、シミュレーションモデル動作制御部１６ａと、ディシジョンテーブル作成処理部１６ｂとを備える。シミュレーションモデル動作制御部１６ａは、シミュレーションモデルを動作させるオブジェクト（以下、オブジェクトと略称する）を制御する。オブジェクトとは、オブジェクト指向分析により、シミュレーションモデルをデータとこのデータを操作する手続き（演算）のパッケージで表現し、例えばＣ＋＋などのオブジェクト指向言語によりコードで記述される。シミュレーションモデル動作制御部１６ａは、上記オブジェクトに対応するシミュレーションモデルが移動するとそのポジションを把握し、オブジェクトに通知する。オブジェクトは、このポジションに対応するマヌーバ・スケジュール（ディシジョンテーブル）を前記マヌーバ・スケジュール１５ａから判定する。そして、このオブジェクトは、判定されたディシジョンテーブルに記述された項目についてのみ、判断する。
【００２０】
ディシジョンテーブル作成処理部１６ｂは、ディシジョンテーブルをユーザが作成するための処理を司る。
図７は、ディシジョンテーブル作成処理部１６ｂによる制御のもとでユーザがディシジョンテーブル（コンディションテーブル、アクションテーブル）を作成する際に、図１の表示器１１に表示されるマヌーバ・スケジュール（ディシジョンテーブル）のリストの例を示す図である。このリストには、シミュレーションモデルがとり得るアクションが配列される。そのうち一つのアクションがクリックされると、このリストからアクションがアクションテーブルに追加される。このようにアクションリストからアクションテーブルに任意のアクションを自由に対応付けることができ、その内容がマヌーバ・スケジュール（ディシジョンテーブル）の内容に反映される。ユーザは、マウスのクリック操作によりシミュレーションの仕様に応じたマヌーバ・スケジュール（ディシジョンテーブル）を作成することができる。
【００２１】
図８は、上記構成におけるシミュレーションモデル動作制御部１６ａの処理手順を示す図である。以下では、オブジェクトを主体として説明する。図８において、オブジェクトは、対応するシミュレーションモデルのポジションを、例えば表示器１１の座標を参照することにより、認識する（ステップＳ１）。次にオブジェクトは、マヌーバ・スケジュール１５ａを参照して、上記認識したポジションに設定されているマヌーバ・スケジュール（ディシジョンテーブル）を選択する（ステップＳ２）。
【００２２】
次に、オブジェクトは、ステップＳ２で選択したコンディションテーブルを読み出し（ステップＳ３）、読み出したコンディションテーブルに記された項目について判断する（ステップＳ４）。さらに、オブジェクトは、ステップＳ４に対応するアクションテーブルを読み出し（ステップＳ５）、読み出したアクションテーブルに記された項目を実行する（ステップＳ６）。これらの手順は、シミュレーションの進行にともなって例えば周期的に繰り返される。
【００２３】
図９は、本発明に係わるシミュレーションシステムをオブジェクト指向分析することにより作成されるクラス図の例である。本システムにおいては、ディシジョンダイナミクス、マヌーバ・スケジュールアイテム、コンディションリスト、及び、アクションリストなるクラスを想定することができる。このうちディシジョンダイナミクスが、最上位のスーパークラスとして位置づけられる。マヌーバ・スケジュールアイテムは、ディシジョンダイナミクスのサブクラスとして位置づけられる。ディシジョンダイナミクスの諸性質は、マヌーバ・スケジュールアイテムに継承される。
【００２４】
さらに、コンディションリストおよびアクションリストが、マヌーバ・スケジュールアイテムのサブクラスとして位置づけられる。マヌーバ・スケジュールアイテムの諸性質は、コンディションリストおよびアクションリストのいずれにも継承される。
【００２５】
このように本実施形態では、記憶部１５の所定の記憶領域に、シミュレーションモデルが存在し得るポジションごとに、当該シミュレーションモデルに対応するオブジェクトが判断すべき項目を対応付けてテーブル化した複数のコンディションテーブルＤＴ１，ＤＴ２，ＤＴ３，…と、シミュレーションモデルが置かれるコンディションごとに、複数のコンディションテーブルのうちいずれかを対応付けたアクションテーブルＤＴ１，ＤＴ２，ＤＴ３，…とを予め記憶させる。そして、シミュレーションモデルに対応するオブジェクトに、シミュレーションモデルが存在するポジションに対応するマヌーバ・スケジュール（ディシジョンテーブル）１５ａに記載された項目のみを実施させるようにしている。
【００２６】
これにより、ロケーションベースでの判断をＣＰＵ１６が実施できるようになり、従って必要最小限の判断ステップのみでシミュレーションを進行させることが可能になる。このことから、シミュレーションを実施するコンピュータの処理負荷を軽減することが可能となる。
【００２７】
【発明の効果】
以上詳述したように本発明によれば、シミュレーションを実施するコンピュータの処理負荷を軽減することが可能なシミュレーションシステムを提供することが可能となる。
【図面の簡単な説明】
【図１】  本発明の実施の形態に関わるシミュレーションモデルの動き制御方法を実施するコンピュータを示す概略図。
【図２】  コンピュータＰＣの表示器１１に表示されるシミュレーションの状態を示す概略図。
【図３】  コンピュータＰＣの構成を示す機能ブロック図。
【図４】  マヌーバ・スケジュール１５ａを示す概念図。
【図５】  ディシジョンテーブルを示す概念図。
【図６】  ディシジョンテーブルの他の例を示す概念図。
【図７】  ディシジョンテーブル作成処理部１６ｂによる制御のもとでユーザがディシジョンテーブル（コンディションテーブル、アクションテーブル）を作成する際に、図１の表示器１１に表示されるマヌーバ・スケジュール（ディシジョンテーブル）のリストの例を示す図。
【図８】  図３に示されるシミュレーションモデル動作制御部１６ａの処理手順を示すフローチャート。
【図９】  本発明に係わるシミュレーションシステムをオブジェクト指向分析することにより作成されるクラス図の例を示す図。
【符号の説明】
ＰＣ…コンピュータ
Ｐ１，Ｐ３，Ｐ５，Ｐ７，Ｐ９，Ｐ１１…ポジション
Ｐ２，Ｐ４，Ｐ６，Ｐ８，Ｐ１０…経路
ＤＴ１〜ＤＴ３…ディシジョンテーブル
１１…表示器
１２…キーボード
１３…バスライン
１４…入力制御部
１５…記憶部
１５ａ…マヌーバ・スケジュール
１６…ＣＰＵ
１６ａ…シミュレーションモデル動作制御部
１６ｂ…ディシジョンテーブル作成処理部
１７…表示制御部
１００…列車シンボル
１５１…ディシジョンテーブル
２００…線路
【図１】
0003854114.tif 000002
【図２】
0003854114.tif 000003
【図３】
0003854114.tif 000004
【図４】
0003854114.tif 000005
【図５】
0003854114.tif 000006
【図６】
0003854114.tif 000007
【図７】
0003854114.tif 000008
【図８】
0003854114.tif 000009
【図９】
0003854114.tif 000010