![]() |
[1999 年 11 月号] |
[エージェント指向が目指すもの]
オブジェクトの広場 : エージェント指向が目指すもの
エージェント指向が目指すもの
|
![]() ![]() |
オブジェクトの広場へようこそ。今回のテーマは「エージェント指向」です。連載第一回は「古くて新しい」技術であるエージェント指向について、技術的な堅い話しは抜きに「どんな技術」で「何をするためのもの」か、サルの世界を例に簡単に解説していこうと思います。「エージェント指向って何?」「前回のXMLってUMLの親戚?」という方から「エージェント指向ってもう消えたのかと思ってた」「結局オブジェクト指向なんでしょ」という技術な方々まで、是非一度読んでみてください。
![]() ![]() |
エージェント指向というのは、実は最近の技術ではありません。広い範囲でみれば、生命が社会性を持った頃からエージェント指向の基礎はあったのです(とは言いすぎかもしれませんが)。納得いかない方のために、突然ですが、サルの世界をのぞいてみましょう。サルの世界には「ボスザル」というのがいて、これが「ナンバー2」以下のサル達を取り仕切っています。たとえば、ボスザルが子分ザルに「バナナを持ってこい(キー、キ、キッ)」と言ったとしましょう。すると子分はバナナを求めて放浪し、ボスザルのもとへバナナを持ち帰ります。このとき、子分ザルはボスザルの「エージェント」として機能したことになります。なぜなら、「バナナ命令」により子分ザルが行動し、「成果バナナ」をボスザルに持ちかえったからです。
![]() ![]() |
さて、話しがややこしくなってきました。上の「なぜなら」が納得できない!とお怒りの方もいらっしゃると思いますので、話を少し整理してみましょう。そもそも、エージェントとは英語で「代理人」の意味です。つまり、エージェント指向とは直訳すると「代理人指向」です。ボスザルは自分でバナナを探すのが面倒臭かったため、子分ザルを「代理人」として「お使い」に出しました。だから子分ザルは「代理人=エージェント」として機能したというわけです。
ここで、子分ザルの役割について考えてみましょう。子分ザルにとっては「バナナを持ちかえる」ことこそが最大の使命です。その使命をまっとうするためには、おそらく、次のような能力が必要でしょう。
![]() ![]() |
さて、上で「重要な3機能」と断言しておきながら、ここで大事ことを忘れていました。実はコンピュータの世界において「エージェント」という言葉の明確な定義はありません。「エージェントに要求される重要な機能」と書きましたが、実はそんな定義もありません。コンピュータの世界(最近は「コンピュータ」という言葉がなんだか古めかしくなってきましたので、以後「ITの世界」と呼ぶことにします)におけるエージェント技術はまだまだ新しいものなので、古いエージェントが持っていた機能のどれを実現すればITの世界のエージェントになれるのか、明確な定義がないのです。しかし、エージェント指向を語るとき、上の3機能を無視することはできないでしょう。これは、世界中のエージェント議論で、上の3機能のうち必ず一つは実現されていないとエージェントと呼ばれない、という事実から汲み取れることです。
ここで、いつまでも「バナナのある場所を考える機能」などと呼んでいては笑われてしまうので、上の3機能をもう少し抽象的な名前に変えることにしましょう。
![]() ![]() |
ここで、代理性について着目してみましょう。子分ザルとボスザルの例でお話したように、代理性というのは古くからあるものです。そして実は、あなたのコンピュータにもそんなエージェントがいるのです。「ん?サルなんて飼ってないぞ」と思われるかもしれませんが、デスクトップ画面上に並んだ強烈なキャラクターを持つアイコン達は、きっと子分ザル以上に忠実に、あなたからの命令を遂行してくれることでしょう。。例えば、バナナについて知りたければ、WWWブラウザで検索サイトに移動し(今は移動せずにこの文章を読んでくださいね)、バナナと打ち込めば、いろいろな情報を表示してくれます。バナナに限らず、E-メールが届けば「新しいメールが届きました」などと表示されたり、ダイアルアップで接続していれば「30分通信していませんが、回線を切ってもいいですか」と表示されたり。コンピュータの中では様々なエージェントが動いていて、あなたに話しかけてきてくれます。そして、これらのエージェントを「デスクトップエージェント」とか「インターフェースエージェント」と呼んでいます。非常に古典的で簡単なエージェントですが、彼らもあなたと外部の世界との仲介をしている、立派なエージェントなわけです。
![]() ![]() |
話しが少しそれてしまいました(今回は技術的な話しはしないお約束でした)ので、ここでサルの世界に戻りましょう。子分ザルがバナナを取りに行っている間、ボスザルには大きな不安があることに気付きましたでしょうか。ボスザルの不安は次のようなものです。
![]() ![]() |
ここまで読まれて、「エージェント指向って、本当に使えるんだろうか?」とか「スリルがあって面白そう」とか、いろいろな感想があるかとおもいます。ここできっぱり言いましょう。エージェント指向の本当のゴールはまだまだ先です。しかし「世のため人のため、コンピュータをより使いやすく身近なものにする」点ではすでに身の回りで貢献している技術でもあります。エージェント指向技術はオブジェクト指向の発展形だと言う人もいますが、オブジェクト指向は「モノ思考」であり、エージェント指向は「サル思考」だという点で大きな違いがあります。つまり、オブジェクト指向が「モノとモノが協調する」ための技術であるのに対し、エージェント指向は「サルが結果を持って帰る」ための技術なのです。
次回は皆さんのサル思考について、もう少し技術的な側面から解説したいと思います。
オブジェクトの広場 : エージェント指向が目指すもの
© 1999 OGIS-RI Co., Ltd. |
|