2024年6月7日发(作者:)

维普资讯

多Agent系统中agents间的一种协商模式 

黄健强龙敏敏 白英彩 

(上海交通大学金桥网络工程中心上海200030) 

摘要 多a目嘲i系统中的一个重要问题是如何解决 b问的通信和相互协怍,以便遗到信息获取和协同工作的目的。本文在 

介绍了几种常见的agem结构后,对IIu批h——诎er系统采取何种协商模式 平衡负载进行了分析,并路出了实现这种协商方式的算法。 

关键词 多 系统协商模式 负载平衡协同工怍 

ANEGOTIATION STYLEAMONGAGENTSIN^缸JITI—AGE^iT SYSI1 

Fluaug Jianc ̄g Long Mir ̄dn Bai Yingc ̄d 

(G 6 Fz,alm ̄g C ̄ter, 一 9f一:。 gOnlrersiry.Shattghal 200030) 

Al ̄rset Anin 0rlaII【p ̄blem ̄ti=Sin a【ⅡId 一agent Sy ̄13is howto ̄omummieate and ea3c ̄ratewith 

出r

Inthefirst place 0fthis 

paper we introduce three c∞帅n types 0f agents and their architecture reslx ̄vdy In oilJet to]mlar ̄e load

which mamh maker 

should he cb0sen has been amlyzed

In the end,an al ̄6thm is presented for the impI衄 岫 oI1 0f this珊 

svyle 

砒 8 k 

Keywotds Multi—agent svs m Negotiation style Balanceload Cooperate 

‘Natehrnaker/Yeno ̄一Pages 

1前言 

型(图3)服务者在matctmmker 

上广告(adveItise)其具有的能力 

1.1 agent类型 

在一个开放的多A nt(Multi—A nt)系统中,设 

计者面对的一个基本问题便是连接问题,即如何从其 

cllll1aker型 

(capabilities),由请求者进行查 

图3 mat

询,然后与感兴趣的服务者直接 

联系。 

agem工作方式 

它agent处得到信息及帮助。在这个过程中有二类信 

息,preference:是关于哪一种类型的信息,不论是以形 

这三种agent类型各有优缺点,下面,我们将分析 

它们的一些特性。 

式或其它特征,对请求者(requester)有用的知识;capa. 

bility:是关于什么类型的请求可以从服务者(provider) 

处得到请求的知识。从私密性的角度来看,preference 

是信息从H s 流向provider,而capability则正好相 

反。在解决连接问题上,对私密性的不同处理可以导 

致9种agent模型,其中比较常见的是以下3种: 

・Blackboard型(图1) 

求。它保护provider的私密性。 

一・tl\ -・一 / 3 L 

1.2效率分析 

设一个requester请求一个服务的总耗时为r,则它 

应该包括:provider实施服务的时问D,请求者等待m. 

rider响应的时间O。其中D又可分为:(1)requester、 

agent、provider之间规划、调度的时间s;(2),agent问通 

讯时问c;(3)provider提供服务的时间T,即: 

r=D+Q D=T+S+C 

其中Q是请求周期P及pI’ d口数目D的函数。可以 

用一个队列网络模型来描述选样的系统。当请求产生 

的速度大于系统的吞吐量,即P<D/N时,系统处于饱 

将请求放到黑板 

上,providers则自己来查看黑板是否有可以处理的请 

耐 

图2代理型agent 

和状态,r会无限制地增长;若P≥D/N,根据排队理论, 

每个请求地平均等待时间可表示为: 

D 

1一 PN 

图1黑板型agent 

工作方式 

工作方式 

・Broker型(图2) 同时提供唧鹤ter和provider 

的私密性,broker既理解preference,也理解capability,并 

在其中适当地路由。 

这个结果依赖于请求被均匀地分配给providers,否则r 

黄健强.博士生.主研领域:智能代理、同培安全。 

l4・ 

维普资讯

将会变大。因此,我们可以得出这样的结论:由于bro— 

中Pi={Pl adv( ,P,C)},i:1,K,n; 

c为系统中所有capabilities的总和,c:C Y Y 

^YC ,C 为agent a 具有的capabilities集合,i=1,K, 

n;C=C YC 

Y^YC^ ,C 

. 

ker在I es缸和provider中起路由作用,它可以做一 

些负载平衡工作,所以,broker系统能够提供比match. 

makel"系统更好的响应时间。但是,broker结构的系统 

有一个致命缺点,星型结构使broker成为瓶颈,当re. 

quester、provider及broker的数量增长时,为确保负载平 

为第j个pm ̄ider向 

.,

agent 广告的所有capabilities集合,其中_i=1,K, , 

哦=lP.1; 

衡而付出的计算代价将会迅速增大。 

