【前へ】
3.4 知的ネットワークエージェント
3.4.1 概要
インターネットに代表されるネットワーク技術の進歩と普及により、今日、我々は世界中の情報やサービスにアクセスできるようになりつつある。また、パーソナルメディアの出現は、その利用形態を多様化させている。これらの技術革新により、ネットワークを活用する新しいビジネスやサービスの可能性が広がり、さらには、社会のしくみがネットワーク上に構築される、いわゆる「情報ネットワーク社会」も現実のものとなりつつある。来るべき情報ネットワーク社会においては、お年寄りから子供までが、生活に必須のサービスや趣味の情報を得るためにネットワークを活用することになる。しかし、現状のネットワーク利用技術は、これらの人達にとって決して使いやすいものとはなっていない。このような背景から、人間のネットワーク活用を知的に支援する
Human-Centered Intelligent System としての知的ネットワークエージェントの必要性が高まっている。
3.4.2 エージェントの定義
以下にエージェントの基本特性を示す。エージェンとは、少なくともこれらの性質を備えたソフトウェアであると定義される[1、6、14]。
- 自律性(autonomy)
エージェントは、自分の行動や内部状態を変更するしくみを持ち、外部からの直接的な指示を受けることなく、自律的に行動する。
- 社会性(social ability)
エージェントは、プロトコルや共通の言語を用いて、他のエージェントと、あるいは人間と情報交換やコミュニケーションを行なう。
- 反応性(reactivity)
エージェントは、自分がおかれた外部環境を認識し、そこで生ずるさまざまな変化に適切に応答する。
- 自発性(pro-activeness)
エージェントは、自分の目標の達成に向けて自発的に行動を起こす。
3.4.3 知的ネットワークエージェントへの期待
エージェントを Human-Centered の観点でネットワーク活用支援に向けた際の要件、つまり、今後のネットワーク社会へ向けて、どのようなエージェントが求められているかを考える。我々がネットワークを活用して行なう仕事は、主に遠隔地の情報収集やサービス利用である。これらは、情報収集を行ないながら、その内容によって利用するサービスを決めるといったように、相互に影響し合っている。これを人手で行なうには、自分が必要とする情報/サービスが何であり、それはネットワーク上のどこに存在し、どうすれば入手/利用でき、どう組み合わせれば目的を満たすのかなどを明らかにする必要があり、大変な手間を要する。こういった作業を効果的に支援するエージェントには、以下の能力が期待される。
- 人間が何を求めているかを簡単な伝達で的確に把握する。
- ネットワーク上のどこで何をすべきかを自ら考える。
- ネットワーク上のどこへでも訪ねていく。
- 個人の好みを把握している。
- 過去の経験を活用する。
- 人間の欲しいものを見分け、取捨選択する。
- 各所の状況を把握する。
- 各所の状況に応じて柔軟かつ適切に処理を変更する。
- 周囲に迷惑をかけない。
- 外部からの刺激に対して頑強である。
- 人間や他のエージェントと協力し合って効率的に仕事をすすめる。
- 許された時間内で効率よく結果をだす。
このようなエージェントは、情報ネットワーク社会における人間の活動を助けるものとなる。他の移動オブジェクトや検索エンジンなどに基づくエージェントと区別するために、ここでは上記要件を満たすエージェントを知的ネットワークエージェントと呼ぶ。
3.4.4 ネットワークエージェントの構成
図3.4-1にネットワークエージェントの基本構成を示す。エージェントを動作させるマシンには、プラットフォームと呼ばれる基本部分が設置される。プラットフォームは、各種通信を支援する通信基盤と、エージェントの移動・生成・削除などを管理するエージェント管理、どこにどういったエージェントが存在するかを管理する位置管理から構成される。エージェントはプラットフォーム上に生成され、ユーザやソフトウェアに対するインタフェース、エージェント間のインタラクション、他のプラットフォームへの移動などを駆使して処理をすすめる。
知的ネットワークエージェントを構築する際には、個々の知的エージェントの機能・特性をどのようなものにするか、プラットフォームにエージェントをどう支援させるか、エージェント間のインタラクションをどういったレベルで、どう設定するか、などをバランスよく設計する必要がある。
図3.4-1 ネットワークエージェントの基本構成
3.4.5 知的ネットワークエージェントの応用分野
以下に、知的ネットワークエージェントの特徴を活かした応用システムの例をいくつか示す。
- 分散データ活用システム
インターネットのような広大なネットワークから人間が真に必要とする情報を収集するシステムや、形式の異なる分散データベースや内部構造の複雑なデータベースから必要な情報を収集するシステムなどは、知的ネットワークエージェントの特性を活かした応用である。CALSやECなどもこの範疇に含まれる。
- ワークフロー処理システム
処理の流れが固定的でなく、収集した情報の内容やその時の状況、相手側の状態などに応じてその後の処理が決定し、処理の結果によってまた必要な情報が決まるといった複雑な依存関係を持つワークフロー処理にも知的ネットワークエージェントを適用できる。
- グループ作業支援システム
グループによる分担作業の支援。異なる環境上で異なるツールを用いて作業が行なわれていても、エージェントがそれらの間を柔軟につなぐことができる。
- ネットワーク上のマシン保守・管理システム
定期的にネットワークを巡回してマシンを保守・管理するシステム。エージェントによる利用状況の監視やマシンの環境設定、新規ソフトウェアの自動インストールなども可能となる。また、遠隔機器の操作に知的エージェントを活用する試みもある。
- 異種システムの柔らかな結合
部門や会社間をまたがって結合された広域システム。エージェントが異なるシステム間を柔軟につなぎ、情報やサービスを広域に提供する。
3.4.6 知的ネットワークエージェント開発の課題
以下に、知的ネットワークエージェントを開発する上での課題について整理する。
- 知性
知的ネットワークエージェントの知性をいかに実現するかは大きな課題である。人間の要求の把握、行動の決定、個人の好みの把握、過去の経験の活用、対象の取捨選択、状況に応じた処理の決定など、知的ネットワークエージェントの要件の多くは知性をベースとするものである。推論技術や学習技術が深く関わってくる。
- コミュニケーション
エージェントがコミュニケーションする方法、そのための言語やオントロジーの定義などは、知性に次ぐ重要な課題である。これらの技術によって、エージェントは他のエージェントや人間と協力し合って効率的に仕事をすすめることが可能となる。エージェントコミュニケーション言語や知識交換言語の研究、オントロジー記述言語の研究、特定のドメインにおけるオントロジー定義の試みなどが行なわれている。
- セキュリティ
人間の代理人として仕事をするエージェントをどこまで信用するか、プライバシーをどう保護するかなどは、真剣に考えるべき課題である。これについては、計算機をエージェントの攻撃から保護する観点、エージェントを計算機の攻撃から保護する観点、エージェントを他エージェントの攻撃から保護する観点で議論されている。
- 信頼性、安全性、実時間性
システムの制御などを行なうエージェントには、性能要求を満たしつつ、安全・確実に仕事をこなすことが求められる。エージェントの柔軟性は、動作の非決定性、不確実性にもつながる性質であるため、与えられた目標の達成に向けたエージェントの動作をいかに保証するかも課題となる。
- 開発方法論や支援環境
開発者の立場で見たとき、エージェントそのものがこれまでに扱ったことのない概念である。エージェントをいかに捉え、ネットワーク上でエージェントを活用するアプリケーションをいかに構築するか、その開発方法論や支援環境の整備が課題である。エージェントの利点をうまく活かす、新しい開発方法論や支援環境が望まれる。
3.4.7 国として取り組むべき課題
- 基礎研究の推進
知的ネットワークエージェントには多くの利点があるが、研究課題も残されている。3.4.6節で述べた技術課題、すなわちエージェントの知性、コミュニケーション、セキュリティ、信頼性、安全性、実時間性などに関する基礎研究、開発方法論や支援環境などについての実用化研究は、国が中心となって着実にすすめるべきものと考えられる。
- 共通基盤の整備
広域なネットワーク上でエージェントを活動させるためには、プラットフォーム、エージェント管理、位置管理やセキュリティ機構などの整備が必要である。これらは、さまざまなエージェントが相互に情報交換/移動可能となるように仕様を共通化した上で、広く普及させなければならない。この種の活動は、国が強いリーダシップを発揮してすすめるべきものである。このとき、FIPA[16]、OMG[17]、Agent
Society[15]などがすすめるエージェント技術の標準化活動とも協調する必要がある。
- アプリケーションの構築
情報ネットワーク社会における知的ネットワークエージェントの有効性を実証するために、大規模アプリケーションを構築し、評価実験を行なう必要がある。日本主導で海外の機関も巻き込むなど、世界規模での広域実験が望まれる。このとき、基盤技術は国が中心となって整備するが、アプリケーションの開発、運用、管理、拡張は企業や大学が主体となってすすめることが好ましい。評価の方式についても、世界中からの利用実績がフィーバックされるしくみや、利用されないアプリケーションエージェントが自然に淘汰されるしくみなどを工夫したい。
3.4.8 システム事例:知的ネットワークエージェントPlangent
Plangent(Planning Agent)は東芝 S&S 研究所で研究開発中のエージェントシステムで[7、11、12]、知的ネットワークエージェントの知性や行動力をある程度まで実現した事例である。Plangentのエージェントは、プランニング機構(知性)とネットワーク移動機構(行動力)を持ち、エージェントが自らの行動計画を立てながらネットワーク上を動きまわる点に特徴がある。図3.4-2に示すように、各エージェントは、人間の頭脳に相当するしくみとしてプランニング機構を、手に相当するしくみとしてプラン実行機構を、足に相当するしくみとしてネットワーク移動機構を持つ。このエージェントがユーザからの要求を受けとると、以下のように行動する(図3.4-3)。
- (1)ユーザの要求に対するプランニング
- ユーザからの要求を受けとったエージェントは、プランニングによって、どこで何をするかといった自分の行動計画(プラン)を立てる。
- (2)ネットワーク上の移動
- その行動計画に基づいて、必要な情報やサービスのある場所まで移動する。
- (3)行動計画の実行
- 移動先の情報やサービスを活用して計画を実行する。
- (4)予期せぬ事態に対する再プランニング
- 予期せぬ事態によって計画の実行が失敗した場合、再プランニングによって、状況に合った行動計画を作り直す。
- (5)プランニング〜行動計画の実行〜再プランニングの繰り返し
- 目標が達成されるまで行動計画の作成と実行を繰り返す。
- (6)最終報告
- 最後にユーザのところへ戻って結果を報告する。
図3.4-2 各エージェントの機能
図3.4-3 エージェントの動作概要
プランニングとは、ユーザの要求を満足するための行動計画(ここでは、ネットワーク上のどこへ移動して、何を実行するかといった計画)を立てる機能である(図3.4-4)。計画を立てる際には、プラットフォーム上におかれた知識ベースを利用する。Plangentのエージェントは、最初に立てた計画を実行し、これが何らかの原因で失敗に終わった場合には、再プランニング(プランの立て直し)を行なう。このようなプランニング機構を持ったエージェントには、以下のような利点がある。
- エージェントが自分で行動計画を立てるため、ユーザが細かい作業手順を指示しなくてもよい。
- 予期せぬ状況変化が生じた場合、計画実行の失敗をきっかけとして再プランニングが起動され、新たな状況に合った計画が柔軟に作成される。
- 収集する情報に不足や誤りがあっても、再プランニングによってそれを補う行動計画が作られるため、ネットワーク上に分散した不完全情報やクチコミ情報(不確実情報)を活用することが可能となる。
- システム構成やサービスの内容などが変化した場合、ローカルな知識を修正するだけ対応できる。次にこの場所を訪れたエージェントは、修正された知識を参照し、最新の状況に合った行動計画を作成する。
図3.4-4 プランニングによる行動計画の生成
Plangentのエージェントは、ネットワーク上を自律的に移動し、移動先でそれまでの仕事を継続する(図3.4-5)。移動先では、情報の収集やサービスの利用をローカルな処理として行ない、他の場所へ移動する際には、実行結果のみを持っていく。このような移動エージェントには、以下のような利点がある。
- エージェントが自分で処理内容を持ち運ぶため、事前にサービスプログラムを作り込む必要がない。
- 環境情報やユーザの利用情報などといった移動先の状況が容易に把握できる。また、移動先の環境への適応も比較的容易である。
- エージェントが移動した後に通信回線を切断することができるため、携帯機器を使用している際に通信コストを抑えたり、または通信路が細い/不安定な環境でも比較的安定して動作する。
- 過負荷状態の計算機を避けて余裕のある計算機へ移るなど、ネットワークに接続された資源を有効活用できる。
- リモート機器を操作する場合などに、操作エージェントを機器側に送り込むことができる。ネットワーク経由の制御に比べ、実時間性が高まる。
図3.4-5 エージェントの移動
移動オブジェクト型のエージェントシステムはいくつか存在するが[1、3、5、8、9、10]、Plangentは知性や動作の柔軟性といった知的ネットワークエージェントの特性を備えたシステムとなっている。Plangentに関する技術情報や評価版ソフトウェアは[26]にて公開されている。また、他のネットワークエージェントについても[18、19、20、21、22、23、24、25、27]などで情報やソフトウェアが公開されている。
<参考文献>
- [1]
- 服部文夫:ネットワークエージェントによる情報収集と流通, 情報処理, Vol.38,
No.1(1997), pp.30-35.
- [2]
- 服部正典, 田原康之, 大須賀昭彦, 本位田真一:PlangentII: インテリジェント・ネットワークエージェント−分散環境におけるコンポーネントの検索/獲得問題への適用,
ソフトウェア工学の基礎III(FOSE'96), 近代科学社(1996), pp.194-197.
- [3]
- 飯田一郎, 西ヶ谷岳:モーバイルエージェントとネットワーク, 情報処理,
Vol.38, No.1 (1997), pp.17-23.
- [4]
- Karjoth,G., Lange,D.B., and Oshima,M.: A Security Model for Aglets,
IEEE Internet Computing, Vol.1, No.4(1997), pp.68-77; http://computer.org/internet/
.
- [5]
- Kiniry, J. and Zimmerman, D.:A Hands-on Look at Java Mobile Agents,
IEEE Internet Computing, Vol.1, No.4(1997), pp.21-30; http://computer.org/internet/
.
- [6]
- 木下哲男, 菅原研次:エージェント指向コンピューティング, ソフト・リサーチ・センター(1995).
- [7]
- 永井保夫, 田原康之, 入江豊, 大須賀昭彦, 本位田真一: PlangentI: インテリジェント・ネットワークエージェント,人工知能学会ホットトピックスと並列人工知能研究会,SIG-HOT/PPAI-9602-6(1996),
pp.29-36.
- [8]
- インターネット高度利用のカギ「行動するオブジェクト」,日経バイト3月号(1998),
pp.224-229.
- [9]
- 西田豊明:ネットワーク社会とエージェント, 情報処理, Vol.38, No.1(1997),
pp.10-15.
- [10]
- 西田豊明:ネットワークエージェント, 情報処理, Vol.39, No.3(1998),
pp.258-260.
- [11]
- Ohsuga,A., Nagai,Y., Irie,Y., Hattori,M., and Honiden,S.:PLANGENT:
An Approach to Making Mobile Agents Intelligent, IEEE Internet Computing,
Vol.1, No.4(1997), pp.50-57; http://computer.org/internet/.
- [12]
- Tahara,Y., Kagaya,A., Ohsuga,A., Nagai,Y., and Honiden,S.:An Agent
Oriented Language Plangent, 10th Conference on Object-Oriented Programming
Systems Languages and Applications(OOPSLA'95), Workshop 1, Objects, Scripts
and the Web(1995).
- [13]
- Tahara,Y., Hattori,M., Ohsuga,A., Nagai,Y., Irie,Y., and Honiden,S.:Plangent
− An Intelligent Multiagent System for Network Computing, in Proc. 2nd
International Conference on Multi-Agent Systems (ICMAS-96), AAAI Press(1996),
pp.460-460.
- [14]
- Wooldridge,M. and Jennings,N.,R.(eds.): Intelligent Agents, Lecture
Notes in Artificial Intelligence 890, Springer-Verlag(1995).
- [15]
- Agent Society:http://www.agent.org/
- [16]
- FIPA:http://drogo.cselt.stet.it/fipa/
- [17]
- OMG:http://www.omg.org/
- [18]
- Aglets:http://www.trl.ibm.co.jp/aglets/
- [19]
- April::http://www.fujitsu.co.jp/hypertext/Products/Software/April/Eindex.html
- [20]
- Ara:http://www.uni-kl.de/AG-Nehmer/Ara/
- [21]
- Concordia:http://www.meitca.com/HSL/Projects/Concordia/
- [22]
- Kafka:http://www.fujitsu.co.jp/hypertext/free/kafka/
- [23]
- MOA:http://www.opengroup.org/RI/java/moa/
- [24]
- Monja:http://www.melco.co.jp/rd_home/java/monja/index.html
- [25]
- Odyssey:http://www.genmagic.com/agents/
- [26]
- Plangent:http://www2.toshiba.co.jp/plangent/
- [27]
- Voyager:http://www.objectspace.com/Voyager
【次へ】