第六章专家系统高级人工智能1第七章Agent分布式人工智能分布式问题求解Agent理论Agent结构Agent通信Agent协调与协作面向Agent的软件技术第六章专家系统高级人工智能2分布式人工智能特点:分布性:整个系统的信息,包括数据、知识和控制等,无论在逻辑上或者物理上都是分布的,不存在全局控制和全局数据存储。连接性:在问题求解过程中,各个子系统和求解机构通过计算机网络相互连接。协作性:各子系统协调工作。第六章专家系统高级人工智能3分布式人工智能开放性:通过网络互连和系统的分布,便于扩充系统规模,具有比单个系统广大得多的开发性和灵活性。容错性:系统具有较多的冗余处理结点、通讯路径和知识,能够使系统在出现故障时,仅仅降低响应速度或求解精度,以保持系统正常工作,提高工作可靠性。独立性:系统把求解任务归约为几个相对独立的子任务,从而降低了各个处理结点和子系统问题求解的复杂性,也降低了软件设计开发的复杂性。第六章专家系统高级人工智能4例:多领域专家系统可以协作求解单领域或者单个专家系统无法解决的问题,提高求解能力,扩大应用领域分布式人工智能的分类分布式问题求解(DPS:DistributedProblemSolving)多Agent系统(MAS,Multi-agentSystem)DPS与MAS的异同共同点:研究如何对资源、知识、控制等进行划分。不同点:概念模型和成功标准;研究目标;设计方法等方面。第六章专家系统高级人工智能5分布式问题求解特点:数据、知识、控制均分布在系统的各节点上,既无全局控制,也无全局数据和知识存储。两种协作方式:任务分担结果共享第六章专家系统高级人工智能6分布式问题求解系统分类根据组织结构,分布式问题求解系统可以分为三类:•层次结构类;平行结构类;混合结构类分布式问题求解过程可以分为四步:任务分解;任务分配子问题求解;结果综合第六章专家系统高级人工智能7分布式问题求解系统中协作的分类按节点间协作量的多少,协作分为三类:全协作系统无协作系统半协作系统常用的通信方式有:共享全局存储器信息传递黑板模型第六章专家系统高级人工智能8Agent在计算机和人工智能领域中,主体可以看作是一个实体,它通过传感器感知环境,通过效应器作用于环境。译文:金山词霸:代理(商);中介;密探。网络管理:SNMP中的代理第六章专家系统高级人工智能9Agent主体;智能体;智能主体艾真体多主体系统主要研究在逻辑上或物理上分离的多个主体协调其智能行为,即知识、目标、意图及规划等,实现问题求解。可以看作是一种由底向上设计的系统。第六章专家系统高级人工智能10智能主体的几个典型的实例:Microsoft的Office助手计算机病毒(破坏主体)计算机游戏或模拟中的智能角色贸易和谈判主体(如Ebay的拍卖主体)网络蜘蛛WebSpider搜索引擎中的数据搜集和索引主体(如Google)第六章专家系统高级人工智能11软件开发方法的进化面向过程的方法面向实体的方法面向对象的方法面向主体的方法第六章专家系统高级人工智能12Agent关键属性自治性。能自行控制其状态和行为,能在没有人或其它程序介入时操作和运行。Autonomy社会能力(通信能力)。能用某种通信语言与其它Agent交换信息并相互作用。Sociality感知能力或反应能力。及时感知和响应所处环境的变化。Reactivity能动性或自发行为。主动表现出目标驱动的行为,能自行选择合适时机采取适宜动作。第六章专家系统高级人工智能13Agent关键属性持续性。是持续或连续运行的过程。其状态在运行过程中应保持一致。推理能力。Reasoning规划能力。Planning协作、合作、协同、协商能力。移动性或机动性。Mobility第六章专家系统高级人工智能14适应性或进化性。可靠性长寿性诚实、善意、理性。前五个属性是必备的第六章专家系统高级人工智能15Agent理论Agent的理论模型研究主要从逻辑、行为、心理、社会等角度出发,对智能主体的本质进行描述,为智能主体系统创建奠定基础。理性主体(BDI主体)Belief——信念,主体对环境的基本看法。Desire——愿望,主体想要实现的状态,即目标。Intention——意图,目标的子集。第六章专家系统高级人工智能16BDI模型BDI模型可以通过下列要素描述:一组关于世界的信念;Agent当前打算达到的一组目标;一个规划库,描述怎样达到目标和怎样改变信念;一个意图结构,描述Agent当前怎样达到它的目标和改变信念。第六章专家系统高级人工智能17Agent结构Agent结构需要解决的问题包括:Agent由那些模块组成,模块之间如何交互信息,Agent感知到的信息如何影响它的行为和内部状态,如何将这些模块用软件或硬件的方式组合,形成一个有机的整体。黑箱软件Agent环境Agent感知作用第六章专家系统高级人工智能18Agent的工作过程环境交互信息融合信息处理作用交互感知作用第六章专家系统高级人工智能19Agent骨架程序functionSkeleton-Agent(percept)returnactionstatic:memory/*Agent的世界记忆*/memory←Update-Memory(memory,percept)action←Choose-Best-Action(memory)memory←Update-Memory(memory,action)returnaction第六章专家系统高级人工智能20Agent的分类根据人类思维的层次模型,可以将Agent分成四类:反应主体。ReactiveAgent形象思维主体。抽象思维主体。形象思维主体和抽象思维主体也可以合称为认知主体CognitiveAgent复合式主体第六章专家系统高级人工智能21ReactiveAgent环境当前世界传感器动作效应器条件-动作规则Agent第六章专家系统高级人工智能22ReactiveAgent程序functionReactive-Agent(percept)returnsactionstatic:rules,/*一组条件-动作规则*/state←Interpret-Input(percept)rule←Rule-Match(state,rules)action←Rule-Action[rule]returnaction第六章专家系统高级人工智能23CognitiveAgent环境信息融合传感器动作效应器主体规划知识库目标内部状态第六章专家系统高级人工智能24CognitiveAgent程序functionCognitive-Agent(percept)returnsactionstatic:environment,/*描述当前世界环境*/kb,/*知识库*/environment←Update-World-Model(environment,percept)state←Update-Mental-State(environment,state)action←Decision-Making(state,kb)environment←Update-World-Model(environment,action)returnaction第六章专家系统高级人工智能25复合式Agent决策生成规划反射建模通信感知行动其他智能主体智能主体外部世界预测协作与协商动作请求或应答信息一般情况紧急情况和简单情况第六章专家系统高级人工智能26规划模块世界的模型(包括其他主体的模型)经验库目标集合局部规划器决策生成重新规划规划规划目标第六章专家系统高级人工智能27建模模块世界的模型(包括其他主体的模型)模型库模型生成和维护预测规划决策生成感知通信建模第六章专家系统高级人工智能28通信模块词法库语法库词义库物理通信语言生成语言理解通信第六章专家系统高级人工智能29Agent通信策略对话消息黑板协议通信协作协议第六章专家系统高级人工智能30通信语言KQMLKQML:由美国ARPA的知识共享计划中提出,规定了消息格式和消息传送系统,为多主体系统通信和协商提供了一种通用框架。一个KQML例子:(ask-all:senderA:receiverB:in-reply-toido:reply-withidl:languageProlog:ontologyfoo:content“bar(X,Y)”)第六章专家系统高级人工智能31通信语言ACLACL:由FIPA制定的一种规范。与KQML相似(inform:senderagent1:receiverhpl-auction-server:content(price(bidgood02)150):in-reply-toround-4:reply-withbid04:languages1:ontologyhpl-auction)消息结构开始通信动作类型消息参数消息内容表达式参数表达式第六章专家系统高级人工智能32XMLXML是用于标记电子文件使其具有结构性的标记语言。XML文件本身只是将文件资料结构化。例如:下面的ACL消息(inform:senderjklabrou:receivergrosof:content(CPUlibretto50pentium):ontologylaptop:languagekif)转换为XML格式后如下:第六章专家系统高级人工智能33?xmlversion=pre-1.0?!DOCTYPEfipa_aclSYSTEMfipa_acl.dtdmessagemessagetypeinform/messagetypemessageparametersenderlink=˜jklabroujklabrou/sender/messageparameter第六章专家系统高级人工智能34messageparameterreceiverlink=grosof/receiver/messageparametermessageparameterontologylink=˜jklabrou/ontology/laptop.htmllaptop/ontology/messageparameter第六章专家系统高级人工智能35messageparametercontent(CPUlibretto50pentium)/content/messageparametermessageparameterlanguagelink=kif/language/messageparameter/message第六章专家系统高级人工智能36Agent协调与协作协调(coordination)与协作(cooperation)是多主体研究的核心问题之一。协调是指一组智能Agent主体完成一些集体活动时相互作用的性质。协作是非对抗的主体之间保持行为协调的一个特例。第六章专家系统高级人工智能37协调多主体系统中的协调是指多个主体为了以一致、和谐的方式工作而进行交互的过程。进行协调是希望避免主体之间的死锁或活锁。死锁指多个主体无法进行各自的下一步动作;活锁指多个主体不断工作却无任何进展。第六章专家系统高级人工智能38协作目前针对主体协作的研究大体上可分为两类:将其它领域研究多实体行为的方法和技术用于主体协作的研究。如对策论和力学研究。从主体的目标、意图、规划等心智态度出发来