合理的エージェントのコミュニケーション実現方式
高田 司郎 y

新出 尚之 yyy ATR 知能映像通信研究所

五十嵐 新女 y;yy

間瀬 健二 yyy 奈良女子大学大学院人間文化研究科

概要
本稿では，人間または他のエージェントと協調して問題解決を行う合理的エージェントのコミュニケーション実現方式を提案する．合理的エージェントの実現には，BDI アーキテクチャを用い，（1）エージェント間のコミュニケーションをプラン本体に自然に表現，（2）プランに未来指向的意図の形成条件の追加，（3）エージェントの置かれた状況や心的状態に応じて，コミットメント戦略の動的な選択などの拡張を提案し，この拡張 BDI アーキテクチャの有効性を応用事例で示す．

Design of Rational Agents who Interact and Communicate
with Other Agents
Shiro Takata,yNaoyuki Nide,yy

Yoshime Igarashiy;yy and

Kenji Maseyy ATR Media Integration & Communications Research Laboratories
yy Graduate School of Human Culture, Nara Women's University

Abstract

In this paper, we propose a design of rational agents that can interact and communicate with otheragents on an extended BDI architecture. Then, we will show how e ective it is by demonstrating
a case based on such an BDI system that is extended: (1) to naturally describe communications
with agents in the form of the body actions in a plan itself. (2) to add conditions of agents'
formalization of future-directed intention to a plan, and (3) to enable agents to dynamically decide
on a commitment strategy depending on the situation and the mental state in which they are.

1

題解決を行う合理的エージェントのコミュニケーション

はじめに実現方式を提案する．信念，目標，意図に基づく合理的Bratman [1] の意図の理論によれば，意図は合理的行為 エージェントの実現に，BDI アーキテクチャを用いる場

者が自らの目標を達成するよう努力している期間の行為

合，まず，エージェント間のコミュニケーション実現に関の決定に重要な役割を担っている．そして，意図は，そする BDI アーキテクチャの問題点を挙げ，次に，（1）エーの特性として，時が来れば予め意図したプランを実行す

ジェント間のコミュニケーションをプラン本体に自然にるよう動機づける意欲的なコミットメントと，再考慮に表現できるプラン，（2）プランに，将来実行するという未

抵抗し，意図したプランの空所を一貫性を持って埋めた

来指向的意図 [1] の形成条件の追加，（3）意図の持続性のり修正したりする実践的推論への入力として中心的な要タイプを決定するコミットメント戦略を，エージェント

素となるコミットメントを持っている．この意図の理論の置かれた状況や心的状態に応じて，動的に選択できるを合理的エージェントに適用すると，合理的エージェン

意図の持続機能，などの拡張を提案する．そして，このトは，人間から権利委譲された仕事に対して与えられた

拡張 BDI アーキテクチャの有効性を応用事例で示す．

目標を達成するために，まず，熟考して選択したプランを意図として形成する．その後，どうにかして意図を持

以下，2 章では BDI logic の概要を，3 章では BDI アー

続しようとするコミットメントの支配の下に，そのプランを実施するための実践的な手段やサブプランを推論しキテクチャの概要と問題点を，4 章では，これら問題点をジェントの内部アーキテクチャに適用した BDI アーキテ

事例を，6 章では提案手法に関する考察を，それぞれ述たり，その時が来ればそれらプランを意図的に実行する． 解決するための拡張 BDI アーキテクチャの提案を，5 章
Rao と George [2, 3] はこの意図の理論を熟考型エー では拡張 BDI アーキテクチャの有効性を示すための応用
べ，最後に 7 章でまとめる．なお，本稿を読むに当ってクチャを提案している．

は一階述語論理と時相論理 [4] の初歩的な知識を仮定し本稿では，人間または他のエージェントと協調して問

ている．

1

2

BDI Logic

状態は達成不可能だと信じるまでその意図を持続する」，「エージェントが  という状態をあらゆる未来でいつかBDI logic [3, 5] は，エージェントの過去から未来に至 達成するという意図を形成しているならば，あらゆる未る信念・目標（願望）・意図などの心的状態や行為などを自然に記述することができる時相論理体系の一つである．
分岐時間命題時相論理の一つである CTL [6] に，信念・

目標・意図といった心的状態を表す様相オペレータ BEL，

GOAL，INTEND を導入し，さらに，述語論理に拡張した体系である．時相オペレータとしては X（nexttime），F（sometime），U（until），E（ある未来で），A（あらゆ

意図を持続する」という意味である．

3

BDI アーキテクチャ

間のコミュニケーション実現に関する問題点を述べる．

が分析した心的状態の整合性に関する公理や意図の持続

