基于DFL的多Agent系统的自动推理模型 |
| 作者:童海峰,张成年 文章来源:网络 点击数: 更新时间:2006-4-20 |
|
【摘 要】多Agent系统所面临的推理环境是动态的、不确定的,在推理过程中可以获得大量经验知识作为启发式信息来引导进化。文章采用DFL描述了多Agent的推理过程,建立了多Agent的自动推理模型。 【关键词】动态模糊逻辑;推理;多Agent 【中图分类号】 TP181 【文献标识码】 A 【文章编号】 1008-1151(2006)05-0075-02
一、引言 多Agent系统(MAS)是近年来人们普遍关心的问题之一,其根本原因是多Agent系统实际上可以看作是在某个环境中的Agent集合,并且Agent之间、Agent与环境之间可以进行交互,通过彼此间的行为推理达到完成某个任务的目的。由此可以看出,在多Agent系统中,每个Agent必须具备推理能力,才能实现目标。那么Agent怎样实现这种功能呢?Agent是一个基于软件或硬件的计算机系统,它具有自治性、反应性、社会性和协作性等特性。它是一个智能的实体,可以控制自己的内部状态,自动感知其所处的环境,并与其他Agent交流合作,从而完成推理任务。 什么是Agent的推理呢?Agent的推理就是Agent依据一定的规则从已有的事实推出结论的过程,或Agent与Agent之间利用相互之间的信息进行问题求解的过程。文献[4]对各类自动推理技术做了明确的比较,指出:传统的推理技术是以经典的谓词逻辑为基础的、精确的、严格的推理技术,通常被认为是“绝对正确的推理”;现代自动推理技术是以常识知识为基础进行逻辑推理,它考虑到了在某些知识不完全的情况下,所产生的信息的不准确性、随机性、模糊性及动态性等问题。在多Agent系统中,经常要面临环境的动态变化产生的动态模糊性,鉴于这些客观问题,本文引入动态模糊逻辑(DFL)建立一个多Agent系统自动推理模型来解决这个问题。 二、相关概念描述 (一)多Agent系统 多Agent系统可以表示成:MAS=。其中Agents表示一组Agent,KB表示Agent的知识库。 每个Agent的模型可以用一个五元组表示:Ag={B,D,I,P,K},其中B表示Agent的信念是Agent解决问题的依据;D表示Agent的愿望,是解决问题的动力;I表示Agent的意图,按照某种规划设定解决问题的行为或行动;P表示问题;K表示Agent的BDI对应求解问题的知识库。 对于某个Agi来说,B×D I表示:每个Agent都根据自己的信念和愿望形成自己的意图,也就是形成自己的行动规划。在这个过程中,Agi要调用知识库中的知识。在多个Agent中,单一的Agent在进行推理的过程中,往往需要了解别的Agent的信念、愿望或意图,以便达成统一的规划。所以在进行推理的过程中,要找到Agent之间更多的共同点。 多个Agent的信念组可以用(B1,B2,…,Bn)表示,可以通过矩阵运算求得最大的共同信念Bc。同理,对于多个Agent的愿望,也可以用(D1,D2,…,Dn)表示,求得最大的共同愿望Dc。利用公式Bc×Dc Ic,就可以得到新的共同的意图Ic,将新意图发送给每个Agent,然后进行问题的推理。 (二)理论工具 本文采用DFL的推理规则实现自动推理,DFL的基本概念见文献,这里介绍几个基本的DFL推理规则。 1.连接规则(Connection Rule) 其模式化为: 2.笛卡尔集乘积规则(Cartesian Sets Rule) 其模式为: 3.投影规则(Rule of projection) 其模式为: 式中的变量X,Y各自的域为U,V,Proj X*R表示DF关系R在U上的投影,定义: 式中的uR(u,υ)为DF关系R的隶属函数。 4.合成规则(Rule of Composition) 其模式为:
5.继承规则(Rule of Succession) 其模式为: 6.等价规则(Rule of Equivalence) 其模式为: 7.假言推理规则(Rule of modus ponens) 其模式为: -B表示B的补运算, 定义为: (三)基于DFL的多Agent系统自动推理模型 多Agent自动推理模型是能够在某一知识领域满足人们自主运用知识的智能系统,因此它必须具备以下几个基本组成部分: 1.知识库:其中存放了该领域的相关基础知识和基本规则; 2.基于规则的自动推理系统:它将知识库中的知识用于具体的问题,进行反复推理,得出结论; 3.临时信息库:用于Agent之间、Agent和环境之间交互过程中产生的临时信息,可以帮助推理朝有利的方向进行; 4.广播站:用于管理者Agent与各任务Agent之间的信息传递。 因此,我们可以这样描述基于DFL的多Agent系统的自动推理平台: AR= 其中,Ag表示一个agent集合,它包括两类:管理者Agent和任务Agent,前者用于下达任务、反馈信息、协议仲裁并控制这个推理过程,后者用于协作完成推理过程; KB表示系统的学科知识库,它是管理者Agent分析问题以后自动生成的,存放分析所得的基本知识和规则; In是临时信息库,用于存放在推理过程中产生的临时信息,以用于下一步的推理; B表示广播站,将管理者Agent的要求及各个Agent反馈的信息以广播的方式通知所有的Agent; DFL表示描述知识和规则的方法。 整个推理过程是由问题驱动的,过程如下:管理者Agent接收到问题后触发自动推理系统。首先由管理者Agent分析问题的条件和结论,生成相应的知识库和任务。然后将任务以提问的方式下达给各个任务Agent,任务Agent接收到下达的任务以后,搜索自己的知识,对规则的前提条件逐条匹配,以决定拒绝还是采用该规则。匹配得越多,其评价值就越大,采用的可能性就越高。匹配之后,任务Agent将自己的完成结果反馈给管理者Agent。管理者Agent将此结果放入临时信息库,并与结论比较,若一致,表示任务已解决,推理结束;否则进行第二次推理。 简言之,整个系统运行过程即是分析任务、生成知识库、反复推理的过程。 其中推理过程中单个Agent进行规则匹配的步骤可以用下图表示:
三、举例(三个聪明人问题) 有一个国王要验证三个人的智力,就在他们每个人的头上画一个点,设每个人只能看到别人头上点的颜色,但是看不到自己头上点的颜色,并告诉他们至少有一个人头上的点是白色的。国王第一次问:谁知道自己头上的点有无颜色,三人答不知道。第二次问谁知道自己头上的点有无颜色,三人答不知道。第三次问时,三个人都说知道了。 问:结果如何,如何推理,如何形式化?(假定三个人的智力是一样的) 解:这个例子可由多Agent系统来构造。这三个人可以用AgentA、AgentB、AgentC来表示,国王用Agent0表示,“ ”表示其动态模糊度。 Agent0接收到任务后,分析得到有2条知识:至少有一个人头上的点是白色的;自己可以看到其余两人头上的点的颜色,但看不到自己的;要完成的任务:谁知道自己头上的点有无颜色。根据这个分析,生成系统知识库KB,存放刚才的知识和任务。 然后Agent0驱动自动推理系统,执行提问动作,每个用户得到问题后,进行推理,然后给予回答。每次回答的结果存放到临时信息库中。 Agent0第一次执行提问动作以后,得到回答(N,N,N),它将此信息存入临时信息库,并作为新的前提条件广播给各个任务agent。由此新信息,各个任务agent可以推出另外两个任务agent所看到的内容: AgentA看到: (B andC),或者 Band C,或者 Cand B; AgentB看到: (A andC),或者 Aand C,或者 Cand A; AgentC看到: (A andB),或者 Aand B,或者 Band A; Agent0执行第二次提问动作,得到回答(N,N,N),它将此信息存入临时信息库,并作为新的前提条件广播给各个任务agent。由此信息,各个任务agent结合自己刚才推出的结论,进行反向推理: AgentA:如果 A,则B和C可以推出 B 和 C。而B和C回答“No”,说明 A; AgentB和AgentC依此类推,有 B和 C。 所以Agent0执行第三次提问动作时,AgentA、AgentB、AgentC都知道了答案:每个人头上的点都是白色的。 四、结论 本文采用DFL建立了多Agent系统中自动推理模型。较之传统的自动推理技术,本文考虑了信息的动态变化和模糊性以及由此带来的对推理的不确定影响,采用DFL推理规则,很好地解决了这些问题。
【参考文献】 [1]张维明.智能协作信息技术[M].北京:电子工业出版社,2002. [2]黄改娟.自动推理技术发展的回顾与展望[J].微机发展,2003,(13). [3]李凡长,朱维华.动态模糊逻辑及其应用[M].昆明:云南科技出版社,1997. [4]蒋建文,高锷,韩江洪,林勇.一种多Agent系统框架的实现机制[J].沈阳化工学院学报,2001,15(4). [5]孙壮志,尹国峰,王海竹.Multi-Agent系统中Agent通信可靠性的研究[J].计算机工程与应用,2003,(1). |
| 论文录入:华东论文网 责任编辑:华东论文网 |
|
上一篇论文: 没有了
下一篇论文: 没有了 |
| 【字体:小 大】【发表评论】【告诉好友】【打印此文】【关闭窗口】 |