收藏 分享(赏)

人工智能原理7.ppt

上传人:kpmy5893 文档编号:9130677 上传时间:2019-07-25 格式:PPT 页数:67 大小:313KB
下载 相关 举报
人工智能原理7.ppt_第1页
第1页 / 共67页
人工智能原理7.ppt_第2页
第2页 / 共67页
人工智能原理7.ppt_第3页
第3页 / 共67页
人工智能原理7.ppt_第4页
第4页 / 共67页
人工智能原理7.ppt_第5页
第5页 / 共67页
点击查看更多>>
资源描述

1、Agent和多Agent系统,什么是Agent,Agent的原意是“代理”,即一个人代表另一个人或(另)一个组织去完成某件(些)事情。在计算机领域,Agent可认为是被授权的“个人软件助理(PSA)”,是一种在分布式系统或协作系统中能持续自主地发挥作用的计算实体,常简称为智能体。在计算机领域,Agent是指分布式系统或协作系统中能持续自主发挥作用的计算实体,它具有自主性,交互性,反应性和主动性等特征,简史,Agent的概念出现于 20世纪70年代的人工智(AI)中,80年代后期才成长起来。由于分布并行处理技术,面向对象技术,多媒体技术,计算机网络技术,特别是Internet和WWW技术的发展,

2、Agent不仅成为AI和计算机领域最活跃的研究内容之一,而且引起了科学界,教育界,工业界甚至娱乐界的广泛关注,DAI,DPS,MAS,DAI(分布式人工智能)是人工智能研究领域的一个重要分支。DAI系统由多个Agent组成,每个Agent又是一个半自治系统,这些Agent之间以及Agent与环境之间都是并发的,需要进行交互。DAI研究工作大致分为分布式问题求解(DPS)和多Agent系统(MAS)两个方面。 DPS主要研究如何分解某特定问题,并将其分配到一组拥有分布知识并相互协作的结点上; MAS则是指一些自主的Agent通过协作共同完成某些任务的计算系统,它侧重研究如何协调一组Agent的行

3、为,即研究这组Agent为了联合采取行动或求解问题时,如何协调各自的知识,目标,策略和计划等。,MAS的研究重点,MAS主要研究:多Agent理论,通信和交互技术,体系结构和组织形式,面向Agent的程序设计方法和语言,多Agent间的协调,协作和协商等。,Agent的特征,1)自主性 Agent具有属于其自身的计算资源和局部与自身行为控制的机制,能在无外界直接操纵的情况下,根据其内部状态和感知到的(外部)环境信息,来决定控制自身的行为。,交互性,反应性,主动性,2)交互性 能与其他Agent进行多种形式的交互,能有效地与其他Agent协同工作。 3)反应性 能感知所处的环境,并对相关事件作出

4、适时反应。 4)主动性 能遵循承诺采取主动行动,表现出面向目标的行为。,反应式Agent,不少学者称具有上述特征1)3)的计算实体为反应式Agent。 有些学者对Agent赋予了更多拟人化的要求,例如DAI领域的学者要求Agent具有信念,愿望,意图等认知特性;CSCW领域的学者则要求Agent具有更加友好,灵活的人机交互方式。,Wooldrige给出的弱定义,1)自主能力(autonomy)。Agent可以在没有人或其他Agent直接干预的情况下动作,而且对自己的行为和内部状态有某种控制能力。 2)社交能力(sociability)。Agent和其他Agent通过某种Agent语言进行交互。

5、 3)反应能力(reactivity)。Agent观察其环境,并在一定时间内作出反应,以改变该环境。 4)预动能力(pre-activeness)。Agent不仅能够简单地对环境作出反应,而且能够通过接受某些启示信息,体现出面向目标的行为。,Agent的强定义,一些学者(特别是来自AI界的)认为,Agent不仅应该具有以上定义的特征,而且还应具有一些通常人类才具有的概念,如:知识,目的,信念,义务等。 Shoham认为,Agent可以看做是由多种心智状态,如信念,能力,选择和承诺组成的一种实体。 另外,Agent还具有其他一些特性,如:1)移动性(mobility),指Agent可以在信息网络