3.1

性のタイプに関するコミットメント戦略などを，以下のように BDI logic を用いて自然に表現している [3]．

BDI アーキテクチャの概要

BDI アーキテクチャ [2] は，限られた計算資源環境において動的に変化する環境を知覚し合理的に問題解決を 心的状態の整合性公理行うために事前にプランを立てる熟考型エージェントの(A1) GOAL( )  BEL( )内部アーキテクチャである．エージェントの信念・目標・
意図をそれぞれ陽に表現する動的なデータ構造 B，G，I(A2) INTEND( )  GOAL( )やプランライブラリ，イベントキュー，およびそれらデー(A3) INTEND(does(e ))  does(e )タ構造を参照・更新するインタプリタから構成される．

(A4) INTEND()  BEL(INTEND())プランライブラリは，複雑なプランに関する信念を B か(A5) GOAL()  BEL(GOAL())ら分離したもので，タイプ，連想（invocation）条件（プラン形成条件），前提条件（プラン実行条件），add/delete
list（プラン実行の成功時に B に加除される信念），本体(A6) INTEND()  GOAL(INTEND())(A8) INTEND()  AF(: INTEND())か，または， という状態を目標から撤回するまでその本章では，BDI アーキテクチャの概要とエージェント

る未来で）などを持つ．Rao と George は Bratman [1](A7) done(e )  BEL(done(e ))来で，エージェントは  という状態を達成したと信じる（実現手段）などをスロットとして持つプランの集合である．プラン本体は，基本行為（実行可能な行為）とサブ
ゴール（当プランの部分目標となるプラン）を辺に持つ コミットメント戦略

木構造をしている．

(A9a) INTEND(AF ) A(INTEND(AF ) U BEL())3.2(A9b) INTEND(AF ) A(INTEND(AF ) U (BEL() _ : BEL(EF )))

プランの問題点

従来の BDI アーキテクチャ [2] のプラン本体には，基本行為とサブゴールしか記述できないため，これらの \(A9c) INTEND(AF ) A(INTEND(AF) U (BEL() _ : GOAL(EF)))

条件分岐" 1 や他のエージェントからのメッセージを待つ

たとえば，(A5) は，直感的には「エージェントが  とジェント間のコミュニケーションをプランとして記述し\同期" などを表現することができない．たとえば，エーようとした場合，交換されるメッセージを連想条件に持いう状態の達成が目標であるならば，エージェントは つプランを複数に分けて記述するしかなく，エージェンという状態の達成が目標であることを信じている」といト間の本来連続した言語行為の関連が不明瞭となるばかう意味である．

りでなく不自然な記述になるという問題点がある．

(A9a)，(A9b)，(A9c) は，それぞれ blind ，singlemind ，open-mind

また，プランのスロットには，このプランを将来実行と呼ばれるコミットメント戦略である．直感的には，それぞれ「エージェントが  という状するという未来指向的意図の形成条件としては連想条件

態をあらゆる未来でいつか達成するという意図を形成し目標の追加（g-add）は外部イベントとして外部から与えしかなく2 ，しかも，サブゴールではないトップレベルのているならば，あらゆる未来で，エージェントは  というられるか，または，心的状態として目標 G に記述されて状態を達成したと信じるまでその意図を持続する」，「エー

1 従来のプラン本体は木構造であるが，CTL の未来への時間分岐を表現しているに過ぎない．
2 Rao らの BDI アーキテクチャは，まさに実行しようとしている，
または，現在実行している現在指向的意図を主な対象としていると捉えている．そのため前提条件は現在指向的意図の実行条件と捉えている．

ジェントが  という状態をあらゆる未来でいつか達成するという意図を形成しているならば，あらゆる未来で，エー
ジェントは  という状態を達成した，または， という2

いることが仮定されている．このため，他のエージェン

Type: call-for-proposal

トからのメッセージや自らの心的状態などの状況にマッ

Precondition:

Invocation: g-add(:propose(M, 提案内容))
Add List:

チした目標や意図の形成をエージェント自身で決定する

true
fdone(提案内容)gBody::propose(M, 提案内容)hdone (propose)i(:accept-proposal ?;if too-late then cancel
else :inform(done(契約内容))
j :reject-proposal ?; fail)ようなプラン記述ができない．特に，人間との自然言語
対話システムなどでは，人間から明示的に目標が与えられることは少なく，文脈から対話プランの推論を行う必要があるが，現状の連想条件のみでは対応できない．
3.3

図 1: 契約ネットプロトコルのサブプラン例

コミットメント戦略の問題点