为此,我们提出了一种在matchmaker模式下,用较 

小的代价实现负载平衡的方法——ageI1t协商模式 

令c(i,j,k)为向量C 中的第k个元素,则c(i,J, 

k)C-C,c(i,j,k)=tC-{ ,0{YN表示 中第j个provider 

P.在某时刻可以同时提供t个 中编号为k的capa- 

2 matdimaker协商模式 

2.1协商模式的结构及有关定义 

agent间的协商意即在一个Multi—Agent环境中, 

各agent通过相互表达意向、意图,或进行讨论的方式, 

bility服务,当t= 时表示关系 a (i,j,k)成立。 

定义S.... 为provider PJ在某时刻对于al中编号为 

k的eapabili ̄的状态 则有: 

f Busy adv(i,j,k)^c(i,j,k) 

对各个agent的行为、动作作出规范、协调,以达到某个 

日标或共同完成某个任务或得出表决结果。 

根据不同的方法,agent间的协商模式可以分为动 

Si k:{ 

【Idle c(i

k)>0 

, ,

:oV adv(i,j,k) 

记S 为ai在某时刻对于编号为k的capability的状 

态,则有: 

IPI 

态、静态、集中、分布等多种形式,我们采取了动态集中 

式的结构,它需要有一个中央仲裁机构mediator,负责 

管理全局capability库、接受agents发来的协商请求、向 

Bray ∑c(i,J,k)=0V(v c(i,J,DEC 

l=1 

所有能够满足此请求的agent发出协商要求、接收 

agents的协商答复、并最终对发出协商请求的agent给 

予回答。由此可以看出,整个多agent协商体系结构实 

际上是一个2级的agent分层结构(见图4)。上面一层 

是协调层,负责管理agent之问的协商,下面一层由各 

个独立的agent组成。 

adv(i,j,k),j:1KIPiI)或 

V C-Pi Si1k=Busy,j=1KIPiI 

IPiI 

Idle ∑c(i,J,k)>o或 

J=1 

j PJC-Pi S_lk=Idle,j=1KIPiI 

有了以上定义,我们便可以进一步设计出多agent 

间的坼商机制了。 

2.2协商机制 

在一个Multi一姆Il环境中,每个a目∞t仍然具有 

独立性与自治性,因此,协商机制应有这样几个特征: 

图4 一Age.t系统协商模型结构圈 

知道系统中所有的agents,以便能够找到它们; 

为了定义agents之问的交互作用,可以将协商过 

程分解为合作与协调两个部分。合作是指将给定问题 

进行分解,由多个agent同步或异步处理问题的一部 

・了解这些agents的c印abmdes; 

・知道这些agents的状态。 

在实际中,我们让每个agent维护一张2维的cao 

pab.1ity表,行代表各个provider,列表示capabilities。因 

此,当adv(al, , )成立时,agent al的capability表中j 

分,并通过任务关联及agents问的协作关系共同完成 

特定任务;协调则是指让一个agent利用Multi—Agent 

系统中其它agents的计算能力,进行更复杂的计算、完 

成其自身无法完成的任务,或是对各个agent进行任务 

规划,避免出现重复工作,提高整体效率。 

本文主要研究agents问的协调,为此,先给出一些 

后面要用到的有关定义: 

关系adv:provider P向agent a广告自己具有某ca— 

pability c,记作adv(a,p,c)。 

行k列元素的值即为C(ai,PJ,c )。AgenI定期检查该 

表,若某个provider在cap日biⅡty k上长时问处于“忙”的 

状态,则认为该provider已an-Mvertise cap日bibty k,给 

c( , ,c )赋值 ,直至下一次provider广告自己。在 

单个agent中c(a,,pJ, )的变化应被及时反映到in ̄a- 

tot管理的全局capabibty库中。 

mediator同样维护一张cap l啼表格,只是它的 

行不代表providers,而是agents 通过维护2张表格, 

使这个机制具备了初步的负载平衡能力。 

系统中所有agents的集合A={a|,赴,K, j,n为 

系统中agent的个数lAl; 

系统中所有providers的集合P={P., ,K,Pn I,其 

(下转第59页) 

l5・ 

维普资讯

[3] .Kushmeriek.D s Weld,and R m Wrapper indueti ̄l for in ̄or— 

TIIall∞extr, ̄'tlon.In Int ̄mlafionstl Joint Conferenc ̄m, ̄tiifcM]ntelligence 

(I]CM),Nagoya,J m.1997. 

[4]s 0 帆 e,H Ga —Noli ̄,J.I ̄mlmer,K.1Id丑『1d,Y P ak啪 antIn- 

伽,J I]l一.舯 J wid呷,“Tk"rsINN ̄ 。cl:l£lI- 6m }酶er。一 

(上接第15页) 

2.3通信 

西商模型中的通信可以看成是各个agent之间的 

消息传递,它是建立在协商的对话行为基础上,也即每 

个消息携带了agent的意向(indent)、愿望(desire)、事实 

(fact)、信念(belief)等内容,通过通知(inform)、询问(in. 

quire)、要求(request)、提供(otter)等动作进行交互。 

2.4通信语言 

用于agent间的通信语言应满足7个方面的要求: 

形式上简单易读,内容主要描述通信的动作,语义上应 

当具有规范的形式,实现上的高效率及与现有软件技 

术很好地契合,支持多种网络技术,可用于分布、异构、 

动态的环境中,支持agents间可靠、安全地通讯。目 

前,比较常用的主要是斯坦福大学提出的KOML语言 

及用于该语言的KIF格式。 

2.5协商过程 

根据上面介绍的机制,我们给出协商的过程: 

(1)requester向某agent 提出请求r; 

(2) 将r转换成对某个capabil'竹c 的请求,若 

adv(i,j,k),转(4); 

(3) 根据自己的推导规则和推理模式,从自己 

的知识库中寻找可以满足c 的provider集合 ,若 

不为空,表明有空阑的provider,若Pr=NULL,将 返 

回给ll ̄ucstcr,结束。 

(j=lto I I) 

IfS =Idlethen 

P,=PT Y{Rj; 

if PT≠I ̄'LLthen 

return PT; 

(4) 无法提供服务,则向mediator提出西商请 

求; 

(5)mediator收到西商请求后,在中央capabjli 库 

中寻找有能力的agent集合 : 

九= 

(i=1 IAI) - 

IfS‘.1=Idlethen 

^r:^rY; ÷; 

(6)若At不为空,则向 中各agent发出西商要 

求,等待各agent的回答;若A =NUI|I_,给请求协商的 

agent返回协商失败消息; 

(7)收到西商要求的agent根据类似第二步的方 

g朗e【H_s[n ̄om ̄on Ⅷ懈”,In Pr ̄eedings ofTenth Annlv ̄Me 

tllellfon ̄ian Pmce ̄ng Soeie ̄of J日P啪.T0ky0,J平叽,7~坶.1994 

5 Ku ̄nenck.N.Wrapper Indueti ̄l for l 肌 【耵F ̄traetien Ph D DiB一 

9e ̄ian.IJniv. W r。g ,1997 

式,检查自己的状态,并将结果返回给mediator; 

(8)medla[or收到agent的西商回答后,判断是否 

所有均“忙”,若是,则返回西商失败消息;否则,返回有 

能力的各个provider集合; 

(9)西商请求者 收到mediator的回答后或者返 

回协商请求失败消息,或者返回协商成功的结果给re. 

quester,从而完成整个的西商过程。 

结论 

此协商模型通过一个简单的方法在一定程度上实 

现了multi—agent系统中负载的动态平衡,但它的效率 

还取决于其它因素,如provider、c印abmty的数量,以及 

具体的实现方法等。 

我们用上面介绍的算法实现了一个agents间协商 

的模型,取得了比较满意的结果。 

参考文献 

l1 J S ㈣,ke Deck ,^jI即d唧P日删,蛐ke删Ⅱi衄嘲Ⅸ曲ibⅡbBd 

Intelligent情№.1n:lEEE E ,July,1996 

l2J Jeff ̄M- .Ka0s:ArI叩en情n?aehitec'a' ̄e s pP。1i g R一, 

Itl旧叩 m r舯 E er bdi .In:h ://bi.q瑚.ucaIg町.c丘,KAw/ 

K^ 门md自}l KAW.h 

[3]Keith k , B s NikeWilliam ̄n 删e—A for 

Inten ̄Itl:ht :// .【I .ed L pBP哪.8hn 

l4 Keith Deck町, B cB】a and ke Ⅱ an鲫 h and ok 一 

ing In} 曲d_叫 the seomd lr他m llI & 删珊 m Nulti—A嗣t 

s ∞B(10-^s一96),1996 

5]Tim Finin, Weber DR.w ̄r s ⅢI帅 the KQNL.Itl:The DARPA 

Kn 咄 81 ̄'ingIm ̄aiveK,aero ̄Interneesw ng . 

÷・基金项目论文 ・人工智能与识别 ; 

t・学位论文 ・算法 : 

I・软件技术与研究 ・信息交流 ! 

{・数据库技术 ・产品介绍 ; 

十☆欢迎广大作者踊跃投稿 ÷ 

j☆欢迎广大读者订阅 ! 

÷ 本刊邮发代号:4—379 本刊编辑部;