Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
© Graduate University, Chinese academy of Sciences. 人工智能 Artificial Intelligence Artificial Intelligence Agent: 1 © Graduate University, Chinese academy of Sciences. 主体技术 Artificial Intelligence Agent: 2 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 3 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 4 © Graduate University, Chinese academy of Sciences. 主体(1) • 在计算机和人工智能领域中, 主体(agent)可以看作是一个自动执 行的实体,它通过传感器感知环境,通过效应器作用于环境。 • 主体计算(agent computing)不仅是分布智能的研究热点,而且可 能成为下一代软件开发的重要突破点。事实上,对主体的研究已经 成为人工智能学科的核心内容,有人认为是人工智能研究的初始目 标和最终目标。 Artificial Intelligence Agent: 5 © Graduate University, Chinese academy of Sciences. 主体(2) • 通常认为一个主体需要具有下述部分或全部特性: (1) 自治性。这是一个主体的基本特性,即可以控制它自身的行为。 (2) 交互性,即对环境的感知和影响。 (3) 协作性。通常主体不是单独地存在,而是生存在一个有很多个主体 的世界中。主体之间的良好有效的协作可以大大提高整个多主体系统的 性能。 (4) 可通信性。所谓通信,指主体之间可以进行信息交换。更进一步, 主体应该可以和人进行一定意义下的“会话”。任务的承接、多主体的 协作、协商等都以通信为基础。 (5) 长寿性(或时间连贯性)。传统程序由用户在需要时激活,不需要 时或者运算结束后停止。主体与之不同,它应该至少在“相当长”的时 间内连续地运行。这虽然不是主体的必须特性,但目前一般认为它是主 体的重要性质。 Artificial Intelligence Agent: 6 © Graduate University, Chinese academy of Sciences. 主体(3) • 智能主体的几个典型的实例: –Microsoft的Office助手 –计算机病毒(破坏主体) –计算机游戏或模拟中的智能角色 –贸易和谈判主体(如Ebay的拍卖主体) –网络蜘蛛Web Spider(搜索引擎中的数据搜集和 索引主体,如Google) Artificial Intelligence Agent: 7 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 8 © Graduate University, Chinese academy of Sciences. 主体结构 • 主体结构所要解决的是主体由哪些模块组成,它们之间如何 交互信息,主体感知到的信息如何影响它的行为和内部状态 ,以及如何将这些模块用软件和硬件方式组合起来形成一个 整体,真正实现主体。 • 有关主体结构可以有不同的划分方法,一般可以把主体分成 下面四种类型: – 慎思主体:主体的决策是通过逻辑演绎实现的 – 反应主体:主体的决策是通过从情景到动作的某种直接映射实现的 – BDI主体:主体中有表示B、D、I的数据结构,主体的决策是通过对这 些数据结构的操作实现的 – 层次主体:主体的决策是通过软件不同层次实现的,每个层次或多或 少地都在不同的抽象程度上显式地实现对环境的推理。 Artificial Intelligence Agent: 9 © Graduate University, Chinese academy of Sciences. 慎思主体(1) • 慎思主体(Deliberative agent),也称作认知主体( Cognitive agent),是一个显式的符号模型,包括环境和 智能行为的逻辑推理能力。 • 它保持了经典人工智能的传统,是一种基于知识的系统( Knowledge-based system)。环境模型一般是预先实现的 • 把主体作为定理证明器的思想是非常有意义的。假定,我们 有主体的某种理论,用于解释智能主体是如何行动的,假设 可以认为是主体如何行为的说明规范,为了实现满足该规 范的系统,传统的方法是通过一系列具体的步骤,对该规范 改进和求精,最后直到实现。把主体看作定理证明器时不需 要该求精过程,它把看作可执行的规范:规范被直接执行 ,得到所需要的行为。 Artificial Intelligence Agent: 10 © Graduate University, Chinese academy of Sciences. 慎思主体(2) Artificial Intelligence Agent: 11 © Graduate University, Chinese academy of Sciences. 慎思主体(3) Artificial Intelligence Agent: 12 © Graduate University, Chinese academy of Sciences. 慎思主体(4) • 在慎思主体的主体方法中,最重要的问题可能是实用性的问 题。假定存在演绎规则和数据库,如果可以证明Do(a), 则a是最优的动作,即当环境如所描述的情况时,a是最好 的可执行动作。现在运行该主体,在时刻t1,主体生成某种 数据库1,并应用演绎规则发现可以运行的动作。一段时 间过后,在时刻t2,对某个动作a,主体试图建立1|- Do(a),则a是在时刻t1时主体可以执行的最优动作。但是在 t1和t2之间,如果环境改变了,则就无法保证a仍然是最优的 动作。如果t1和t2之间时间间隔越长,则就越无法保证。当 主体决策的时间没有环境变化快的时候,这种方法就无法保 证找到最合适当前环境的动作。 Artificial Intelligence Agent: 13 © Graduate University, Chinese academy of Sciences. 慎思主体(5) • 总之,在基于逻辑的方法中,决策可以看作是演绎。主体的 “程序”(即主体的决策策略)描述为逻辑理论,动作的选 择过程规约为一个证明问题。 • 基于逻辑的方法具有清晰的语义,但是它也具有很多的缺点 。特别是定理证明的复杂性问题使得它在时间要求严格的环 境下难以应用。另外,这种主体的决策基于计算理性的假设 ,即在主体做决策过程中,环境的变化不会太剧烈,并且主 体的决策是理性的。对于在复杂的、动态的物理环境下的表 示和推理问题基本上也是没有解决。 Artificial Intelligence Agent: 14 © Graduate University, Chinese academy of Sciences. 反应主体(1) • 对基于逻辑的主体建造方法来说,主要的问题是结构僵硬, 在动态变换的环境中,主体必须有能力基于当前的情景做出 决策。并且在基于逻辑的方法中,推理和决策以及执行程序 之间的转换是很费时的,很难应用在对时间要求苛刻的环境 中,在这种环境中,满足问题求解的重要前提是快速反应, 这常常比选择最佳的动作更重要。因此需要一种全新的问题 求解方法。 • 反应式主体:它不包含符号表示的世界模型,并且不使用复 杂的符号推理。 Artificial Intelligence Agent: 15 © Graduate University, Chinese academy of Sciences. 反应主体(2) • 反应式主体和MIT的Rodney Brooks所倡导的基于行为的人 工智能有关。他认为智能行为是主体和它周围的环境交互的 结果,不需要进行推理。Brooks提出了一种结构,称为“ 包容结构”(subsumption architecture),在这种结构中 有两个确定的特性: • 第一,主体的决策是通过一组任务完成行为程序实现的,每 个行为可以看作是单独的动作函数,其输入为感知,输出为 要执行的动作。 • 第二,多个行为可以并发地同时激活,为了实现对合适动作 的选择,Brooks把这些行为模块组成层次结构,低层的行 为具有更高的优先级别,高层的行为表示抽象的行为。 Artificial Intelligence Agent: 16 © Graduate University, Chinese academy of Sciences. 反应主体(3) Artificial Intelligence Agent: 17 © Graduate University, Chinese academy of Sciences. 反应主体(4) Artificial Intelligence Agent: 18 © Graduate University, Chinese academy of Sciences. 反应主体(5) • 对于Brooks的包容结构来说,其优点是简单、经济、计算可处理性等。 但是其不足也是显然的,这些不足不仅仅只存在于包容结构中,对其他 的纯粹的反应式主体来说也都存在: – 如果主体没有有关环境的模型,则主体也需要有足够的有关其局部环境的信 息,以便于主体确定可接受的动作 – 由于纯粹的反应式主体的决策基于局部信息(即主体当前状态的信息),则 主体很难考虑非局部的信息,主体一定是采用“短期的”观点来处理问题。 – 对纯粹反应式的主体,主体很难从经验中学习,并改进其行为。 – 纯粹反应式主体的主要卖点是主体的整体行为是由于组件行为模块与环境交 互而形成的(emerges)。正是术语“形成”说明了个体行为、环境和整体 行为之间的关系是难以理解的。这必然使得建造完成指定任务的主体很困难 。 – 由于可以通过少数的行为实现有效的主体,则建造很多层的主体一定是困难 的,不同行为之间的交互将会变得非常复杂。 Artificial Intelligence Agent: 19 © Graduate University, Chinese academy of Sciences. BDI主体(1) • Belief——信念,主体对环境的基本看法。 • Desire——愿望,主体想要实现的状态,即目标。 • Intention——意图,目标的子集。 • BDI主体结构来自于传统的对实用推理(practical reasoning)的理解 ,即选择哪个动作实现我们的目标的过程。 • 实用推理包含两个重要的过程:决定我们要达到的目标,确定我们如何 达到这些目标。前者称为慎思(deliberation),后者称为手段-目的( means-ends)推理。在实用推理中,意图起着非常重要的作用,它可以 驱动手段-目的推理,它可以对未来的慎思进行约束,使得主体的行为和 意图相一致。 Artificial Intelligence Agent: 20 © Graduate University, Chinese academy of Sciences. BDI主体(2) • 设计实用推理主体的一个关键问题是实现意图、推理、慎思 等问题的平衡。特别是当主体由于某种原因放弃某个意图时 ,则主体可以不需要重新考虑这些意图。但是,这会出现下 面的困难: – 当主体的某些意图已经无法实现,或者已经没有任何原因需要实现这 些意图的时候,无法停止重新考虑这些意图的主体还会继续试图去完 成这些意图 – 不断地重新考虑意图的主体可能只有不足的时间来完成这些意图,因 此可能永远无法完成这些意图。 Artificial Intelligence Agent: 21 © Graduate University, Chinese academy of Sciences. BDI主体(3) Artificial Intelligence Agent: 22 © Graduate University, Chinese academy of Sciences. BDI主体(4) • 下面用Bel、Des、Int分别表示主体当前可能的信念、愿望、意图的集合 。BDI 主体的状态可以用三元组(B,D,I)表示,其中BBel, DDes,IInt。信念修正函数、选择生成函数、过滤函数等可表示为: brf: P(Bel) × PP(Bel) options:P(Bel) ×P(Int)P(Des) filter:P(Bel) ×P(Des) × P(Int)P(Des) • 其中信念修正函数brf基于当前的感知和当前信念确定新的信念集。 • 选择生成函数options把一组信念集和意图集映射为一组愿望集合。 • 过滤函数filter根据主体原有的意图和当前的信念和愿望更新主体的意图 。 Artificial Intelligence Agent: 23 © Graduate University, Chinese academy of Sciences. BDI主体(5) BDI-Interpreter initialize-state(); do options := option-generator(event-queue, B, G, I); selected-options := deliberate(options, B, G, I); update-intentions(selected-options, I); execute(I); get-new-external-events(); drop-successful-attitudes(B,G,I); drop-impossible-attitudes(B,G,I); until quit Artificial Intelligence Agent: 24 © Graduate University, Chinese academy of Sciences. 层次主体(1) • 了实现具有反应行为和主动行为的主体,一种方法是建立处 理这两种不同行为的子系统。通过把这些不同的子系统组织 为层次,各层次之间可以交互,这样自然得到一类主体结构 :层次结构的主体。 • 在层次主体结构中,至少存在有两个层次,分别用来处理反 应行为和主动行为。根据信息流和控制流,可以对层次主体 结构做进一步的划分。粗略地说,在层次结构中存在两种形 式的控制流: – 水平的:在这种结构中(如图10.3(a)),每个软件层次都直接和传 感器输入以及动作输出相连。事实上,每个层次自身就如同一个主体 一样,给出主体执行什么动作的建议。 – 垂直的:如图10.3(b)、10.3(c)所示,传感器输入和动作输出分别有 一个层次来负责处理。 Artificial Intelligence Agent: 25 © Graduate University, Chinese academy of Sciences. 层次主体(2) Artificial Intelligence Agent: 26 © Graduate University, Chinese academy of Sciences. 层次主体(3) • 在层次结构中,有两个典型的例子: – TOURINGMACHINES:水平层次的主体结构 – InterRAP:垂直结构的主体模型。 Artificial Intelligence Agent: 27 © Graduate University, Chinese academy of Sciences. 层次主体(4) • 在层次结构中,有两个典型的例子: – TOURINGMACHINES:水平层次的主体结构 – InterRAP:垂直结构的主体模型。 Artificial Intelligence Agent: 28 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 29 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(1) 协 作 通 策 略 协 议 对 话 黑 板 消 息 信 Artificial Intelligence 协 议 Agent: 30 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(2) • 主体通信中的主要问题 – 语义:全部有关的主体必须知道通信语言的语义,消息的语义内容知 识是分布式问题求解的核心部分。 – 言语行为:通信语言也是一种动作,说话是为了使世界的状态发生改 变。 – 交互协议:主体之间消息交换的典型模式 – 通信语言:传递消息的标准语法。 • Foundation for Intelligent Physical Agents http://www.fipa.org – FIPA97规范定义了一种语言和支持工具,如协议,用于智能软件主 体相互通信。 Artificial Intelligence Agent: 31 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(3) 目标G Agent i 消息M 意图I Agent i 言语行为 消息M 转换到传输格式 从传输格式转换 消息发送/传输服务器 Artificial Intelligence Agent: 32 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(4) • 言语行为 – 有关言语行为理论的研究主要集中在如何 划分不同类型的言语行为。 – 在主体通信语言的研究中,言语行为理论 主要用来考虑主体之间可以交互的信息类 型。 Artificial Intelligence Agent: 33 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(5) • FIPA通信动作库 • Accept Proposal • Agree • Cancel • Call for Proposal 要求提议 • Confirm • Disconfirm • Failure • Inform • Inform If 通知 是否 • Inform Ref 通知 有关对象 • Not Understood Artificial Intelligence • Propagate 传播 • Propose 提议 • Proxy 代理 • Query If 询问 是否 • Query Ref 询问 有关对象 确认 • Refuse 拒绝(请求) 确认为否定 • Reject Proposal 拒绝提议 失败 • Request 请求 通知 • Request When 执行 请求 某个条件下 • Request Whenever 件成立就执行 请求 一旦某个条 • Subscribe 预定 • 详细说明: • http://www.fipa.org/repository/cas.html 接受提议 同意 取消 不理解 Agent: 34 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(6) • 通信语言 – KQML:由美国ARPA的知识共享计划中提 出,规定了消息格式和消息传送系统,为 多主体系统通信和协商提供了一种通用框 架。 – ACL:由FIPA制定的一种规范。与KQML 非常相似 Artificial Intelligence Agent: 35 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(7) • KQML 一个例子: (ask-all : sender : receiver : in-reply-to : reply-with : language : ontology : content Artificial Intelligence A B ido idl Prolog foo “bar (X, Y)”) Agent: 36 © Graduate University, Chinese academy of Sciences. 主体通信语言ACL(8) • FIPA ACL 消息结构开始 通信动作类型 消息参数 (inform : sender agent1 : receiver hpl-auction-server : content (price (bid good02) 150) : in-reply-to round-4 : reply-with bid04 : language s1 : ontology hpl-auction ) Artificial Intelligence 消息内容表达式 参数表达式 Agent: 37 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 38 © Graduate University, Chinese academy of Sciences. 协调和协作(1) • 协调(coordination)与协作(cooperation)是多主体研究的核 心问题之一。因为以自主的智能主体为中心,使多主体的知 识、愿望、意图、规划、行动协调,以至达到协作是多主体 的主要目标 • 在多主体系统中,主体不是孤立存在的。主体间的相互依赖 关系使得主体间的交互以及协作方式对主体的设计和实现具 有相当大的制约性,基于不同的交互及协作机制,多主体系 统中的主体的实现方式将各不相同。因此可以说,研究主体 间的协作是研究和开发基于主体的智能系统的必然要求。 Artificial Intelligence Agent: 39 © Graduate University, Chinese academy of Sciences. 协调和协作(2) 协调 • 协调是指一组智能主体完成一些集体活动时相互作用的性质 。协调是对环境的适应。在这个环境中存在多个主体并且都 在执行某个动作。 • 协调一般是改变主体的意图,协调的原因是由于其它主体的 意图存在。 • 进行协调是希望避免主体之间的死锁和活锁。死锁指多个主 体无法进行各自的下一步动作;活锁是指多个主体不断工作 却无任何进展的状态。 Artificial Intelligence Agent: 40 © Graduate University, Chinese academy of Sciences. 协调和协作(3) 协作: • • • 协作是非对抗的主体之间保持行为协调的一个特例。 主体间的协作也是多主体系统与其它相关研究领域(如分布 式计算、面向对象的系统、专家系统等)区别开来的关键性 概念之一 多主体是以人类社会为范例进行研究的。在人类社会中,人 与人的交互无处不在。人类交互一般在纯冲突和无冲突之间 。同样,在开放、动态的多主体环境下,具有不同目标的多 个主体必须对其目标、资源的使用进行协调。例如,在出现 资源冲突时,若没有很好的协调,就有可能出现死锁。而在 另一种情况下,即单个主体无法独立完成目标,需要其它主 体的帮助,这时就需要协作。 Artificial Intelligence Agent: 41 © Graduate University, Chinese academy of Sciences. 协调和协作(4) 协作的动机: • 某个主体相信通过协作能带来好处(如提高效率,完成以往单独无法完 成的任务) • 多个主体在交流的过程中,发现它们能够通过协作来实现更大的目标。 从社会心理学的角度看,多主体之间的协作情形大致可分为: • 协作型:同时将自己的利益放在第二位。 • 自私型:同时将协作放在第二位。 • 完全自私型:不考虑任何协作。 • 完全协作型:不考虑自身利益。 • 协作与自私相混合型。 Artificial Intelligence Agent: 42 © Graduate University, Chinese academy of Sciences. 协调和协作(5) 协作的过程: 1. 产生需求、确定目标 2. 协作规划、求解协作结构 3. 寻求协作伙伴 4. 选择协作方案 5. 实现目标 6. 评估结果 Artificial Intelligence Agent: 43 © Graduate University, Chinese academy of Sciences. 协调和协作(6) 协作研究的分类: • 在现阶段,针对主体协作的研究大体上可分为两类, 1. 一类将其它领域(如博弈论、经典力学理论等)研究多实体行为的 方法和技术用于主体协作的研究; 2. 另一类则从主体的目标、意图、规划等心智态度出发来研究多主体 间的协作,如FA/C模型、联合意图框架、共享规划等。 • 前一类方法的适用范围远不如后一类广,所运用的各种理论 只适用于特定的协作环境下,而一旦环境发生变化,如主体 的个数、类型、及主体间的交互关系与该理论所适用的情形 不一致时,基于该理论的协作机制就失去了其存在的优势。 而后一类方法则较偏重于问题的规划与求解,并且它们所假 定的协作过程差异显著。 Artificial Intelligence Agent: 44 © Graduate University, Chinese academy of Sciences. 协调和协作(7) 协调的方法: • 多主体之间的协调已经有很多方法,大致归纳如下 – – – – 组织结构化(Organizational Structuring) 合同(Contracting) 多主体规划(Multi-agent Planning) 协商(Negotiation) Artificial Intelligence Agent: 45 © Graduate University, Chinese academy of Sciences. 合同网(1) 协调的方法: • 1980年Smith在分布式问题求解中提出了一种合同网协议( contact net protocol)。后来这种协议广泛用在多主体系统 的协调中。 • 主体之间通信经常建立在约定的消息格式上。实际的合同网 系统基于合同网协议提供一种合同协议,规定任务指派和有 关主体的角色。 Artificial Intelligence Agent: 46 © Graduate University, Chinese academy of Sciences. 合同网(2) 合同网系统中结点的结构 : Artificial Intelligence Agent: 47 © Graduate University, Chinese academy of Sciences. 合同网(3) 合同网系统中合同协同过程 : Artificial Intelligence Agent: 48 © Graduate University, Chinese academy of Sciences. 基于生态学的协作(1) • 计算生态学是80年代末计算机领域出现的新学科。 • 计算生态学是研究关于开放系统中诀定计算结点的行为与资 源使用的交互过程的学科。它摒弃了封闭、静止地处理问题 的传统算法,将世界看作是开放的、进化的、并发的, 通过 多种协作处理问题的“生态系统”(ecosystem)加以研究。 它的进展与开放信息系统的研究息息相关。 Artificial Intelligence Agent: 49 © Graduate University, Chinese academy of Sciences. 基于生态学的协作(2) • 当前的分布式计算系统具有类似于社会的、生物界组织形式的特征: – 这类开放系统与目前的计算机系统有很大差别,它们对于复杂的任务进行异 步的计算,它们的结点可以在内部结构陌生的其他机器上产生进程。 – 这些结点能根据不完备的知识与不完整的、经常迟到的信息做出局部决策。 – 整个系统不存在中心控制,而是通过各结点的交互,协作解决问题。 – 所有这些特点构成了一个并发的组合体,它们的交互、策略以及对资源的竞 争类似纯粹的生态学。 – Hewitt提出了开放信息系统的概念[Hewitt 1991],他认为不完备的知识、异 步的计算以及不一致的数据是开放计算系统所无法避免的。 • 计算生态学将计算系统看作是一个生态系统,它引进了许多生物的机制 ,增强了适应环境的能力。这类变异策略成为人工智能系统提高其自身 能力的一种方法。 Artificial Intelligence Agent: 50 © Graduate University, Chinese academy of Sciences. 基于生态学的协作(3) • 目前,著名的生态系统模型有以下几种。大型生态系统的智 能,超过任何个体智能。 – 生物生态模型:这是最著名的生态系统,具有典型的进化特征和层次 性。对于复杂的生物生态系统而言,各物种组成了紧密相连的网络- ---食物网。生命依赖于生命,共同进化,由小的生态环境组成大的生 态系统。 – 物种进化模型: 一组地理上隔绝的群体自己孤立地发展,随着开放 ,通过交流和竞争,优胜劣汰。 – 经济模型:经济系统在某种意义上类似于生物生态系统。在商品市 场和理想市场中,进化决定于经济实体的决策。选择机制是市场奖励 机制。决策者为了追求长远利益,可以采取各种有效的方法,甚至可 以暂时做赔本买卖。 Artificial Intelligence Agent: 51 © Graduate University, Chinese academy of Sciences. 基于对策论的协商 • 在多主体系统中,协商的含意有多种理解: – 一种认为子问题和资源的指派是协商 – 另一种则认为主体之间一对一直接协商 • 所有协商活动的目的是在一组独立工作的主体间构建协作 • 协商协议提供可能的协商形式的基本规则、协商过程和通信 基础。 • 从单个主体看,协商的目的是改善自己的状态,在不影响自 己情况下支持其它主体,或者对其它主体请求帮助。 • 主体必须进行折衷,维护整个系统的能力。 Artificial Intelligence Agent: 52 © Graduate University, Chinese academy of Sciences. 基于意图的协商 • 主体的信念B、愿望D、意图I理论可以用于多主体的协商。 • 基于意图的协商不使用子规划,而是使用意图进行协商,减 少通信量。 • BDI理论认为,导致主体理性行为的既不是愿望,也不是规 划,而是信念与愿望结合产生的意图。 • 实现意图的子规划是由该意图产生。一个意图可能对应几个 子规划。主体进行协商时没有必要交换各个子规划,只要交 换意图。 Artificial Intelligence Agent: 53 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 54 © Graduate University, Chinese academy of Sciences. 移动主体(1) • 移动主体的概念是随着Internet应用的逐步深入,特别是信息搜索、分 布式计算以及电子商务的蓬勃发展而产生的。 • 20世纪90年代初,General Magic公司在推出其商业系统Telescript时第 一次提出了移动主体的概念,即一个能在异构网络环境中自主地从一台 主机迁移到另一台主机,并可与其它主体或资源交互的软件实体。 • 移动主体是一类特殊的软件主体,它除了具有软件主体的基本特性外, 还具有移动性,即它可以在网络上从一台主机自主地移动到另一台主机 ,代表用户完成指定的任务。 • 由于移动主体可以在异构的软、硬件网络环境中自由移动,因此这种新 的计算模式能有效地降低分布式计算中的网络负载、提高通信效率、动 态适应变化了的网络环境,并具有很好的安全性和容错能力。 Artificial Intelligence Agent: 55 © Graduate University, Chinese academy of Sciences. 移动主体(2) • 移动主体的特征: – 可以看成是软件主体技术与分布式计算技术相结合的产物,它与传统 网络计算模式不同,不同于远程过程调用,这是因为移动主体能够不 断地从网络中的一个节点移动到另一个节点,而且这种移动是可以根 据自身需要进行选择的。 – 移动主体也不同于一般的进程迁移,因为一般来说进程迁移系统不允 许进程自己选择什么时候迁移以及迁移到哪里,而移动主体却可以在 任意时刻进行移动,并且可以移动到它想去的任何地方。 – 移动主体更不同于Java语言中的Applet,因为Applet只能从服务器 向客户机做单方向的移动,而移动主体却可以在客户机和服务器之间 进行双向移动。 Artificial Intelligence Agent: 56 © Graduate University, Chinese academy of Sciences. 移动主体(3) • 移动主体系统的体系结构:一般都包括下面两部分: – 移动主体(简称MA) – 移动主体服务设施(简称MAE) • MA的移动性和问题求解能力很大程度上取取于MAE所提供 的服务,一般来讲,MAE至少应包括以下基本服务: – 事务服务 实现移动主体的创建、移动、持久化和执行环境分配; – 事件服务 包含主体传输协议和主体通信协议,实现移动主体间的事 件传递; – 目录服务 提供移动主体的定位信息,形成路由选择; – 安全服务 提供安全的执行环境; – 应用服务 提供面向特定任务的服务接口。 Artificial Intelligence Agent: 57 © Graduate University, Chinese academy of Sciences. 移动主体(4) • MA可以细分为用户主体(User Agent,UA)和服务主体( Server Agent,SA)。 • UA可以从一个MAE移动到另一个MAE,它在MAE中执行, 并通过ACL与其它MA通信或访问MAE提供的服务。 • SA不具有移动能力,其主要功能是向本地的MA或来访的 MA提供服务,一个MAE上通常驻有多个SA,分别提供不同 的服务。 Artificial Intelligence Agent: 58 © Graduate University, Chinese academy of Sciences. 移动主体(5) • 移动主体技术虽然已经研究了很多年,但直到1996年才出现 了真正实用的移动主体系统,目前使用的移动主体系统大致 可以分为三类: – 一类是基于传统解释语言的 – 一类是基于Java语言的 – 另一类则是基于CORBA平台的 • 几个典型的移动主体系统 – General Magic公司的Odysses – IBM公司的Aglet – Recursion公司的Voyager Artificial Intelligence Agent: 59 © Graduate University, Chinese academy of Sciences. 主要内容 • 主体 • 主体结构 • 主体通信语言ACL • 协调和协作 • 移动主体 • 多主体环境MAGE Artificial Intelligence Agent: 60 © Graduate University, Chinese academy of Sciences. 主体环境MAGE(1) • MAGE是由中国科学院计算所智能科学实验室开发的多主体 开发环境 • MAGE是一种面向主体的软件开发、集成和运行环境,为用 户提供一种面向主体的软件开发和系统集成模式,包括面向 主体的需求分析、系统设计、主体生成以及系统实现等多个 阶段。 • MAGE提供了多种软件重用模式,可以方便地重用以不同语 言编写的主体或非主体软件。 • MAGE还提供了面向主体的软件开发模式。 Artificial Intelligence Agent: 61 © Graduate University, Chinese academy of Sciences. 主体环境MAGE(2) • MAGE系统框架结构:主要由三部分组成 –需求分析和建模工具AUMP: AUMP支持面向主体的需求分 析和设计阶段得到软件系统的模型 –可视化主体开发环境VAStudio: VAStudio在AUMP得到的 模型基础上支持面向主体的进一步设计和开发从而开发出 软件系统所需的主体,最后将这些主体放到主体支持环境 Agent Supporting Environment中运行。 –主体运行支持环境Agent Supporting Environment。 Artificial Intelligence Agent: 62 © Graduate University, Chinese academy of Sciences. 主体环境MAGE(3) • 主体统一建模语言AUML: –AUML(Agent UML)是一种面向主体的建模语言,主要作 用是帮助软件设计和开发人员对软件系统进行面向主体的 描述和建模,描述软件开发过程从需求分析直到实现和测 试的全过程。 –AUML将面向主体的软件开发方法和面向对象技术中的统 一建模语言(Unified Modeling Language,简称UML)结 合起来。 Artificial Intelligence Agent: 63 © Graduate University, Chinese academy of Sciences. 主体环境MAGE(4) • 可视化主体开发环境VAStudio : – VAStudio的设计目标就是提供一个友好的集成环境来支持主体的设 计和编程,不仅是系统编程环境,而且是面向主体的设计与编程环境 Artificial Intelligence Agent: 64 © Graduate University, Chinese academy of Sciences. 主体环境MAGE(5) • MAGE运行平台 : – MAGE平台框架遵循FIPA主体管理规范,是FIPA规范的一个标准参 考实现。它提供主体创建、注册、定位、通信、移动和退出等服务 软件 主体平台AP 主体库 主体 主体 主体 主体管理系统 AMS 目录服务主体 DF 功能构件 消息传输系统MTS(Message Transport System) 消息传输系统MTS(Message Transport System) 主体平台 Artificial Intelligence Agent: 65