多智能体
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分布式计算是一门计算机科学,一种计算方法,和集中式计算是相对的。它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。这样可以节约整体计算时间,大大提高计算效率。
分布式人工智能(Distributed Artificial Intelligence),简称DAI,它是人工智能和分布式计算相结合的产物。DAI的提出,适应了设计并建立大型复杂智能系统以及计算机支持协同工作(CSCW)的需要。目前,DAI的研究大约可划分为两个基本范畴:一是分布式问题求解(Distributed Problem Solving,DPS);另一个是关于多智能体系统(Multi Agent System,MAS)实现技术的研究。
分布式问题求解:往往针对待解决的总问题,将其分解为若干子任务,并为每个子任务设计一个问题求解的子系统。这里,首先需要智能地确定一个分配策略:如何把总工作任务在一群模块(Module)或者节点(Node)之间进行子任务分配;其次需要智能地确定一个工作任务协同的策略:要在基于分散、松耦合知识源的基础上,实现对问题的合作求解。这里所谓“分散”的概念是指任务的控制操作和可利用的信息都是分布的,没有全局控制和全局数据;知识源分布在不同的处理节点上,数据、信息、知识和问题的答案可以按照某种规则予以共享。
(松耦合系统通常是基于消息的系统,此时客户端和远程服务并不知道对方是如何实现的。客户端和服务之间的通讯由消息的架构支配。只要消息符合协商的架构,则客户端或服务的实现就可以根据需要进行更改,而不必担心会破坏对方。)
(3)主动性(Proactive):对于外界环境的改变,智能体能主动采取活动的能力。
(4)社会性(Social ) : 智能体具有与其它智能体或人进行合作的能力,不同的智能体可根据各自的意图与其它智能体进行交互,以达到解决问题的目的。
(5)进化性:智能体能积累或学习经验和知识,并修改自己的行为以适应新环境。
智能体可以看作是一类特殊的对象,即具有心智状态和智能的对象,智能体本身可以通过对象技术进行构造,而且目前大多数智能体都采用了面向对象的技术,智能体本身具有的特性又弥补了对象技术本身存在的不足,成为继对象技术后,计算机领域的又一次飞跃。
单智能体的基本结构如下图
感知器用来接收环境信息;知识库管理用来处理知识库中的各种知识,通信模块在Agent内部进行信息交互;效应器用来影响或改变环境;角色列表对Agent在系统中所扮演的角色进行列表。
多智能体系统(MAS,Multi-AgentSystem)也称多智能体技术(MAT, Multi-Agent T echnology):是多个智能体组成的集合,是由一个在一个环境中交互通讯、协调合作的多个智能体组成的计算系统。
它的目标是通过智能体之间的紧密合作,将大而复杂的系统建设成小的、彼此互相通信和协调的,易于管理的系统,从而解决大型、复杂的现实问题。是分布式人工智能(DAI,DistributedArtificial Intelligence)的一个重要分支,是20世纪末至21世纪初国际上人工智能的前沿学科。研究的目的在于解决大型、复杂的现实问题。
多智能体系统(MAS,M山ti.Agent System)是智能体概念的延伸,是指智能体之间通过连接拓扑结构、刚体连接或者通信连接等,与周围的智能体进行交互【2】。这种交互方式可指协同、竞争或者知识共享
相比于单个智能体的控制效果,多智能体系统的协调控制显现出更好的鲁棒性、灵活性、经济性
多智能体系统由于其健壮、可靠、成本低等特点在自主机器人、空间飞行器、无人机和无线传感器网络等领域有着广泛的应用
它的研究涉及智能体的知识、目标、技能、规划以及如何使智能体采取协调行动解决问题等。研究者主要研究智能体之间的交互通信、协调合作、冲突消解等方面,强调多个智
能体之间的紧密群体合作,而非个体能力的自治和发挥,主要说明如何分析、设计和集成多个智能体构成相互协作的系统。Simon的有限性理论是多智能体系统形成的一个重要的理论基础,Simon认为一个大的结构把许多个体组织起来可以弥补个体工作能力的有限;每个个体负责一项专门的任务可以弥补个体学习新任务的能力的有限;社会机构间有组织的信息流动可以弥补个体知识的有限;精确的社会机构和明确的个体任务可以弥补个体处理信息和应用信息的能力的有限。
MuIti-agent之间的通信
通信是agent相互协作的前提,多智能体之间知识和信息的交换需要解决有关表示、语言、传输、上下文等方面的问题。当多个agent组成MAS以后,agent之间信息的交互就产生了所谓的通信问题。目前agent的通信方式主要有黑板系统和消息通信系统。黑板系统是传统的人工智能系统和专家系统的议事同程的扩充,通过实用合适的结构支持分布式问题求解。在Multi.agent系统中,黑板提供公共工作区供agent交换信息、数据和知识。agent可以在黑板写入信息项,其它agent通过黑板读取信息,agent之间不直接发生通信。黑板系统实现了局部数据共享,但它的不足之处在于要求各agent具有统一的数据结构或知识表达方式,降低了设计和建造agent的灵活性。采用消息通信系统是实现灵活复杂的协调策略的基础,消息通信的两个agent只要知道对方地址的标识就可以建立连接,进行直接的消息交换。消息通信系统中需要解决的问题可分为三个方面,对话管理、通信语言和通信协议。
对话管理:通信意图一旦产生,通常不是一条消息所能完成的,消息与消息之间存在一定的逻辑关系。一条消息的正确理解不仅依赖于消息内容和对话协议,也依赖于对话历史。因此通话双方需要对对话过程进行管理,以保证通信内容正确地结合到协议过程中去。通信语言:通信语言是agent间传送信息和交换知识的媒介,通信双方共享语言的语义、语法的定义。通信协议:包括高层对话协议和底层传输协议。对话协议说明对话的基本过程和相应消息的各种可能情况;传输协议指通信中实际使用的底层传送机制,如TCP、SMTP和HTTP。
其中通信语言(ACL ,Agent Communication Language)和通信协议是agent之间能够高效交互信息和知识的基础。作为一种高层的agent通信语言,ACL一般都有其一定的规范框架,见图2.2所示,ACL位于逻辑层上,用来定义各agent能够理解交流的消息类型和消息内容。在ACL框架中,主要包括消息类型、消息格式、语义描述和内容语言等几个部分,以及支持的共享本体和采用的交互协议。