Rao と George [3] が形式化した blind ，single-mind ，
open-mind などのコミットメント戦略は，「エージェントる．なお，本稿では，Agent Communication Language

として，信念，願望，意図に基づく言語行為として基本のタイプとしてエージェント単位に設定する」場合だけ通信行為が規定された FIPA [7] を使用する．FIPA の詳

でなく，各エージェントの心的状態や自らの置かれた状細については参考文献に譲る．

況に応じて動的に選択した方が良い場合が考えられる．
たとえば，彼らの事例 [2] において，冷蔵庫にソーダ水

4.1が入っていればソーダ水を飲む．入っていなければ，水道プラン本体の拡張

本節では，言語行為を用いて遂行されるエージェントの蛇口をひねって水を飲むことで「喉の乾きを潤す」とい間のコミュニケーションにおいて発生する条件分岐やメッ

う目標を達成するエージェントのタイプとしては single-

セージを待つ同期などをプラン本体に表現できるように，

mind コミットメント戦略が設定されている．我々は，こプラン本体を，以下の「文」を辺とする木構造に拡張する．

の事例においても，以下のような状況に応じて動的にコ
ミットメント戦略を設定することが必要であると考える．

文 ::= 単文 [hadd/delete-listi]

j f 文; 文; … 文 g
j if 条件 then 文 [else 文]
j (待ち条件1 ?; 文1 | … | 待ち条件n ?; 文n )単文 ::= 基本行為 j サブゴール
待ち条件 ::= イベント

(1) マラソンをした直後の状況では，\すぐに"「喉の乾きを潤したい」ので，サブゴールとして「ソーダ水を飲む」というプランを open-mind なコミットメント戦略で持続する意図として形成する．この意図を実施するための実践的なサブプランとして，「冷蔵庫からソーダを取り出す」または「ソーダ水をコンビニまで買いに行く」を推上記の文定義の最後の待ち条件などを記述する文は「待論し，はじめに，「冷蔵庫からソーダを取り出す」を選択機文」と呼び，イベントキューに到着した他のエージェン

して実行したが，冷蔵庫にはソーダ水がないのでこのサトからのメッセージなどの外部イベントまたは内部イベ

ブゴールは失敗する．次に，「ソーダ水をコンビニまで買ントと待ち条件1n の順に検査を行い，最初に真となっいに行く」というサブプランは，\すぐに"「喉の乾きを潤た待ち条件n に対応する文n を選択して実行するというしたい」を満足しないので実行に移さず却下し，当初の文である．

「ソーダ水を飲む」というサブゴールを捨てる．次のサブ拡張したプラン本体の記述例として FIPA-contact-

ゴールとして「水を飲む」というサブプランを open-mind

net [7] のサブプラン記述例を図 1 に示す．この例は，マネージャ M からの「タスク告知」に対して「入札」するなコミットメント戦略で持続する意図として形成し，その意図を実行するのが合理的である．

サブプランである．このエージェントが「提案内容」を一方，(2) 恋人が訪ねてきている状況では，冷蔵庫に添付して「入札」を行い，マネージャ M からの「落札」

ソーダ水がなければ，「ソーダ水をコンビニまで買いに行を待つ．そして，マネージャが落札した場合で，その連く」というサブプランを実行して \必ず"「ソーダ水を飲

絡があまりに遅いときは cancel する．そうでないときはむ」という意図を持続させる single-mind なコミットメン

マネージャに「終了報告」を行うプランである．また，落ト戦略を選択するのが合理的である．

4法として，拡張 BDI アーキテクチャの基本設計を記述す

札されなかったときは fail して，このサブプランは失敗する．本論文では，FIPA の言語行為は : で始まる基本

拡張 BDI アーキテクチャ

行為として記述する．
この事例を，従来の BDI アーキテクチャで記述すると，本章では，前章の BDI アーキテクチャの問題点を解決

 「propose(M,提 案 内 容)」を 本 体 に も ち
hdone (propose)i を add list に持つプラン

するために，プラン本体の拡張，意図形成条件の追加，および，動的コミットメント戦略を提案し，それらの実現手

3

インタプリタ

心的状態

B

信念

initialize-state
option-generator
deliberate

プラン
ライブラリ

update-intentions

G 目標
(願望)

I

意図

executeget-newexternal-events

ちリストから削除する．また，全ての待ち条件に単

行
為
実
行
器

最後に，実行中の意図の先頭に待機文が来ている場合，一

イベント
キュー

一化しない場合は何もしない．

回だけ待ちリストに登録する update-waiting-list を追加する．ただし，その意図が達成不能になっている場合は，
外
界

待ちリスト

drop-{successful,
impossible}-attitudes