6、上移动。2)真实性(veracity),假设Agent不传输错误信息。3)仁慈性(benevolence)。假设Agent没有冲突的目标,因此每个 Agent通常有求必应。4)合理性 (rationality)。假设Agent总是为实现目标而努力,面不阻碍目标的获得,至少在它的信念中应该如此。,Agent与面向对象方法中对象(Object)之间的区别,Agent有自己的目标以及面向目标的行为,能遵循承诺采取主动行为,而且具有自学习,自适应的能力。而对象是被动的实体,其行为是由消息去调用对应的方法,完成方法所规定的工作。对象无法表现出面向目标的动作和行为。 Agent是一个自主的实体,能够在没有

7、外界直接操纵的情况下,根据自身所处的环境,内部的状态和知识,以及外部事件来决定和控制自身的行为。而对象是受控的,没有信息执行的控制机构,对接收到的信息只是机械地执行信息所规定的动作,无法理解其含义。 对象间是以消息传递方式通信的,因此需要明确对方的存在。而Agent间的通信既可以了解对方,直接通信,又可以不了解对方,间接通信。Agent和对象是两个不同的概念,有明显的区别。可以认为,Agent是对象的发展,面向Agent方法是面向对象方法的发展。,描述Agent应用特性的框架,Nwana定义了Agent的三层概念结构:定义层,组织层和合作层。这个概念结构提供了一种描述Agent应用特性的框架。

8、定义层 在这一层中,Agent被描述为一个自治的理性实体,包括Agent的推理学习机制,目标,资源,技能等。组织层 定义了Agent与其他Agent的关系,包括Agent在Agent团体中所扮演的角色,以及Agent之间的相互感知等。合作层 指明了Agent的社会能力,例如它的合作和协商技术。,基于Agent的系统,Agent技术已融入主流计算机的各个领域,产生了各种基于Agent的系统。如: 合作Agent系统 是一种典型的,大规模,粗粒度的Agent系统,强调Agent的自治性和Agent间的相互操作性,在一个开放的多Agent环境中完成Agent所有者的任务。Agent之间可以达成一种可

9、相互接受的一致性。,界面Agent系统,提供一种主动性的协助,以支持使用复杂应用系统的用户。 界面Agent强调自治性和学习性,以完成所有者的任务。界面Agent最主要的性质是它是一个个人助理,它能与同一工作环境中的用户进行合作。,移动Agent系统,移动Agent系统 是一种软件程序,能在广域网上漫游,代表其所有者的利益完成任务,履行完赋予它的职责后回到原先的位置。,信息Agent系统,信息Agent系统 是一个具有主动性,适应性和互操作性的网上信息管理者,完成在多个分布的资源中管理,操作,收集信息的功能。,反应Agent系统,反应Agent系统 Agent不拥有关于其环境的内部符号模型,相

10、反,以刺激反应的方式对环境作出反应,来表示环境的状态。,异构Agent系统,混合Agent系统,异构Agent系统 通过集成已有的,不同类别的Agent系统组成。混合Agent系统 它是由两种以上Agent体系联合构成。,多Agent理论,多Agent理论主要包括Agent的认识模型和有关理论,即研究如何用符号表示复杂现实世界中的Agent,以及Agent如何根据各种信息对环境进行处理和决策。 这种研究利用逻辑学作为工具,先精确定义关于Agent的各种概念,如信念,愿望,意图,协商,合作,承诺等,然后对有关推理问题进行研究。,BDI理论,Bratman的BDI理论被公认为是MAS的理论基础之一

11、。他从哲学上对人的行为意图进行了深入的研究。认为只有保持信念,愿望和意图的理性平衡才能有效地解决问题。他认为在开放世界中,理性Agent的行为不能直接由信念与愿望以及由这两者组成的规划所驱动,在愿望与规划之间应有一个基于信念的意图存在。一个理性Agent的行为是受制于意图的。Agent不会毫无理由地随意改变自己的意图,也不会坚持不合实际的意图。 有关BDI的形式化工作的核心是描述Agent的性质和行为。学者们使用线性或分支时态结构的一阶逻辑来建立Belief,Desire,Intention,Goal,Action,Commitment 以及Plan的模型等。,Agent 的适应性,Agent

