JP6238825B2 - Distributed simulation system - Google Patents

Distributed simulation system Download PDF

Info

Publication number
JP6238825B2
JP6238825B2 JP2014080312A JP2014080312A JP6238825B2 JP 6238825 B2 JP6238825 B2 JP 6238825B2 JP 2014080312 A JP2014080312 A JP 2014080312A JP 2014080312 A JP2014080312 A JP 2014080312A JP 6238825 B2 JP6238825 B2 JP 6238825B2
Authority
JP
Japan
Prior art keywords
command
simulation
inspection
simulator
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014080312A
Other languages
Japanese (ja)
Other versions
JP2015201086A (en
Inventor
修介 渡部
修介 渡部
尾崎 敦夫
敦夫 尾崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2014080312A priority Critical patent/JP6238825B2/en
Publication of JP2015201086A publication Critical patent/JP2015201086A/en
Application granted granted Critical
Publication of JP6238825B2 publication Critical patent/JP6238825B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、HLA(High Level Architecture)によって規定される分散シミュレーションシステムに関する。   The present invention relates to a distributed simulation system defined by HLA (High Level Architecture).

HLAは、IEEEによって標準化された分散シミュレーションシステムのソフトウェアアーキテクチャである。
図1は、HLAによって規定される分散シミュレーションシステムの例を示している。図において、101はHLAに準拠したシステム全体を示し、フェデレーションと呼ぶ。102−1〜102−nは、システムを構成する個々のシミュレータ等のサブシステムを示し、フェデレートと呼ぶ。103は、フェデレーション101と複数のフェデレート102に対する共通機能を提供する基盤ソフトウェアであり、RTI(Run−Time Infrastructure)と呼ぶ。104−1〜104−nは、フェデレート102−1〜102−nにおける、RTI103とのインタフェース機能であり、フェデレートが共通的に保有するフェデレートRTIインタフェース部である。105−1〜105−nは、フェデレート102−1〜102−nにおいて、RTIインタフェース部104−1〜104−n以外のフェデレート固有の機能であるフェデレート処理部である。RTI103が保持しなければならない機能仕様とフェデレートRTIインタフェース部の機能仕様は、非特許文献1に規定されている。
HLA is a software architecture of a distributed simulation system standardized by IEEE.
FIG. 1 shows an example of a distributed simulation system defined by HLA. In the figure, reference numeral 101 denotes an entire system compliant with HLA, which is called federation. Reference numerals 102-1 to 102-n denote subsystems such as individual simulators constituting the system, which are called federates. Reference numeral 103 denotes platform software that provides a common function for the federation 101 and the plurality of federations 102, and is called RTI (Run-Time Infrastructure). 104-1 to 104-n are interface functions with the RTI 103 in the federates 102-1 to 102-n, and are federation RTI interface units commonly owned by the federate. 105-1 to 105-n are federation processing units that are functions unique to the federation other than the RTI interface units 104-1 to 104-n in the federations 102-1 to 102-n. The functional specifications that the RTI 103 must hold and the functional specifications of the federate RTI interface unit are defined in Non-Patent Document 1.

非特許文献1等のHLA規約に基づいたシミュレーションシステムでは、あるフェデレーションの一機能として作成されたフェデレートを、変更することなく別のフェデレーションで利用することが可能となり、フェデレートの再利用によるシステム構築コストの低減化や、異なる目的のために作成されたフェデレート同士の相互接続性の向上を実現することができる。   In a simulation system based on the HLA protocol such as Non-Patent Document 1, a federation created as a function of a certain federation can be used in another federation without change, and the system construction cost by reusing the federation Can be reduced, and the interoperability of federates created for different purposes can be improved.

非特許文献1には、RTIがフェデレーションとフェデレートを実行制御するための機能が定義されている。その機能の一つに、多数のフェデレートの実行進捗を論理的なシミュレーション時刻(論理時刻と呼ぶ。)によって時刻同期を行いつつ制御する、Time Management機能がある。Time Management機能による時刻進行の一例を図2に示す。   Non-Patent Document 1 defines a function for the RTI to execute and control federation and federation. As one of the functions, there is a Time Management function that controls execution progress of a number of federations while performing time synchronization by logical simulation time (referred to as logical time). An example of time progression by the Time Management function is shown in FIG.

図2は、2つのフェデレートがRTIによって時刻同期の実行を管理されている例である。図において、まずフェデレート1における時刻tiの処理について説明する。フェデレート1は、時刻tiにおける模擬処理を実行し、その処理結果として発生した時刻ti+1がTime Stamp(有効時刻)に設定されたデータ交換メッセージmsg1を、フェデレート2に送信する。データ交換メッセージの送信は、RTIの機能であるUpdate Attribute Values(UAV)の呼び出しによって、RTIに委託される。フェデレート1は、ti時刻における模擬処理およびデータ交換メッセージ送信処理が完了すると、RTIに対し、次時刻である時刻ti+1への時刻進行要求を、RTIの機能であるTime Advance Request(TAR)の呼び出しによって通知する。 FIG. 2 is an example in which two federations are managed to perform time synchronization by RTI. In the figure, first, processing at time t i in federation 1 will be described. Federating 1 executes the simulation processing at time t i, the time t i + 1 generated as a result of processing the data exchange message msg1 set to Time Stamp (valid time) to the federate 2. The transmission of the data exchange message is entrusted to the RTI by calling the Update Attribute Values (UAV) that is a function of the RTI. Federating 1, the simulated processing and data exchange message transmission process in the t i the time is completed, to RTI, the time progression requests to time t i + 1 is the next time, Time Advance Request (TAR is a function of the RTI ) To notify.

次に、フェデレート2の時刻tiにおける処理について説明する。フェデレート2も時刻tiの模擬処理を実行し、その結果として発生した時刻ti+1が有効時刻に設定されたデータ交換メッセージmsg2をUAV呼び出しによってRTIに委託し、次時刻である時刻ti+1への時刻進行要求を、TAR呼び出しによってRTIに通知する。 Next, processing at time t i of federation 2 will be described. Federated 2 also executes the simulation processing time t i, commissioned a data exchange message msg2 the time t i + 1 generated is set to a valid time as a result to the RTI by UAV call, time t i is the next time A time advance request to +1 is notified to the RTI by a TAR call.

フェデレート1とフェデレート2がそれぞれ次時刻である時刻ti+1への時刻進行要求を通知すると、RTIは、まず時刻ti+1が有効時刻に設定されたデータ交換メッセージmsg1およびmsg2をフェデレート2およびフェデレート1に、フェデレートに対するコールバック機能であるReflect Attribute Values(RAV)呼び出しによって受信させる。次に、フェデレーション中の全てのフェデレートが時刻ti+1以上へ進行要求しているため、シミュレーション全体でのデータの整合性を確保できる最も遅い論理時刻が時刻ti+1であることを計算し、フェデレート1とフェデレート2に対し、フェデレートに対するコールバック機能であるTime Advance Grant(TAG)呼び出しによって時刻ti+1への進行許可を通知する。ここまでの処理によって、フェデレート1およびフェデレート2の時刻同期が完了し、フェデレート1およびフェデレート2は、時刻進行許可された時刻ti+1の模擬処理を実行する。なお、フェデレートがTARを呼び出してTAGを待つ間の状態をTime Advancing状態と呼び、TAGを受けてTARを出すまでの間の状態をTime Granted状態と呼ぶ。以上の処理を各フェデレートが時刻進行する都度繰り返すことにより、フェデレーション全体の時刻進行が制御される。 When the federation 1 and the federation 2 respectively notify the time progress request to the next time t i + 1 , the RTI first feeds the data exchange messages msg1 and msg2 with the time t i + 1 set to the valid time to the federation 2 And federate 1 is received by a call to the Reflex Attribute Values (RAV) which is a callback function for federation. Next, since all federations in the federation are requested to proceed to time t i + 1 or more, the latest logical time that can ensure data consistency in the entire simulation is time t i + 1. Then, the federation 1 and the federation 2 are notified of permission to proceed to the time t i + 1 by calling a Time Advance Grant (TAG) which is a callback function for the federation. With the processing so far, the time synchronization of federate 1 and federate 2 is completed, and federate 1 and federate 2 execute the simulation processing of time t i + 1 permitted for time progress. Note that a state during which the federation calls TAR and waits for TAG is referred to as “Time Advanced state”, and a state from when TAG is received until TAR is issued is referred to as “Time Granted state”. By repeating the above process every time each federation advances in time, the time advance of the entire federation is controlled.

なお、図2の処理における時刻は全て論理時刻であり、現実世界における時刻(実時刻と呼ぶ。)と全く無関係に処理される時刻である。論理時刻は、コンピュータプログラムであるフェデレートにおいて模擬処理やデータ交換メッセージ通信の順番を決定するために利用される数値情報であり、複数のフェデレートが並列に模擬処理の実行やデータ交換メッセージ通信を行う場合に、シミュレーション中の全ての模擬処理とデータ交換メッセージ通信が論理時刻によって整列化され順番に処理することを保証するために使用される。論理時刻を用いることにより、多数のフェデレートを多数のコンピュータで並列処理し、シミュレーションを高速化した場合でも、シミュレーションの再現性を保証することができる。   Note that all the times in the process of FIG. 2 are logical times, and are times that are processed completely independently of the time in the real world (referred to as real time). The logical time is numerical information used to determine the order of simulation processing and data exchange message communication in the federation that is a computer program. When multiple federations perform simulation processing and data exchange message communication in parallel In addition, all simulation processing during simulation and data exchange message communication are aligned by logical time and used to ensure that they are processed in order. By using the logical time, it is possible to guarantee the reproducibility of the simulation even when a large number of federates are processed in parallel by a large number of computers and the simulation is accelerated.

HLAに基づいたシミュレーションの応用の一つに、指揮官が行う部隊指揮の訓練を目的としたCPX(Command Post Exercise)シミュレーションがある。CPXシミュレーションでは、例えば捜索救難を例にとると、捜索機や救難部隊などがフェデレートにおいて模擬されている(これら模擬物体をエンティティと呼ぶ)。CPXシミュレーションの実行中は、訓練対象者は、各エンティティの状態を観察し、次にエンティティをどう動かせば良いか(例えば、どのように救難部隊を向かわせればより速く救難できるか)を判断し、エンティティに対しエンティティの次の動作を指示するコマンド入力を行う。CPXシミュレーションが終了した後、訓練対象者が行ったコマンド入力の結果を解析し、訓練対象者の問題点や改善点の評価を行う。   One application of simulation based on HLA is CPX (Command Post Excercise) simulation for the purpose of training of unit command conducted by a commander. In the CPX simulation, for example, search rescue is taken as an example, search machines and rescue units are simulated in federation (these simulated objects are called entities). During the CPX simulation, the trainee observes the state of each entity and then decides how to move the entity (eg, how the rescue team can be rescued faster). The command input which instructs the next operation of the entity to the entity is performed. After the CPX simulation is completed, the result of command input performed by the training subject is analyzed, and problems and improvements of the training subject are evaluated.

CPXシミュレーションは、人間である訓練対象者の状況判断や意思決定の訓練を目的とするため、リアルタイムで実行する必要があるが、エンティティ数が数千にも及ぶ大規模なシミュレーションとなる場合もあるため、CPXシミュレータには、多数のフェデレートを論理時刻によって実行制御することにより高速化を図った分散シミュレーションシステムが用いられ、論理時刻と実時刻の同期によってリアルタイムに実行される。   The CPX simulation is intended for the situation training and decision-making training of human training subjects, so it must be executed in real time, but it may be a large-scale simulation with thousands of entities. Therefore, the CPX simulator uses a distributed simulation system that speeds up execution by controlling the execution of a number of federations according to the logical time, and is executed in real time by synchronizing the logical time and the real time.

CPXシミュレーションでは、エンティティに対して入力されたコマンドが基となった不具合により、シミュレーションを実行しているシミュレータが障害を起こして停止してしまうような場合がある。なお、コマンド入力直後に、当該コマンドそのものが原因となって不具合が発生する第一のケースの他に、当該コマンドを基にエンティティが模擬処理を進めていった結果、先の時刻になってから不具合が発生する第二のケースもある。第二のケースの具体例として、航空機をエンティティとした航空管制シミュレーションにおいて、訓練者がある航空機に対して進行方向と速度を指定した結果、シミュレータが管理できないシミュレーション中の空域に当該航空機が進行してしまい、不定なメモリ領域等を参照することによって発生するエラー等が挙げられる。エンティティのエラーによってフェデレートが異常終了した場合、他のフェデレートに対して直接の影響は無いが、異常終了したフェデレートが模擬していたエンティティの情報を利用できなくなるため、シミュレーション全体の整合性を保つことができなくなる。そのため、多くのCPXシミュレータでは、このような障害が発生した場合には、シミュレーション全体を停止させるか、異常終了したフェデレートが再起動し、異常終了した論理時刻まで復旧するのを待つような措置をとることになり、訓練に影響を与えることとなる。   In the CPX simulation, there is a case where the simulator executing the simulation stops due to a failure due to a defect based on a command input to the entity. In addition to the first case where a failure occurs due to the command itself immediately after the command is entered, the entity has proceeded with the simulation process based on the command, and as a result, the previous time has passed. There is also a second case where a problem occurs. As a specific example of the second case, in an air traffic control simulation with an aircraft as an entity, the trainee specified the traveling direction and speed for a certain aircraft, and as a result, the aircraft progressed into the simulation airspace that the simulator could not manage. Thus, an error or the like generated by referring to an indefinite memory area or the like can be given. If federation ends abnormally due to an entity error, there is no direct effect on other federations, but the entity information simulated by the abnormally ended federation cannot be used, so the consistency of the entire simulation must be maintained. Can not be. For this reason, in many CPX simulators, when such a failure occurs, the entire simulation is stopped, or the federation that ended abnormally restarts and waits for recovery until the abnormally ended logical time. Will affect the training.

システムに対する入力データが原因となるエラーを防止する方法として、例えば特許文献1や特許文献2に示すような方法があった。特許文献1に示されたシステムでは、オンライン端末からのデータ受信時、障害が発生した場合、その障害電文をセンタ側に登録することで、同一電文による同一障害を未然に防ぐようにしていた。また、特許文献2に示された装置では、システムに対する操作とシステム内部情報の履歴を持ち、システム障害の恐れがある場合に操作を計算機に渡すことなく保持し、また、システムの障害発生の兆候が得られた場合に、システム内部情報が所定の状態になるまで操作を取り消すようにしていた。   As a method for preventing an error caused by input data to the system, for example, there are methods shown in Patent Document 1 and Patent Document 2. In the system disclosed in Patent Document 1, when a failure occurs when data is received from an online terminal, the failure message is registered on the center side to prevent the same failure due to the same message. In addition, the apparatus disclosed in Patent Document 2 has a history of operations on the system and system internal information, and when there is a risk of system failure, holds the operation without passing it to a computer. Is obtained, the operation is canceled until the internal system information reaches a predetermined state.

特開平11−85696号公報JP 11-85696 A 特開平10−105440号公報JP-A-10-105440

IEEE 1516.1−2010−Standard for Modeling and Simulation High Level Architecture(HLA)−Federate Interface Specification.IEEE 1516.1−2010−Standard for Modeling and Simulation High Level Architecture (HLA) −Federate Interface Specification.

しかしながら、CPXシミュレータの場合、訓練対象者の訓練を目的とするため、実行する度に異なるシナリオを実行し、また訓練対象者がコマンド入力するタイミングも不定となることから、シミュレーションに登場するエンティティの種類や環境、コマンドの入力を受け付けた際のエンティティの状態、およびそのエンティティと関連するその他のエンティティの状態等、実行する度に異なるため、次にシミュレーションを実行した際に同じ状況になる可能性は非常に低く、履歴によって障害が発生した状態を管理する方法は有効ではない。   However, in the case of the CPX simulator, for the purpose of training the training subject, a different scenario is executed each time it is executed, and the timing at which the training subject inputs a command is also indefinite. The type, environment, state of the entity when command input is accepted, and the state of other entities related to that entity are different each time it is executed, so the next situation may be the same when the simulation is executed Is very low, and it is not effective to manage the state of failure by history.

また、シミュレーションの実行中は、時間の進行と共にエンティティの状態が変化することを訓練対象者が観察し状況判断することが訓練の目的の一つであるため、障害の原因となったコマンドが特定できたとしても、そのコマンドを取り消して以前のエンティティの状態に戻すことは、訓練対象者が観察していたエンティティの状態を不自然な形で強制的に変更させることになり、有効ではない。   Also, during the simulation, it is one of the objectives of the training that the trainee observes and judges the status of the entity as the time progresses, so the command that caused the failure is identified. Even if it can, canceling the command and returning it to the previous entity state will force the entity state observed by the trainee to be changed in an unnatural way and is not effective.

この発明は上記のような課題を解決するためになされたもので、エンティティに対して入力されたコマンドが原因となって発生するシミュレーション停止を防止することのできる分散シミュレーションシステムを得ることを目的とする。   The present invention has been made to solve the above problems, and an object thereof is to obtain a distributed simulation system capable of preventing a simulation stop caused by a command input to an entity. To do.

この発明に係る分散シミュレーションシステムは、シミュレーションエンティティに対するコマンド入力に応じてリアルタイムにシミュレーションを実行する分散シミュレーションシステムにおいて、シミュレーションを分散して実行するコマンド実行シミュレータと、コマンド実行シミュレータと同じシミュレーションを実行し、コマンドを実行したことによる障害が発生するか否かを検査するコマンド検査シミュレータと、コマンド入力を受けて、コマンドをコマンド実行シミュレータに出力する前にコマンド検査シミュレータに出力し、コマンド検査シミュレータによる障害発生の有無を示す情報を取得するコマンド処理部とを備えたものである。   The distributed simulation system according to the present invention is a distributed simulation system that executes a simulation in real time according to a command input to a simulation entity, and executes a simulation that is the same as the command execution simulator, a command execution simulator that executes the simulation in a distributed manner, A command inspection simulator that inspects whether or not a failure due to command execution occurs, and a command input that receives a command and outputs the command to the command execution simulator before it is output. And a command processing unit that acquires information indicating the presence or absence of the.

この発明の分散シミュレーションシステムは、入力されたコマンドをコマンド実行シミュレータに出力する前にコマンド検査シミュレータに出力し、コマンド検査シミュレータによる障害発生の有無を取得するようにしたので、エンティティに対して入力されたコマンドが原因となって発生するシミュレーション停止を未然に防止することができる。   In the distributed simulation system of the present invention, the input command is output to the command inspection simulator before being output to the command execution simulator, and the presence / absence of failure occurrence by the command inspection simulator is acquired. It is possible to prevent a simulation stop caused by a command that has occurred.

HLAによって規定される分散シミュレーションシステムの例を示す構成図である。It is a block diagram which shows the example of the distributed simulation system prescribed | regulated by HLA. 2つのフェデレートがRTIによって時刻同期の実行を管理されている例を示す説明図である。It is explanatory drawing which shows the example by which two federations are managing execution of time synchronization by RTI. この発明の実施の形態1による分散シミュレーションシステムを示す構成図である。BRIEF DESCRIPTION OF THE DRAWINGS It is a block diagram which shows the distributed simulation system by Embodiment 1 of this invention. この発明の実施の形態1の分散シミュレーションシステムにおける各フェデレートの時間進行の説明図である。It is explanatory drawing of the time progress of each federation in the dispersion | distribution simulation system of Embodiment 1 of this invention. この発明の実施の形態1の分散シミュレーションシステムにおけるコマンド入力があった場合の各フェデレートの時間進行を示す説明図である。It is explanatory drawing which shows the time progress of each federation when there exists command input in the distributed simulation system of Embodiment 1 of this invention. この発明の実施の形態2による分散シミュレーションシステムにおける各フェデレートの時間進行の説明図である。It is explanatory drawing of the time progress of each federation in the distributed simulation system by Embodiment 2 of this invention. この発明の実施の形態3による分散シミュレーションシステムにおける各フェデレートの時間進行を示す説明図である。It is explanatory drawing which shows the time progress of each federation in the distributed simulation system by Embodiment 3 of this invention. この発明の実施の形態4による分散シミュレーションシステムにおける各フェデレートの時間進行を示す説明図である。It is explanatory drawing which shows the time progress of each federation in the distributed simulation system by Embodiment 4 of this invention.

実施の形態1.
実施の形態1では、訓練対象者が入力したコマンドを、CPXシミュレータに渡す前に障害の原因となることを検査し、当該コマンドが障害の原因となる場合には当該コマンドを保留し、訓練対象者に対して通知する例について説明する。
Embodiment 1 FIG.
In the first embodiment, a command input by a training subject is inspected to cause a failure before passing it to the CPX simulator. If the command causes a failure, the command is suspended and the training subject is An example of notifying a person will be described.

図3は、本発明による訓練用分散シミュレーションシステムの例を示す構成図である。図3のシステムは、HLAに基づいた構成をとっており、フェデレーション1とRTI2から構成されている。フェデレーション1は、コマンド入力フェデレート10と、コマンド検査フェデレート20−1〜20−mと、CPXフェデレート30−1〜30−nを備えている。また、RTI2は、図1のRTI103と同様に、フェデレーション1とコマンド入力フェデレート10、コマンド検査フェデレート20−1〜20−m、CPXフェデレート30−1〜30−nに対する共通機能を提供する基盤ソフトウェアである。   FIG. 3 is a block diagram showing an example of a distributed simulation system for training according to the present invention. The system shown in FIG. 3 has a configuration based on HLA and includes a federation 1 and an RTI 2. The federation 1 includes a command input federation 10, command inspection federations 20-1 to 20-m, and CPX federations 30-1 to 30-n. Similarly to the RTI 103 in FIG. 1, the RTI 2 is basic software that provides common functions for the federation 1, the command input federate 10, the command inspection federates 20-1 to 20-m, and the CPX federates 30-1 to 30-n. is there.

フェデレーション1におけるコマンド入力フェデレート10は、訓練対象者が入力したコマンドを受け付けるコマンド処理部であり、コマンド評価処理部11と警告表示部12とフェデレートRTIインタフェース部13を備えている。コマンド評価処理部11は、コマンド入力フェデレート10において、訓練対象者から入力されたコマンドを保持し、他のフェデレートにコマンドを送信し、また、コマンド検査フェデレート20−1〜20−mの状態監視を行う処理部である。警告表示部12は、コマンド評価処理部11において、訓練対象者から入力されたコマンドが原因となる障害発生がコマンド検査フェデレート20−1〜20−mにおいて確認された場合に、訓練対象者に対して警告を表示する表示部である。フェデレートRTIインタフェース部13は、コマンド入力フェデレート10におけるRTI2とのインタフェース機能である。   The command input federation 10 in the federation 1 is a command processing unit that receives a command input by a training subject, and includes a command evaluation processing unit 11, a warning display unit 12, and a federation RTI interface unit 13. The command evaluation processing unit 11 holds the command input from the training subject in the command input federate 10, transmits the command to other federates, and monitors the status of the command inspection federates 20-1 to 20-m. It is a processing part to perform. The warning display unit 12 responds to the training subject when the command evaluation processing unit 11 confirms that the failure caused by the command input from the training subject is caused by the command inspection federations 20-1 to 20-m. The display unit displays a warning. The federate RTI interface unit 13 has an interface function with the RTI 2 in the command input federate 10.

コマンド検査フェデレート20−1〜20−mは、コマンド入力フェデレート10から、訓練対象者が入力したコマンドを受け取り、CPXフェデレート30−1〜30−nよりも高速にシミュレーションを実行して、コマンドによる障害が発生しないか検査を行う検査シミュレーションを実行するコマンド検査シミュレータであり、検査シミュレーション部21−1〜21−mと、フェデレートRTIインタフェース部22−1〜22−mを備えている。検査シミュレーション部21−1〜21−mは、コマンド検査フェデレート20−1〜20−mにおけるシミュレーションを実行する検査シミュレーション実行部である。また、フェデレートRTIインタフェース部22−1〜22−mは、コマンド検査フェデレート20−1〜20−mにおけるRTI2とのインタフェース機能である。   The command inspection federates 20-1 to 20-m receive a command input by the person to be trained from the command input federate 10 and execute a simulation at a higher speed than the CPX federates 30-1 to 30-n. Is a command inspection simulator that executes an inspection simulation for inspecting whether or not a problem occurs, and includes inspection simulation units 21-1 to 21-m and federated RTI interface units 22-1 to 22-m. The inspection simulation units 21-1 to 21-m are inspection simulation execution units that execute simulations at the command inspection federations 20-1 to 20-m. Further, the federate RTI interface units 22-1 to 22-m are interface functions with the RTI2 in the command inspection federates 20-1 to 20-m.

CPXフェデレート30−1〜30−nは、コマンド入力フェデレート10から、訓練対象者が入力したコマンドを受け取り、CPXシミュレーションを実行するコマンド実行シミュレータであり、CPXシミュレーション部31−1〜31−nと、フェデレートRTIインタフェース部32−1〜32−nを備えている。CPXシミュレーション部31−1〜31−nは、CPXフェデレート30−1〜30−nにおけるシミュレーションを実行するCPXシミュレーション実行部である。フェデレートRTIインタフェース部32−1〜32−nは、CPXフェデレート30−1〜30−nにおけるRTI2とのインタフェース機能である。   The CPX federates 30-1 to 30-n are command execution simulators that receive a command input by a training subject from the command input federate 10 and execute a CPX simulation. The CPX simulation units 31-1 to 31-n, Federated RTI interface units 32-1 to 32-n are provided. The CPX simulation units 31-1 to 31-n are CPX simulation execution units that execute simulations in the CPX federates 30-1 to 30-n. The federate RTI interface units 32-1 to 32-n are interface functions with the RTI 2 in the CPX federates 30-1 to 30-n.

コマンド検査フェデレート20−1〜20−mの検査シミュレーション部21−1〜21−mにおいて実行されるエンティティ(検査エンティティ)は、CPXフェデレート30−1〜30−nのCPXシミュレーション部31−1〜31−nにおいて実行されるエンティティ(CPXエンティティ)の複製であり、検査エンティティとCPXエンティティは、同じ論理時刻において全く同一の状態を保持する。そのため、シミュレーションの初期化時において、コマンド検査フェデレート20−1〜20−mとCPXフェデレート30−1〜30−nは同一のシナリオの読み込みや、同一の乱数シード値の設定を行う。   The entities (inspection entities) executed in the inspection simulation units 21-1 to 21-m of the command inspection federations 20-1 to 20-m are the CPX simulation units 31-1 to 31-31 of the CPX federations 30-1 to 30-n. -A duplicate of the entity (CPX entity) executed at n, where the checking entity and the CPX entity maintain exactly the same state at the same logical time. Therefore, at the time of simulation initialization, the command inspection federations 20-1 to 20-m and the CPX federations 30-1 to 30-n read the same scenario and set the same random number seed value.

なお、コマンド検査フェデレート20−1〜20−mおよびCPXフェデレート30−1〜30−nは、実行するCPXシミュレーションの規模に応じて、シミュレーションをリアルタイムに実行するのに必要な1以上の数を同時に実行することが可能である。図3では、CPXシミュレーションを実行するCPXフェデレートがn個あるのに対して、より高速な検査シミュレーションを実行する検査コマンド検査フェデレートはm個(m>n)あることを示す。コマンド検査フェデレート20−1〜20−mとCPXフェデレート30−1〜30−nの数が異なる場合でも、検査エンティティとCPXエンティティの数や同じ時刻における状態は同一であり、フェデレート毎のエンティティの配分が異なるだけである。   Note that the command inspection federations 20-1 to 20-m and the CPX federations 30-1 to 30-n can simultaneously calculate one or more numbers necessary for executing the simulation in real time according to the scale of the CPX simulation to be executed. It is possible to execute. FIG. 3 shows that there are n CPX federations for executing the CPX simulation, while there are m (m> n) inspection command inspection federations for executing a faster inspection simulation. Even if the numbers of command inspection federations 20-1 to 20-m and CPX federations 30-1 to 30-n are different, the number of inspection entities and CPX entities and the state at the same time are the same, and the allocation of entities for each federation Is only different.

次に、実施の形態1の分散シミュレーションシステムの動作について、図4および図5を用いて説明する。図4は、実時間進行を横軸にとったタイムチャート形式の説明図である。図4では、コマンド入力フェデレート10、コマンド検査フェデレート20−1〜20−m、CPXフェデレート30−1〜30−nは離散的な論理時刻進行によって時間進行するため、横軸に論理時刻を示す縦線を入れて説明する。   Next, the operation of the distributed simulation system according to the first embodiment will be described with reference to FIGS. FIG. 4 is an explanatory diagram in a time chart format in which real time progress is taken on the horizontal axis. In FIG. 4, since the command input federate 10, the command inspection federates 20-1 to 20-m, and the CPX federates 30-1 to 30-n progress with time according to discrete logical time progression, the horizontal axis indicates the logical time. I will explain with a line.

図4の状況では、シミュレーションは現在、論理時刻のLTまで進んだ状態を、時刻LTにおける黒丸(●)で示している。CPXフェデレート30−1〜30−nは、通常のCPXシミュレーションと同様にシミュレーション進行に応じて時刻がLTまで進んでいる。この状況において、コマンド検査フェデレート20−1〜20−mは、CPXエンティティのシミュレーション結果をCPXフェデレート30−1〜30−nから受信することで、時刻LTにおける検査エンティティの状態をCPXエンティティの状態に一致させている。なお、コマンド入力フェデレート10は未だ何も入力されていないため、単純に時刻をLTに進めただけである。   In the situation of FIG. 4, the simulation is shown as a black circle (●) at the time LT when the simulation is currently advanced to the logical time LT. In the CPX federates 30-1 to 30-n, the time advances to LT as the simulation progresses, as in the normal CPX simulation. In this situation, the command inspection federation 20-1 to 20-m receives the simulation result of the CPX entity from the CPX federation 30-1 to 30-n, thereby changing the state of the inspection entity at the time LT to the state of the CPX entity. Match. Note that nothing has been input yet for the command input federate 10, and the time is simply advanced to LT.

なお、図4および図4と同様の形式で説明する図5〜図8は、説明を簡単にするために、コマンド検査フェデレート20−1〜20−mとCPXフェデレート30−1〜30−nの数を1つにしている。コマンド検査フェデレート20−1〜20−mとCPXフェデレート30−1〜30−nが複数の場合であっても、実際の動作は、個々のフェデレートで実行されているエンティティを対象に動作するため、動作している個々のフェデレートを一つの単位として考えることができる。
以下、コマンド検査フェデレート20−1〜20−mは、単にコマンド検査フェデレート20と表し、CPXフェデレート30−1〜30−nは、CPXフェデレート30と表すこととする。ここで、コマンド検査フェデレート20およびCPXフェデレート30は、一つまたは複数のコマンド検査フェデレートおよびCPXフェデレートを意味している。
5 to 8 described in the same format as FIG. 4 and FIG. 4 show the command inspection federates 20-1 to 20-m and the CPX federates 30-1 to 30-n for the sake of simplicity. The number is one. Even if there are a plurality of command inspection federations 20-1 to 20-m and CPX federations 30-1 to 30-n, the actual operation is performed on entities that are executed at individual federations. Each individual federate that is operating can be considered as a unit.
Hereinafter, the command inspection federations 20-1 to 20-m are simply represented as command inspection federation 20, and the CPX federations 30-1 to 30-n are represented as CPX federation 30. Here, the command inspection federation 20 and the CPX federation 30 mean one or a plurality of command inspection federations and CPX federations.

次に、時刻LTのCPXシミュレーションについて、訓練対象者がコマンドの入力を行った場合の動作について、図5を用いて説明する。訓練対象者は、CPXフェデレート30によるCPXシミュレーションの状況を観察し、状況判断を行って特定のCPXエンティティ(エンティティA)に対するコマンド指示(CMD#1)を行う。通常のCPXシミュレーションでは、このような状況でユーザが入力したコマンドは、次の時刻であるLT+1において処理される。訓練対象者が入力したコマンドは、コマンド入力フェデレート10が受信し、そのコマンドが障害を起こすか確認するためにコマンド検査フェデレート20にコマンドを送信する。コマンドを受け取ったコマンド検査フェデレート20は、時刻LTの状態を基に、次の時刻(LT+1)以降のシミュレーション(コマンド検査シミュレーション)を、実時間と同期せずに投機的に実行する(CMD#1検査シミュレーション)。   Next, with respect to the CPX simulation at time LT, an operation when a training subject inputs a command will be described with reference to FIG. The person to be trained observes the status of the CPX simulation by the CPX federate 30, makes a status judgment, and gives a command instruction (CMD # 1) to a specific CPX entity (entity A). In a normal CPX simulation, a command input by the user in such a situation is processed at the next time LT + 1. The command input by the training subject is received by the command input federate 10, and the command is transmitted to the command inspection federate 20 in order to check whether the command causes a failure. The command check federation 20 that has received the command speculatively executes a simulation (command check simulation) after the next time (LT + 1) based on the state at the time LT without synchronizing with the real time (CMD # 1). Inspection simulation).

図5の状態では、実時間におけるLT+1以前に、投機的に実行されたCMD#1検査シミュレーションがLT+5まで進んでいる。ここで、LT+5においてコマンド検査フェデレート20において障害が発生し、コマンド検査フェデレート20が異常終了すると、コマンド入力フェデレート10は、コマンド検査フェデレート20の異常終了を検知し、当該コマンドをCPXフェデレート30に送信せず、警告表示部12より訓練対象者に対して、入力された当該コマンドの情報(エンティティAに対するCMD#1)は、CPXシミュレーションにおいて障害の原因となること通知する。通知を受けた訓練対象者は、コマンド指示を保留するか、別のコマンドを指示するかを判断することができる。   In the state of FIG. 5, the speculatively executed CMD # 1 inspection simulation has progressed to LT + 5 before LT + 1 in real time. Here, when a failure occurs in the command check federate 20 at LT + 5 and the command check federate 20 ends abnormally, the command input federate 10 detects the abnormal end of the command check federate 20 and sends the command to the CPX federate 30. First, the information on the command (CMD # 1 for the entity A) input from the warning display unit 12 to the training subject is notified that it causes a failure in the CPX simulation. The trainee who has received the notification can determine whether to hold the command instruction or to instruct another command.

なお、コマンドを受け取ったコマンド検査フェデレート20の投機的実行は、HLAに基づく分散シミュレーションの場合、RTIのTime Management機能のうち、Flush Queue Request(FQR)を用いた時刻進行によって実現できる。また、コマンド入力フェデレート10によるコマンド検査フェデレート20の異常終了の検知は、HLAに基づく分散シミュレーションの場合、RTI2のManagement Object Model(MOM)機能を用いることにより実現できる。また、コマンド検査フェデレート20が障害によって異常終了した後は、コマンド検査フェデレート20は再起動し、直ぐに次のコマンド入力に対する検査ができる必要がある。コマンド検査フェデレート20の再起動時間が問題になる場合には、HLAのFederation Management機能を利用することでコマンド検査フェデレート20を多重化し、対応することも可能である。   Note that the speculative execution of the command inspection federation 20 that has received the command can be realized by time progress using Flush Queue Request (FQR) in the time management function of RTI in the case of distributed simulation based on HLA. In addition, the detection of abnormal termination of the command inspection federation 20 by the command input federation 10 can be realized by using a management object model (MOM) function of RTI2 in the case of a distributed simulation based on HLA. In addition, after the command check federate 20 is abnormally terminated due to a failure, the command check federate 20 needs to be restarted and immediately be able to check the next command input. When the restart time of the command inspection federation 20 becomes a problem, it is possible to multiplex the command inspection federation 20 by using the HLA Federation Management function.

また、更なる効果として、コマンド検査フェデレート20は、コマンド入力時に投機的にコマンド検査シミュレーションを実行する他は、同じ時刻におけるコマンド検査エンティティはCPXエンティティと全く同一の状態を保持するため、コマンド検査フェデレート20をCPXフェデレート30のバックアップとして利用することも可能である。すなわち、もし、CPXフェデレート30を実行しているハードウェアの障害等、訓練対象者のコマンド入力以外の原因により障害が発生し、CPXシミュレーションを実行することができなくなった場合は、実行中のコマンド検査フェデレート20をCPXフェデレート30として利用することができる。   Further, as a further effect, the command check federation 20 has the same state as the CPX entity except that the command check simulation is executed speculatively at the time of command input. 20 can also be used as a backup of the CPX federate 30. That is, if a failure occurs due to a cause other than the command input of the person to be trained, such as a failure of the hardware executing the CPX federate 30, and the CPX simulation cannot be executed, the command being executed The inspection federate 20 can be used as the CPX federate 30.

以上説明したように、実施の形態1の分散シミュレーションシステムによれば、シミュレーションエンティティに対するコマンド入力に応じてリアルタイムにシミュレーションを実行する分散シミュレーションシステムにおいて、シミュレーションを分散して実行するコマンド実行シミュレータと、コマンド実行シミュレータと同じシミュレーションを実行し、コマンドを実行したことによる障害が発生するか否かを検査するコマンド検査シミュレータと、コマンド入力を受けて、コマンドをコマンド実行シミュレータに出力する前にコマンド検査シミュレータに出力し、コマンド検査シミュレータによる障害発生の有無を示す情報を取得するコマンド処理部とを備えたので、シミュレーションエンティティに対して入力されたコマンドが原因となって発生するシミュレーション停止を未然に防止することができる。   As described above, according to the distributed simulation system of the first embodiment, in the distributed simulation system that executes the simulation in real time according to the command input to the simulation entity, the command execution simulator that executes the simulation in a distributed manner, and the command Runs the same simulation as the execution simulator, and checks the command inspection simulator to see if a failure occurs due to the execution of the command, and receives the command input and sends it to the command inspection simulator before outputting the command to the command execution simulator A command processing unit that outputs and obtains information indicating whether or not a failure has occurred by the command inspection simulator. The simulation stop that occurs is that it can be prevented in advance.

また、実施の形態1の分散シミュレーションシステムによれば、コマンド検査シミュレータは、コマンド実行シミュレータと時刻同期を行って、コマンド実行シミュレータと同じ時刻までのシミュレーションの同一性を確保すると共に、いずれかのコマンドが与えられた場合は、コマンドに基づくコマンド実行シミュレータよりも将来の時刻のシミュレーションを投機的に実行することで、コマンドによる障害発生の検査を行うようにしたので、実際のコマンド実行によるシミュレーションで障害が発生する前にその障害発生を検出することができる。   Further, according to the distributed simulation system of the first embodiment, the command inspection simulator performs time synchronization with the command execution simulator to ensure the sameness of simulation up to the same time as the command execution simulator, and any command Is given, the future time simulation is speculatively executed rather than the command execution simulator based on the command to check the failure occurrence due to the command. The occurrence of the failure can be detected before the occurrence of the failure.

また、実施の形態1の分散シミュレーションシステムによれば、コマンド処理部は、コマンド検査シミュレータで障害が発生した場合、入力されたコマンドとコマンドがシミュレーションにおいて障害の原因となることを表示するようにしたので、コマンド入力者は、そのコマンドを保留するか、別のコマンドを指示するかといった判断を行うことができる。   Further, according to the distributed simulation system of the first embodiment, when a failure occurs in the command inspection simulator, the command processing unit displays that the input command and command cause a failure in the simulation. Therefore, the command input person can determine whether to hold the command or to instruct another command.

実施の形態2.
実施の形態2では、訓練対象者が入力したコマンドをCPXフェデレート30が実行した後で、さらに将来に障害が発生する場合に、障害発生前に訓練対象者に対して通知する例について説明する。分散シミュレーションシステムにおける図面上の構成は図3に示した実施の形態1と同様であるため、図3の構成を用いて説明する。
Embodiment 2. FIG.
In the second embodiment, an example will be described in which when a failure occurs in the future after the CPX federate 30 executes a command input by the training subject, the training subject is notified before the failure occurs. Since the configuration of the distributed simulation system on the drawing is the same as that of the first embodiment shown in FIG. 3, the description will be made using the configuration of FIG.

実施の形態2では、コマンド入力フェデレート10は、コマンド検査フェデレート20にコマンドを出力した後、予め定めた制約時間が経過するまでに、コマンド検査フェデレート20で障害発生が無いことを確認した場合に、そのコマンドをCPXフェデレート30に出力するよう構成されている。また、コマンド検査フェデレート20は、制約時間経過後もシミュレーションを実行することで、コマンド入力の時刻よりも将来の時刻のコマンドによる障害発生の検査を行うよう構成されている。その他の構成は実施の形態1と同様であるため、ここでの説明は省略する。   In the second embodiment, when the command input federation 10 confirms that no failure occurs in the command check federation 20 after a command is output to the command check federate 20 until a predetermined restriction time elapses, The command is output to the CPX federate 30. Further, the command inspection federate 20 is configured to perform an inspection even after the elapse of the constraint time, thereby checking the occurrence of a failure due to a command at a time that is in the future from the time of command input. Since other configurations are the same as those of the first embodiment, description thereof is omitted here.

図6は、図5の状況でコマンド検査フェデレート20においてLT+5で障害が発生せず、そのまま時間が進んだ状況を示している。図5の状況の後、実時間がLT+1に近づくと、コマンド入力フェデレート10はCPXフェデレート30に対するコマンド送信を保留してコマンド検査を行う時間のタイムアウト(制約時間)を判定する。タイムアウトは、実時間における次時刻のCPXフェデレート30の模擬開始までの猶予時間(コマンド入力フェデレート10からCPXフェデレート30へのコマンド通信時間等を想定し、設定される時間)を基に判定される。   FIG. 6 shows a situation in which no failure has occurred in LT + 5 in the command inspection federate 20 in the situation of FIG. When the actual time approaches LT + 1 after the situation shown in FIG. 5, the command input federate 10 determines a timeout (constraint time) for a time to perform command inspection with the command transmission to the CPX federate 30 suspended. The timeout is determined based on a grace time until the simulation start of the CPX federate 30 at the next time in real time (a time set by assuming a command communication time from the command input federation 10 to the CPX federate 30).

コマンド入力フェデレート10は、タイムアウトを判定すると、当該コマンドをCPXフェデレート30に送信し、CPXフェデレート30では送信されたコマンドに基づき、CPXエンティティの処理が実行される。
一方、タイムアウトになってもコマンド検査フェデレート20において投機的に実行されているCMD#1検査シミュレーションをそのまま継続する。図6の状況では、実時間でLT+1からLT+2の間の時刻において、CMD#1検査シミュレーションはLT+15まで進んでいる。ここで、LT+15においてCMD#1検査フェデレートで障害が発生し、コマンド検査フェデレート20が異常終了すると、コマンド入力フェデレート10は、コマンド検査フェデレート20の異常終了を検知し、警告表示部12より訓練対象者に対して、入力された当該コマンドの情報(エンティティAに対するCMD#1)は、CPXシミュレーションにおいて、将来時刻(LT+15)に障害の原因となること通知する。通知を受けた訓練対象者は、このままの状態で障害の原因となるエンティティ(エンティティA)に対し、エンティティの状態を変更する別のコマンドの指示を判断することができる。
When the command input federation 10 determines a timeout, the command input federation 10 transmits the command to the CPX federation 30, and the CPX federation 30 executes processing of the CPX entity based on the transmitted command.
On the other hand, even if a timeout occurs, the CMD # 1 inspection simulation that is speculatively executed in the command inspection federate 20 is continued as it is. In the situation of FIG. 6, the CMD # 1 inspection simulation has advanced to LT + 15 at a time between LT + 1 and LT + 2 in real time. Here, when a failure occurs in the CMD # 1 inspection federation at LT + 15 and the command inspection federation 20 ends abnormally, the command input federate 10 detects the abnormal end of the command inspection federation 20 and the person who is trained from the warning display unit 12 On the other hand, the input information of the command (CMD # 1 for entity A) notifies that it will cause a failure at a future time (LT + 15) in the CPX simulation. The trainee who has received the notification can determine an instruction of another command for changing the state of the entity to the entity (entity A) that causes the failure in this state.

以上説明したように、実施の形態2の分散シミュレーションシステムによれば、コマンド処理部は、コマンド検査シミュレータにコマンドを出力した後、予め定めた制約時間が経過するまでに、コマンド検査シミュレータで障害発生が無いことを確認した場合に、コマンドをコマンド実行シミュレータに出力するようにしたので、制約時間内の障害発生を回避することができる。   As described above, according to the distributed simulation system of the second embodiment, after the command processing unit outputs a command to the command inspection simulator, a failure occurs in the command inspection simulator until a predetermined restriction time elapses. When it is confirmed that there is no error, the command is output to the command execution simulator, so that the occurrence of a failure within the restricted time can be avoided.

また、実施の形態2の分散シミュレーションシステムによれば、コマンド検査シミュレータは、制約時間経過後もシミュレーションを実行することで、コマンド入力の時刻よりも将来の時刻のコマンドによる障害発生の検査を行うようにしたので、コマンド入力時点よりも将来の時刻における障害発生について監視することができる。   In addition, according to the distributed simulation system of the second embodiment, the command inspection simulator performs the simulation even after the restriction time has elapsed, so that the failure occurrence caused by the command at a time later than the command input time is inspected. Therefore, it is possible to monitor the occurrence of a failure at a future time from the time of command input.

実施の形態3.
実施の形態3では、訓練対象者が同じエンティティにコマンドを連続して指定した場合の例について説明する。分散シミュレーションシステムにおける図面上の構成は図3に示した実施の形態1と同様であるため、図3の構成を用いて説明する。
Embodiment 3 FIG.
In the third embodiment, an example will be described in which a training subject specifies commands consecutively for the same entity. Since the configuration of the distributed simulation system on the drawing is the same as that of the first embodiment shown in FIG. 3, the description will be made using the configuration of FIG.

実施の形態3では、コマンド検査フェデレート20は、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、実行中のシミュレーションエンティティへの異なるコマンド入力を受けた場合は、実行中のシミュレーションを破棄して、異なるコマンド入力によるシミュレーションを新たに実行するよう構成されている。その他の構成は実施の形態1と同様であるため、ここでの説明は省略する。   In the third embodiment, when the command inspection federation 20 receives a different command input to the running simulation entity during execution of the simulation by the command input to the simulation entity, the command checking federate 20 discards the running simulation and is different. It is configured to newly execute a simulation by inputting a command. Since other configurations are the same as those of the first embodiment, description thereof is omitted here.

図7は、図6の状況に引き続き、訓練対象者が、同じエンティティに対して別のコマンドを指定した場合の状況を示している。図6の状況では、コマンド検査フェデレート20におけるコマンド検査シミュレーションは、前時刻において入力されたコマンド(エンティティAに対するCMD#1)に対応するコマンド検査シミュレーションを実行中であり、実時間のLT+1からLT+2の間の時刻においてLT+15まで進んでいる。図7の状況は、この時点で訓練対象者が、同じエンティティに対する別のコマンド(エンティティAに対するCMD#2)をコマンド入力フェデレート10に入力し、コマンド入力フェデレート10はコマンド検査フェデレート20に当該コマンドを送信した状況を示している。   FIG. 7 shows a situation where the subject of training designates another command for the same entity following the situation of FIG. In the situation of FIG. 6, the command check simulation in the command check federate 20 is executing a command check simulation corresponding to the command (CMD # 1 for the entity A) input at the previous time, and the real time LT + 1 to LT + 2 It has progressed to LT + 15 at the time in between. In the situation of FIG. 7, at this point, the trainee inputs another command for the same entity (CMD # 2 for entity A) to the command input federate 10, and the command input federate 10 sends the command to the command inspection federate 20. Indicates the transmitted status.

コマンド検査フェデレート20は、コマンド検査シミュレーションにおいて検査中のエンティティ(エンティティA)の状態が新たなコマンド(CMD#2)によって更新されることを受け、実行中のコマンド検査シミュレーション(CMD#1検査シミュレーション)を破棄し、現在時刻であるLT+1のシミュレーションの状態を基に、新たにコマンド検査シミュレーション(CMD#2検査シミュレーション)の投機的実行を開始する。
現在時刻であるLT+1のシミュレーションの状態は、図6に示した通り、既にCMD#1が入力された状態であるため、CMD#2検査シミュレーションは、エンティティAが、時刻LT+1におけるCMD#1と、時刻LT+2におけるCMD#2の2つのコマンドを入力された状況をシミュレーションする。
The command inspection federate 20 receives the fact that the state of the entity being inspected (entity A) in the command inspection simulation is updated by a new command (CMD # 2), and is executing a command inspection simulation (CMD # 1 inspection simulation). And a new speculative execution of command inspection simulation (CMD # 2 inspection simulation) is started based on the simulation state of LT + 1, which is the current time.
As shown in FIG. 6, the state of the simulation of LT + 1 that is the current time is a state in which CMD # 1 has already been input. Therefore, the CMD # 2 inspection simulation is performed by the entity A with CMD # 1 at time LT + 1, A situation in which two commands of CMD # 2 at time LT + 2 are input is simulated.

なお、エンティティがCMD#1を入力された状態は、次の時刻のCMD#2の入力によって上書きされる形になるため、このままのCMD#2検査シミュレーションを実行しコマンド検査フェデレート20が障害を起こした場合に、どちらのコマンドが原因であるか判別することはできない。しかし、[発明が解決しようとする課題]で示した通り、そもそもCPXシミュレーションでは一旦入力したコマンドを後から取り消すことは有効ではないため、障害の原因となるコマンドを判別できなくても問題ない。同じエンティティに対して複数のコマンドが入力されても、1つのコマンド検査シミュレーションを実行することによってコマンド検査が行えるため、コマンド毎に多数のシミュレーションを実行する必要がなく、高速にコマンド検査を行うことができる。図7の状況は、新たに実行されたCMD#2検査シミュレーションにより、実時間のLT+1からLT+2の間の時刻において、LT+4の状態が実行されていることを示している。   Note that the state in which the CMD # 1 is input by the entity is overwritten by the input of the CMD # 2 at the next time, so the CMD # 2 inspection simulation is executed as it is, and the command inspection federate 20 causes a failure. In this case, it is impossible to determine which command is the cause. However, as indicated in [Problems to be Solved by the Invention], in the first place, in the CPX simulation, it is not effective to cancel a command once input afterwards, so there is no problem even if a command causing a failure cannot be determined. Even if multiple commands are input to the same entity, command inspection can be performed by executing one command inspection simulation, so there is no need to execute many simulations for each command, and command inspection can be performed at high speed. Can do. The situation of FIG. 7 shows that the state of LT + 4 is executed at a time between LT + 1 and LT + 2 in real time by the newly executed CMD # 2 inspection simulation.

以上説明したように、実施の形態3の分散シミュレーションシステムによれば、コマンド検査シミュレータは、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、実行中のシミュレーションエンティティへの異なるコマンド入力を受けた場合、実行中のシミュレーションを破棄し、異なるコマンド入力によるシミュレーションを新たに実行するようにしたので、コマンド毎に多数のシミュレーションを実行する必要がなく、高速にコマンド検査を行うことができる。   As described above, according to the distributed simulation system of the third embodiment, the command inspection simulator performs a simulation by inputting a command to the simulation entity, and receives a different command input to the running simulation entity. Since the simulation being executed is discarded and a simulation with a different command input is newly executed, it is not necessary to execute a large number of simulations for each command, and command inspection can be performed at high speed.

実施の形態4.
実施の形態4では、訓練対象者が別のエンティティにコマンドを指定した場合の例について説明する。分散シミュレーションシステムにおける図面上の構成は図3に示した実施の形態1と同様であるため、図3の構成を用いて説明する。
Embodiment 4 FIG.
In the fourth embodiment, an example in which a training subject designates a command to another entity will be described. Since the configuration of the distributed simulation system on the drawing is the same as that of the first embodiment shown in FIG. 3, the description will be made using the configuration of FIG.

実施の形態4では、コマンド検査フェデレート20は、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、異なるシミュレーションエンティティへのコマンド入力を受けた場合、シミュレーションエンティティ毎にシミュレーションを実行するよう構成されている。その他の構成は実施の形態1と同様であるため、ここでの説明は省略する。   In the fourth embodiment, the command inspection federate 20 is configured to execute a simulation for each simulation entity when a command input to a different simulation entity is received during execution of a command input to the simulation entity. Since other configurations are the same as those of the first embodiment, description thereof is omitted here.

図8は、図6の状況に引き続き、訓練対象者が、別のエンティティに対してコマンドを指定した場合の状況を示している。
図6の状況では、コマンド検査フェデレート20におけるコマンド検査シミュレーションは、前時刻において入力されたコマンド(エンティティAに対するCMD#1)に対応するコマンド検査シミュレーションを実行中であり、実時間のLT+1からLT+2の間の時刻においてLT+15まで進んでいる。図8の状況は、この時点で訓練対象者が、別のエンティティに対する別のコマンド(エンティティBに対するCMD#3)をコマンド入力フェデレート10に入力し、コマンド入力フェデレート10はコマンド検査フェデレート20に当該コマンドを送信した状況を示している。
FIG. 8 shows a situation where the subject of training has designated a command for another entity following the situation of FIG.
In the situation of FIG. 6, the command check simulation in the command check federate 20 is executing a command check simulation corresponding to the command (CMD # 1 for the entity A) input at the previous time, and the real time LT + 1 to LT + 2 It has progressed to LT + 15 at the time in between. In the situation of FIG. 8, the trainee at this time inputs another command (CMD # 3 for entity B) to another command to the command input federate 10, and the command input federate 10 sends the command to the command inspection federate 20. Shows the status of sending.

コマンド検査フェデレート20は、コマンド検査シミュレーションにおいて検査中のエンティティ(エンティティA)の状態が新たなコマンド(CMD#3)によって更新されないため、実行中のコマンド検査シミュレーション(CMD#1検査シミュレーション)をそのまま実行し、それとは別に、現在時刻であるLT+1のシミュレーションの状態を基に、新たにコマンド検査シミュレーション(CMD#3検査シミュレーション)の投機的実行を開始する。   Since the state of the entity being inspected (entity A) is not updated by a new command (CMD # 3) in the command inspection simulation, the command inspection federate 20 directly executes the command inspection simulation being executed (CMD # 1 inspection simulation). In addition to this, speculative execution of command inspection simulation (CMD # 3 inspection simulation) is newly started based on the simulation state of LT + 1 which is the current time.

現在時刻であるLT+1のシミュレーションの状態は、図6に示した通り、既にCMD#1が入力された状態であるため、CMD#3検査シミュレーションは、エンティティAが、時刻LT+1におけるCMD#1を受け、さらにエンティティBが、時刻LT+2におけるCMD#3を受けた状況をシミュレーションする。
以上により、コマンド検査フェデレート20では、エンティティAがCMD#1を受けた状況であるCMD#1検査シミュレーションと、エンティティAがCMD#1を受けた状況およびエンティティBがCMD#3を受けた状況の、2つのコマンド検査シミュレーションが同時並行して実行される。なお、2つのコマンド検査シミュレーションのどちらかで障害が発生した場合、コマンド検査フェデレート20全体が停止することのないように、それぞれのコマンド検査シミュレーションは異なるコマンド検査フェデレート20で実行する。
As shown in FIG. 6, the simulation state of LT + 1, which is the current time, is a state in which CMD # 1 has already been input. Therefore, in the CMD # 3 inspection simulation, entity A receives CMD # 1 at time LT + 1. Furthermore, the situation where entity B receives CMD # 3 at time LT + 2 is simulated.
As described above, in the command inspection federation 20, the CMD # 1 inspection simulation in which the entity A receives CMD # 1, the situation in which the entity A receives CMD # 1, and the situation in which the entity B receives CMD # 3. Two command inspection simulations are executed concurrently. If a failure occurs in one of the two command inspection simulations, each command inspection simulation is executed at a different command inspection federation 20 so that the entire command inspection federation 20 does not stop.

図8の状況は、実時間のLT+1からLT+2の間の時刻において、CMD#1検査シミュレーションがLT+15の状態を実行し、新たに実行されたCMD#3検査シミュレーションでLT+4の状態が実行されていることを示している。この状態で、もしCMD#3検査シミュレーションにおいて障害が発生した場合、CMD#3検査シミュレーションよりも先に実行されていたCMD#1検査シミュレーションは、既にCMD#3検査シミュレーションの障害発生時刻を過ぎているため、CMD#3検査シミュレーションの障害は、CMD#1を実行中のエンティティAではなく、CMD#3を実行中のエンティティBにおいて発生したと判断できる。また、もしCMD#1検査シミュレーションにおいて障害が発生した場合、CMD#1を実行中のエンティティAにおいて発生したと判断できる。
この様に、コマンドを受けたエンティティ毎にコマンド検査シミュレーションを並行して実行することにより、障害が発生した場合の発生元となるエンティティを特定することが可能である。
In the situation of FIG. 8, the CMD # 1 inspection simulation executes the state of LT + 15 at the time between LT + 1 and LT + 2 in real time, and the state of LT + 4 is executed in the newly executed CMD # 3 inspection simulation. It is shown that. In this state, if a failure occurs in the CMD # 3 inspection simulation, the CMD # 1 inspection simulation executed before the CMD # 3 inspection simulation has already passed the failure occurrence time of the CMD # 3 inspection simulation. Therefore, it can be determined that the failure of the CMD # 3 inspection simulation has occurred not in the entity A that is executing CMD # 1, but in the entity B that is executing CMD # 3. Further, if a failure occurs in the CMD # 1 inspection simulation, it can be determined that the failure occurred in the entity A that is executing CMD # 1.
In this way, by executing the command inspection simulation in parallel for each entity that has received a command, it is possible to identify the entity that is the source of the occurrence of a failure.

以上説明したように、実施の形態4の分散シミュレーションシステムによれば、コマンド検査シミュレータは、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、異なるシミュレーションエンティティへのコマンド入力を受けた場合、シミュレーションエンティティ毎にシミュレーションを実行するようにしたので、複数のシミュレーションエンティティにそれぞれコマンド入力があった場合でも、障害が発生した場合の発生元となるシミュレーションエンティティを特定することができる。   As described above, according to the distributed simulation system of the fourth embodiment, when the command inspection simulator receives a command input to a different simulation entity while executing a simulation by a command input to the simulation entity, Since the simulation is executed at the same time, even when a command is input to each of the plurality of simulation entities, it is possible to identify the simulation entity that is the generation source when a failure occurs.

なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。   In the present invention, within the scope of the invention, any combination of the embodiments, or any modification of any component in each embodiment, or omission of any component in each embodiment is possible. .

1 フェデレーション、2 RTI、10 コマンド入力フェデレート、11 コマンド評価処理部、12 警告表示部、13,22−1〜22−m,32−1〜32−n フェデレートRTIインタフェース部、20−1〜20−m コマンド検査フェデレート、21−1〜21−m 検査シミュレーション部、30−1〜30−n CPXフェデレート、31−1〜31−n CPXシミュレーション部。   DESCRIPTION OF SYMBOLS 1 Federation, 2 RTI, 10 Command input federation, 11 Command evaluation process part, 12 Warning display part, 13, 22-1 to 22-m, 32-1 to 32-n Federate RTI interface part, 20-1 to 20- m command inspection federate, 21-1 to 21-m inspection simulation section, 30-1 to 30-n CPX federation, 31-1 to 31-n CPX simulation section.

Claims (7)

シミュレーションエンティティに対するコマンド入力に応じてリアルタイムにシミュレーションを実行する分散シミュレーションシステムにおいて、
前記シミュレーションを分散して実行するコマンド実行シミュレータと、
前記コマンド実行シミュレータと同じシミュレーションを実行し、コマンドを実行したことによる障害が発生するか否かを検査するコマンド検査シミュレータと、
前記コマンド入力を受けて、当該コマンドを前記コマンド実行シミュレータに出力する前に前記コマンド検査シミュレータに出力し、当該コマンド検査シミュレータによる障害発生の有無を示す情報を取得するコマンド処理部とを備えた分散シミュレーションシステム。
In a distributed simulation system that executes a simulation in real time according to a command input to a simulation entity,
A command execution simulator for executing the simulation in a distributed manner;
A command inspection simulator that executes the same simulation as the command execution simulator and inspects whether or not a failure due to the execution of the command occurs;
A command processing unit that receives the command input, outputs the command to the command inspection simulator before outputting the command to the command execution simulator, and obtains information indicating whether or not a failure has occurred by the command inspection simulator Simulation system.
前記コマンド検査シミュレータは、前記コマンド実行シミュレータと時刻同期を行って、当該コマンド実行シミュレータと同じ時刻までのシミュレーションの同一性を確保すると共に、いずれかのコマンドが与えられた場合は、当該コマンドに基づく前記コマンド実行シミュレータよりも将来の時刻のシミュレーションを投機的に実行することで、前記コマンドによる障害発生の検査を行うことを特徴とする請求項1記載の分散シミュレーションシステム。   The command inspection simulator performs time synchronization with the command execution simulator to ensure the sameness of simulation up to the same time as the command execution simulator, and when any command is given, it is based on the command The distributed simulation system according to claim 1, wherein a failure occurrence test by the command is inspected by speculatively executing a simulation at a future time from the command execution simulator. 前記コマンド検査シミュレータは、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、異なるシミュレーションエンティティへのコマンド入力を受けた場合、シミュレーションエンティティ毎にシミュレーションを実行することを特徴とする請求項1または請求項2記載の分散シミュレーションシステム。   3. The command inspection simulator executes a simulation for each simulation entity when receiving a command input to a different simulation entity while executing a simulation based on a command input to the simulation entity. The distributed simulation system described. 前記コマンド処理部は、前記コマンド検査シミュレータにコマンドを出力した後、予め定めた制約時間が経過するまでに、当該コマンド検査シミュレータで障害発生が無いことを確認した場合に、前記コマンドを前記コマンド実行シミュレータに出力することを特徴とする請求項1から請求項3のうちのいずれか1項記載の分散シミュレーションシステム。   The command processing unit executes the command when the command checking simulator confirms that no failure has occurred before a predetermined time limit elapses after the command is output to the command checking simulator. The distributed simulation system according to claim 1, wherein the distributed simulation system is output to a simulator. 前記コマンド検査シミュレータは、前記制約時間経過後も前記シミュレーションを実行することで、前記コマンド入力の時刻よりも将来の時刻の当該コマンドによる障害発生の検査を行うことを特徴とする請求項4記載の分散シミュレーションシステム。   The command inspection simulator performs the simulation even after the restriction time elapses, thereby checking the occurrence of a failure due to the command at a time later than the command input time. Distributed simulation system. 前記コマンド検査シミュレータは、シミュレーションエンティティへのコマンド入力によるシミュレーションを実行中、当該実行中のシミュレーションエンティティへの異なるコマンド入力を受けた場合、当該実行中のシミュレーションを破棄し、前記異なるコマンド入力によるシミュレーションを新たに実行することを特徴とする請求項1から請求項5のうちのいずれか1項記載の分散シミュレーションシステム。   When the command inspection simulator receives a different command input to the simulation entity being executed during execution of the command input to the simulation entity, the command inspection simulator discards the simulation being executed and executes the simulation based on the different command input. 6. The distributed simulation system according to claim 1, wherein the distributed simulation system is newly executed. 前記コマンド処理部は、前記コマンド検査シミュレータで障害が発生した場合、入力されたコマンドと当該コマンドがシミュレーションにおいて障害の原因となることを表示することを特徴とする請求項1から請求項6のうちのいずれか1項記載の分散シミュレーションシステム。   The command processing unit displays, when a failure occurs in the command inspection simulator, an input command and that the command causes a failure in the simulation. The distributed simulation system according to any one of the above.
JP2014080312A 2014-04-09 2014-04-09 Distributed simulation system Active JP6238825B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014080312A JP6238825B2 (en) 2014-04-09 2014-04-09 Distributed simulation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014080312A JP6238825B2 (en) 2014-04-09 2014-04-09 Distributed simulation system

Publications (2)

Publication Number Publication Date
JP2015201086A JP2015201086A (en) 2015-11-12
JP6238825B2 true JP6238825B2 (en) 2017-11-29

Family

ID=54552286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014080312A Active JP6238825B2 (en) 2014-04-09 2014-04-09 Distributed simulation system

Country Status (1)

Country Link
JP (1) JP6238825B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10955810B2 (en) * 2015-11-13 2021-03-23 International Business Machines Corporation Monitoring communications flow in an industrial system to detect and mitigate hazardous conditions

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4413333B2 (en) * 1999-10-18 2010-02-10 三菱電機株式会社 Training simulation device

Also Published As

Publication number Publication date
JP2015201086A (en) 2015-11-12

Similar Documents

Publication Publication Date Title
EP3706001B1 (en) Systems and methods for fault injection and ensuring failsafe fms saas platforms
US10250319B2 (en) Task transfer among satellite devices
JP6468718B2 (en) Anomaly detection in chain management information
EP3179368A1 (en) Systems and methods for fault tolerant communications
JP6788178B2 (en) Setting support program, setting support method and setting support device
WO2016037479A1 (en) Method, device and system for optimizing virtualized network function (vnf)
CN107534570A (en) Virtualize network function monitoring
US20140214393A1 (en) System and method for performing distributed simulation
US9626263B2 (en) Testing a control unit by means of a test environment
US11743155B2 (en) Systems and methods of monitoring and controlling remote assets
CN107896172A (en) Monitor fault handling method and device, storage medium and electronic equipment
US20230359455A1 (en) Service orchestration within a distributed pod based system
JP6238825B2 (en) Distributed simulation system
US20210405992A1 (en) Managed Rooms Operational Maintenance
WO2019240274A1 (en) Orchestration device, vnfm device, management device and program
CN108241545A (en) The adjustment method and device of the system failure
EP3242148A1 (en) Security inspection system, virtual security inspection machine and method for virtual security inspection
US10063567B2 (en) System for cross-host, multi-thread session alignment
CN114328275A (en) System testing method, device, computer equipment and storage medium
CN114500327A (en) Detection method and detection device for server cluster and computing equipment
CN111581042A (en) Cluster deployment method, deployment platform and server to be deployed
CN114979141B (en) Task processing method, device, equipment and storage medium
KR20190125779A (en) Unmanned aerial vehicle scenario test method using flight test profile
CN115022085B (en) Node isolation method and device based on cloud primary scene and electronic equipment
WO2018051614A1 (en) Time management system, time management device, synchronous processing device, computing machine, time management method, and computer-readable recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170920

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171031

R150 Certificate of patent or registration of utility model

Ref document number: 6238825

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250