update-waitinglist

入出力

待ちリストから該当する待機文を削除する．

環
境
知
覚
器

4.2

意図形成条件の追加

他のエージェントからのメッセージ，自らの環境，および，心的状態などの状況にマッチする目標やその未来指向的意図をエージェント自身の判断で形成するために，

図 2: 拡張 BDI アーキテクチャ

プランに，意図形成条件（FormCondition）を追加する．

意図形成条件は，BDI logic を用いて表現し，意図形成の accept-proposal イベントが来てかつ前提条件 too- 処理は 4.4 節の option-generator で行う．
late が成立しているときに選択され， cancel を本体に持つプラン4.3
動的コミットメント戦略

 同様に， 前提条件 : too-late が成立しているときに
本節では，エージェントの置かれた状況や心的状態に選択されて inform を本体に持つプラン
応じて，意図の持続性のタイプを動的に決定するコミッ reject-proposal イベントが来たとき選択されて fail トメント戦略の実現方式を提案する．
を本体に持つプラン

4.3.1の 4 つのプランに分けて記述する必要がある．これらがコミットメント戦略の決定メカニズム

本稿では，エージェントの心的状態や自らが置かれた

他のエージェントとの交渉を行う一連の言語行為である

外部状況に応じて，形成する意図をどのコミットメント

ことは明示的に表現できないため，どのような意味があ戦略で持続するのが合理的であるかという決定メカニズ

るのかもわかりにくい．これに対して，拡張 BDI アーキムについては今後の課題とする．たとえば，自然言語処

テクチャを用いてプラン本体に記述するとエージェント

理をベースとして，マラソンを終えた直後の状況では，\間の相互作用を自然に表現することができる．

すぐに"「喉の乾きを潤したい」という目標の \すぐに"

以下，我々が提案する拡張 BDI アーキテクチャを図 2に注目して，この目標を達成するために形成する意図はに示し，プラン本体の拡張に伴う BDI アーキテクチャのblind で持続し，サブプラン（手段）は，\すぐに" 実現できるサブゴールならどれでも良いと解釈して，open-mind
素に，プラン本体の待機文を登録する「待ちリスト」をで持続するように決定するようなメカニズムを考える．
追加する．次に，以下の 3 個の関数をそれぞれ次のように拡張および追加する．option-generator は待ちリスト 4.3.2 戦略決定の単位と設定方式

実現方式を述べる．まず，BDI アーキテクチャの構成要に登録されている待機文の待ち条件と単一化できる外部
イベントが来れば，その文をプラン本体に持つ意図を次コミットメント戦略は，プランおよびサブプラン単位にに実行する意図の候補に加える．update-intentions はプ形成される意図を単位に決定する．そこで，図 3 のようラン本体の各文を以下のように評価する．

に，プランおよびサブプランに対して形成される意図ス

タックの中に，コミットメント戦略の属性を追加して，戦 単文（add/delete list が付いている文を含む）の場
略を設定する．図 3 は，恋人が訪ねてきている状況で，冷合は，その文を次に実行する文として意図 I を更新
蔵庫にソーダ水がなく，「ソーダ水をコンビニまで買いに行する．
く」というサブプランを実行しようとしている例である．
 複文の場合は，先頭の文を再帰的に評価する．
「ソーダ水を飲む」のコミットメント戦略には single-mind if 文の場合は，条件の真偽に応じて，then 部/else 部 が，「ソーダ水をコンビニまで買いに行く」のコミットメのいずれかの文を再帰的に評価する．
ント戦略には open-mind が，それぞれ設定されている．
また，コミットメント戦略の持続の処理は，次節の drop 待機文の場合は，単一化した待ち条件に対応する文を再帰的に評価する．そして，該当する待機文を待 successful-attitudes，drop-impossible-attitudes において述べる．

4

上記および既に形成されている未来指向的意図の前提条
Intention-Frame
Variable-Binding:Control-Point:
Strategy:open-mind
Intention-Frame
Variable-Binding:Control-Point:
Strategy:single-mind

件が B から真と推論できる意図を options リストに追加

Type: buy-soda
Invocation:g-add(have-soda)
Precondition: true
Add-List:{have-soda}
goto-CONVENI
Body:
buy-soda
come-home

する．
4.4.2

Type: drink-soda
Invocation:g-add(quenched-thirst)
Precondition: have-glass
Add-List:{quenched-thirst}
have-soda
drink
Body:

deliberate(意図の選択)

delibarate は， B，G，I やプランを選択するためのプランであるメタレベルプラン [2] を使って option-generator
で選択された options リストの中から次に実行する意図
を一つ selected-option に選択する．ただし，選択基準はType: remove-soda
Invocation:g-add(have-soda)
Precondition: true
Add-List:{have-soda}
open-fridge
Body:
remove-soda

