分散シミュレーションシステム
【課題】仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得る。
【解決手段】複数の仮説模擬処理部(21、22)を複数の演算装置に分散し、全体を分散シミュレーション基盤(30)が実行制御する分散シミュレーションシステムにおいて、複数の仮説模擬処理部は、自身が仮説を生成する1台以上の能動的仮説模擬処理部(21)と、1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部(22)とに分類されており、分散シミュレーション基盤(30)は、複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させる。
【解決手段】複数の仮説模擬処理部(21、22)を複数の演算装置に分散し、全体を分散シミュレーション基盤(30)が実行制御する分散シミュレーションシステムにおいて、複数の仮説模擬処理部は、自身が仮説を生成する1台以上の能動的仮説模擬処理部(21)と、1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部(22)とに分類されており、分散シミュレーション基盤(30)は、複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、高速化を実現することのできる分散シミュレーションシステムに関する。
【背景技術】
【0002】
まず始めに、Optimistic法を用いる従来の分散シミュレーションシステムの一例を説明する(例えば、非特許文献1参照)。この非特許文献1には、米軍を中心として標準化された分散シミュレーションシステムのアーキテクチャであるHigh Level Architecture(HLA)が示されている。
【0003】
図4は、従来の分散シミュレーションシステムにおけるHLAのアーキテクチャを示した図である。図4に示すHLAは、フェデレーション110とRTI(Run−Time Infrastructure)130とで構成され、フィデレーション110には、複数のフェデレート111が含まれている。
【0004】
ここで、HLAでは、シミュレーションシステム全体をフェデレーション110と呼び、分散実行される模擬処理などのプログラムをフェデレート111と呼ぶ。そして、シミュレーションの実行中に行われる、フェデレーション全体の実行制御や、フェデレート間のデータ交換などの共通機能を、RTI130という分散シミュレーション基盤が提供する。
【0005】
図5は、従来の分散シミュレーションシステムのHLAにおけるOptimistic法によるフェデレートのシミュレーション時刻進行の例を示した図である。図5では、説明を簡略化するために、2つのフェデレート111である、フェデレート1とフェデレート2とのやり取りについて示している。
【0006】
フェデレート1、フェデレート2は、それぞれシミュレーション時刻における模擬処理を実行するが、その際に、将来のシミュレーション時刻の模擬を行うことも可能である。ここで、将来のシミュレーション時刻の模擬は、未だ確定しておらず取消される可能性のある模擬であることから、この将来のシミュレーション時刻の模擬を仮説と呼ぶこととする。
【0007】
例えば、図5の例において、フェデレート1は、時刻t0においてt0より将来の時刻の仮説を実行し、その結果としてtx時刻のイベントev(tx)をフェデレート2に送信している。Optimistic法では、各フェデレートは、自分のシミュレーション時刻よりも将来の時刻のイベントを任意のタイミングで受信できることが特徴である。そのため、フェデレート2は、t0時刻において、将来イベントであるev(tx)をフェデレート1から受信し、ev(tx)に基づくtx時刻の仮説を実行することができる。
【0008】
そして、フェデレート2は、tx時刻の仮説の結果として、ty時刻のイベントev(ty)をフェデレート1に送信する。これに対して、フェデレート1は、t0時刻において、ev(ty)に基づくty時刻の仮説を実行することができる。
【0009】
次に図6は、従来の分散シミュレーションシステムにおける先の図5のフェデレート1、フェデレート2が時刻進行し、tx時刻に進んだ際の処理を示した図である。フェデレート2は、先の図5に示したとおり、t0時刻においてtx時刻の仮説を実行済みである。このため、フェデレート2は、tx時刻に進んだ際には、図6に示したような処理フローに基づき、tx時刻の仮説の評価を行う(ステップS601)。さらに、フェデレート2は、tx時刻の仮説が誤っていたと判断(ステップS602)した場合には、その仮説の取消を実行(ステップS603)した後に、tx時刻の模擬を実行する(ステップS604)。
【0010】
次に、図7は、従来の分散シミュレーションシステムにおける先の図6の処理フローにおいて、仮説が誤っていたため仮設が取消された場合のイベント取消の例を示す図である。フェデレート2は、tx時刻において、以前のt0時刻に実行したtx時刻の仮説が誤っていたことが判明した場合には、仮説の取消を行う。その結果、フェデレート1では、取消が行われた仮説に基づき、フェデレート2から送信されていたイベントev(ty)についても、取消を行う必要がある。
【0011】
イベントev(ty)の取消は、フェデレート2から、イベント送信先のフェデレート1に対して通知され、フェデレート1では、ev(ty)に基づきt0時刻に実行していた仮説の取消処理が行われる。
【0012】
なお、図5および図6におけるフェデレート1、フェデレート2のシミュレーション時刻の進行制御と、イベントの通信処理は、RTI130が管理する。
【0013】
以上のように、Optimistic法では、シミュレーションにおける現在時刻より将来の時刻の模擬を仮説として実行し、さらに、仮説によって発生した将来イベントの送信と受信によって仮説の実行を進めていくことが可能である。そして、シミュレーション時刻が進行した際に、仮説の評価が行われ、仮説が誤っていた場合には、仮説の取消とイベントの取消の連鎖が発生する。
【0014】
上述したような非特許文献1に挙げられているHLAは、分散シミュレーションシステムの標準アーキテクチャであり、HLAに基づく、あるいはHLAと良く似た分散処理を用いた、分散シミュレーション実行環境は、一般的に広く利用されている。ここで、HLAで採用されているOptimistic法の特徴は、シミュレーション時刻の現在時刻より将来の模擬処理とイベントの送受信において、時刻の同期を行わないことである。
【0015】
そのため、分散して実行される模擬処理は、互いの因果関係を気にすることなく、それぞれ並列に処理を実行することが可能である。この結果、HLAは、多数の演算装置で模擬処理を同時に実行することにより、高速にシミュレーションを実行することが可能である。
【0016】
次に、Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理を、複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムの一例を説明する(例えば、非特許文献2参照)。
【0017】
この非特許文献2は、HLAと同様のシステム構成において、実時間における現在時刻より、未来の状況をOptimistic法によって予測的に仮説として模擬実行するとともに、実世界の観測情報を取り入れることによって仮説を評価し、実世界の状況に対して誤った仮説を取消すことにより、リアルタイムに予測状況を修正することを特徴とするシステムである。
【0018】
図8は、非特許文献2から引用した従来の分散シミュレーションシステムにおけるシミュレーション実行の概念図を示した図である。図8に示した従来の分散シミュレーションシステムは、Estimate210およびPrediction220を備えている。そして、Xp(ti)は、ti時刻における仮説実行結果を示し、Xm(ti)は、ti時刻における実世界の観測情報を示している。
【0019】
Estimate210は、仮説の評価フェーズであり、Xm(ti)を基準としてXp(ti)を評価し、評価結果として、Xe(ti)を出力する。
【0020】
次に、Prediction220は、Optimistic法による将来時刻の仮説実行フェーズであり、Xe(ti)を入力としてti+1時刻までの将来時刻の仮説を実行し、仮設実行結果として、Xp(ti+1)を出力する。Xp(ti+1)は、次に実世界の観測情報が入力された時刻に始まる評価フェーズにおいて、評価されることとなる。
【0021】
図9は、図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの補足説明図である。この図9を用いて、予測フェーズと評価フェーズの繰り返しを具体的に説明する。図9中の仮説模擬処理1と仮説模擬処理2は、Optimistic法によって将来時刻の仮説実行と仮説評価を行う処理である。また、図9中の観測情報処理は、実世界の観測情報を仮説模擬処理に反映するための処理である。なお、図9では、先の図8の予測フェーズから説明を始めるため、時刻ti−1から開始する。
【0022】
図9の予測フェーズでは、まず始めに、仮説模擬処理が、時刻ti−1において、実時間における将来の時刻の仮説を、Optimistic法によって実行する。ここで、将来の時刻とは、ti−1時刻より未来の時刻のことである。この予測フェーズは、観測情報処理が実世界からの観測情報を送信し、シミュレーション時刻を進めるまで実行される。
【0023】
予測フェーズの次に、評価フェーズが実行される。この評価フェーズは、観測情報処理がti時刻の観測情報を仮説模擬処理に送信し、シミュレーション時刻をti時刻に進めたタイミングで開始される。シミュレーション時刻がti時刻に進んだことにより、仮説模擬処理において、仮説の評価が開始される。仮説の評価は、仮説実行結果と観測情報処理から送信されたti時刻の観測情報との比較によって行われる。
【0024】
ti時刻の観測情報と矛盾する仮説は、評価フェーズにおいて取消される。全ての仮説の評価が完了すると、評価フェーズは終了し、予測フェーズが開始される。そして、取消されなかった仮説と、必要に応じてti時刻の観測情報から新たに生成された仮説について、ti時刻より将来の時刻の模擬実行が開始される。
【0025】
このような非特許文献2は、HLAに類似した分散シミュレーションシステムであり、Optimistic法に基づき実時間より将来の時刻についての予測的なシミュレーションを実行するものである。このシステムにおいて、Optimistic法によるシミュレーション実行の高速性は、観測情報処理がシミュレーション時刻を進めるまでの間に、多数の仮説を実行するために役立てられている。
【先行技術文献】
【非特許文献】
【0026】
【非特許文献1】IEEE 1516.1−2000−Standard for Modeling and Simulation High Level Architecture(HLA)−Federate Interface Specification
【非特許文献2】Jeffrey S.Steinman、et al.、“Simulating Parallel Overlapping Universes in the Fifth Dimension with HyperWarpSpeed Implemented in the WarpIV Kernel”、2008 Spring Simulation Interoperability Workshop、08S−SIW−025
【発明の概要】
【発明が解決しようとする課題】
【0027】
しかしながら、従来技術には、以下のような課題がある。
しかし、図8および図9に示したとおり、このシステムは評価フェーズと予測フェーズを繰り返すシステムであり、仮説を多数実行できるという利点は予測フェーズにおいて役立っているが、多数実行された仮説は評価フェーズにおける評価処理においてはシステム全体の高速性を阻害する要因になるという問題がある。
【0028】
この問題を、図10を用いて説明する。
図10は、図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの問題点を補足するための説明図である。この図10は、先の図9と同じ状況を示しているが、問題点を明確とするために、評価フェーズをより詳しく説明した図である。
【0029】
図10の評価フェーズでは、まず上段の状態において、仮説模擬処理が観測情報処理から送信されたti時刻の観測情報を元に仮説の評価を実施し、仮説模擬処理1がある時刻の仮設が誤っていたとして取消を行っている(破線の○の中に×が付された記号部分が、取消された仮説を示している)。
【0030】
取消された仮説は、仮説模擬処理1の予測フェーズにおいて実行された際に、イベントev1を仮説模擬処理2に送信している。このため、評価フェーズにおいて、仮説模擬処理1は、イベントev1の取消を仮説模擬処理2に対して送信する必要がある。
【0031】
図9における予測フェーズを見ると、仮説模擬処理2は、仮説模擬処理1から送信されたイベントev1を基に仮説を実行して、イベントev2を仮説模擬処理1に対して送信している。さらに、仮説模擬処理1は、同様に、ev2を基にev3を仮説模擬処理2に対して送信している。このため、このイベントによる仮説実行の伝播に基づいて、図9における評価フェーズでは、ev1取消、ev2取消、ev3取消を順次実行する必要がある。
【0032】
ここで問題となるのは、このようなイベントによる仮説実行の伝播を取消す処理は、模擬処理間で順次実行する必要があり、どこまで波及するのか事前に把握することができないということである。一般的に、予測フェーズで未来方向に対して長期に渡り多数の仮説を実行できれば、それに応じて評価フェーズでは取消される可能性のある仮説と、それによってイベント取消が長い連鎖となって発生する可能性が高くなる。
【0033】
すなわち、Optimistic法による高速化の恩恵によって、予測フェーズで多数の仮説が実行できたとしても、それに応じて評価フェーズにおける取消処理に非常に時間がかかるようになる可能性が高まり、システム全体としての高速化に限界が生じるという問題がある。
【0034】
本発明は、前記のような課題を解決するためになされたものであり、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることを目的とする。
【課題を解決するための手段】
【0035】
本発明に係る分散シミュレーションシステムは、Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理部を複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムにおいて、複数の仮説模擬処理部は、自身が仮説を生成する1台以上の能動的仮説模擬処理部と、1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部とに分類されており、分散シミュレーション基盤は、複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させるものである。
【発明の効果】
【0036】
本発明に係る分散シミュレーションシステムによれば、予測フェーズにおいて自身の仮説模擬処理で能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかにより仮説を分類しておき、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定することにより、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることができる。
【図面の簡単な説明】
【0037】
【図1】本発明による分散シミュレーションシステムの構成図である。
【図2】本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部内の能動的仮説模擬処理および受動的仮説模擬処理と、観測情報処理とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。
【図3】本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部内の能動的仮説模擬処理および受動的仮説模擬処理と、観測情報処理とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。
【図4】従来の分散シミュレーションシステムにおけるHLAのアーキテクチャを示した図である。
【図5】従来の分散シミュレーションシステムのHLAにおけるOptimistic法によるフェデレートのシミュレーション時刻進行の例を示した図である。
【図6】従来の分散シミュレーションシステムにおける先の図5のフェデレート1、フェデレート2が時刻進行し、tx時刻に進んだ際の処理を示した図である。
【図7】従来の分散シミュレーションシステムにおける先の図6の処理フローにおいて、仮説が誤っていたため仮設が取消された場合のイベント取消の例を示す図である。
【図8】非特許文献2から引用した従来の分散シミュレーションシステムにおけるシミュレーション実行の概念図を示した図である。
【図9】図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの補足説明図である。
【図10】図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの問題点を補足するための説明図である。
【発明を実施するための形態】
【0038】
以下、本発明の分散シミュレーションシステムの好適な実施の形態につき図面を用いて説明する。
【0039】
実施の形態1.
図1は、本発明による分散シミュレーションシステムの構成図である。図1に示す本実施の形態1の分散シミュレーションシステムは、観測情報処理10、将来予測模擬部20、および分散シミュレーション基盤30で構成されている。また、将来予測模擬部20は、n台(nは、1以上の整数)の能動的仮説模擬処理1〜nと、m台(mは、1以上の整数)の受動的仮説模擬処理1〜mとが含まれている。なお、図1においては、能動的仮説模擬処理21および受動的仮説模擬処理22がそれぞれ複数台あるように記載されている。しかしながら、本発明の分散シミュレーションシステムにおける将来予測模擬部20は、能動的仮説模擬処理21および受動的仮説模擬処理22を合わせて複数の模擬処理であれば成立するものであり、能動的仮説模擬処理21および受動的仮説模擬処理22のそれぞれが1台以上であればよい。
【0040】
観測情報処理10は、センサ等から得られた観測情報を分散シミュレーション基盤30を通して将来予測模擬部20に反映させる。将来予測模擬部20は、実時間における現在時刻より未来の状況を予測的にシミュレーション実行する。
【0041】
ここで、能動的仮説模擬処理21は、将来予測模擬部20においてOptimistic法による分散並列処理によって仮説を実行する仮説模擬処理部のうち、自身が仮説を生成する仮説模擬処理部である。一方、受動的仮説模擬処理22は、将来予測模擬部20においてOptimistic法による分散並列処理によって仮説を実行する仮説模擬処理部のうち、他の能動的仮説模擬処理21からのイベント受信によって仮説実行を行う仮説模擬処理部である。
【0042】
分散シミュレーション基盤30は、観測情報処理10および将来予測模擬部20内の能動的仮説模擬処理21および受動的仮説模擬処理22について、シミュレーション時刻による時刻進行制御とイベントの送受信制御を行う。
【0043】
図2、図3は、本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部20内の能動的仮説模擬処理21および受動的仮説模擬処理22と、観測情報処理10とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。図2、図3を用いて、先の図1の分散シミュレーションシステムの動作を説明する。
【0044】
図2の予測フェーズにおいて、まず、能動的仮説模擬処理21が、能動的に仮説を生成しつつ、将来時刻の模擬を行う。具体的な例では、航空機の飛行について、その航空機がとり得る複数の飛行戦略(例えば、燃料を節約するためになるべく最短距離で飛行しようとするのか、あるいは危険性を回避するためになるべく雲等を避けて飛行しようとするのか、など)に応じて、将来の複数の移動経路を仮説として計算するような模擬処理である。
【0045】
このような能動的仮説模擬処理21は、仮説の模擬結果について他の模擬処理に対するイベントを発生する。具体的な例では、航空機の飛行の仮説を計算した結果の、ある時刻における航空機の位置情報である。
【0046】
能動的仮説模擬処理21がイベントを発生すると、そのイベントは、分散シミュレーション基盤30において他の仮説模擬処理に送信され、イベントを受信した仮説模擬処理がそのイベントを入力情報として模擬処理を実行する。
【0047】
ここで、他の仮説模擬処理からのイベントに基づいた仮説実行のみを行う仮説模擬処理が、本実施の形態1における受動的仮説模擬処理22である。具体的な例では、航空機の位置情報を基に、航空機探知の模擬を行うようなレーダの模擬処理である。この受動的仮説模擬処理22は、自身が新たな仮説を生成せず、他の仮説模擬処理の仮説実行によるイベントを受信し、そのイベントに基づき模擬処理を行うだけである。
【0048】
観測情報処理10が実世界からの観測情報を送信し、シミュレーション時刻を進めると、本実施の形態1による分散シミュレーションシステムは、評価フェーズに移行する。まず、評価フェーズの最初の段階が、図2における評価フェーズ(1)である。ここで、観測情報処理10から送信された観測情報は、分散シミュレーション基盤30により、能動的仮説模擬処理21に対して送信される。
【0049】
これは、本実施の形態1の分散シミュレーションシステムにおいて仮説を生成するのは、能動的仮説模擬処理21のみであり、仮説の評価を行うのは、能動的仮説模擬処理21のみに限定することが可能なためである。
【0050】
能動的仮説模擬処理21は、観測情報を受信すると、観測情報に基づき仮説の評価を実施する。図2の例では、評価フェーズ(1)の能動的仮説模擬処理1、2の破線の○が付された部分が、その時刻における仮説の結果であり、これらと観測情報との比較が仮説の評価の処理である。
【0051】
具体的な例では、航空機の将来の移動経路として計算した仮説について、観測情報の観測時間と観測位置に基づき、仮説が誤っていなかったかどうかを評価する。なお、仮説の結果は、1つの能動的仮説模擬処理21においても時刻毎に複数個作成されるが、観測情報との比較は、それぞれ独立して実行することが可能である。このため、分散シミュレーションシステムの演算リソースに余裕があれば、並列実行することにより、高速化が可能である。
【0052】
能動的仮説模擬処理21における仮説の評価により、誤った仮説と判断された場合、その仮説の実行の結果、他の仮説模擬処理に対して送信されたイベントの取消が行われる。これが図3における評価フェーズ(2)である。イベントの取消が行われると、取消されたイベントを入力として仮説を実行した受動的仮説模擬処理22において、その仮説実行結果が取消される。これが図3における評価フェーズ(3)である。
【0053】
具体的な例では、航空機の位置情報を基に、航空機探知の模擬を行うようなレーダの模擬処理において、航空機の位置情報の仮説が取消されたため、その位置情報を基に実行したレーダの模擬処理を取消すような処理である。なお、イベントの取消は、1つの受動的仮説模擬処理22においても時刻毎に複数回実行されるが、これらのイベントの取消は、独立している。このため、分散シミュレーションシステムの演算リソースに余裕があれば、並列実行することにより、高速化が可能である。
【0054】
なお、受動的仮説模擬処理22において取消されたイベントを基に仮説を実行した結果としてイベントが生成されていた場合は、そのイベントの取消がこの時点において発生する。これは、発明が解決しようとする課題において説明した、イベントによる仮説実行の伝播を取消す処理に相当し、模擬処理間で順次実行する必要があり、どこまで波及するのか事前に把握することができない処理と同じように見える。
【0055】
しかしながら、ここに至るまでに既に能動的仮説模擬処理21における仮説評価が実行されており(図2における評価フェーズ(1)参照)、このシステムにおいて生成された仮説で誤っていると判断されたものは既に削除されている(図3における評価フェーズ(3)参照)。このため、これ以上仮説取消が仮説模擬処理間で伝播することはない。
【0056】
上述した本実施の形態1における分散シミュレーションシステムの効果をまとめると、以下のようになる。
第一に、各仮説模擬処理が、予測フェーズにおいて、自身が能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかで、仮説を分類しておくことにより、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定できる。この結果、仮説模擬処理における評価処理を効率化することが可能となる。
【0057】
第二に、評価フェーズにおいて分散シミュレーション基盤が、まず全ての仮説模擬処理の仮説評価処理を並列実行し、その後で仮説模擬処理のイベント取消処理を実行するように、仮説模擬処理のスケジューリングを行うことができる。この結果、仮説模擬処理間の因果関係のない処理を効率的に並列実行することで、評価フェーズ全体を効率化することが可能となる。
【0058】
第三に、評価フェーズにおいて、まず能動的に生成された仮説を全て評価してしまい、その評価結果として実行されたイベント取消に基づき、受動的に実行された仮説の取消を行うことができる。すなわち、能動的仮説模擬処理で能動的に生成された仮説の取消処理の並列実行と、能動的仮説模擬処理からのイベント受信によって受動的仮説模擬処理で受動的に生成された仮説の取消処理の並列実行とを分離して実行制御可能となる。この結果、仮説模擬処理における仮説取消の伝播が連鎖的に発生することを抑制し、全体として高速に評価処理を実行することが可能となる。
【0059】
以上のように、実施の形態1によれば、予測フェーズにおいて、自身の仮説模擬処理で能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかにより仮説を分類しておき、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定している。これにより、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることができる。
【0060】
なお、能動的仮説模擬処理は、自身が生成した仮説の模擬実行によって発生したイベントを受動的仮説模擬処理に送信する際に、発生したイベントとイベントの発生原因となった仮説との関連性をイベント関連情報として記憶部(図1には図示せず)に記憶しておくこともできる。この場合には、仮説の取消処理を実行する際に、イベント関連情報に基づいて取り消さなければならいイベントを高速で検索することが可能となる。
【0061】
また、受動的仮説模擬処理は、能動的仮説模擬処理から受信したイベントが後に取消される場合をあらかじめ考慮し、イベント受信の都度、イベントが無効であった場合の仮説を反仮説として模擬実行しておくこともできる。この場合には、後に、実際にイベントが無効になった際に、すでに模擬実行済みの反仮説を直ちに利用することが可能となる。
【符号の説明】
【0062】
10 観測情報処理、20 将来予測模擬部、21 能動的仮説模擬処理(能動的仮説模擬処理部)、22 受動的仮説模擬処理(受動的仮説模擬処理部)、30 分散シミュレーション基盤。
【技術分野】
【0001】
本発明は、高速化を実現することのできる分散シミュレーションシステムに関する。
【背景技術】
【0002】
まず始めに、Optimistic法を用いる従来の分散シミュレーションシステムの一例を説明する(例えば、非特許文献1参照)。この非特許文献1には、米軍を中心として標準化された分散シミュレーションシステムのアーキテクチャであるHigh Level Architecture(HLA)が示されている。
【0003】
図4は、従来の分散シミュレーションシステムにおけるHLAのアーキテクチャを示した図である。図4に示すHLAは、フェデレーション110とRTI(Run−Time Infrastructure)130とで構成され、フィデレーション110には、複数のフェデレート111が含まれている。
【0004】
ここで、HLAでは、シミュレーションシステム全体をフェデレーション110と呼び、分散実行される模擬処理などのプログラムをフェデレート111と呼ぶ。そして、シミュレーションの実行中に行われる、フェデレーション全体の実行制御や、フェデレート間のデータ交換などの共通機能を、RTI130という分散シミュレーション基盤が提供する。
【0005】
図5は、従来の分散シミュレーションシステムのHLAにおけるOptimistic法によるフェデレートのシミュレーション時刻進行の例を示した図である。図5では、説明を簡略化するために、2つのフェデレート111である、フェデレート1とフェデレート2とのやり取りについて示している。
【0006】
フェデレート1、フェデレート2は、それぞれシミュレーション時刻における模擬処理を実行するが、その際に、将来のシミュレーション時刻の模擬を行うことも可能である。ここで、将来のシミュレーション時刻の模擬は、未だ確定しておらず取消される可能性のある模擬であることから、この将来のシミュレーション時刻の模擬を仮説と呼ぶこととする。
【0007】
例えば、図5の例において、フェデレート1は、時刻t0においてt0より将来の時刻の仮説を実行し、その結果としてtx時刻のイベントev(tx)をフェデレート2に送信している。Optimistic法では、各フェデレートは、自分のシミュレーション時刻よりも将来の時刻のイベントを任意のタイミングで受信できることが特徴である。そのため、フェデレート2は、t0時刻において、将来イベントであるev(tx)をフェデレート1から受信し、ev(tx)に基づくtx時刻の仮説を実行することができる。
【0008】
そして、フェデレート2は、tx時刻の仮説の結果として、ty時刻のイベントev(ty)をフェデレート1に送信する。これに対して、フェデレート1は、t0時刻において、ev(ty)に基づくty時刻の仮説を実行することができる。
【0009】
次に図6は、従来の分散シミュレーションシステムにおける先の図5のフェデレート1、フェデレート2が時刻進行し、tx時刻に進んだ際の処理を示した図である。フェデレート2は、先の図5に示したとおり、t0時刻においてtx時刻の仮説を実行済みである。このため、フェデレート2は、tx時刻に進んだ際には、図6に示したような処理フローに基づき、tx時刻の仮説の評価を行う(ステップS601)。さらに、フェデレート2は、tx時刻の仮説が誤っていたと判断(ステップS602)した場合には、その仮説の取消を実行(ステップS603)した後に、tx時刻の模擬を実行する(ステップS604)。
【0010】
次に、図7は、従来の分散シミュレーションシステムにおける先の図6の処理フローにおいて、仮説が誤っていたため仮設が取消された場合のイベント取消の例を示す図である。フェデレート2は、tx時刻において、以前のt0時刻に実行したtx時刻の仮説が誤っていたことが判明した場合には、仮説の取消を行う。その結果、フェデレート1では、取消が行われた仮説に基づき、フェデレート2から送信されていたイベントev(ty)についても、取消を行う必要がある。
【0011】
イベントev(ty)の取消は、フェデレート2から、イベント送信先のフェデレート1に対して通知され、フェデレート1では、ev(ty)に基づきt0時刻に実行していた仮説の取消処理が行われる。
【0012】
なお、図5および図6におけるフェデレート1、フェデレート2のシミュレーション時刻の進行制御と、イベントの通信処理は、RTI130が管理する。
【0013】
以上のように、Optimistic法では、シミュレーションにおける現在時刻より将来の時刻の模擬を仮説として実行し、さらに、仮説によって発生した将来イベントの送信と受信によって仮説の実行を進めていくことが可能である。そして、シミュレーション時刻が進行した際に、仮説の評価が行われ、仮説が誤っていた場合には、仮説の取消とイベントの取消の連鎖が発生する。
【0014】
上述したような非特許文献1に挙げられているHLAは、分散シミュレーションシステムの標準アーキテクチャであり、HLAに基づく、あるいはHLAと良く似た分散処理を用いた、分散シミュレーション実行環境は、一般的に広く利用されている。ここで、HLAで採用されているOptimistic法の特徴は、シミュレーション時刻の現在時刻より将来の模擬処理とイベントの送受信において、時刻の同期を行わないことである。
【0015】
そのため、分散して実行される模擬処理は、互いの因果関係を気にすることなく、それぞれ並列に処理を実行することが可能である。この結果、HLAは、多数の演算装置で模擬処理を同時に実行することにより、高速にシミュレーションを実行することが可能である。
【0016】
次に、Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理を、複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムの一例を説明する(例えば、非特許文献2参照)。
【0017】
この非特許文献2は、HLAと同様のシステム構成において、実時間における現在時刻より、未来の状況をOptimistic法によって予測的に仮説として模擬実行するとともに、実世界の観測情報を取り入れることによって仮説を評価し、実世界の状況に対して誤った仮説を取消すことにより、リアルタイムに予測状況を修正することを特徴とするシステムである。
【0018】
図8は、非特許文献2から引用した従来の分散シミュレーションシステムにおけるシミュレーション実行の概念図を示した図である。図8に示した従来の分散シミュレーションシステムは、Estimate210およびPrediction220を備えている。そして、Xp(ti)は、ti時刻における仮説実行結果を示し、Xm(ti)は、ti時刻における実世界の観測情報を示している。
【0019】
Estimate210は、仮説の評価フェーズであり、Xm(ti)を基準としてXp(ti)を評価し、評価結果として、Xe(ti)を出力する。
【0020】
次に、Prediction220は、Optimistic法による将来時刻の仮説実行フェーズであり、Xe(ti)を入力としてti+1時刻までの将来時刻の仮説を実行し、仮設実行結果として、Xp(ti+1)を出力する。Xp(ti+1)は、次に実世界の観測情報が入力された時刻に始まる評価フェーズにおいて、評価されることとなる。
【0021】
図9は、図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの補足説明図である。この図9を用いて、予測フェーズと評価フェーズの繰り返しを具体的に説明する。図9中の仮説模擬処理1と仮説模擬処理2は、Optimistic法によって将来時刻の仮説実行と仮説評価を行う処理である。また、図9中の観測情報処理は、実世界の観測情報を仮説模擬処理に反映するための処理である。なお、図9では、先の図8の予測フェーズから説明を始めるため、時刻ti−1から開始する。
【0022】
図9の予測フェーズでは、まず始めに、仮説模擬処理が、時刻ti−1において、実時間における将来の時刻の仮説を、Optimistic法によって実行する。ここで、将来の時刻とは、ti−1時刻より未来の時刻のことである。この予測フェーズは、観測情報処理が実世界からの観測情報を送信し、シミュレーション時刻を進めるまで実行される。
【0023】
予測フェーズの次に、評価フェーズが実行される。この評価フェーズは、観測情報処理がti時刻の観測情報を仮説模擬処理に送信し、シミュレーション時刻をti時刻に進めたタイミングで開始される。シミュレーション時刻がti時刻に進んだことにより、仮説模擬処理において、仮説の評価が開始される。仮説の評価は、仮説実行結果と観測情報処理から送信されたti時刻の観測情報との比較によって行われる。
【0024】
ti時刻の観測情報と矛盾する仮説は、評価フェーズにおいて取消される。全ての仮説の評価が完了すると、評価フェーズは終了し、予測フェーズが開始される。そして、取消されなかった仮説と、必要に応じてti時刻の観測情報から新たに生成された仮説について、ti時刻より将来の時刻の模擬実行が開始される。
【0025】
このような非特許文献2は、HLAに類似した分散シミュレーションシステムであり、Optimistic法に基づき実時間より将来の時刻についての予測的なシミュレーションを実行するものである。このシステムにおいて、Optimistic法によるシミュレーション実行の高速性は、観測情報処理がシミュレーション時刻を進めるまでの間に、多数の仮説を実行するために役立てられている。
【先行技術文献】
【非特許文献】
【0026】
【非特許文献1】IEEE 1516.1−2000−Standard for Modeling and Simulation High Level Architecture(HLA)−Federate Interface Specification
【非特許文献2】Jeffrey S.Steinman、et al.、“Simulating Parallel Overlapping Universes in the Fifth Dimension with HyperWarpSpeed Implemented in the WarpIV Kernel”、2008 Spring Simulation Interoperability Workshop、08S−SIW−025
【発明の概要】
【発明が解決しようとする課題】
【0027】
しかしながら、従来技術には、以下のような課題がある。
しかし、図8および図9に示したとおり、このシステムは評価フェーズと予測フェーズを繰り返すシステムであり、仮説を多数実行できるという利点は予測フェーズにおいて役立っているが、多数実行された仮説は評価フェーズにおける評価処理においてはシステム全体の高速性を阻害する要因になるという問題がある。
【0028】
この問題を、図10を用いて説明する。
図10は、図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの問題点を補足するための説明図である。この図10は、先の図9と同じ状況を示しているが、問題点を明確とするために、評価フェーズをより詳しく説明した図である。
【0029】
図10の評価フェーズでは、まず上段の状態において、仮説模擬処理が観測情報処理から送信されたti時刻の観測情報を元に仮説の評価を実施し、仮説模擬処理1がある時刻の仮設が誤っていたとして取消を行っている(破線の○の中に×が付された記号部分が、取消された仮説を示している)。
【0030】
取消された仮説は、仮説模擬処理1の予測フェーズにおいて実行された際に、イベントev1を仮説模擬処理2に送信している。このため、評価フェーズにおいて、仮説模擬処理1は、イベントev1の取消を仮説模擬処理2に対して送信する必要がある。
【0031】
図9における予測フェーズを見ると、仮説模擬処理2は、仮説模擬処理1から送信されたイベントev1を基に仮説を実行して、イベントev2を仮説模擬処理1に対して送信している。さらに、仮説模擬処理1は、同様に、ev2を基にev3を仮説模擬処理2に対して送信している。このため、このイベントによる仮説実行の伝播に基づいて、図9における評価フェーズでは、ev1取消、ev2取消、ev3取消を順次実行する必要がある。
【0032】
ここで問題となるのは、このようなイベントによる仮説実行の伝播を取消す処理は、模擬処理間で順次実行する必要があり、どこまで波及するのか事前に把握することができないということである。一般的に、予測フェーズで未来方向に対して長期に渡り多数の仮説を実行できれば、それに応じて評価フェーズでは取消される可能性のある仮説と、それによってイベント取消が長い連鎖となって発生する可能性が高くなる。
【0033】
すなわち、Optimistic法による高速化の恩恵によって、予測フェーズで多数の仮説が実行できたとしても、それに応じて評価フェーズにおける取消処理に非常に時間がかかるようになる可能性が高まり、システム全体としての高速化に限界が生じるという問題がある。
【0034】
本発明は、前記のような課題を解決するためになされたものであり、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることを目的とする。
【課題を解決するための手段】
【0035】
本発明に係る分散シミュレーションシステムは、Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理部を複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムにおいて、複数の仮説模擬処理部は、自身が仮説を生成する1台以上の能動的仮説模擬処理部と、1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部とに分類されており、分散シミュレーション基盤は、複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させるものである。
【発明の効果】
【0036】
本発明に係る分散シミュレーションシステムによれば、予測フェーズにおいて自身の仮説模擬処理で能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかにより仮説を分類しておき、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定することにより、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることができる。
【図面の簡単な説明】
【0037】
【図1】本発明による分散シミュレーションシステムの構成図である。
【図2】本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部内の能動的仮説模擬処理および受動的仮説模擬処理と、観測情報処理とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。
【図3】本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部内の能動的仮説模擬処理および受動的仮説模擬処理と、観測情報処理とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。
【図4】従来の分散シミュレーションシステムにおけるHLAのアーキテクチャを示した図である。
【図5】従来の分散シミュレーションシステムのHLAにおけるOptimistic法によるフェデレートのシミュレーション時刻進行の例を示した図である。
【図6】従来の分散シミュレーションシステムにおける先の図5のフェデレート1、フェデレート2が時刻進行し、tx時刻に進んだ際の処理を示した図である。
【図7】従来の分散シミュレーションシステムにおける先の図6の処理フローにおいて、仮説が誤っていたため仮設が取消された場合のイベント取消の例を示す図である。
【図8】非特許文献2から引用した従来の分散シミュレーションシステムにおけるシミュレーション実行の概念図を示した図である。
【図9】図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの補足説明図である。
【図10】図8に示した従来の分散シミュレーションシステムの予測フェーズおよび評価フェーズの問題点を補足するための説明図である。
【発明を実施するための形態】
【0038】
以下、本発明の分散シミュレーションシステムの好適な実施の形態につき図面を用いて説明する。
【0039】
実施の形態1.
図1は、本発明による分散シミュレーションシステムの構成図である。図1に示す本実施の形態1の分散シミュレーションシステムは、観測情報処理10、将来予測模擬部20、および分散シミュレーション基盤30で構成されている。また、将来予測模擬部20は、n台(nは、1以上の整数)の能動的仮説模擬処理1〜nと、m台(mは、1以上の整数)の受動的仮説模擬処理1〜mとが含まれている。なお、図1においては、能動的仮説模擬処理21および受動的仮説模擬処理22がそれぞれ複数台あるように記載されている。しかしながら、本発明の分散シミュレーションシステムにおける将来予測模擬部20は、能動的仮説模擬処理21および受動的仮説模擬処理22を合わせて複数の模擬処理であれば成立するものであり、能動的仮説模擬処理21および受動的仮説模擬処理22のそれぞれが1台以上であればよい。
【0040】
観測情報処理10は、センサ等から得られた観測情報を分散シミュレーション基盤30を通して将来予測模擬部20に反映させる。将来予測模擬部20は、実時間における現在時刻より未来の状況を予測的にシミュレーション実行する。
【0041】
ここで、能動的仮説模擬処理21は、将来予測模擬部20においてOptimistic法による分散並列処理によって仮説を実行する仮説模擬処理部のうち、自身が仮説を生成する仮説模擬処理部である。一方、受動的仮説模擬処理22は、将来予測模擬部20においてOptimistic法による分散並列処理によって仮説を実行する仮説模擬処理部のうち、他の能動的仮説模擬処理21からのイベント受信によって仮説実行を行う仮説模擬処理部である。
【0042】
分散シミュレーション基盤30は、観測情報処理10および将来予測模擬部20内の能動的仮説模擬処理21および受動的仮説模擬処理22について、シミュレーション時刻による時刻進行制御とイベントの送受信制御を行う。
【0043】
図2、図3は、本発明の実施の形態1の分散シミュレーションシステムにおいて、将来予測模擬部20内の能動的仮説模擬処理21および受動的仮説模擬処理22と、観測情報処理10とが、Optimistic法によるシミュレーション実行を行っている場合の補足説明図である。図2、図3を用いて、先の図1の分散シミュレーションシステムの動作を説明する。
【0044】
図2の予測フェーズにおいて、まず、能動的仮説模擬処理21が、能動的に仮説を生成しつつ、将来時刻の模擬を行う。具体的な例では、航空機の飛行について、その航空機がとり得る複数の飛行戦略(例えば、燃料を節約するためになるべく最短距離で飛行しようとするのか、あるいは危険性を回避するためになるべく雲等を避けて飛行しようとするのか、など)に応じて、将来の複数の移動経路を仮説として計算するような模擬処理である。
【0045】
このような能動的仮説模擬処理21は、仮説の模擬結果について他の模擬処理に対するイベントを発生する。具体的な例では、航空機の飛行の仮説を計算した結果の、ある時刻における航空機の位置情報である。
【0046】
能動的仮説模擬処理21がイベントを発生すると、そのイベントは、分散シミュレーション基盤30において他の仮説模擬処理に送信され、イベントを受信した仮説模擬処理がそのイベントを入力情報として模擬処理を実行する。
【0047】
ここで、他の仮説模擬処理からのイベントに基づいた仮説実行のみを行う仮説模擬処理が、本実施の形態1における受動的仮説模擬処理22である。具体的な例では、航空機の位置情報を基に、航空機探知の模擬を行うようなレーダの模擬処理である。この受動的仮説模擬処理22は、自身が新たな仮説を生成せず、他の仮説模擬処理の仮説実行によるイベントを受信し、そのイベントに基づき模擬処理を行うだけである。
【0048】
観測情報処理10が実世界からの観測情報を送信し、シミュレーション時刻を進めると、本実施の形態1による分散シミュレーションシステムは、評価フェーズに移行する。まず、評価フェーズの最初の段階が、図2における評価フェーズ(1)である。ここで、観測情報処理10から送信された観測情報は、分散シミュレーション基盤30により、能動的仮説模擬処理21に対して送信される。
【0049】
これは、本実施の形態1の分散シミュレーションシステムにおいて仮説を生成するのは、能動的仮説模擬処理21のみであり、仮説の評価を行うのは、能動的仮説模擬処理21のみに限定することが可能なためである。
【0050】
能動的仮説模擬処理21は、観測情報を受信すると、観測情報に基づき仮説の評価を実施する。図2の例では、評価フェーズ(1)の能動的仮説模擬処理1、2の破線の○が付された部分が、その時刻における仮説の結果であり、これらと観測情報との比較が仮説の評価の処理である。
【0051】
具体的な例では、航空機の将来の移動経路として計算した仮説について、観測情報の観測時間と観測位置に基づき、仮説が誤っていなかったかどうかを評価する。なお、仮説の結果は、1つの能動的仮説模擬処理21においても時刻毎に複数個作成されるが、観測情報との比較は、それぞれ独立して実行することが可能である。このため、分散シミュレーションシステムの演算リソースに余裕があれば、並列実行することにより、高速化が可能である。
【0052】
能動的仮説模擬処理21における仮説の評価により、誤った仮説と判断された場合、その仮説の実行の結果、他の仮説模擬処理に対して送信されたイベントの取消が行われる。これが図3における評価フェーズ(2)である。イベントの取消が行われると、取消されたイベントを入力として仮説を実行した受動的仮説模擬処理22において、その仮説実行結果が取消される。これが図3における評価フェーズ(3)である。
【0053】
具体的な例では、航空機の位置情報を基に、航空機探知の模擬を行うようなレーダの模擬処理において、航空機の位置情報の仮説が取消されたため、その位置情報を基に実行したレーダの模擬処理を取消すような処理である。なお、イベントの取消は、1つの受動的仮説模擬処理22においても時刻毎に複数回実行されるが、これらのイベントの取消は、独立している。このため、分散シミュレーションシステムの演算リソースに余裕があれば、並列実行することにより、高速化が可能である。
【0054】
なお、受動的仮説模擬処理22において取消されたイベントを基に仮説を実行した結果としてイベントが生成されていた場合は、そのイベントの取消がこの時点において発生する。これは、発明が解決しようとする課題において説明した、イベントによる仮説実行の伝播を取消す処理に相当し、模擬処理間で順次実行する必要があり、どこまで波及するのか事前に把握することができない処理と同じように見える。
【0055】
しかしながら、ここに至るまでに既に能動的仮説模擬処理21における仮説評価が実行されており(図2における評価フェーズ(1)参照)、このシステムにおいて生成された仮説で誤っていると判断されたものは既に削除されている(図3における評価フェーズ(3)参照)。このため、これ以上仮説取消が仮説模擬処理間で伝播することはない。
【0056】
上述した本実施の形態1における分散シミュレーションシステムの効果をまとめると、以下のようになる。
第一に、各仮説模擬処理が、予測フェーズにおいて、自身が能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかで、仮説を分類しておくことにより、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定できる。この結果、仮説模擬処理における評価処理を効率化することが可能となる。
【0057】
第二に、評価フェーズにおいて分散シミュレーション基盤が、まず全ての仮説模擬処理の仮説評価処理を並列実行し、その後で仮説模擬処理のイベント取消処理を実行するように、仮説模擬処理のスケジューリングを行うことができる。この結果、仮説模擬処理間の因果関係のない処理を効率的に並列実行することで、評価フェーズ全体を効率化することが可能となる。
【0058】
第三に、評価フェーズにおいて、まず能動的に生成された仮説を全て評価してしまい、その評価結果として実行されたイベント取消に基づき、受動的に実行された仮説の取消を行うことができる。すなわち、能動的仮説模擬処理で能動的に生成された仮説の取消処理の並列実行と、能動的仮説模擬処理からのイベント受信によって受動的仮説模擬処理で受動的に生成された仮説の取消処理の並列実行とを分離して実行制御可能となる。この結果、仮説模擬処理における仮説取消の伝播が連鎖的に発生することを抑制し、全体として高速に評価処理を実行することが可能となる。
【0059】
以上のように、実施の形態1によれば、予測フェーズにおいて、自身の仮説模擬処理で能動的に作り出した仮説であるか、あるいは他の仮説模擬処理から送信されたイベントに基づき受動的に処理した仮説であるかにより仮説を分類しておき、評価フェーズにおいて評価対象とする仮説を、自身が能動的に作り出した仮説に限定している。これにより、仮説模擬処理における評価処理を効率化し、高速化を実現した分散シミュレーションシステムを得ることができる。
【0060】
なお、能動的仮説模擬処理は、自身が生成した仮説の模擬実行によって発生したイベントを受動的仮説模擬処理に送信する際に、発生したイベントとイベントの発生原因となった仮説との関連性をイベント関連情報として記憶部(図1には図示せず)に記憶しておくこともできる。この場合には、仮説の取消処理を実行する際に、イベント関連情報に基づいて取り消さなければならいイベントを高速で検索することが可能となる。
【0061】
また、受動的仮説模擬処理は、能動的仮説模擬処理から受信したイベントが後に取消される場合をあらかじめ考慮し、イベント受信の都度、イベントが無効であった場合の仮説を反仮説として模擬実行しておくこともできる。この場合には、後に、実際にイベントが無効になった際に、すでに模擬実行済みの反仮説を直ちに利用することが可能となる。
【符号の説明】
【0062】
10 観測情報処理、20 将来予測模擬部、21 能動的仮説模擬処理(能動的仮説模擬処理部)、22 受動的仮説模擬処理(受動的仮説模擬処理部)、30 分散シミュレーション基盤。
【特許請求の範囲】
【請求項1】
Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理部を複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムにおいて、
前記複数の仮説模擬処理部は、
自身が仮説を生成する1以上の能動的仮説模擬処理部と、
前記1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部と
に分類されており、
前記分散シミュレーション基盤は、前記複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず前記1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に前記1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させる
ことを特徴とする分散シミュレーションシステム。
【請求項2】
請求項1に記載の分散シミュレーションシステムにおいて、
前記1台以上の能動的仮説模擬処理部は、自身が生成した仮説の模擬実行によって発生したイベントを前記1台以上の受動的仮説模擬処理部に送信する際に、発生した前記イベントと前記イベントの発生原因となった仮説との関連性をイベント関連情報として記憶部に記憶しておき、仮説の取消処理を実行する際に、前記イベント関連情報に基づいて取り消さなければならいイベントを検索可能とする
ことを特徴とする分散シミュレーションシステム。
【請求項3】
請求項1または2に記載の分散シミュレーションシステムにおいて、
前記1台以上の受動的仮説模擬処理部は、前記1台以上の能動的仮説模擬処理部から受信したイベントが後に取消される場合をあらかじめ考慮し、イベント受信の都度、前記イベントが無効であった場合の仮説を反仮説として模擬実行しておく
ことを特徴とする分散シミュレーションシステム。
【請求項4】
請求項1ないし3のいずれか1項に記載の分散シミュレーションシステムにおいて、
前記分散シミュレーション基盤は、前記1台以上の能動的仮説模擬処理部で能動的に生成された仮説の取消処理の並列実行と、前記1台以上の能動的仮説模擬処理部からのイベント受信によって前記1台以上の受動的仮説模擬処理部で受動的に生成された仮説の取消処理の並列実行とを分離して実行制御する
ことを特徴とする分散シミュレーションシステム。
【請求項1】
Optimistic法によるシミュレーション時刻進行によって多数の仮説を投機的にシミュレーション実行する複数の仮説模擬処理部を複数の演算装置に分散し、全体を分散シミュレーション基盤が実行制御する分散シミュレーションシステムにおいて、
前記複数の仮説模擬処理部は、
自身が仮説を生成する1以上の能動的仮説模擬処理部と、
前記1台以上の能動的仮説模擬処理部のそれぞれからのイベント受信によって仮説実行を行う1台以上の受動的仮説模擬処理部と
に分類されており、
前記分散シミュレーション基盤は、前記複数の仮説模擬処理部のそれぞれにおいて仮説の評価を行い、誤った仮説の取消処理を実行する評価フェーズにおいて、まず前記1台以上の能動的仮説模擬処理部における仮説の取消処理を並列実行させ、次に前記1台以上の受動的仮説模擬処理部における仮説の取消処理を並列実行させる
ことを特徴とする分散シミュレーションシステム。
【請求項2】
請求項1に記載の分散シミュレーションシステムにおいて、
前記1台以上の能動的仮説模擬処理部は、自身が生成した仮説の模擬実行によって発生したイベントを前記1台以上の受動的仮説模擬処理部に送信する際に、発生した前記イベントと前記イベントの発生原因となった仮説との関連性をイベント関連情報として記憶部に記憶しておき、仮説の取消処理を実行する際に、前記イベント関連情報に基づいて取り消さなければならいイベントを検索可能とする
ことを特徴とする分散シミュレーションシステム。
【請求項3】
請求項1または2に記載の分散シミュレーションシステムにおいて、
前記1台以上の受動的仮説模擬処理部は、前記1台以上の能動的仮説模擬処理部から受信したイベントが後に取消される場合をあらかじめ考慮し、イベント受信の都度、前記イベントが無効であった場合の仮説を反仮説として模擬実行しておく
ことを特徴とする分散シミュレーションシステム。
【請求項4】
請求項1ないし3のいずれか1項に記載の分散シミュレーションシステムにおいて、
前記分散シミュレーション基盤は、前記1台以上の能動的仮説模擬処理部で能動的に生成された仮説の取消処理の並列実行と、前記1台以上の能動的仮説模擬処理部からのイベント受信によって前記1台以上の受動的仮説模擬処理部で受動的に生成された仮説の取消処理の並列実行とを分離して実行制御する
ことを特徴とする分散シミュレーションシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−146002(P2012−146002A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2011−1788(P2011−1788)
【出願日】平成23年1月7日(2011.1.7)
【出願人】(000006013)三菱電機株式会社 (33,312)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願日】平成23年1月7日(2011.1.7)
【出願人】(000006013)三菱電機株式会社 (33,312)
[ Back to top ]