12、的适应性是指Agent的行为能够适应求解问题的变化,系统资源的变化和可用外部信息的变化,也即Agent能够适应问题环境变化的要求。 对适应性问题的研究主要有:增强单个Agent的适应能力,动态自组织与重构,自学习等。,面向Agent的程序设计,Shoham参考面向对象程序设计(OOP)思想,提出了面向Agent的程序设计框架(AOP)。在AOP中,Agent的状态称为Mental State,它由信念,承诺,能力,行为等组成。他还定义了Agent之间的通信原语,并实现了一种基于AOP思想的Agent程序设计语言。,合同网结构框架,合同网结构(Contract Net)框架引入了市场中的招标投标

13、中标机制,这种组织结构是多层次的,Agent既是下层Agent的管理者,也是上层Agent的承包人,控制则基于Agent之间的合同关系。合同网只适合于解决能分解为一些独立子问题的一类问题,且这些子问题与承包人Agent必须匹配。合同网首先提出了“协商”通信协议,实现了问题求解组织结构的动态结构,是DAI中最具代表的三种模型(合同网,DVMT和Actor)之一。Parunak在合同网中引入熟人表,缩小了通信范围,但也降低了灵活性。,Agent的协调,协作与协商,多Agent协调,协作与协商问题是DAI研究的核心问题之一。 多Agent协调(Multiagent Coordination)是指具有

14、不同目标的多个Agent对其目标,资源等进行合理安排,以协调各自行为,最大限度地实现各自的目标。,多Agent协作,多Agent协商,多Agent协作(Multiagent Collaboration)是指多个Agent通过协调各自行为,合作完成共同目标。 多Agent协商(Multiagent Negotiation)是指多个Agent借助通信,交换各自目标,直到多Agent的目标一致或不能达成协议。,基于对策论的协商模型,在人类社会中,人与人的交互无处不在,对策论被公认为是研究人类社会交互的最佳数学工具,将这一工具应用于多Agent的协商是很自然的。Rosenschein最早提出了基于对策

15、论的协商模型,他选用的对策论工具是Nash合作与非合作对策。该协商模型以下面三个假设为基础:1)Agent追求自己的最大效用;2)效用矩阵是公共知识;3)Agent是理性的,即Agent满足下面三个理性假设之一:i)最小理性假设,即假设对方的行为是随机的; ii)分离理性假设,即假设对方也是理性的; iii)唯一理性假设,即假设对方行为是已知的。,基于对策论的协商机制研究的主要问题,1)如何处理冲突; 2)如何处理不完全信息; 3)如何考虑历史信息和新信息等。,评价协商机制的几点考虑,1)对称性 在协商机制中Agent之间是对等的,不存 在任何特殊的Agent; 2) 效率性 Agent通过协

16、商达成的方案应具有较高的效率,如满足Pareto最优,即所得的解不会与其他解相冲突; 3) 稳定性 协商策略满足稳定性,如满足严格的Nash平稳,即任何Agent都不能通过单独改变其策略而获得利益; 4) 简单性 协商机制应具有较低通信费用和较低计算复杂性。,国内研究简况,国内一些高等院校和科研院所也在开展有关研究,例如国防科大在开展基于Agent的分布集成环境,多Agent合作模型的相关理论和方法研究;南京大学在开展面向Agent的软件工程及安全性研究;中科院计算所,山东工业大学在开展基于Agent的信息过程建军模方法及面向Agent的软件开发方法研究;清华大学,浙江大学在开展多Agent组