個々のアプリケーションに依存する．
4.4.3

update-intentions(意図の更新)

update-intentions は，delibarate で選択された意図の

図 3: 意図スタックと意図フレーム

本体から 4.1 節で述べた評価方法を用いて，次に実行すべき基本行為またはサブゴールを決定し，本体の次に実行す

拡張 BDI アーキテクチャの基本設計

4.4

べき行為を指し示すように，その意図の制御情報を更新す

本節では，BDI アーキテクチャ [2] をベースに変更・ る．そして，waiting-list に登録された待機文の待ち条件
拡張した「拡張 BDI アーキテクチャ」の基本設計を提案 を使用した場合は，その待機文を，waiting-list から消去
する．

する．また，次に実行すべき本体がサブゴールの場合は，は BDI logic を用いて表現する．

図を I 中の意図スタックにプッシュしておく．

心的状態 B，G，I やプランの意図形成条件，前提条件， このサブゴールを g-add 内部イベントとして event-queue
add/delete list，および，プラン本体の if 文の条件など に加え，このサブゴールが終了するまで，選択された意
また，update-intentions では，4.3.1 節および 4.3.2 節

拡張 BDI アーキテクチャのインタプリタは，以下のにて述べた動的コミットメント戦略の決定とそれに伴うループ構造とする．

意図の更新を行う．

initialize-state();
do

4.4.4

execute(意図の実行)

options := option-generator(event-queue,
waiting-list, B, G, I);
execute は，update-intentions で更新された制御情報
selected-option := deliberate(options,を使って，次に実行する意図の本体が基本行為であれば，B, G, I);
その基本行為を実行する．サブゴールであれば何もしない．
update-intentions(selected-option,
B, G, I, waiting-list);
4.4.5 get-new-external-eventsexecute(I);get-new-external-events();
get-new-external-events は ，環 境 知 覚 器 に ，eventdrop-successful-attitudes(B, G, I);
drop-impossible-attitudes(B, G, I);
queue への外部イベントの書き込み命令を発行する．
update-waiting-list(I, waiting-list);
until quit.
4.4.6 drop--attitudes(心的状態の更新)
4.4.1

drop-successfull-attitudes お よ び drop-impossibleattitudes は，達成・撤回したと信じる目標および対応す

option-generator(意図の形成)

option-generator は，event-queue のイベントを解析し る意図を，それぞれ G および I から取り除く．目標のて，g-add イベント（目標の追加）の場合は，その目標 達成・撤回は，意図 I に形成されている全ての意図に対を G に追加する．そして，連想条件とマッチし，さらに， して設定されているコミットメント戦略が 2 節の blind，
意図形成条件が B から真と推論できるプランを未来指向 single-mind，または，open-mind によって，それぞれ，的意図として I に形成する．また，waiting-list に登録さ BEL()，BEL() _ : BEL(EF )，BEL() _ : GOAL
れた待機文の待ち条件と単一化できるイベントの場合は， (EF ) を証明することで，推論する．また，サブゴール
その文を本体に持つ意図を次に実行可能な現在指向的意 が終了した時は update-intentions でプッシュした意図
図 [1] の候補として options リストに追加する．さらに， を意図スタックからポップする．
5





目標（願望）(G1) discuss(研究者, C-MAP)(G2) promote(学芸員, C-MAP)
信念(B1) more important(promote, discuss)(B2) have-interest(学芸員,[CG,VR, パーソナルエージェント])(B3) have-interet(研究者,[協調, コミュニティウェア])
.
.
.





図 5: 秘書エージェントの心的状態が与えられ，この目標を達成するために構築された対話

図 4: 研究所見学案内システム

プラン「研究者への見学対応」を意図として形成する．同様に，「博物館などの学芸員に対して，C-MAP を売り込みたい」という目標も与えられ，この目標を達成するた
4.4.7

update-waiting-list

めに構築された対話プラン「学芸員への見学対応」を意
図として形成する．その後，「見学テーマ提案エージェン

update-waiting-list は，4.1 節で述べたように待機文をト」から，契約ネットプロトコル [9] を用いた \研究者 B
waiting-lists へ登録する．
に対する C-MAP 見学対応告知" があり，\研究者 B への見学対応
" に「入札」して，見学テーマ提案エージェント
4.4.8 拡張アーキテクチャの動作例
からの「落札」を待っている．その間に，見学テーマ提案

