3.5 シミュレーション関連
古市 昌一委員
1.はじめに
異機種分散シミュレータの統合を可能とするため、米国防総省が1995年に提案していたHLA(High Level Architecture)が、2000年9月にIEEEにより標準仕様IEEE Std. 1516となった。これにより、訓練用のシミュレータ同士をネットワークで連接してチーム訓練が容易になると共に、これまでに開発した多数のシミュレータにHLAインタフェースを拡張することにより、新たに開発するシミュレーションシステムの一部として、レガシーなシミュレータを活用することが可能となる。一方、HLAをハイパフォーマンスコンピューティングにおけるプログラミングモデルと実行環境として活用しようとする研究も一部で行われている。本調査報告では、まずHLAの概説を行った後、このような応用分野の例を2例紹介する。
2.HLAの概要
2.1 HLAが標準化されるまでの動き
2.1.1 DMSOによるHLAの提案
1990年代初頭、世界で最もヘビーなシミュレーションシステムユーザである米国防総省では、現場で運用中のシミュレータの種類が数百種を越えて膨大となり、今後の開発・保守コストを低減することが急務であった。そして、1990年よりこれを解決するための研究開発へ巨額の投資が開始された。
その第1段が1991年6月のDMSO(Defense Modeling and Simulation Office、ディムソーと発音する)設立である。DMSOは、従来は陸・海・空の各軍が独自に実施してきたモデリング&シミュレーション(以下M&S)を統合的に扱う機関で、その第1の成果は、1994年1月に発行したM&Sプロジェクトの憲法的役割を果たす計画書「DoD Modeling and Simulation Master Plan」(DoD Directive 5000.59-P)である。
その後大学や軍の分散シミュレーション研究者を中心に、HLAの仕様を策定するためのチーム AMG(Architecture Management Group)が設立され、その第1回会合が1995年3月にDMSOで実施された。そして2ヶ月後の1995年5月には「HLA -Version 0.0 Interface Specification -」が公開され、続いて0.1版が7月、0.2版が10月、そして1年後の1996年8月にHLA仕様の第1.0版が完成した。2.1.2 IEEE標準化までの道のり
HLA仕様の第1.0版完成直後の1996年9月、米国防総省は2000年までにHLA仕様をIEEE標準とすることと、2001年以降はHLAに準拠しないシミュレータを調達しないことを宣言した。当時HLAをベースとした分散シミュレーションシステムは存在せず、大変冒険的な発言であったが、この宣言を契機に研究開発は一気に加速していった。
まず、HLAのIEEE標準化を推進するために学会 SISO(Simulation Interoperability Standards Organization Inc., http://www.sisostds.org/)が設立され、技術的な議論はSISOが年2回開催するSIW(Simulation Interoperability Workshop)で行われるようになった。SIWは毎回1,000人以上が参加する大変大きな国際会議で、1割以上は米国以外からの参加者である。2.1.3 IEEEによるHLAの承認
その後HLAの仕様は改版を重ね、1998年2月の1.3版Draft 9がSISOとしてのHLA仕様の最終案としてまとまった。これをベースにIEEE 1516 Draft 1(Draft Standard for Modeling and Simulation High Level Architecture,http://www.dmso.mil/ index.php?page=121)が1998年4月に作成され、改訂を重ねて2000年5月のDraft 5が、2000年9月にIEEE標準化委員会により採択された。2.2 HLA仕様概説
HLAは、ルール(IEEE 1516)、インタフェース仕様(IEEE 1516.1)、オブジェクトモデルテンプレート仕様(IEEE 1516.2)の3つの仕様から成り立っている。2.2.1 IEEE 1516ルール
「ルール」は、HLAが規定する範囲を明確にするため、用語の定義やそれぞれの動作の基本を規定したものである。例えば、個々のシミュレータをフェデレートと呼び、その集合である分散シミュレーション全体をフェデレーションと呼ぶ事や、フェデレート間は直接情報を交換することなく、RTI(Run-Time Infrastructure)と呼ぶソフトウェアを介して行う事など、10種類のルールが規定されている。2.2.2 IEEE 1516.1 インタフェース(I/F)仕様
「I/F仕様」は、シミュレータとRTI間のサービスの仕様を規定したもので、各言語(C++, Java, Ada, CORBA IDL)毎のAPI(Application Program Interface)を定めている。また、このインタフェース仕様で規定されたサービスを提供するソフトウェアをRTIと呼ぶが、RTIの実装法や通信プロトコルの詳細に関しては規定していない。CORBA処理系の上に実装したDMSO RTI-NG 1.3を代表に、スウェーデンのPitch社がJava上に実装したpRTIや、筆者らがTCP/IP Socket上に開発したeRTI(experimental RTI)等、いくつかの方式によるRTIの実装が試みられ、それぞれ性能面やポータビリティ等で特徴を持たせている。2.2.3 IEEE 1516.2 オブジェクトモデルテンプレート仕様
この仕様は、個々のシミュレータ間でのデータ交換を行う時に基本となる、外部から参照可能なオブジェクトやその属性を定義するSOM(Simulation Object Model)と、分散シミュレーション全体で共通するオブジェクトやその属性を定義するFOM(Federation Object Model)の定義方法を規定する。FOMは、異機種分散シミュレーションにおいて柔軟性のあるデータ交換仕様を実現し、シミュレータの再利用の要となる仕様である。
図1 分散シミュレーション統合アーキテクチャHLA
2.2.4 HLA分散シミュレーションの構成
図1に、HLAに基づく分散シミュレーションシステムの構成を示す。図に示すように、HLAに準拠した各シミュレータは、I/F仕様により規定された6種類のサービスに属する各APIを使ってRTIとメッセージを交換することにより、他のシミュレータとのデータ交換や時刻の同期を行う。3.ハイパフォーマンスコンピューティングへの応用例
3.1 ジョージア工科大におけるネットワークシミュレータへの応用例
Dr. Fujimotoが率いるジョージア工科大学のModeling and Simulation Centerでは、HLAをハイパフォーマンスコンピューティングへ応用するための研究を行っている。元々 Dr. Fujimotoは並列離散イベント駆動型シミュレーション(PDES: Parallel Discrete Event Simulation)の研究の権威であり、HLAの仕様策定にあたっても中心的なメンバとして活躍してきた。
PDESの研究は様々な大学や企業でこれまで行われてきており、ジョージア工科大学のTimeWarp OS、UCLAのMaisieとPARSEC, NASAのSPEEDESや、三菱電機(株)情報技術総合研究所のOSim等、様々な開発実行環境が実現されてきた。しかし、これまでは特定のアプリケーションで利用されてきたものの、広いユーザに利用されるようなシミュレーションシステムに適用されることがなく、PDES自体が一般に広まるまでには至っていない。
これまで普及しなかった理由の一つは、従来のPDES研究の特徴は、それぞれが独自の開発実行環境を構築し、その上で様々なアプリを開発してその先進性や性能や効果を競っていたからである。このような独自環境の上で作られたシステムは、各ノード(プロセッサ)間の同期と通信プロトコルが独自であるため、あるシステム上に作ったシミュレータを別システムへ移植することが事実上大変困難であることと、各システムの開発環境自体が製品レベルの充実したものが少なく、その結果PDESの普及はこれまですすまなかったと考えられる。また、キラーアプリに相当するような、広く使われるアプリケーションが生まれてこなかったという問題点もあった。
PDESの研究分野においては、既に研究テーマとして成熟している部分が存在する。例えば、分散シミュレーション全体を管理する方法や、時刻の同期方式の一部等である。このような部分に関しては、必ずしも多くの研究者がそれぞれ独自の方法によるシステムを開発するよりも、仕様の標準化を図ることにより、別々のシステム上で開発したシステム同士のインターオペラビリティを図ることが重要である。
Dr. Fujimotoは、米国防総省が異機種シミュレータ間のインターオペラビリティを実現したいという要望をうまく活用し、HLA標準仕様の設計とその普及に協力することにより、PDES研究と実用化の促進を目指したようである。
HLAベースのPDESシステム実用化の第一歩としてDr. Fujimotoが選んだ応用は、シミュレーション技術を応用したアプリケーションとして今後最も需要が増えるだろうと予測される、ネットワークシミュレータである。ネットワークシミュレータの中で現在最も良く使われているのは、パブリックドメインのNS2(Network Simulator, http://www.isi.edu/nsnam/ns/)である。UDP, TCP, RTP等のプロトコルから、各種のルーティング方式が1パッケージの中に実装され、ユーザレベルで自由に拡張することができ、また、拡張機能が更にNS2にフィードバックされて次のバージョンに盛り込まれることから、ユーザ数を伸ばしているようである。このように、既に充分多数のユーザを持つアプリケーションを対象とし、HLAをベースとしたPDES化をDr. Fujimotoは選んだ。
図2 PDNSの構成概念図
一般的に、既存のシステムを並列化するためには、そのシステムの中で最も性能上のボトルネックとなる部分を切り出して並列化する場合が多い。しかし、この手法で並列化すると、並列化されたシステムへユーザのプログラムを移植する際、プログラムの変更が必要となる場合が多い。
そこでDr. Fujimotoが採用した方法は、NS2にはほとんど手を加えず、HLAのインタフェースのみを新たに付加し、多数のNS2をHLAにより連接することにより、全体として一つのPDESシステムを構成する方法である。これは、PDNS(Parallel and Distributed Network Simulator)として一般公開されている。PDNSの対象はネットワークのシミュレータであり、ネットワーク分割ツールを用いて多数のサブネットワークを生成し、各サブネットをNS2にマッピングすることにより並列分散化する。
※PDNS(http://www.cc.gatech.edu/computing/compass/pdns/)本例は、HLAを利用することにより、既存のシミュレータを組み合わせて大規模な問題を高速に実行可能な分散シミュレーションシステムを、効率良く開発できた代表例であると共に、ユーザ数が多いことから、PDESやHLAを普及させるためのキラーアプリとなる可能性を秘めていると予想する。同様な例が今後も多数現れることにより、更にHLA及び並列分散シミュレーション技術が普及するであろう。
3.2 ミシガン大学と南カリフォルニア大学におけるエージェント技術への応用例
日本で80年代にブームとなった人工知能の研究は、米国のいくつかの大学ではかつての日本以上に研究が活発化している。特に活発なのは、理論的側面からの研究色が強い認知科学の分野ではなく、もう少し工学寄りのエージェン技術の分野である。ここでは、なぜ米国ではこのようにエージェント技術の研究が活性化しているかという理由と、ハイパフォーマンスコンピューティングとの関係に関して説明する。
80年代から現在に至るまで、人工知能の研究に関するDARPAからの研究資金と米国防総省からの開発資金は年々増額されてきた。
例えば、DARPAの中で先進的な情報技術開発のプロジェクトの計画を策定する機関であるDARPA/ITO(Information Technology Office)が現在取り仕切っているプロジェクトの一部をリストアップすると以下の通りとなる。自律協調システムやロボット技術等、システムの自動化に関する技術開発プロジェクトが多数有ることがわかる。
※DARPA/ITO(http://www.darpa.mil/ito/ResearchAreas.html)Networking & Distributed Systems:Active Networks,Next Generation Internet,
Network Modeling and Simulation,Sensor Information Technology,
Ubiquitous Computing等
Embedded & Autonomous Systems:Autonomous Negotiating Teams,
Mobile Autonomous Robot S/W,Software for Distributed Robotics等
Intelligent Software:Communicator,Evolutionary Design of Complex Software,
Information Management等また、米国防総省では既にエージェント技術に関する研究成果の一部であるCGF(Computer Generated Forces)の一部を実用化し、ModSAF(Modular Semi-Automated Force, http://www.modsaf.org/)という名称のソフトウェアとして広く訓練用のシミュレーションシステムのインテリジェント化と半自動化に貢献している。
ModSAFは、軍事訓練に登場するエンティティをモデル化したソフトウェアで、兵器の特性から過去の事例に至るまで詳細にモデル化されており、米軍やNATO軍における軍事訓練では必ず使われている。モデル化があまりに詳細なため、ソフトウェア自体は輸出規制がされており、我々が一般的に利用することはできない。このように、ModSAFでは兵器の物理的特性を中心としたモデル化が行われているが、人間の意思決定の部分に関しては単純にモデル化されているため、実際の訓練で用いる際には、多数のModSAFを一人の人間が操作することが多い。
一方、意思決定の部分の自動化に関しては、カーネギーメロン大学(CMU)を中心に研究されたSoar(the basic cycle of taking a State applying an Operator, And generating Result)グループを中心に研究が進み、ModSAFとSoarを連接することにより、全自動による知的軍隊模擬(intelligent force)を実現している。
かつてSoarの研究の中心はCMUであったが、現在はミシガン大学アンナーバ校のAIラボがSoarシステムの研究開発とその上のアプリケーションの研究開発の中心となっている。また、南カリフォルニア大学のISI(Information Sciences Institute)では分散協調エージェントの研究のためのツールとしてSoarを用い、ロボカップサッカーやレスキュープロジェクトで活躍している。更に、南カリフォルニア大学のICT(Institute for Creative Technologies)では、米陸軍とハリウッドの映画製作会社と共同で、Soarを用いた陸軍兵士のミッションリハーサルシステムを実現するための技術開発を行っている。
ここでは、Soarの応用としてSoar/IFOR(Intelligent FORce)システムの中のTacAir-Soarを簡単に紹介する。TacAir-Soarは、戦闘機パイロットの訓練用シミュレータのために研究開発されたシステムで、敵側の複数の戦闘機の模擬をModSAFで行い、敵側パイロットの意思決定部分をSoarにより行うものである。TacAir-Soarでは、米軍と英国軍が保有する全ての戦闘機とそのパイロットをモデル化しており、約5,000種類のルール数と約500種類のオペレータから構成されている。おそらく、これまでに開発された人工知能応用システムとしては最も規模の大きいものであろう。
図3 TacAir-Soarシステムの構成概念図
図3にTacAir-Soarのシステム構成を示す。図の例では、1つのModSAFと3つのSoarエンジンがSoar-ModSAFインタフェースを介して連接されて、1台のワークステーションの上で実行される。最新のModSAFはまだマルチスレッド化されておらず、Soarに実装されたSoarスケジューラにより、疑似的にマルチタスキングされる。訓練生は図中右側のシミュレータを操作し、TacAir-Soarにより制御される敵側戦闘機と戦うことにより戦闘訓練を行う。
HLA仕様の策定中に開発されたTacAir-Soarで用いられたModSAFはHLAインタフェースを備えておらず、シミュレータとの連接にはDIS(Distributed Interactive Simulation)仕様を用いていた。しかし、最新版のModSAFはHLA化されており、HLA準拠のシミュレータから簡単にTacAir-Soarを利用することが可能になる。
TacAir-Soarは既に実際の米空軍パイロットの戦闘訓練で利用されてその効果は実証済みであり、現在は海軍や陸軍でも同様のシステムの開発が進んでいる。特に、陸軍ではミッションリハーサルシステムへの本技術の適用を本格的に開始しており、1999年には南カリフォルニア大学に4430万ドルを投じてICT(Institute for Creative Technologies)を設立した。ICTでは、単に知的エージェント技術やシミュレーション技術の研究だけでなく、映像面でのリアリティを高めるため、ハリウッドの映画製作会社からも多数の人材を招いた共同研究が行われている。ICTの研究内容に関しては、本報告書の付録の海外調査報告に詳しく説明してある。
このように、Soarをベースとした知的エージェントシステムは様々な応用に適用される方向にあり、利用目的が拡大するにつれて、知的エージェント部分の大規模化が促進すると考えられる。しかしながら、現状ではSoarの研究者の中にはSoar の並列化に興味のある研究者はおらず、Soarをベースとしたハイパフォーマンスコンピューティングの研究は、まだ始まっていないようである。4.おわりに
HECCのアプリケーション分野の一つとして、HLAをベースとした並列分散シミュレーション技術をとらえ、その中で将来有望と考えられる応用分野の例を2例紹介した。
2000年9月にHLAがIEEE標準となった後、HLAに対する関心がこれまで以上に高まるとともに、軍事訓練用シミュレータの分野では全世界的に普及が始まった。更に、本報告で紹介したような並列分散型のネットワークシミュレータPDNSの例のように、既に普及しているシミュレータをHLAの特長を利用することによって並列化し、ユーザにとってはHLAを意識することなく性能を向上することができる、という大変良い例が出てきている。同様の例が今後多数出現することが、ハイパフォーマンスコンピュータの需要を高める重要なポイントとなるであろう。
また、米国においては人工知能技術を応用した知的エージェント技術の研究がかつて以上に活性化しており、米陸軍が南カリフォルニア大学に投資して設立した ICT のように、大学とハリウッドの映画業界と軍隊が共同で研究開発を行うまでに至っている。今回調査した範囲では、知的エージェント技術自体を並列処理により高度化・高速化する試みは行われていないようである。しかし、同様の応用が多数出現し、その有効性が示されることによって、ハイパフォーマンスコンピュータの応用として重要な位置を占める可能性を秘めていると予想する。参考文献
[1] 古市昌一, 和泉秀幸, 分散シミュレーションのための統合基盤アーキテクチャHLAの紹介, 情報処理, 2000.[2] George F. Riley, Richard M. Fujimoto, Mostafa H. Ammar,, A Generic Framework for Parallelization of Network Simulations, in Proc. of Seventh International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunications Systems, 1999.
[3] Randolph M. Jones, John E. Laird, Paul E. Nielsen, Karen J. Coulter, Patrick Kenny and Frank V. Koss, Automated Intelligent Pilots for Combat Flight Simulation, AI Magazine, 1999.