17、织结构在并行工程和网络管理中的应用研究;中南工业大学在开展基于耦合问题的多Agent协作模型研究;中国科技大学在开展基于多Agent的智能仿真系统研究等等。,专门的国际会议,专门研讨Agent的理论,方法,技术及有关研究成果的名为“智能Agent和多Agent的实际应用国际会议”(PAAM),1996年首次在伦敦举行,之后,每年举行一次。第一届PAAM于1996年4月在伦敦召开,会上主要研讨了以下几方面的问题:(1)Agent技术如何克服当今的商务问题?(2)我们希望看到明天研制出什么样的Agent?(3)Agent研究工作面临的机遇和挑战是什么?(4)投资Agent研究领域的实际收益是什么?

18、,第三届PAAM,1998年3月在伦敦举行了第三届PAAM,这次会议的内容为两大部分:第一部分分析,总结过去几年来有关Agent研究工作的成绩和经验,内容包括:个人助理,基于Agent的紧急反应支撑系统,智能分析环境,有关信息检索,查询和管理的Agent,以及Agent的协调等。第二部分重点讨论了以下问题:(1)系统集成异构语言和平台的交叉互操作性,与面向对象标准的集成等。(2)工具与技术基于Agent系统的设计,描述个体Agent和Agent通信的工具, Agent的重用,诊断分布式系统等。(3)分布式Agent的用户界面多形态的界面,对Agent服务的处处存取,多人/多Agent之间的协作

19、,基于Agent的界面实现等。,自1996年以来基于Agent的部分成果已在专门展示新概念技术的Synthetic Theater of War(1999)上展示。该展览会是由美国国防部高级计划署DARPA组织的,主要是面向未来战争的高新技术和产品。,Agent安全性的研究,在移动Agent系统中,Agent的运行需要分布式系统中的宿主程序为其提供执行环境。机器的所有者、宿主程序的用户、代理所代表的用户以及软件的开发者都是不同的实体,这样必然会存在安全隐患。因此,安全性问题是移动Agent系统中需要解决的最重要的问题之一。,移动Agent技术的标准,MASIF(Mobile Agent Sys

20、tem Interoperability Facilities)(1) MASIF首先规定了通用概念模型,基本涵盖了现有移动Agent系统的所有主要抽象,定义了固定Agent,移动Agent, Agent状态, Agent授权者, Agent名字, Agent系统,位置,域,代码库和通信基础等一系列概念。,(2) MASIF最大的贡献是定义了两个标准构架:MAFFinder和MAFAgentSystem,通过接口定义语言(IDL)对它们属性,操作和返回值进行了明确的规定。,MASIF定义的两个标准构架,1.MAFFinder MAFFinder构件通过提供了一个名字和地址映射关系的动态数据库,

21、实现了Agent位置和Agent系统的注册,注销和定位等操作。,2.MAFAgentSystem MAFAgentSystem定义对Agent系统的操作,包括:接受,创建,暂停,恢复等,它详细定义了方法名,参数类型,含义,数量,返回值等,这些方法提供了Agent传输的基本功能。,图1表示了一个简单的符合MASIF标准的移动Agent系统,FIPA(Foundation for Intelligent Physical Agents)FIPA目的是促进Agent技术的发展,制定国际性的规范,最大限度的使基于Agent的各种应用得以有机地结合。,FIPA规范从不同方面规定或建议了Agent在体系结

22、构,通信,移动,知识表达,管理和安全等方面的内容,对于Agent技术起到了很大的推动,其中Agent管理,ACL,Agent安全管理和Agent移动管理与移动技术关系较紧密。,(1)Agent管理制定了一个标准性框架,与FIPA相兼容的Agent在此框架下可以存在,运行和被管理。与MASIF较相似,该部分定义了标准的开放式接口和管理服务,同时也规定了Agent管理本体和Agent平台消息传输。,(2)ACL是基于语言行为理论,消息被视为行为或通信行为,它们被发送去执行某种动作。ACL定义了消息类型和对语言的描述。基于模态逻辑,通信行为被表述成叙述性表格和形式化语义。,(3)Agent安全管理指