4.1 節の例文を本体に持つプランを意図として実行す エージェントから，新たに，\学芸員 C に対する C-MAP
る拡張アーキテクチャの一連の動作概要を述べる．まず， 見学対応告知" があり，見学者の信念「議論よりは売り込
execute において，先頭の propose を実行して，次に実行 みの方が重要である」に従って，研究者 B への見学対応
する文を次の待機文にする．そして，update-waiting-list より，学芸員 C への見学対応を優先すると判断する．そにおいて一回だけ待機文を待ちリストに登録して応答を して，以前に「入札」した \研究者 B への見学対応" を待つ．ただし，その意図が達成不能になっている場合は， キャンセルして，\学芸員 C への見学対応" に「入札」し，待ちリストから該当する待機文を削除する．次に，待ち

見学テーマ提案エージェントからの「落札」を待つ．

リストの待機文に対応する他のエージェントからのメッ
セージが外部イベントとして到着して option-generator

5.2と deliberate により選択されると，update-intentions が秘書エージェントには，権利委譲した研究者 A が持っ待機文を評価する．たとえば，accept-proposal が来ていている信念，目標，対話プランを，図 5，図 6 のように登れば，too-late の真偽を判定して cancel か inform を意録する．(G1)，(B1)，(P3) は，それぞれ，「見学者が研究

図 I に加え，それを execute で実行する．

5

応用事例

者の場合は C-MAP に関する議論をしたい」という願望，「議論より売り込みの方が重要である」という信念，「見学
者が研究者の場合は，C-MAP 見学対応を申し込む」と本章では，図 4 の研究所見学案内システム [8] におけいう対話プランである．

る「研究者秘書エージェント」を事例として，4 章で提5.3案したプラン本体の拡張が，合理的エージェントの他のエージェントとのコミュニケーションに有効であること

秘書エージェントのコミュニケーション例

本節では，5.1 節のシナリオに基づいて，「秘書エージェを示す．
5.1

秘書エージェントの心的状態と対話プラン

ント」の「見学テーマ提案エージェント」との拡張 BDI
アーキテクチャを用いたコミュニケーション例を示す．

秘書エージェントのシナリオ

まず，研究者秘書エージェントは，自らに与えられた研究者 A の目標 (G1) を達成するために，対話プラン (P1)

本節では，研究者秘書エージェントが，権利委譲をうけた研究者 A から与えられた目標を達成するために，見 「研究者への見学対応」を意図として形成する．そして，プラン本体のサブゴール appointment を達成するために，学テーマ提案エージェントとコミュニケーションを行う

g-add 内部イベントを発行し，(P2)「研究者への見学対
トは，研究者 A から「見学者が研究者の場合は彼の研究 応調整」を意図として形成する．研究者 A は病気ではな
テーマである C-MAP について議論したい」という目標 いので，同様に，サブゴール propose を達成するために

以下のようなシナリオを考える．研究者秘書エージェン

6たので，options リストに選択される．また，プラン (P6)

(P1)
Type:

研究者への見学対応の前提条件が B から真と推論できるので，options リス

Invocation: g-add(discuss(研究者, C-MAP))
Precondition:
Add List:
Body:

true

「議論よ
トに追加される．そして，delibarate において，fEF discuss(研究者, C-MAP)g

り売り込みの方が重要」という信念 (B1) を用いて (P6)appointment(研究者, 日時):inform(権利委譲した研究者, 研究者, 日時)を次に実行することを選択し，: (EF propose(研究者, CMAP)) を信念に追加するようなメタレベルプラン [2] を

(P2)

Type:

研究者への見学対応調整

Invocation: g-add(appointment(研究者, 日時))

:sick(権利委譲した研究者)
fappointment(研究者, 日時)g適用する．このメタレベルプランの記述は省略する．そPrecondition:
Add List:

して，プラン (P6) の「学芸員への見学対応交渉」を実行

Body:

propose(研究者, C-MAP)
if BEL(propose(研究者, C-MAP))
then arrange(研究者, 日時)

(P3)

else

Type:

することで学芸員 C への見学対応を入札する．
次サイクルの deliberate でプラン (P3) が選択され

fail

update-intentions で待機文の評価を行い，if 文の条件
: (EF propose(研究者, C-MAP)) は B から真と推論でき，:cancel が次の execute で実行される．これらの交渉

研究者への見学対応交渉

Invocation: g-add(propose(研究者, C-MAP))
Precondition:

received-cfp(見学テーマ提案AG, 研究者への対応)
fpropose(研究者, C-MAP)g

Add List:
Body:

により，見学対応のダブルブッキングは回避された．

