プラットフォームシミュレーションに関するリアルタイム高忠実度通信影響をシミュレートするために通信影響エンジンを使用するステップを含む方法であって、前記プラットフォームシミュレーション内の受信機に代用メッセージを送るように前記プラットフォームシミュレーション内の送信機に要求するステップと、前記メッセージに応答して通信影響をコンピュートし、後の使用のために通信影響を保存するステップと、前記送信機および前記受信機を伴う将来の通信イベントが発生する時に、そのイベントに関する前記通信影響をシミュレートするために前記保存された影響を使用するステップとを含む方法。追加の代用メッセージが周期的に要求され、前記保存された通信影響が更新され、前記保存された通信影響は、統計的接続性特性、統計的遅延特性、および統計的誤り特性を示す、請求項1に記載の方法。前記通信影響を保存するステップが、送信機/受信機対に関する通信影響のテーブルを構築するステップと、前記テーブルをプラットフォームシミュレータに分配するステップとを含み、前記分配されたテーブルは変更されたテーブルエントリを送ることによってのみ更新され、プラットフォームシミュレータは、将来の通信イベントに関する前記通信影響を判定するためにテーブルルックアップを実行し、前記ルックアップされた影響に従ってメッセージを配送する、請求項1に記載の方法。ネットワークシミュレータツールは、前記代用メッセージに応答して前記通信影響をコンピュートするのに使用される、請求項1に記載の方法。前記プラットフォームシミュレーション内のネットワークトラフィックをリスンするステップと、前記代用メッセージを送る前に送信機/受信機対を識別するステップとをさら含む、請求項1に記載の方法。プラットフォームシミュレーションを実行するプラットフォームシミュレーションエンジンであって、前記プラットフォームシミュレーションは、複数の送信機/受信機対を含む、プラットフォームシミュレーションエンジンと、前記送信機/受信機対の間の送信のリアルタイム高忠実度通信影響をシミュレートする通信影響エンジンとを備え、対ごとに、前記プラットフォームシミュレーションは、前記送信機から前記受信機へプローブを周期的に送り、各プローブに応答して、前記通信影響エンジンは、対応する送信機/受信機対に関する通信影響をコンピュートし、保存し、前記プラットフォームシミュレーション内の将来の通信イベントが送信機/受信機対を伴う時に、前記通信影響エンジンは、前記イベントに関する通信影響をシミュレートするためにその対の前記保存された影響を使用するシステム。前記プラットフォームシミュレーションエンジンは、前記プラットフォームシミュレーションを実行する複数の分散プラットフォーム力影響シミュレータを含み、前記通信影響エンジンは、前記プローブに応答して前記通信影響をコンピュートするネットワークシミュレータと、前記通信影響を保存し、前記保存された影響を前記プラットフォームシミュレータに分配するサーバとを含み、前記保存された影響は、統計的接続性特性、統計的遅延特性、および統計的誤り特性を示す、請求項6に記載のシステム。前記サーバは、前記保存された通信影響のテーブルを構築し、前記テーブルを前記プラットフォームシミュレータに分配し、前記プラットフォームシミュレータは、通信イベントに関する前記通信影響を判定するためにテーブルルックアップを実行し、前記サーバは、必要なテーブル情報だけを各プラットフォームシミュレータに供給し、前記サーバは、変更されたテーブルエントリを送ることのみによって前記分配されたテーブルを更新する、請求項7に記載のシステム。前記サーバはまた、前記プラットフォームシミュレーション内のネットワークトラフィックをリスンし、関心を持たれている前記送信機/受信機対を識別する、請求項7に記載のシステム。大規模ネットワークでの通信影響をシミュレートすることに関する問題がある。低レイテンシネットワークのシミュレーションでは、配送判断が、コンピュートに長くかかりすぎる可能性がある。送信をシミュレートするのに要する時間が、判断を配送するのに必要な時間よりかなり長い時間を要する可能性がある。ターゲット/連絡先カリキュレーションが、現実的な低レイテンシに基づくコックピットシミュレータの場合にそうであるように場合には、シミュレーション全体が、無効または動作不能になる可能性がある。破棄判断が、追加の問題を引き起こす可能性がある。あるネットワークシミュレータが、遅いメッセージと絶対に到着しないメッセージとの間で区別することができない場合に、そのネットワークシミュレータは、メッセージが到着するかタイムアウトが発生するどちらが最初に発生するにせよまで、待つ。待つことによって、シミュレータリソースが、拘束される。ネットワークスケーラビリティも、問題である。各通信影響が、大量のコンピューテーションを要求する可能性がある。さらに、送信あたりのコンピューテーションの数は、より高忠実度の通信影響が必要になるにつれて増える。したがって、高忠実度シミュレーションが、100個のノードについて達成可能であるが、数千個のノードについて達成可能ではない可能性がある。あるいは、送信あたりのコンピューテーションの数が、シミュレートされるノードの数が増える時に同一に保たれる場合には、通信影響の忠実度が下げられる。これらの問題を克服することが、望ましいはずである。本明細書の一態様によれば、方法は、プラットフォームシミュレーションに関するリアルタイム高忠実度通信影響をシミュレートするために通信影響エンジンを使用するステップを備える。プラットフォームシミュレーション内の送信機が、プラットフォームシミュレーション内の受信機に代用メッセージを送るように要求される。通信影響が、メッセージに応答してコンピュートされ、通信影響は、後の使用のために保存される。送信機および受信機を伴う将来の通信イベントが発生する時に、保存された影響が、そのイベントに関する通信影響をシミュレートするために使用される。本発明のもう1つの態様によれば、システムは、プラットフォームシミュレーションを実行するプラットフォームシミュレーションエンジンを備える。プラットフォームシミュレーションは、複数の送信機/受信機対を含む。このシステムは、送信機/受信機対の間の送信のリアルタイム高忠実度通信影響をシミュレートする通信影響エンジンをさらに備える。対ごとに、プラットフォームシミュレーションは、送信機から受信機へプローブを周期的に送る。各プローブに応答して、通信影響エンジンは、対応する送信機/受信機対に関する通信影響をコンピュートし、保存する。プラットフォームシミュレーション内の将来の通信イベントが送信機/受信機対を伴う時に、通信影響エンジンは、イベントに関する通信影響をシミュレートするためにその対の保存された影響を使用する。本発明のもう1つの態様によれば、サーバ用の物品は、サーバにプラットフォームシミュレータと相互作用させるデータを符号化されたメモリを備える。データは、実行された時に、サーバに、関心を持たれているすべての送信機/受信機対に関するプローブを生成するようにプラットフォームシミュレータに周期的に要求することと、プローブに応答して通信影響データを生成し、通信影響データを保存することと、プラットフォームシミュレータが将来の通信イベントをシミュレートするためにデータを使用できるように、将来の通信イベントの前に複数のプラットフォームシミュレータに保存された通信影響データを分配することとを行わせる。図1を参照するが、図1は、プラットフォームシミュレーションエンジン120および通信影響エンジンCEE130を含むシミュレータ110を示す。プラットフォームシミュレーションエンジン120は、複数のプラットフォームを含む環境をシミュレートする。たとえば、プラットフォームシミュレーションエンジンは、プラットフォームの移動、動作、および相互作用などの力影響をシミュレートする。プラットフォームの少なくともいくつかは、受信機特性および/または送信機特性を有する。プラットフォームシミュレーションエンジン120は、シミュレーション中に送信機/受信機対の送信機-受信機通信をシミュレートする。送信機-受信機通信では、送信機は、通信リンクを介して受信機にメッセージを送信する。追加の参照を、図2に対して行うが、図2は、無線ネットワーク210の例を示す。無線ネットワーク210は、無線受信機、無線送信機、またはその両方として機能する複数のプラットフォーム220を含む。プラットフォーム220は、通信リンク230および240を介して通信し、通信リンク230および240は、統計的接続静特性、統計的遅延特性、および統計的誤り特性を有する。これらの特性は、無線送信周波数、帯域幅、電力、変調、各潜在的な送信機および受信機の場所、地形または構造による見通し線無線信号のブロック、アンテナタイプ、特性、利得パターン、方位、気象または他の大気の影響に起因する信号フェージングまたは損失、マルチパス反射、妨害、個々のネットワークトラフィック負荷、全体的なネットワークトラフィック負荷、ならびにネットワークプロトコルの影響より高い優先順位のトラフィックに対処するためまたはネットワーク輻輳を軽くするためにメッセージを動的に破棄しまたは遅延させる可能性があるを含むがこれらに限定はされない複数の要因によって影響を受ける可能性がある。これらの特性は、シミュレーションの過程にわたって変化する可能性がある。プラットフォーム220は、静止またはモバイルとすることができる。リンク230および240は、有線、ワイヤレス、またはその任意の組み合わせとすることができる。複数のモバイルプラットフォーム220が、ワイヤレスアドホックネットワークを形成することができ、このワイヤレスアドホックネットワークでは、通信リンクは、動的であり、ワイヤレスである。ネットワーク210は、プラットフォーム220のどの特定の個数にも限定されない。プラットフォーム220は、単一のネットワーク、ネットワーク内のサブネット、または複数のネットワークを形成することができる。図2のネットワーク210は、たまたま、第1ネットワークおよび第2ネットワークを形成する9つのプラットフォーム220を示す。第1ネットワークは、塗り潰されたリンク240によって形成され、第2ネットワークは、塗り潰されていないリンク230によって形成される。メッセージは、シミュレーション内のアクションに影響することができる。たとえば、あるメッセージが、あるプラットフォームに、その位置または動作モードを変更させる場合がある。したがって、プラットフォームシミュレーションエンジン120は、あるメッセージが仮にも到着する場合に、そのメッセージが到着するのにどれほど長くかかるのかを知る必要がある。しかし、プラットフォームシミュレーションエンジン120は、地形、大気条件、ネットワークトポロジ、ルーティングプロトコル、ネットワークローディングなどを考慮に入れない。通信影響エンジン130は、高いレベルの忠実度を伴って通信影響をシミュレートする。送信機特性および受信機特性を明らかにすることに加えて、通信影響エンジン130は、メッセージ配送に影響する可能性がある他の特性上でリストしたものを含むを明らかにする。図3を参照するが、図3は、無線ネットワークシミュレーションを用いてリアルタイム高忠実度通信影響をシミュレートする方法を示す。ブロック310で、短い代用メッセージsurrogatemessageまたはプローブを、プラットフォームシミュレーション内の送信するプラットフォームからプラットフォームシミュレーション内の受信するプラットフォームに送る。メッセージのサイズおよびフォーマットは、シミュレーションの必要によって規定される。一例としてのみ、メッセージは、単純なヘッダおよび数バイトのデータからなるものとすることができる。ブロック320では、代用メッセージに応答して通信影響をコンピュートする。通信影響は、シミュレーション中に送信するプラットフォームによってすなわち、ネットワークシミュレータによって送られるメッセージに関するものと同様にコンピュートされる。シミュレートされたルーティングプロトコルは、代表的なルート収束遅延およびルート選択遅延を提供する。シミュレートされたメッセージ負荷は、シミュレートされたエンドツーエンド遅延および輻輳と同様に、実際の無線ネットワークを表す。通信影響は、後の使用のために保存される。通信影響を、ルックアップテーブルに保存することができる。ブロック330では、送信機/受信機対を伴う通信イベントが発生する時に、保存された影響を使用して、そのイベントの通信影響をシミュレートする。第1の例として、保存された影響は、受信するプラットフォームに関する接続性を示さない。メッセージがシミュレーション中にその対の間で送られる時に、ネットワークシミュレーションは、タイムアウトが発生するのを待つのではなく、即座に破棄判断を示す。第2の例として、保存された影響は、その対の間のメッセージが、カリキュレートされた誤り、雑音、および遅延を伴って配送されることを示す。メッセージがプラットフォームシミュレーション中に送信するプラットフォームから受信するプラットフォームに送られる時に、保存された影響は、配送されるメッセージの誤り、雑音、および遅延を判定するのに使用される。追加の参照を図4に対して行うが、図4は、本方法の利益を示す。低レイテンシネットワークを考慮されたい。受信するプラットフォームは、時刻T1に送信を受信し、時刻T2までに判断を配送しなければならない。判断がコンピュートされたならば、その判断は、時刻T3に配送されるが、時刻T3は遅すぎる。しかし、送信するプラットフォームから受信するプラットフォームにプローブを送ることと、時刻T0に通信影響を生成し、保存することによって、保存された影響を時刻T2に使用することができる。したがって、配送判断が時宜を得たものになる。もう1つの利益は、破棄判断を即座に行えることである。時刻T0に保存された通信影響が、受信するプラットフォームがメッセージを受信できないことを示す場合には、時刻T2まで待つのではなく、時刻T1に破棄判断を行うことができる。これは、シミュレーションリソースを解放することを可能にする。保存された影響の正確さは、プローブがプラットフォームシミュレーション内で送信に時間的にどれほど近いかすなわち、時刻T0とT1との間の差に部分的に依存する。正確さは、ネットワークシミュレーショントラフィックがプラットフォームシミュレーショントラフィックにどれほどよく一致するのか、およびプローブメッセージ特性がシミュレーション内のメッセージの特性たとえば、サイズ、プロトコルタイプ、優先順位にどれほどよく一致するのかにも依存する。保存された影響の正確さを、周期的なインターバルで追加のプローブを送り、これによって保存された影響を更新することによって改善することができる。プローブを、ネットワーク状態がインターバルの間に目に見えて変化しないのに十分に速いが、ネットワークローディングが事実上影響を受けないのに十分に遅いインターバルで送ることができる。図3の方法を、送信するプラットフォーム/受信するプラットフォームの単一の対について説明した。実際には、シミュレーションは、多数のこれらの送信機/受信機対を含むことができる。図3の方法を、シミュレーション内の各送信機/受信機対に適用することができる。ここで図5を参照するが、図5は、分散プラットフォームシミュレーションエンジンおよび分散通信影響エンジンを含むシミュレータ510を示す。通信影響エンジンのコンポーネントは、陰影を付けられ、プラットフォームシミュレーションエンジンのコンポーネントは、陰影を付けられていない。プラットフォームシミュレーションエンジンは、複数のプラットフォーム力影響シミュレータ520を含む。力影響シミュレータ520は、プラットフォーム位置および送信機情報をデータ交換用のプロトコルを使用してシミュレーションデータバス530を介して通信影響エンジンに提供する。1つのそのようなプロトコルが、承認されたIEEE標準規格であるDistributedInteractiveSimulationDISである。使用できるもう1つのプロトコルが、Higher-LevelArchitectureHLAである。力影響シミュレータ520は、は、複数のクライアント535上に存在することができ、クライアント535は、複数のネットワーク化されたコンピュータとしてハードウェアで実施され得る。通信影響エンジンは、複数のネットワークシミュレータ540を含み、ネットワークシミュレータ540は、高忠実度を伴って無線ネットワークをシミュレートするためにプラットフォーム位置および送信機情報を使用する。ネットワークシミュレータ540は、プロプライエタリシミュレーションツールまたはOPNET、QualNet、もしくはCOREなどの市販既製シミュレーションツールとすることができる。ネットワークシミュレータ540は、プロトコルルーティング、データ転送などおよびトラフィックローディングをシミュレートする。ネットワークシミュレータ540は、関心を持たれているすなわち、力影響シミュレーションに関係する接続に関するエンドツーエンド接続性接続/切断およびトラフィック統計最小遅延、平均遅延などを生成することができる。ネットワークシミュレータ540は、リンク接続性およびローディング統計を生成することもできる。要求時に、現在のエンドツーエンドルートが、指定されたソース/宛先対について報告される。ネットワークシミュレータ540は、単一のコンピュータ550または複数のネットワーク化されたコンピュータ上に存在することができる。通信影響エンジンは、さらに、シミュレーションデータバス530を介して通信影響エンジンエージェント570と通信する通信影響エンジンサーバ560を含む。通信影響エンジンエージェント570は、通信影響エンジンサーバ560とプラットフォーム影響シミュレータ520との間のインターフェースを提供する。追加の参照を図6に対して行うが、図6は、通信影響エンジンサーバ560によって実行される機能の例を示す。この例では、ネットワークシミュレータ540と通信影響エンジンサーバ560との間で交換されるデータは、DISプロトコルに従う。DISプロトコルを使用するシミュレーションは、送信するノードおよび受信するノードを含む、シミュレーション内の各エンティティの名前、タイプ、属性、および挙動に関するデータを指定するためにプロトコルデータユニットPDUと称するデータ要素を生成する。PDUの例を、下の表1にリストする。ブロック610で、通信影響エンジンサーバ560は、プラットフォームシミュレーション中に生成されるDISトラフィックをリスンし、メッセージの送信および受信に関するPDUを処理する。ブロック620では、通信影響エンジンサーバ560は、DISトラフィックに基づいて、プラットフォームシミュレーション内の送信するプラットフォームおよび受信するプラットフォームのすべてを識別する。通信影響エンジンサーバ560は、送信機/受信機対のリストを関心を持たれている送信機/受信機対だけに絞ることもできる。ブロック630では、通信影響エンジンサーバ560は、関心を持たれているすべての送信機/受信機対についてプローブを生成するようにプラットフォームシミュレーションエンジンに周期的に要求する。各要求は、プラットフォームシミュレーションに割り込み、対の送信するプラットフォームに、それと対にされた受信するプラットフォームに短い代用メッセージを送らせる。プローブを、周期的なインターバルで要求することができ、このインターバルを、プラットフォームの間の送信特性が代用メッセージとシミュレーション中のメッセージとの間で大きくは変化しないと正当に仮定できるようになるのに十分に頻繁であるが、プローブ自体がネットワークにまたがるまたはネットワークシミュレータに対する大きい追加のトラフィック負荷を課すほど頻繁ではなく、構成することができる。たとえば、短い代用メッセージを、1秒あたり1~2回送ることができる。ネットワークシミュレータ540は、通信影響データを作るために力影響シミュレータ520からの出力データを処理する。ブロック640では、通信影響エンジンサーバ560は、通信影響をマスタ通信影響エンジンテーブル580に保存する。テーブル580は、破壊されたリンクならびに劣化したリンクに関する情報を含む。テーブル580を、送信機/受信機対によって編成することができ、各テーブル内の内容は、その対に固有の特性すなわち、接続性統計、遅延統計、および誤り統計である。表2に、3×3接続性テーブルの単純な例を提供する。列は、送信するプラットフォームに対応し、行は、受信するプラットフォームに対応する。1の表エントリは、送信するプラットフォームと受信するプラットフォームとの間の接続性を示す。0の表エントリは、送信するプラットフォームと受信するプラットフォームとの間の接続性なしを示す。接続性テーブル内の対角線には、規約によって0がセットされる。ブロック650では、テーブルデータ590が通信影響エンジンエージェント570に分配される。当初には、完全なテーブルを通信影響エンジンエージェント570に送ることができる。マスタ通信影響エンジンテーブル580を、通信影響エンジン内の通信影響エンジンエージェント570のすべてに発表することができ、あるいは、通信影響エンジンエージェント570は、その通信影響エンジンエージェントが必要とする情報だけを供給される。たとえば、受信機は、その受信機が通信できる複数の送信機を有することができるが、1つの送信機だけが、通信している。したがって、初期データ分配は、すべての潜在的な送信機1つを除くすべてについて接続性がリストされないを含むことができる。テーブルデータ590が当初に発表された後に、後続の発表は、変更されたテーブルエントリだけを含むことができる。通信影響エンジンサーバ560と通信影響エンジンエージェント570との間の情報交換を最小にするために、変更を、その変更が発生する時に非同期に発表することができる。さらに、1つ1つの送信イベントについて広範囲のカリキュレーションを再コンピュートする必要はなく、その結果を待たなければならない通信影響エンジンサーバ560と通信影響エンジンエージェント570との両方について時間が節約される。ここで図7を参照するが、図7は、クライアント535によって実行される動作の例を示す。ブロック710では、通信影響エンジンクライアント535は、プラットフォームシミュレーション内のプラットフォームのうちの1つまたは複数に関するプラットフォーム影響を扱う。ブロック720では、通信影響エンジンクライアント535は、通信影響エンジンエージェント570を介して、通信影響エンジンサーバ560からテーブルデータを受信する。両方が、進行中のプロセスである。ブロック730から750では、プラットフォームシミュレーション内で送信機/受信機対の間で送信イベントが発生する時に、通信影響エンジンエージェント570は、通信影響エンジンテーブルデータ590内でその対の通信影響をルックアップし、そのテーブルデータを力影響シミュレータ520に供給する。ブロック760では、力影響シミュレータ520が、その対内の送信機からその対内の受信機にメッセージを送る。このメッセージは、ルックアップデータ内で指定される接続性、遅延、および誤りに従って送られる。したがって、テーブルルックアップは、追加のコンピューテーションが実行されるのを待つ必要なしに、非常に近い近似を提供する。ブロック770では、通信影響エンジンエージェント570によって行われるべき任意の追加の判断を行うことができる。これらの判断は、トラフィックレポートの形で通信影響エンジンサーバ560に戻って通信され得るランダム確率抽選randomprobabilitydrawを含むことができる。通信影響エンジンサーバ560は、このトラフィックレポートを使用して、シミュレートされるネットワークの既知の状態を適当に改変することができ、したがって、予測された結果を作成するのに使用されるモデル化が改善される。モデル化を改善できるのは、クライアント550がネットワークシミュレータ540に戻って報告しすなわち、フィードバックループ、この報告が、ネットワークシミュレータのトラフィックを、より実際のネットワークを表すものにするからである。図8は、コンピュータの図であり、このコンピュータを、プラットフォームシミュレーションエンジン内または通信影響エンジン内のいずれでも使用することができる。コンピュータ810は、処理ユニット820と、プラットフォームシミュレータツール、ネットワークシミュレータツール、通信影響エンジンサーバアプリケーション、またはクライアントエージェントアプリケーションなどのデータ840を符号化されたメモリ830とを含む。メモリ830は、マスタ通信影響エンジンテーブル580またはクライアントテーブルデータ590をも格納することができる。このように開示されたのは、特に低レイテンシネットワーク用の、複数の利益を提供するシミュレータである。すばやいテーブルルックアップは、送信イベントと既知の結果との間のラグを減らす。破棄判断を、メッセージタイムアウトを待つのではなく即座に提供することができる。通信影響エンジンは、非常に大きいネットワークへのスケーラビリティをサポートする。通信影響カリキュレーションを、全体的なシミュレーション性能に影響せずに洗練された複雑なものにすることができ、これは、通信影響エンジンがますます高忠実度のシミュレーションまでよくスケーリングすることを意味する。通信影響エンジンがシミュレーションデータバスに最小限のトラフィックを置くことができるので、スケーラビリティは、さらに高められる。通信影響エンジンは、関心を持たれているトラフィック特性だけをプラットフォームシミュレーションエンジンに公表することができ、関心を持たれているトラフィックの特性に対する変更だけを分配することができる。