柔らかな機械システムに関する
調査研究報告書(概要)
平 成 8 年 3月
財団法人 機 械 シ ス テ ム 振 興 協 会
委託先 技術研究組合 新情報処理開発機構
調査研究概要
1. 調査研究の目的
21世紀における高度情報システムは、簡易な操作性をはじめ新しい知的情報処理を可能とする「柔らかな機械システム」(マンマシンインタフェース)の利用条件が必須となっている。
わが国では、平成4年度よりリアルワールドコンピューティング(RWC)研究開発が国家プロジェクトとして進められ、柔らかな情報処理のための研究開発が行われている。そのなかで情報統合技術と超並列超分散処理技術は、「柔らかな機械システム」の開発に不可欠であり、それに伴いその適用分野の探索、海外における開発状況等を調査研究することが重要課題になっている。
そこで本調査研究では、このような「柔らかな機械システム」の構築に向け、人間の感性である五感を取り扱う情報統合技術の適応可能性の検討を行う。また、その普及・発展に必須となる情報処理基盤としての超並列超分散処理システム上のプログラミング環境等について検討を行い、もって本システムの開発を促進し、今後のわが国機械工業の振興に寄与することを目的としている。
2. 調査研究の範囲及び実施体制
2.1 調査研究の範囲
本調査研究の範囲である「柔らかな機械システム」のための情報統合技術及び超並列超分散技術について以下の項目により行う。
2.1.1 柔らかな機械システムのための情報統合技術に関する調査研究
国家プロジェクトで推進している RWC
研究は、実世界に存在する多種多様な情報、すなわち漠然とした、あるいは不完全な情報を対象にして妥当な判断や問題解決を行う新しい情報処理体系「新情報処理」を構築することを目的として進められている。
一方、機械システムを人間とのインタフェースでみると、従来はあらかじめ定められた例外のない完全な規則に従って機械システムを使用することを人間が強いられている。したがって、このような不規則性の事象への対応化を図ることが重要課題となっている。
上記背景を踏まえて「柔らかな機械システム」とは、「従来とは逆に、機械システムの方が人間の住む環境に自律的に適応すること」と捉え直すと、技術課題は機械システムを人間の住む自然な環境になじませるためのマンマシンインタフェースを実現することと考えられる。このような手段として上記「新情報処理」技術に大きな可能性が期待できる。
このような観点から、「新情報処理」技術の機械システムへの適応性に関して、次の2点を中心に調査検討する。
・「柔らかな機械システム」の要件 より多くの機械システムを人間社会に適応させるためには、どのような機能が必要か。さらに、それは「新情報処理」技術にどのような機能があれば実現できるか。
・「柔らかな機械システム」への適応性 「新情報処理」技術があらゆる機械システムに適応可能というわけではないが、それではこの技術はどのような機械システム(応用システム)に適応しうるのか。これらに関し具体的内容は、次のようになる。
1「柔らかな機械システム」応用に指向して,視覚,聴覚,触覚,言語,記憶等ヒューマンメディアを統合する情報統合技術の機能(例えば、声・表情・身振りを同時に認識し、これにより機械システムと対話することを可能にする情報統合技術)及び要素技術(音声認識・判断技術、動作や手作業の解析技術など)について探索を行う。
2上記1の情報統合技術を利用した「柔らかな機械システム」応用の発掘(例えば、見よう見まねで仕事を覚え、人間と一緒に仕事・作業ができるロボットや、徐々に賢くなり人間の意図を推量して会話を自動編集するシステム)について、関連分野の最新技術動向(電子秘書など)を調査し、とりまとめる。
2.1.2 柔らかな機械システムのための超並列・超分散処理シス技術に関する調査研究
2.1.1に述べた柔らかな機械システムは、多くの場合膨大な計算量を伴うものと予測される。従って、このニーズに応えるための情報処理基盤として超並列超分散処理技術が想定される。このような超並列超分散処理技術を基盤とする機械システムを構築し普及させるに当たっては、プログラミング言語、プログラムライブラリ及び開発環境等、プログラミング環境が重要な課題になってくる。
一方、国家プロジェクトで推進している RWC 研究では、上記「新情報処理」に指向した情報処理基盤として、超並列計算機及び超並列分散オブジェクト指向言語
MPC++ 等のプログラミング環境の研究開発が進められている状況にある。
上記背景を踏まえ、次の2点を中心に調査・検討を行った。なお、これには最新技術動向を把握するため、海外へ技術者を派遣して調査を行うと共に、欧米より関連する研究・開発者、学識経験者を招聘して討論を行い、成果に反映した。
(1)柔らかな機械システムのための情報処理基盤要件の検討
より多くの機械システムを人間社会に適応させるためには、計算機システムにどのような機能・性能が必要か、さらに開発研究中の超並列超分散計算機システムに必要な機能は何かについて検討を行い要件を整理した。
(2)柔らかな機械システムへの適応性の検討
「新情報処理」に指向した超並列計算機及び並列分散オブジェクト指向言語等のプログラミング環境がどのような機械システム(応用システム)に適応しうるかについて検討を行った。 これらに関し具体的内容は、次のようになる。
1柔らかな機械システム応用に指向した MPC++ 言語仕様の探索を主体に行った。
2開発研究中の MPC++ 言語を利用した柔らかな機械システムの応用面の発掘につい て検討を行った。
国家プロジェクトで推進している RWC 研究では超並列計算機及び超並列分散オブジェクト指向言語 MPC++
等のプログラミング環境の研究開発が進められているが、最近顕著化していることとして、超並列プログラミング言語の開発では、
1オープンで活発な議論、比較に基づく相互理解、機能のブラッシュアップが重要である。 2よりたくさんの人がMPC++を知り、利用するために、利用者の側にたった機能やライブラリを用意しアピールすることが重要である。
研究開発はRWCのプロジェクトとして実施されているが、以上のような点については必ずしも十分な作業がなされていない。したがって、より多くの機械システムを人間社会に適応させるために、計算機システムにどのような機能・性能が必要か、さらに開発研究中の超並列超分散計算機システムに必要な機能は何かについて,上にあげた点を踏まえた検討を行い、要件を整理した。
2.2 調査研究の実施体制
本調査研究の実施に当たっては、技術研究組合 新情報処理開発機構内に「柔らかな機械システム調査研究委員会」を設置し、その下に「情報統合技術専門委員会」及び「超並列・超分散処理システム技術専門委員会」を設置した。調査研究委員会の指導の基に各専門委員会により、具体的な調査研究活動を行い、その成果を本報告書としてとりまとめた。委員会のメンバーは、以下に示すとおりである。
(1)柔らかな機械システム調査研究委員会
委員長
|
杉江 昇
|
名城大学 理工学部電気電子工学科 教授
|
委員
|
米澤 明憲
|
東京大学 大学院理学系研究科情報科学専攻 教授
|
|
田中 二郎
|
筑波大学 電子情報工学系 助教授
|
|
中島 秀之
|
電子技術総合研究所 通信知能研究室 室長
|
事務局
|
加藤 泰宏
|
技術研究組合 新情報処理開発機構 国際部調査課長
|
|
浪越 徳子
|
技術研究組合 新情報処理開発機構 国際部調査課
|
(2)情報統合技術専門委員会委員
委員長
|
中島 秀之
|
電子技術総合研究所 通信知能研究室 室長
|
委員
|
麻生 英樹
|
電子技術総合研究所 情報科学部情報数理研究室
|
|
伊庭 幸人
|
統計数理研究所予測制御研究系
|
事務局
|
加藤 泰宏
|
技術研究組合 新情報処理開発機構 国際部調査課長
|
|
浪越 徳子
|
技術研究組合 新情報処理開発機構 国際部調査課
|
(3)超並列・超分散処理システム技術専門委員会委員
委員長
|
米澤 明憲
|
東京大学 大学院理学系研究科情報科学専攻 教授
|
委員
|
田中 二郎
|
筑波大学電子情報工学系 助教授
|
|
松岡 聡
|
東京大学 大学院工学系研究科計数工学専攻 講師
|
|
藤田 正幸
|
⑭三菱総合研究所経営システム開発センター情報技術開発部情報基盤システム室 室長
|
事務局
|
加藤 泰宏
|
技術研究組合 新情報処理開発機構 国際部調査課長
|
|
浪越 徳子
|
技術研究組合 新情報処理開発機構 国際部調査課
|
3. 調査研究成果の要約
3.1 柔らかな機械システムのための情報統合技術に関する調査研究
3.1.1 機能及び要素技術
情報統合技術の機能を得るための方法としては、(1)広い対象を扱える統計数理的なものがある。一方、統合機能の最も典型的な課題は、(2)パターン(音声や画像など)と記号(文字)の統合である。これらは統合機能を与えるために必須のものである。また、これ以外の統合機能として、(3)統合技術成立のための諸問題をとりあげた。
(1) 統合技術のための統計数理的方法
(a)ベイズ統計の枠組の利点と欠点の検討
ベイズ統計の枠組は、従来のパターン処理、シンボル処理の手法を統一的に理解するために有益である。処理アルゴリズムの部分とモデルの部分を明確に分けて理解するのが、現代的な統計学の考え方の特徴である。これは、計算機言語における宣言型言語の考え方にも通じる。この見方によって、従来の方法を統一的な立場から見直すことができ、より柔軟あるいは高速な処理が可能になることが期待される。
ベイズ統計の枠組は、パラメータとデータ両者を確率変数と考える点で一般の統計学の枠組と異なる。これは、不完全なデータを扱う場合に柔軟な扱いを可能にする。
また、階層的な構造を考えることで、学習・汎化を行なうことができる(経験ベイズ法あるいはABIC法)。 ここでは、ベイズ統計の考え方の利点と欠点について論じる。記号論理や確率以外の確信度を利用する枠組との比較、ベイズ統計以外の統計の枠組との比較を試みた。また、将来の情報処理技術の基礎として考えた場合の問題点を検討し、まとめた。
(b)シンボル/パターン統合のために役立つ統計モデルの調査
ここでは、アルゴリズムとモデルを分けたうちの、モデルの形態について扱う。特に、シンボル/パターン統合のために役立つモデルについて調査を行った。また、シンボルに関する統計モデルについても調査を行った。
(c)確率の計算のためのアルゴリズムの整理
ここでは、アルゴリズムとモデルを分けたうちの、アルゴリズムの形態について扱う。周辺確率の計算法として有力な手法を3つにまとめて、統一的にとらえることを試みた。また、周辺確率の計算法とエネルギー(距離)を最小化する手法の関係、情報処理の手法と統計物理における手法の関係を明らかにした。
(d)自律システムの数理的基礎の探索
ここでは、(a)~(c)の枠組におさまり切らない手法の中から、将来の情報処理技術の基礎となるものについて論じることにした。特に非線形科学の応用に重点をおいた。
(2) パターンと記号の統合方法
(a)問題の背景
(a)-1 情報処理の対象は音声や画像などのパターン情報と新聞記事などの記号情報と大きく2つに分けられる。 (a)-2
処理方式も2つに分ける場合、「情報処理における二元論の立場」をとるという。 (a)-3
パターンと記号の統合は「一元論」の構築を目指す研究となる。 (a)-4
パターンと記号の統合には、「横の統合」と「縦の統合」がある。 (a)-5「横の統合」を行なう目的は、音声、画像、言語などの異種情報のそれぞれの相補的特徴を生かし、それらの相乗的な効果を期待するもの。 (a)-6
「縦の統合」とはそれぞれのパターン情報の中でパターンとその意味をつなぐための部分と全体の統合様式について、それらの共通性の発見にある。(a)-7
ここでは、「横の統合」は「縦の統合」を通じて発展するのではという見方を押し進めてみたい。 (a)-8
これが「横の統合」技術の発展にも寄与する可能性があるとは、例えば、パターンの「縦の統合」を解明するなかで記号がより自然に処理されることで、パターンと記号の「横の統合」がなされるなどを意味する。 (a)-9
パターンと記号との統合についてパターン情報側からアプローチする場合、「場所概念」、すなわち「場」というものがここでいう「縦の統合」のアーキテクチャをなす中心概念になることが有力である。
(b)パターン情報処理の3つの場
ここでいう「場」とは、 (1) 整合のための場、 (2) 制約充足のための場、 (3)
自己組織化のための場、 を指すものとする。これらの場をパターン情報と記号の統合方式のアーキテクチャとして位置付けて、「縦の統合処理」=「場による統合処理」とする。
(c)統合事例1:音声のスポッティング認識(図1、図2参照)
音声認識を実行する方式は様々に考えられる。その中で、ここでは「スポッティング認識」というものを取り挙げる。また、音声波形からのスポッティング認識する際のカテゴリの表現として単語や文の記号を抽出する。 各カテゴリの構成物は、音声の特徴パラメータまたは音素片記号である。ここでの 「パターン制約」とは、1つまたは複数のカテゴリを表すために、特徴パラメータや音素片記号を空間配置することである。その配置の仕方には、
・ 1次元に、特徴パラメータを配置する、 ・ 2次元に、音素片記号のネットワークを配置する、
がある。この場合「パターン制約」はいわゆる「標準パターン」として解釈してよい。次に、統合のための場の構成を与える。まず、入力音声の時間軸を1つの空間軸とし、カテゴリを表現する「パターン制約」の中で時間軸に対応する軸を他の1つの空間軸として2次元空間を構成する。この「2次元空間」が統合のための「場」となる。音声のスポッティング認識は、この2次元空間場上で定まる値の評価によって行なわれる。この値とは、場の各点で入力と「パターン制約」との整合度を表し、かつ「各点での整合度が完全性をもつ」ものとする。ここでいう「各点での整合度が完全性をもつ」とは、
・ 場の各点は、入力内のある1つの時間区間に常に対応している、 ・
場の各点は、システムの出力である認識カテゴリをもっている、 ・場の各点は、自らが位置する場所に応じた大局的な整合度を表している、
を意味する。 この性質により、局所演算であっても場の値の更新で大きさの異る部分の離合・集散が実行できる。このことが部分から全体への統合処理の「自然さ」を保証している。 具体的には、場の各点の表す数値は「パターン制約」の各要素と入力要素との局所距離の累積距離を示す。
この値の更新・伝播の方式としては、(1)1次元のパターン制約では、スカラ量 の2次元における更新・伝播、(2)2次元のパターン制約では、ベクトル量を2次 元における更新・伝播、となる。このスポッティング認識をサーチ問題としてみると、 これは
left-to-right, right-to-left, island driven
のいづれのサーチ方式にも属さず、「パターン制約」(標準パターン)を構成する要素点のすべてからサーチ点が同時に出発する 並列サーチである。
(3) 統合技術成立のための諸問題
情報統合とは、複数の情報をまとめて処理することにより、個々の情報からは得られないような新しい情報を得ることをいう。このことからわかるように、問題をより単純な部分問題に分割し、各々を独立に解決することにより全体問題を解く方式である分割統治方式は使えない。部分問題どうしが有機的に絡み合っているからである。
研究としては部分問題を解く研究も,統合研究も共に重要であるが、現在の全体的研究の達成状況を見ると、個々の処理は現在の技術で達成できる部分はほぼ達成されており、今後は統合に重点が移るものと考えられる。 情報統合には大きく分けて二つの方向がある:
1異種情報の統合 記号とパターン、画像と音声など同じものに関する異なる情報を統合するもの。
2同種情報の統記号どうし、パターンどうしの統合など、部分情報を有機的に統合し、全体像を得る意味合いが強い。 我々が関心を持っているのは特定の処理ではなく、一般的な統合処理手法である。そこで、たとえばシンボル情報統合のためのアーキテクチャが必要とされる。現在、有力な研究方向としては、
・マルチ・エージェントシステム ・服属アーキテクチャ ・オートポイエシスシステム ・協調アーキテクチャ(有機的プログラミング)
などがある。しかしながら、これらで充分というものではなく、今後とも新たな方向を探って行く必要がある。
3.1.2 適用技術
情報統合を適用する場面は、多くの異なった情報が同時に働いている状況である。現在、この場面の典型は2つ考えられ、それらは、「ロボット制御」、と「マンマシンインタフェース」である。なぜなら、前者はビジョンセンサー、接触センサー、赤外線センサー等が実時間で働くところであり、後者は「音声メディア」「画像メディア」「データベース」、「CG出力」などが実時間で働くところであるためである。
(1)ロボット制御における適用例
自律移動型ロボットのナビゲーションにおける情報統合技術の応用可能性、課題、実現事例について、とりまとめた。
(a)自律移動型ロボットのナビゲーションと情報統合
この課題と「情報統合」との関係を意外に思われることもあるかもしれないが、以下の分析を見れば、ナビゲーションにおいては、多数のセンサから得られる情報の時系列を適切に統合処理することが必要になるのであり、音声つき動画の理解などと共通する要素を持っていることがわかると思う。この課題を選ぶ最大の理由は、問題として単純であることによって「情報統合」の本質が見えやすいと期待されることであるが、その他に、入力センサから出力アクチュエータに到るトータルな系であるロボットは、
・多様な情報表現をバランスよく、しかも相互関係つきで含む。 ・御都合主義的な内部表現を暗黙のうちに導入することが起こり難い(実世界内で働くロボットの場合、こうした都合のよさは、主に環境の設定となって現れる。したがって、仮定の都合の良さは、そのエージェントが行動可能な環境として、より明示的に現れる) など、情報統合技術のワークベンチとしての好ましい性質を持っているためでもある。
(b) システム開発の具体例
ここでは、現在電子技術総合研究所新情報計画室において研究開発中の「所内事情通エージェント」システムを中心に、具体的にどのような情報統合が行なわれているかについて述べる。
「事情通エージェント」とは、環境内を自律的に移動し、能動的に人および環境と密接なインタラクション(対話)を行なうことにより、環境に関するさまざまな情報を収集し、知識を学習し、次第にその環境に関する「事情通」となってゆくようなシステムである。このシステムによって、たとえばオフィスで働く人々に対し、誰がどこにいるか、会議室が空いているか否か、等の情報提供サービスや、簡単な届けもの、建物内の案内、伝言、などの情報伝達サービスを行なうことができる。また、このシステムは無線でネットワークに接続され、能動ネットワーク端末として機能する他、ネットワークを通じてシステムにアクセスする人々(あるいは他のエージェント)に対して、あたかも自分がその場に居るような形での情報提供/伝達サービスを行なうものである。
(2) マンマシンインタフェースにおける適用例
(a)問題の背景
知的な思考を行なう人間の脳の活動においても実時間応答性を要求される状況を考えてみた。例えば、人間が音声やジェスチャで思考内容を計算機に実時間で伝え、また計算機からの実時間の応答によってまたその思考が進展や変化するという状況である。このとき、実時間応答性の要求は第一義的な要素となり、ロボットの実世界における実時間応答性の要求とほぼ同様の意味をもってくる。
この状況で、人間の思考過程に影響を及ぼしている要素群 は、Brooks
のいうロボットの行動を定めている要素群ではなく、人間の脳での高次の認知レベルにある要素群を想定しなければならない。
しかし、その役割を実現するアーキテクチャについては、Brooks のいう subsumption architecture
によるものと類似してくる。
すなわち、新しいアーキテクチャが考えられるとしたら、それは、ーー計算機にはとにかく実時間でそれなりの出力を要求するが、必ずしも「洗練され、深く認識した認識」に基づく出力は要求しないという状況ー
ーの扱いに好都合のものである。
これは、ロボットに「洗練され、よく計画するされた行動」を求めなかった Brooks の
提案と通じるものがある。新しいアーキテクチャは、(ロボットの behaviour based
ではなく)人間の高次の思考過程を中心においた、音声や画像の認識に基づく新しい人間機械系のありかたに関係する。
ここでは上記の立場にたつアーキテクチャを「粒度自由・並列アーキテクチャ」とよぶことにする。ここでいう「粒度」とはシステムの認識する単位の大きさを意味する。
例えば、音声認識でいえば、「音節」「単語」「分節」「文」「文脈」などの対象とする音声区間が異なったものがあるが、これが「粒度」が違っているという。また、対話においては、これらの「粒度」の違いは時刻時刻で問題ではなく、大事な内容のものが優先して扱われる。それゆえ、これらの「粒度」の違うものが並列に扱われることが必要になる。結果として、「粒度自由・並列アーキテクチャ」ということになる。このアーキテクチャに基づけば、その利用を広げられる音声や画像の認識に基づ
くインターフェースの構築の可能性がある。
(b)音声とジェスチャの認識に基づくインタフェース
複数人のユーザが音声とジェスチャを交えて議論し、あるタスクを実行している状況を想定する。このとき、計算機には、ユーザの発する音声とジェスチャ動画像を理解し、ユーザのタスク実行の支援を行なうデータの提示をディスプレイや合成音声で行なうことが期待される(図3参照)。 ここで計算機に要請されることとは、
・ 音声とジェスチャ動画像からの実時間意図理解 ・ 理解に基づく実時間のデータ検索と実時間画像応答
である。複数人で議論がなされる状況では、議論の実時間的な進行に遅れない計算機からの応答があるとき、それはユーザの思考過程に実時間で影響を与え得る形の支援ができることになる。
このようなマン・マシン・インタフェースを設計するには、第一に、音声とジェスチャ動画像のframe-wise
の認識を実現しなければならないこと、第二には、それらの認識に基づく、データベースへの検索と結果の表現も実時間で行なえること、の2つを前提としなければならない。
(c)実時間認識のための粒度自由・並列アーキテクチャ
図3の人間-機械応答系では、人間側により自由な対話を許すためには、音声の発声やジェスチャの動作についての制約を極力課さないようにしなければならない。特に人間側において、考えながら音声やジェスチャで意図を表現するとき特にこの要請は強い。また、そのような状態でこそ計算機の援助を必要とする場合が多い。そのとき、ユーザによる音声とジェスチャの表現について次のようなことが生じていると考えられる。
・極めて冗長な音声やジェスチャ表現があり、その中で実際に意味のあると思われる部分はわずかであること、 ・
その意味のある部分の認識単位は様々でありうること、 ・ 様々な認識単位の果たす役割はほぼ同等でありうること、
これらのことを考慮すると、われわれは図4に示されるアーキテクチャを採用するのが妥当と考えた。 人間が音声やジェスチャで自らの意図を表す時、文章の音声やジェスチャ全体を使って表していても、実際に意味しているものは、その中の一部である、単語、句、文、概念、意図、である場合が多い。これらの単位は認知的な階層では異るところに位置づけられる。
また、その分離は極めて困難である。一方、実時間応答を要求されるシステムの出力も、実際に人間が表現したい意味の部分によって作成されることを要求される。
図4の意味するのはこのような状況で意味のある実時間応答を作成するために要求されるアーキテクチャである。すなわち、粒度の異る認識単位が並列に動作しうるためのアーキテクチャである。粒度の異る単位を入出力に対して並列に扱うということで、これを「粒度自由・並列アーキテクチャ」とよぶ。
図1 連続DPにおける場の構成
図2 ベクトル連続DPにおける場の構成
図3 音声による会話とジェスチャ
図4 粒度自由・並列アーキテクチャ
3.2 柔らかな機械システムのための超並列・超分散処理システム技術に関する調査研究
3.2.1 超並列・超分散処理技術のための情報処理基盤要件の検討
柔らかな機械システム応用を指向したMPC++言語の研究調査を主体とし、C++言語拡張および、ライブラリー開発などを行っている。その研究の方向性を探求すべく並列C++ミニワークショップ及び並列C++国際ワークショップを開催した。本章では、それら2回ワークショップおける発表および議論の概要をまとめた。
(1) 並列C++ミニワークショップ
1)全体概要
'95年9月26日から27日にかけて新情報処理開発機構が主催となって「Mini-Workshop on Advanced Computing
in
C++」と題する並列C++言語に関するミニワークショップを開催した。今回は、米国において並列C++の研究・開発に携わる研究者3名の発表を含め、並列言語分野の研究者が集まり、各々の研究状況についての報告とそれに対するディスカッションを行った。 以下のようなことが知見として得られた。
・C++を超並列言語に拡張する場合には、従来のC++における適用の場合以上に対象とする応用分野で発生する問題を明らかにすることが重要である。
・広い範囲のライブラリ、ランタイムユーティリティがより活発に開発されることが重要であり、そのためには、そのようなライブラリが、資産として積み重ねられるようにすることが重要である。
2)研究発表の概要
以下に発表があった研究事例の内、特筆すべき事例について、その概要をまとめる。
(a) MPC++ Approach to High Performance Computing 発表者: 石川 裕 (Real World
Computing Pertnership)
新情報処理開発機構の中で研究・開発が進められている並列・分散オブジェクト指向言語 MPC++
について、その機能、設計方針について紹介があった。MPC++は、プログラミング言語に、様々な拡張を加えるのではなく、基本的な並列プリミティブと共に、メタレベルアーキテクチャのによってユーザ自身で言語拡張を行なえるような機能をサポートすることで柔軟性を高めている。最近の開発状況として、高速ネットワークMyrinet
で結合した Sun ワークステーションクラスター上での実装及び性能評価について報告があった。
(b)Automiatic Run-Time Optimization in C++
オブジェクト指向言語では、インターフェイスと実装を分離しているため、最適化の自由度が高く、部分評価による最適化が自然に適用できる。 本システムでは、オブジェクトインスタンスの生成時にメソッドに対応するマシンコードを生成する。インスタンス生成後、変数の値が変化しない場合には、その値はマシンコードに埋め込まれる。本システムは、C++のプリプロセッサーとして実装されているが、評価実験では、商用最適化コンパイラと比較して、2倍程度の高速化が実現されている。
(c)Compositional C++: Parallel Programming in C++
発表者:
|
Carl Kesslman (California Institute of Technology)
|
CC++(Compositinal
C++)は、C++に並列機能を追加した言語である。C++は、並列演算やアクティブオブジェクトといった特定のプリミティブを提供するのではなく、再利用可能なライブラリを構築するために、C++に含まれる機能と新たな構文を組み合わせて特定の並列プログラミングスタイルを構成している。 本発表では、CC++の背景、現状を述べると共に、CC++によっていかに多様な並列プログラミングが可能であるかの説明があった。
(d)The Illinois Concert System:Support for Irregular Parallel
Applications
発表者:
|
Andrew A. Chien (Dept. of Computer Science, University of Illinois)
|
Concertプロジェクトは、イレギュラーなデータを処理を伴うアプリケーションの記述言語について、ポータビリティが高く、効率的な実行を実現することを目指している。
並列言語 Concert C++ は、グローバルな名前空間やオブジェクト指向技術によって、並列・分散プログラミングを可能とする。
CC++のコンパイラ最適化やランタイムシステム技術(型推論、クローニング、並列制御の最適化など)について報告があった。
(e) ET: An Event Tracing Tool
研究者:
|
西岡 利博、市吉 伸行、村野 正泰、関田 大吾(RWCP超並列システム研究室 MRI分散研、(株)三菱総合研究所)
|
発表者:
|
西岡 利博 (RWCP 超並列システム研究室MRI分散研、(株)三菱総合研究所)
|
イベントトレーシングでは、プログラムにトレースコマンドを埋め込み、特定変数の値のログをファイルに出力し、そのログファイルを解析することで、プログラム動作の異常を検出する。現在、RWC-1
シミュレータ上におけるMPC++プログラム用のランタイムトレースライブラリと基本的なイベント解析ツールが実装されている。イベント解析ツールによって、プログラム依存のイベントパターンを検査するスクリプトを書くことが可能となっている。
今後、GUIによるトレースコマンドの設定や、繰り返し行なわれるインクリメンタルなイベント記録が整合性のある結果になるようにリプライメカニズムを提供することが課題である。 本発表では、これまでの開発の概要と、イベントトレースの事例について報告が行なわれた。
(f) Hierarchical Collection: A Simple Scheme for the Separation of
Parallelism and Distribution
研究者:
|
松岡 聡 、佐藤 直人、米澤 明憲 (東京大学)
|
発表者:
|
松岡 聡 (東京大学)
|
超並列計算では、並列と分散の概念を分離することが重要であると考えられる。すなわち、分散に関する細部を、並列分散クラスライブラリーのフレームワークのユーザから切り離し、しかも、ライブラリプログラマーからは、変更が容易なようにするのが良い。本発表では、
hierarchical ollection
と呼ぶ非常にシンプルでかつ数学的に重要なモデルに基づいたオブジェクト指向並列分散クラスフレームワークの構築のための新たな方法を提案する。この手法によって、様々な物理解析において高性能な並列計算を行なうクラスを容易に導出することが可能となる。特に、アレイ、木構造データについて本手法がいかに適用できるかについて示された.
(g)Future Directions in Parallel Object-Orieted Programming
発表者:
|
Dennis Gannon (Dept. of Computer Science, Indiana University)
|
pC++の開発経験を踏まえて、より一般化をめざした、HPC++とそのプロジェクトについての報告であった。本プロジェクトでは、より一般的なアプリケーション、プログラミングパラダイムを模索しており、特に、動的マルチスレッド、入れ子型の並列計算やCORBAにおけるインターフェイスに相当するものの研究・開発を進めている。
3.2.2 超並列・超分散処理技術への適応性の検討
(1) MPC++言語の柔らかな機械システムへの応用のための調査方法
現在研究開発中の MPC++
言語仕様の探索およびMPC++言語を利用した柔らかな機械システムの応用面の発掘を行うため、米国の最新技術動向の調査を行った。 米国で開催される国際会議、および、大学、研究所の研究グループに実際に訪問し、最新の研究動向を把握した。
1現在までに、全米を対象として、超並列言語およびそのアプリケーションの研究開発を行っている研究グループをリストアップし、その中から、MPC++が目指す
MPP(Massively Parallel
Processing)型の処理、またイレギュラーな並列処理を伴うアプリケーションおよびライブラリーを開発しているグループを選定し、先方との訪問スケジュールの調整を行った。
2今回、米国における最新の超並列アプリケーションの動向調査として、下記の2つの方面から現地調査を実施した: ・米国における超並列言語、アプリケーション分野の研究グループ訪問による調査 ・国際会議
supercomputing '95
に於ける動向調査
超並列アプリケーション、ライブラリーの訪問先研究グループの絞り込みでは、ここ数カ年の超並列処理関係の国際会議プロシーディングスを参考に、アプリケーションの研究開発を精力的に行っているグループに目星をつけ、さらに、World
Wide Web, ftpなどインターネットによる公開情報によって最新の情報を重視して選別を行った。 具体的には、会議予稿集として IEEE, ACM
関係の国際会議, 米国HPCCプログラムが主催となって開催された成果報告会議など表1を情報源とした。
表1 調査情報源(プロシーディングス)
Scalable High Performance Computing Conference
|
Performance Computing Conference
|
Scalable High Performance Computing Conference
|
Performance Computing Conference
|
Evolving the High Performance Computing and Communications Initiative
to Support the Nation's Information Infrastructure
|
High Performance Computing
|
Supercomputing Conference
|
International Conference on Intelligent and Cooperative Information
Systems
|
The Third Conference on Hypercube Concurrent Computers and Applications
|
First IEEE Conference on Evolutionary Computation
|
今回は、特に、並列アプリケーション開発のためのビジュアルライブラーや、並列アプリケーションの性能を評価するシステム開発のためのライブラリーなどといった基盤的なものから、応用分野が経済学といったMPP型の処理に関連が強いテーマで実際にアプリケーションを開発しているグループを探索した。 本情報源およびインターネットにおいて、超並列計算、アプリケーション関係の組織のまとめたページを参考に、超並列アプリケーション研究で成果を挙げている表2の組織について、さらに、個々の研究機関のWeb
ページをたどり、研究グループを選定した。
表2 調査対象(米国政府研究機関)
Argonne National Lab
|
Army High Performance Computing Research Center
|
Minnesota Supercomputer Center
|
DoD High Performance Computing Center
|
Fermilab
|
Lawrence Berkeley Laboratory (LBL)
|
Lawrence Livermore National Laboratory
|
Los Alamos National Labs
|
NASA Ames Research Center
|
NASA Jet Propulsion Laboratory (JPL)
|
The Naval Research Laboratory (NRL)
|
Oak Ridge National Lab
|
Sandia National Labs
|
National Energy Research Supercomputing Center
|
NIH
|
NIST
|
NOAA
|
表2の研究機関は、いずれも軍事関係、素粒子科学、気象など応用を明確に絞り込んだ形で、政府からの予算を十分獲得しながら、超並列アプリケーションの実装、運用を目指した研究が多く、参考となる事例が多い。その中でも、今回の訪問先として選択した
NASA Ames
研究所は、流体計算など膨大な計算量が要求されるアプリケーションの開発と同時に、高速化をより高める上で重要な並列システムのパフォーマンス評価を行なう総合的なツールを開発し,
ライブラリ化している点で着目した。また、Sandia国立研究所では、応用分野が経済変動の分析といった新規性があるうえ、ミクロモデルシミュレーションというスケーラビリティの高いアプローチであることなどから注目した。
さらに、大学の研究グループに関しても超並列アプリケーションの研究を行なっているものをリストアップしたものが表3である。
表3 調査対象(大学)
Caltech Center for Advanced Computing Research
|
CMU
|
Cornell Theory Center
|
MIT Artificial Intelligence Laboratory
|
MIT Laboratory for Computer Scienceh
|
Princeton Univ.
|
Univ of Colorado, Boulder
|
Maryland University
|
University of Californica, Santa Cruz)
|
Stanford University
|
大学の研究グループでは、やや理論面の研究に重点が置かれるが、その中でも、California Institute of Technologies
(カリフォルニア工科大学)は、人工生命をテーマとしたシミュレーションなど、潜在的に並列性の高い分野での研究を行なっており、また、本分野が、まだ未開拓であるという点からも注目した。一方、University
of California Santa
Cruz(カリフォルニア大学サンタクルーズ校)では、DNAや蛋白質の構造解析といった、情報処理技術の活用によって今後発展が期待される分野での研究を行なっており、また、並列アルゴリズムの研究において水準の高い成果を上げていることなどなら今回の訪問先として選択した。
(2)超並列アプリケーション研究グループ訪問による調査
今回、いくつかの研究グループを訪問し、特定のプロジェクトに関して動向調査を行うと共に、次項で述べる国際会議Supercomputing
'95の調査を行った。
調査方法の項で述べた通り、訪問先は、3月に開催されるRWC国際ワークショップに参加予定の研究グループを除き、MPC++に向いた超並列アプリケーションという前提で、Massively
Parallel型の並列処理であり、イレギュラーの並列動作を伴うものに注目し、絞り込みを行なった。訪問調整の結果、最終的に訪問した研究グループは表4の通りである。
表 4 訪問研究グループ一覧
研究グループ
|
面会者
|
要点
|
California Institute of Technology The Avida Artificial Life Group
|
Dr. Christoph Adami 他
|
生物遺伝情報拡散のシミュレーションおよび理論解析
|
NASA Ames 研究所
|
Dr. Jerry C. Yan, Robert T. Hood, Rob F. Van Der Wijngaart 他
|
並列システムのモニタリング、動作解析による、並列システム最適化支援
|
University of California Santa Cruz Computer and Information
Science, Applied science
|
Dr. David Haussler, Dr. Kevin Karplus, Dr. Richard Hughey
|
DNA, RNA, 蛋白質の配列データのアラインメント、二次構造予測、分類
|
Sandia 国立研究所 Massively Parallel Computing Research Laboratory
(MPCRL) Computatinal/Computer Sciences & Math Center
|
Dr. Richard J. Pryor
|
エージェント指向によるアメリカ経済のミクロシミュレーション
|
(3) 国際会議 Supercomputing '95 に於ける調査
超並列システムの応用面の調査の一貫として、'95年12月3日(日)~8日(金)の期間に米国San Diegoにおいて開催された国際会議
Supercomputing
'95に参加し、技術動向調査を行った。本項では、その会議内容に関して、全体概要とその傾向性、また柔らかな機械システムの応用を念頭において、有用と判断されるもので、実際に著者が参加したセッションを中心に個別に内容をまとめる。
本会議 Supercomputing '95 は、ACM SIGARCHおよびIEEE Compuer Society
が主催となって、'88年より毎年開催されているものである。ハイパフォーマンスコンピューティングおよび通信をテーマとした会議のうち、国際的にも最大級のものの一つといえる。特に、米国政府が推進するHigh-Performance
Computing(HPC)プログラムからの支援および影響が強く見受けられ、内容は、研究発表のみならず、デモ、展示などがかなりの部分を占めており、産業上の視点からも充実した内容になってきている。以前は、システム、言語、開発環境など、基盤的研究発表が多かったが、近年は、各種応用分野での実問題を対象としたアプリケーション指向的な発表が急速に増加しているといえる。
Invited Talkなどにおいて強調されていたことであるが、High Performance Computing
技術がかなりの水準に達しているなかで、今後は、これらの技術を産業界、各研究分野に応用し実質的な成果を出すことが強く求めれ、その点が予算配分の重要な基準となりつつある。また、実用性という意味で、各分野の利用者にとって使いやすいシステムの開発、ユーザインターフェイスの高度化などが重要になってきているとのことである。
今回の会議の研究分野の構成を、採択された研究論文の割合から見てみると表5のようになっている
表 5 会議採択論文の分野構成
分野
|
応募
|
採択
|
採択率
|
ネットワーキングまたは分散コンピューティング
|
34
|
9
|
26%
|
アルゴリズム
|
28
|
7
|
25%
|
データマイニング
|
12
|
3
|
25%
|
パフォーマンス
|
29
|
7
|
24%
|
ソフトトウェアツール、コンパイラー
|
71
|
18
|
25%
|
アーキテクチャ
|
18
|
3
|
17%
|
アプリケーション
|
40
|
18
|
45%
|
教育
|
8
|
3
|
38%
|
セキュリティ
|
1
|
1
|
100%
|
会議全体は、付属資料に載せたような日程で行われた。そのうち、テクニカルプログラム、パネル、ワークショップの内容一覧を巻末に添付する。 今回は、テクニカルプログラムのうち、アプリケーション各分野(生化学、生物学、エンジニアリング、物理学、流体力学、海洋大気モデリング)のセッションを対象に調査を行った。
|