:propose(見学テーマ提案AG, 研究者への対応)(:accept-proposal ?;if :BEL (EF propose(研究者, C-MAP))
thenf:cancel; failg
else :inform(見学テーマ提案AG,
研究者向けC-MAP 概要)
j :reject-proposal ?; fail)

以上，秘書エージェントとテーマ提案エージェントとの合理的なコミニュケーション例を示し，拡張 BDI アー
キテクチャで記述された対話プランの有効性を示した．

(P4)

Type:

6

学芸員への見学対応

Invocation: g-add(promote(学芸員, C-MAP))

(P6)

.
.
.

考察

6.1

学芸員への見学対応交渉
Invocation: g-add(propose(学芸員, C-MAP))

拡張 BDI アーキテクチャの実装

Type:

Rao らも [2] にて，彼らが提案した BDI アーキテク

Precondition:

received-cfp(見学テーマ提案AG, 学芸員への対応)
Add List: fpropose(学芸員, C-MAP)g

チャにおいてマルチエージェントシステムの相互作用のBody:

様相を直接扱う方法を課題として取り上げている．我々:propose(見学テーマ提案AG, 学芸員への対応)(:accept-proposal ?;:inform(見学テーマ提案AG, C-MAP活用方法)
j :reject-proposal ?; fail)の提案は，FIPA の基本通信行為やプロトコルを言語行為として，マルチエージェントシステムの相互作用をプラン本体に表現できるように BDI アーキテクチャを拡張したことで，その課題に答えた．現在，多重世界が容易に

図 6: 秘書エージェントの対話プラン例

記述できる CGAEA [10] を用いて，BEL 以外の様相オペ(P3)「研究者への見学対応交渉」を意図として形成する． レータが記述された BDI logic の証明と動的コミットメ
同様に，与えられた目標 (G2) から対話プラン (P4)「学 ント戦略を除いて，拡張 BDI アーキテクチャの実装を終
芸員への見学対応」，サブプラン (P5)「学芸員への見学 了している．また，5 章の研究所見学案内システムを試作対応調整」，サブプラン (P6)「学芸員への見学対応交渉」 して，拡張 BDI アーキテクチャの検証もほぼ終了している．また，待機文に該当しない返答を受けた場合，現在を順次，意図として形成する．
その後，見学テーマ提案エージェントからの見学対応の設計では副作用として蓄積され，しかも，エージェン

告知により，連想条件にマッチするプラン（プラン記述

