Location : Home > Methods > Simulation > Multi Agent System
Title : Definition & Structures
Toolbox Logo

エージェントの定義と構造について

1.「エージェント」とは何か

「エージェント」とは

 「エージェント」とは環境の状態を知覚し、行動を行うことによって環境に影響を与えることのできる自律的主体のことである。

 すなわち「(外部)環境を知覚できること」が必要で、その知覚した内容に基づき「行動を選択することができること」により、その結果として「環境に影響を与えることができること」を要件とする。一見すると第3の要件は不要に思えるが、これがないと常に外部環境は所与の条件となってしまい、システム全体として内発的な創造性を生まない。これが無ければ、何かのインプットに対し何らかのアウトプットを返すという、ごく普通のシステムと何ら変わりがないことになる。
 環境と相互作用する自律的主体と言いかえることができよう。

「環境」の性質

 エージェントを取り巻く環境はその性質によっていくつかの分類がなされる。

[ アクセス可能性 ]

 エージェントが環境の最新の状態を、完全かつ正確に把握できるとき、アクセス可能(accessible)であると言う。そうでない場合をアクセス不可能(inaccessible)と言う。一般には環境の状態の把握については不正確であったりタイムラグが生じたりすることがあるので、アクセス不可能であることが多い。

[ 決定性 ]

 ある環境においてエージェントが採った行動により受ける環境への影響が一意に定まる場合を決定論的(deterministic)と言い、そうでない場合、例えば確率論的に定まる場合は非決定論的(non-deterministic)と言う。

[ エピソード性 ]

 エージェントの経験が、知覚と行動の列からなるエピソード(episode)に分割できることをエピソード的(episodic)であると言う。そうでない場合を非エピソード的(non-episodic)と言う。例えば将棋の対局では、過去の対戦とは独立に現在の盤面上の振る舞いを考えればよいので1回の対戦を1つにエピソードとして認識することができる。

[ 動性 ]

 エージェントの行動によってのみ環境が変化する場合を静的(static)であると言い、エージェントの行動以外の要因によっても環境が変化する場合を動的(dynamic)であると言う。

[ 連続性 ]

 エージェントの知覚と行動の施行が有限個に区別できる場合を離散的(discrete)であると言い、連続的(continuous)であると言う。

2.エージェントの構造

 エージェントの構造は、エージェントを規定する3つの要件を具体的な記述することによって定まる。
 ここで、以下のように記号を定義しておく。

E={e1,e2,…}:環境の状態の集合
A={a1,a2,…}:エージェントの採る行動の集合

エージェントの知覚

 「エージェントは環境を知覚する」とは言っても、エージェントが環境全て−言わば思考対象となる世界全体−を見渡して認識しているという仮定は現実的ではない。(もちろん「完全情報」としてそのように仮定することも不可能ではない。) 一般にはエージェントが環境を認識する能力や、置かれた局所的な環境の状態によって、認識を制限される場合が考えられる。したがってエージェントから認識可能な環境の集合P={p1,p2,…}を考え、これを入力として行動を定めることになる。P≠Eとしたということは「アクセス不可能」と見なしたことを意味する。一方、集合としてP=Eであるならば、「アクセス可能」、すなわち環境を完全に把握していることを意味する。

知覚関数 Percept : E → P

[Perceptual aliasing]
 実際には異なる2つの環境e1,e2を、エージェントの知覚能力の限界などによって、percept(e1) = percept(e2)と認識してしまう場合がある。これを Perceptual aliasing と言う。

エージェントの行動

 エージェントは環境に対して行動を選択する。したがって、エージェントの行動関数を Act として、最も単純には

   Act : E → A

と書ける。しかし前段で触れたようにエージェントの知覚の限界を考慮すれば、行動関数の定義域はPに限定されるから

   Act : P → A

となる。ただし上式は、ある瞬間の環境に対するエージェントによる知覚の状態でのみ行動が決定されることを意味する。一般には過去の環境の状態(をエージェントが知覚した状態)の履歴からエージェントの行動が決定される。そこで、集合Sに対し、その要素 si の列(series)の集合をS*で表わすこととすると、

   行動関数 Act : P* → A

となる。

 上の定式化では、エージェントが行動Aを採択するにあたり、過去の環境(を知覚した状態)の履歴を参照するとしているが、履歴情報を全て確保しておくのは現実的ではない。そこで、通常は内部状態を定義し、環境の知覚によって内部状態I={i1,i2,…}を書換え、それによって履歴そのものではなく、履歴の結果として行動決定の材料とする。

   内部状態関数 Inner : I×P → I

環境への影響

 エージェントの行動により環境も影響を受けるとしているので、集合Sに対しそのべき集合をP(S)で表わすこととして、

   環境関数 Enviorn : E*×A → P(E)

と書ける。ただし上式は過去の環境の状態とエージェントの行動によってのみ次の瞬間の環境の状態が定まっているので、環境関数が決定的であることを意味する。

参考文献

  • 『マルチエージェントシステムの基礎と応用』(木内東・山本雅人・川村秀憲;コロナ社)

Toolbox Logo
Update : 2002/11/10