23、出了安全危险存在于Agent管理的全过程:注册,Agent间的交互,Agent配置,Agent平台间交互,用户与Agent间的交互和Agent移动。它分析了在Agent管理中关键安全危险,并提出了在FIPA兼容的环境中如何维护Agent间的安全通信。,(4)Agent移动管理提出了在FIPA环境中支持软件Agent移动的标准框架,此框架包含了所需的最基本的技术,并参考该领域内的其他标准。它还支持非移动Agent的管理操作。,移动Agent平台之比较,将移动Agent平台分为两大类:一类是基于解释性语言的移动Agent平台;另一类是基于Java语言的移动Agent平台。相比来说,基于Java的系

24、统具有更强的功能和更大的灵活性,而且更易于CORBA实现无缝集成。下面我们将分析几个著名的移动Agent平台,从中可以得出一些启示。,1 TelescriptTelescript平台是用Telescript语言来完成的,该语言是一种用于开发大型分布式系统的面向对象的解释性语言,它有点类似于Java和C+,可以被编译成字节码运行在宿主机的虚拟机上。Telescript Agent之间的通信有两种方式:两个Agent运行在同一个空间,互相调用对方的方法;在不同的空间之间建立连接,两个Agent可以相互传递对象。尽管Telescript是一个比较成功的移动Agent平台,它的安全性,容错性,执行效率

25、都非常好,但是由于Java的迅速流行,必然导致它的失败。,2 DAgentDAgent(以前称为Agent Tcl)是美国Dartmouth大学研究的移动Agent系统。它从支持单一语言Tcl发展到目前支持多种语言:Tcl,Java,Scheme.DAgent提供一个go指令(仅适用于Tcl和Java),可以自动捕获和恢复移动Agent的完整状态,即意味着Agent可以在任意点中断执行,然后移动到其他环境中执行。DAgent服务程序的实现采用的是多线程方式,相比于多进程方式,虽然实现难度增加,但是进程间通信大大降低,提高了系统的执行效率。DAgent采用公钥系统来管理Agent对资源的访问,但

26、是可以授权访问某种资源,还可以限制使用(如:CPU使用超时)。DAgent的通信方式可采用RPC,RMI等不同的方式,而且支持异步或同步的通信模式。,3 GrasshoperGrasshoper是IKV+公司的产品。Grasshoper环境包括Agent处(Agency)和域注册器,通过专有的ORB(Grasshoper ORB)互联。Agency(相当于MASIF中的Place)是Agent实际的运行环境,数个Agency结合构成域,由域注册器(相当于MASIF中的MAFFinder)提供名字服务。Grasshoper的通信基础设计非常巧妙,可以通过CORBA来进行通信,还可以通过Java

27、RMI和Socket连接进行通信,整个通信结构实现采用插件技术,具有很好的扩充性,并同时支持异步或同步的通信,动态消息机制和多点发送。Grasshoper的安全服务中采用X.509证书实现身份认证,采用SSL来保证传输中的安全性,通过用户定制的安全管理器来完成资源访问控制,并实现了数字签名。,4 Voyager Voyager 的最大特点是以Voyager ORB作为核心,将Agent和分布式计算紧密结合在一起的。但Voyager 只支持纯Java的对象的通信,与CORBA和MASIF不兼容,它还支持异步或同步的通信,动态消息机制和单向多点发送。在容错服务方面,Voyager支持任意时间的显式

28、地存储,其安全机制主要是通过Voyager Security类进行编程设置。,详细介绍Aglet,(1). Aglet是由IBM公司用纯Java开发的移动Agent技术,并提供着实用的平台Aglet Workbench,让人们开发或执行移动Agent系统。Aglet是一个较为成功和全面的系统,主要表现在:它提供了一个简单而全面的移动Agent编程模型;它为Agent间提供了动态和有效的通信机制;它还提供了一套详细且易用的安全机制。,(2).Aglet的系统框架,(3).ATP的示意图,(4).Aglet对象模型(生命周期)Aglet系统首先提供一个上下文环境(context)来管理Aglet的