トとの相互作用も中断してしまう．そこで，形成されたは省略）によって received-cfp(見学テーマ提案AG, 研究

意図を識別記号として，返答メッセージに添付して受け，待機文に otherwise をつけるよう検討中である．

者への対応）と received-cfp(見学テーマ提案AG, 学芸員

への対応) が，信念に追加される．

6.2

そして，プラン (P3) の前提条件が B から真と推論でき，options リストに追加され，\研究者 B に対する C-

心的状態の整合性

拡張 BDI アーキテクチャにおける心的状態の更新は，MAP 見学対応告知" に対する入札 propose を実行する． 2 章の BDI logic の心的状態の整合性公理を満足するよう対話プラン (P3) の待機文は，update-waiting-list によっ に更新する必要がある．信念管理については，TMS [11]て待ちリストに書き込まれる．
または ATMS [12] などの先行研究があるが，複数の様相
その後．見学テーマ提案エージェントからの \研究者 B オペレータを対象とした BDI logic には，そのままではへの C-MAP 見学対応入札を受理する" という外部イベン 適用できない．ただし，2 章の (A4)(A5) の意図や目標のトは待ちリスト中の対話プラン (P3) の待機文と単一化し内省公理を用いれば，信念に関する整合性のみを対象と7

チャの問題点を挙げ，（1）FIPA などの言語行為を用いてすればよいと考えられるが，今後の検討を要する．

エージェント間のコミュニケーションをプラン本体に自6.3

意図形成条件を用いた対話プランの推論然に表現できるプラン，（2）プランに，将来実行するという未来指向的意図の形成条件の追加，（3）エージェントの

我々は，人間は合理的エージェントの一員と捉えてい置かれた状況や心的状態に応じて，blind ，single-mind ，るため，人間とのコミュニケーションを行うには，柔軟なopen-mind などのコミットメント戦略を動的に選択でき

自然言語に対応できる対話システムを各エージェント内る意図の持続機能，などの拡張を提案した．そして，拡に実現する必要がある [13]．その為，他のエージェント

張 BDI アーキテクチャの有効性を応用事例で示した．今からの言語行為のプラン推論を行う必要がある．本稿で後の課題としては，コミットメント戦略の決定メカニズの事例で提示したように，まず，典型的なプロトコルをム，心的状態の信念管理，プロトタイプの構築・評価，プ

種々のアプリケーションから集積し，プランとして登録

ラン推論，および，他のエージェントとの協調，妥協，拒することから始める．次に，これらの多くのプランの状
況分析を信念として構築しプラン推論の足掛かりとする．

否などに関する言語行為の選択などが挙げられる．

また，我々が提案した未来指向的意図の形成条件は，対話プラン解釈条件に該当すると考えられる．たとえば，秘参考文献書エージェントが旅行サービスを提供するとき，利用者[1] Michael E. Bratman. Intention, Plans, and Practical
Reason. Harvard University Press, 1987. (角脇俊介, 高います』「中津さんが出張します」『そうですか』「東京で橋久一郎 (訳), 意図と行為 |合理性, 計画, 実践的推論, 産業図書, 1994).
ホテルを探しているんだけど」『わかりました』...「新幹[2] Munindar P. Singh, Anand S. Rao, and Michael P.
線の切符も取って欲しいのだけれど」『わかりました』な
George . Formal Methods in DAI:Logic-Based Repreどの対話が続く．
「ホテルを探している」，「切符を取って」sentation and Reasoning. In Multiagent Systems, pp.
331{376. The MIT Press, 1999.
などの利用者の要求が分かるまでは，ただ，文脈を蓄え，[3]Anand S. Rao and Michael P. George . Modeling Ratioプランが決まってから，それまでの文脈を利用すること
nal Agents within a BDI-Architecture. In Proc. of Interになる．このシステムでは意図形成条件にて，文脈を利
national Conference on Principles of Knowlegde Repre用者の発話を毎回チェックし，利用者の要求が理解できる
sentation and Reasoning, pp. 473{484, 1991.
[4] E. Allen Emerson. Temporal and Modal Logic. In Handかどうかのプログラムを実行する．そして，利用者要求
book of Theoretical Computer Science, Vol. B, pp. 997{が理解できればその要求に対するプランを意図として形1072. The MIT Press, 1990.
成する．現在，このシステムを構築中である．
[5] Anand S. Rao and Michael P. George . Decision Procedures for BDI Logics. Journal of Logic and Computation, Vol. 8, No. 3, pp. 292{343, 1998.
6.4
動的コミットメント戦略を用いた協調[6] E. Allen Emerson and J. Srinivasan. Branching Time
Temporal Logic. In J.W. de Bakker, W.P. de Roever,
動的なコミットメント戦略を使用することで，他の合and G. Rozenberg, editors, Linear Time, Branching
理的エージェントと状況に依存した協調戦略の動的な選Time and Partial Order in Logics and Models for Con択に使用できるものと考えられる．たとえば，blind 戦略
currency, pp. 123{172. Springer-Verlag, 1989.
[7] http://www. pa.org.
はどのような状況でも共同目標の達成を目指して協力す[8] 高田司郎, 五十嵐新女, 新出尚之, 榎本美香, 間瀬健二, 中る，single-mind 戦略は共同目標が実現可能だと信じてい津良平. マルチエージェント環境において意図的に言語行る状況では協力する，open-mind 戦略は共同目標を信念
為を遂行する合理的エージェントの基本設計. SAA2000:などに基づいて撤回するまでは協力する，などの協調戦
ソフトウェアエージェントとその応用ワークショップ, pp.
125{132, 2000.
略を，共同目標単位に動的に選択することができる．こ[9] Reid G. Smith. The Contract Net Protocol: High-Levelの動的戦略を用いると，他のエージェントとの協調，妥Communication and Control in a Distributed Problem
協，拒否などに関する言語行為の選択に利用できるもの
Solver. IEEE Trans. on Computers, Vol. 29, No. 12, pp.
1104{1113, 1980.
と考えられる．実現方式は今後の課題である．
[10] http://www.aist.go.jp/ETL/etl/captain/gaea/.
[11] Jon Doyle. A Truth Maintenance System. Arti cial
7 まとめIntelligence, Vol. 12, pp. 231{272, 1979.
[12] Johan de Kleer. An Assumption-based TMS. Arti cial
本稿は，合理的エージェントの実現に Bratman [1] のIntelligence, Vol. 28, pp. 127{162, 1986.
意図の理論を応用して Rao と George [3, 2] が提案し [13] 高田司郎, 五十嵐新女, 中津良平. インターネット上における自然言語対話システムの分散処理について. 信学技報
た BDI アーキテクチャを用いる場合，エージェント間のNLC2000-9, pp. 63{70, 2000.
コミュニケーションの実現方式に関する BDI アーキテクとエージェントは「おはようございます」『おはようござ8