29、基本行为:如创建(create)Aglet,复制(clone)Aglet,或分派(dispatch)Aglet到远程机器,召回(retract)远端的Aglet,或暂停(deactive),唤醒(active)Aglet,以及清除(dispose)Aglet等。见下图。,Aglet的对象模型,Aglet与Aglet之间的通信,则可用消息传递的方法来传递消息对象。此外,基于安全上的考虑,Aglet并非让外界直接存取其信息,而是透过一个代理(proxy)提供相应的接口与外界沟通(见图4)。这样做的好处,Aglet的所在位置会透明化,也就是Aglet想要与远端的Aglet沟通时,只在本地主机上的上下

30、文环境中产生对应远端Aglet的代理,并与此代理沟通即可,不必直接处理网络连接与通讯的问题。,Aglet基本通信模型,(5).Aglet Workbench及Aglet packagesAglet Workbench是一可视化环境,它被用来建立使用移动Agent的网络应用。它提供的工具包括:移动Agent Aglet框架,ATP, JDBC,JoDax, Tazza, Tahiti,Fiji等。,Aglet的一些包如下: Com.ibm.aglet: Com.ibm.aglet.event: Com.ibm.aglet.system Com.ibm.aglet.util: Com.ibm.ag

31、let.patterns:,(6).Aglet中的设计样式 样式就是从系统中抽象提取出来的一些具有共性的东西,以便于重用。这一观念现已被许多行业在设计复杂系统时有效地采用。样式通常是用意图,动机,适合场合,参与者,合作性和结论等多个成分来描述。对于Agent系统,设计样式只要有三大类,每一大类中又包括一些子类。,1 巡行模式(travelling)巡行是移动Agent的本性,巡行样式处理移动时各方面的问题,如路由服务和服务质量。其子类有:巡行路线(itinerary)样式:负责到达目的地的路由,它维护着所有目的地的列表,定义了路由策略,并能处理异常情况。发送(forwarding)样式:提供发

32、送所有的或者特定的Agent到远端机器的机制。标签(ticket)样式:负责管理服务质量,权限等问题。,2 任务模式(task)它主要负责任务的分解,以及怎样把任务分派给不同的Agent去执行。其子类有:主从(master-slave)样式:一种基本的样式,提供允许主Agent把任务委派给从Agent,从Agent移动到指定的目的地,完成指定的任务后返回结果的机制。预谋(plan)样式:用工作流的方式策划,来让多个任务顺序或者并行地在多个Agent上执行。,3 交互模式(interaction) 它提供定位Agent的机制以及方便Agent间交互的一些机制。其子类有: 会议(meeting)样

33、式 寄存柜(locker)样式 信使(messenger)样式 服务设施(facilitator)样式 组织化的群体(organized group)样式,对Aglet系统,一般是在上述Agent样式的基础上进行定制。最常用的有Master-slave,Messenger-Receiver样式。,下面以主从样式为例反映样式是如何具体表述的 意图:该样式定义了主Agent把任务委托给从Agent的过程。 动机:实现并行性。 适用场合:1.Agent需要任务的并行执行; 2.Agent需要执行远端的任务。 参与者:1.主Agent;2.从Agent;3.具体的主Agent;4.具体的从Agent.

34、 合作性:1.创建从Agent;2.从Agent移动执行任务;3.从Agent返回执行结果给主Agent. 结论:主从样式抽象出Agent系统中分派任务的共性,提供一个基本方式来在Agent类中重用代码。但 从Agent在设计时已固定,运行时不能动态改变。,7.Aglet安全性Aglet系统中的安全主要涉及主机对Aglet的攻击,Aglet之间的攻击,Aglet对主机的攻击,以及来自底层网络的攻击。Aglet Workbench目前主要支持前面两种攻击的预防。以下简要分析Aglet系统的安全对策。,对用户和域的认证:数据完整性检查:另外还有类似jdk安全模型的授权。,目前的Aglet由于JDK安全支持的力度不够,并没有完全实现Agent的认证,授权,审计与防抵赖以及数据完整性,但是已经提供了一个可以容忍(reasonable)的安全层次,并且随着JDK安全的发展而不断得到改善。,对上述几个Agent平台分析,得出结果是: 互操作性问题急待解决。 采用Java来实现移动Agent是必然趋势。 容错性,可靠性还应加强。 安全性仍是重点问题。 提供二次开发接口。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报