Agent技术研究与分析

2011-05-21 00:40梅创社
电子设计工程 2011年11期
关键词:协作分布式环境

梅创社

(陕西工业职业技术学院 陕西 咸阳 712000)

随着计算机技术和人工智能的发展以及互联网(Internet)和万维网(World Wide Web)的出现与发展,集中式系统已不能完全适应科学技术的发展需要。并行计算和分布式处理等技术(包括分布式人工智能技术)应运而生,并在过去20多年中获得快速发展。近10年来,Agent和多Agent系统的研究成为分布式人工智能研究的一个热点。

1 分布式人工智能

规模,使系统具有比单个系统更大的开放性和灵活性。

5)容错性 系统具有较多的冗余处理节点、通信路径和知识,能够使系统在出现故障时,仅仅通过降低速度或求解精度,就可以保持系统正常工作,提高工作可靠性。

6)独立性 系统把求解任务归约为几个相对独立的子任务,从而降低了各个处理节点和子系统问题求解的复杂性,也降低了软件设计开发的复杂性。

分布式人工智能(Distributed Artificial Intelligence,DAI)[1]的研究源于20世纪70年代末期。当时主要研究分布式问题求解,其研究目标是要建立一个由多个子系统构成的协作系统,各子系统之间协同工作对特定问题进行求解。分布式人工智能系统具有如下的特点:

1)分布性 整个系统的信息,包括数据、知识和控制等,无论是在逻辑上或者是物理上都是分布的,不存在全局控制和全局数据存储。系统中各路径和节点能够并行地求解问题,从而提高了子系统的求解效率。

2)连接性 在问题求解过程中,各个子系统和求解机构通过计算机网络相互连接,求解问题的通信代价和求解代价。

3)协作性 各子系统协调工作,能够求解单个机构难以解决或者无法解决的困难问题。

4)开放性 通过网络互连和系统的分布,便于扩充系统

2 Agent技术及其特性

在信息技术,尤其是人工智能和计算机领域,可把Agent看作是能够通过传感器感知其环境并借助执行器作用于该环境的实体。对于计算机系统而言,Agent是指当使用者向机器说明完成某些任务,而无需了解机器自身是如何工作,即将其处理为黑箱时,就称其为Agent,其典型的结构框图[2]如图1所示。

图1 Agent的典型结构Fig.1 The typical structure of Agent

Agent与分布式人工智能系统一样具有协作性、适应性等特性,此外,Agent还具有如下重要性质:

1)行为自主性 Agent能够控制它的自身行为,其行为是主动的、自发的、有目标和意图的,并能根据目标和环境要求对短期行为作出规划。

2)作用交互性,也叫反应性 Agent能够与环境交互作用,能够感知其所处环境,并借助目己的行为结果,对环境做出适当反应。

3)环境协调性 Agent存在于一定的环境中,感知环境的状态、事件和特征,并通过其动作和行为影响环境,与环境保持协调。环境和Agent是对立统一体的两个方面,互相依存,互相作用。

4)面向目标性 Agent不是对环境中的事件做出简单的反应,它能够表现出某种目标指导下的行为,为实现其内在目标而采取主动行为。

5)存在社会性 Agent存在于由多个Agent构成的社会环境中,与其他Agent交换信息、交互作用和通信。

6)工作协作性 各Agent合作和协调工作,求解单个A-gent无法处理的问题,提高处理问题的能力。

7)系统适应性 Agent的程序在启动后,能够在相当长的一段时间内维持运行状态,不随运算的停止而立即结束运行。

8)系统适应性 Agent不仅能够感知环境,对环境做出反应,而且能够把新建立的Agent集成到系统中而无需对原有的多Agent系统进行重新设计,因而具有很强的适应性和可扩展性。

9)结构分布性 在物理上或逻辑上分布和异构的实体(或真体),如主动数据库、知识库、控制器、决策体、感知器和执行器等,在多Agent系统中具有分布式结构,便于技术集成、资源共享、性能优化和系统整合。

10)功能智能性 Agent强调理性作用,可作为描述机器智能、动物智能和人类智能的统一模型。

2.1 Agent间的协作与协调问题

1)多Agent系统的体系结构[3]

从通信的角度出发,多Agent系统的体系结构一般可分为3种,如图2所示。

图2 多Agent系统的体系结构Fig.2 Multi-agent system structure

从图2中可以看出:(a)系统中的Agent直接通信,结构简单,易于实现,适用于Agent个数较少的MAS系统;(b)系统中的Agent未直接通信,而是通过协调者转发消息,寻求适当的合作伙伴,有利于平衡系统的通信负载,而协调者的处理机制决定了整个系统的效率,适用于大多数MAS系统;(c)系统中的Agent组成若干Agent联盟,每个联盟拥有自己的协调者,各个联盟内部的通信类似于图2的(b),联盟之间的通信由各协调者实现,结构比较复杂,适用于大型MAS系统。实践中,可根据实际情况灵活采用上述的体系结构,或与各种结构相结合,创造适合需求的系统模式。

2)多Agent系统的协作、协商和协调

在计算机科学领域,最具有挑战性的目标之一就是如何建立能够在一起工作的计算机系统。

由于多Agent系统中信息和资源的分布性以及系统中各个自治或者半自治Agent所拥有能力的有限性,为了实现系统设计的任务和目标,系统中的各个Agent需要进行有效的协同工作。另外,主体间的协作也是多主体系统与其他相关研究领域(如分布式计算,面向对象的系统,专家系统等)区别开来的关键性概念之一。

随着计算机系统越来越复杂,如何将智能的自主系统(即主体)集成起来,则更具挑战性。而主体间的协作是保证系统能在一起共同工作的关键。

Agent之间的协作和协商是多Agent研究的核心问题之一。多Agent协调是指多个Agent通过协调各自行为,合作完成共同目标。具有不同目标的多个Agent对其目标、资源等进行合理安排,以协调各自行为,最大程度的实现各自目标。协调是对环境的适应,在这个环境中存在多个Agent并且都在执行某个动作。协调一般是改变Agent的意图,协调的原因是由于其他Agent意图的存在。协作是非对抗的Agent之间保持行为协调的一个特例,它通过适当的协调,合作完成共同目标。同时,由于应用领域,问题求解方法,技术实现途径等的差异性和复杂性,Agent间进行协同的方式多种多样,既有涉及冲突问题消解的协商,对立性的竞争,又有非对立性,友好的合作。其中请求/服务是多Agent系统中一类典型的合作方式。

对策和学习是Agent协作的内在机制[4]。Agent通过交互对策,在理性约束下选择基于对手或联合策略的最佳响应行动。Agent的行动选择又必须建立在对环境和其他Agent行动了解的基础上,因而需要利用学习方法建立并不断修正对其他Agent的信念。Agent的协作始终贯穿着对策和学习的思想。多Agent系统的协作,从本质上说是每个Agent学习其他Agent的行动策略模型而采取相应的最优反应。Agent学习方法包括贝叶斯学习和强化学习等,强化学习是多Agent系统的主要学习方法。近年来,以互连网为实验平台,设计和实现了具有某种学习能力的用户接口Agent和搜索引擎Agent,它们已经成为多Agent学习系统,在人机协作系统中,人也是一个Agent。

使用对策论研究多Agent协调、协作是目前MAS研究的一个热点,这是因为对策论被公认为研究人类交互的最佳数学工具,将这一工具应用于多Agent的交互是很自然的。传统对策论的协调与协作一般通过建立对方效用模型实现。多Agent的协调与协作有如下3个实现方法:

①无通讯的协调(协作),其方法与传统对策论相似。

②有中心控制的通信协调:类似于传统操作系统的方法。

③协商:协商是多Agent系统实现协同、协作、冲突消解和矛盾处理的关键环节,其关键技术有协商协议、协商策略和协商处理3种。

2.2 移动Agent技术

Internet和WWW己成为世界范围内的电子商务工具。Internet用户的不断增长将在网络学习中带来无限希望。同时,网络低带宽,高延迟越来越成为限制网络应用发展和推广的一个瓶颈。人们希望通过软件来解决这个矛盾,移动A gent就是在这种形式下提出的一种新的分布式计算模型。

移动Agent模式的关键特征[5]就是网络中的任一主机都拥有处理资源、处理器和方法组合的高度灵活性,方法没有锁定在一台主机上,而是在整个网络内共享。移动Agent模式为分布式系统的设计、实现和维护带来了新的活力,该模式能减轻网络负载、克服网络隐患并封装协议。移动Agent的应变能力具有自然异构性,移动Agent的异步自主运行具有健壮性和容错性,移动Agent不同于网络执行,它能够不断地从一个网络位置移动到另一个位置,也能够根据自己的选择进行移动。移动Agent不同于进程迁移,一般来说系统不允许进程选择迁移的时间和地址,而移动Agent带有状态,所以可以根据应用的需要在任意时刻移动,并可移动到它想去的任何地方。移动Agent不需要统一的调度,由用户创建的Agent可以在不同节点上异步地运行,待任务完成后再将结果传送给用户。为了完成某项任务,用户可以创建多个Agent,同时在一个或若干个节点上运行,形成并行求解能力。

因此,随着网络教育的发展,就需要移动Agent技术来解决网络教学中对教学情况的控制和监督以及与其他Agent之间的通讯交流。

移动Agent支持离线运行,提供本地交互和多跳的解决方式,对网络考试系统具有发放(push)和回取(pull)两种工作形式。网络考试对于每个考生的实时信息非常敏感,移动Agent降低了网络负担,Agent可以被派遣到远地去搜索信息,并创建新的Agent处理具体的内容,把有用的数据返回本地,免去了数据的大量传递,因此很适合用于网络考试系统。

3 CSCL技术

3.1 CSCL定义

计算机支持的协同学习[6](以CSCL)是由计算机支持协同工作(CSCW)与合作学习的理论和教育方法相结合而成的一种新的学习方法研究。由于多媒体网络的发展,这种通过人-机交互、机-机交互间接实现的人与人交互仍然可以拥有视听觉形象系统通道和视、听觉符号信息通道。因此CSCL的交互包含有面对面、文字和图像以及视频媒体、程序软件等交互形式的不同特点,进而保证了学习者之间进行有效协作所需的必要交互。

在支持协同工作与环境中,教师提出一个明确的任务,学生以小组的形式组织,分工合作,有的用计算机查资料,有的进行一部分计算与信息处理,形成文档,小组共同完成该任务;教师观测学习的进行过程,并组织小组的交流,相互帮助与竞争,保证教学目标的实现。这种学习方法不仅让学生像专业人从事工作一样利用计算机环境解决问题、进行学习有关知识和培养解决问题的能力;而且以小组形式组织,分工合作、既有合作与相互帮助的一面,又有竞争与达到目标的一方面,它的发展正引起广泛注意。

3.2 CSCL的交互与协作机制

在CSCL环境中,要注意设计两类合作和协商关系[7]:

1)学生与学生的合作 这是合作学习的关键,学生的合作互动取决于如下几个因素的设计:问题(任务)的提出、回报的获得,小组的状态,交互的技巧等。

2)教师与学生的合作 教师作为学习过程中的主导人物,引导、帮助、促进学生的学习。

一个CSCL系统按从低层到高层可依次划分协作链路层、协作控制层、互学习层等3个层面。因此,交互性和协作性是实现 CSCL系统最关键的两个问题。CSCL的交互包含有面对面、文字和图像以及视频媒体、程序软件等交互形式的不同特点,进而保证了学习者之间进行有效协作所需的必要交互。CSCL的交互是为实现最终协作学习的必要条件,解决交互问题仅仅是CSCL实现的第一步骤,要使学习者产生协作学习行为,必须提供协作的机制[8]。

1)支持共享信息 提供共享信息的功能,不仅可以使成员个体获得更多、更广、更新的信息,而且也会使协作组成为信息接受的整体,加强内部凝聚力。

2)支持共享活动 协作学习目标的实现都是通过一系列共享活动如集体讨论、轮流发言、流线操作等来实现的。

3)支持角色扮演 协同学习中学生,教师,管理员各司其职,共担荣辱。

4)支持创造行为 学习过程中达到此目标的过程是多维的,协同学习过程本身就会促进个体自身学习观念、方法等内部知识、技能结构的极大丰富,所以新的观点、思路、策略常常会涌现出来。

5)支持控制管理 由于学生在学习过程中交互多样化而且极为复杂,各个成员的学习行为也大不一样,为使协作和谐一致,需要完善的控制管理策略。

4 结束语

从逻辑上讲,一个分布式系统可以定义为由多个相互作用的Agent组成的系统,各种分布式系统的差异主要表现为其中Agent的角色和交互方式上的差别。例如分布式客户/服务器系统是这样的分布式系统,其中的Agent或为客户或为服务器,交互关系仅限于客户主动请求/服务器被动服务的交互方式。然而,这种基于Agent的分布式系统[9]观使人们跳出了客户/服务器系统的局限,适应了应用需求的发展。

[1]曹晓叶.基于Web的个性化、智能化计算机辅助教学系统改进及实现[D]广州:华南理工大学,2002:52-54.

[2]王晓东.基于Ontology知识库系统建模与应用研究[D].上海:华东师范大学,2003:64-69.

[3]刘韶峰,廖力清.基于粗糙集理论的馈线自动化技术[J].传感器世界,2009(6):45-47.LIU Shao-feng,LIAO Li-qing.Rough set theory based feeder automation technologies[J].Sensors World, 2009 (6):45-47.

[4]翟军昌,秦玉平,王春立.基于多Agent的垃圾邮件过滤系统的研究 [J].长春理工大学学报:自然科学版,2009(2):58-59.DI Jun-chang.QIN Yu-ping.WANG Chun-li.Multi Agent based spam filtering system[J].Changchun University of Technology:Natural Science,2009 (2):58-59.

[5]孙筱川,赵敏,顾伟,等.VxWorks下多Agent现场总线测控系统设计[J].计算机技术与发展,2009(6):32-35.SUN Xiao-chuan,ZHAO Min,GU Wei,et al.VxWorks multi Agent field bus control system design[J].Computer Technology and Development,2009 (6):32-35.

[6]周敏,占铭,郭媛.基于知识驱动的大型设备智能预测决策模型研究[J].机械科学与技术,2009(4):47-48.ZHOU Min,ZHAN Ming,GUO Yuan.In the large-scale knowledge-driven decision-making model for intelligent predictive device[J].Mechanical Science and Technology,2009(4):47-48.

[7]尤杰,韩松臣.基于多Agent的机场场面最优滑行路径算法[J].交通运输工程学报,2009(1):63-65.YOU Jie,HANG Song-chen.Agent-based multi-path algorithm airport scenes optimal sliding[J].Traffic and Transportation Engineering,2009 (1):63-65.

[8]熊金泉,古和今,段隆振.基于XML的多Agent通信体系结构[J].南昌大学学报:理科版,2008(3):78-80.XIONG Jin-quan.GU He-jin,DUAN Long-zhen.XML-based multi-agent communication architecture[J].Nanchang University:Natural Science,2008 (3):78-80.

[9]生桂勇.基于Agent的分布式计算[J].现代电子技术,2009(12):52-54,58.SHENG Gui-yong.Distributed computing based on Agent[J].Modern Electronics Technique,2009(12):52-54,58.

猜你喜欢
协作分布式环境
长期锻炼创造体内抑癌环境
一种用于自主学习的虚拟仿真环境
孕期远离容易致畸的环境
团结协作成功易
环境
分布式光伏热钱汹涌
分布式光伏:爆发还是徘徊
协作
协作
基于DDS的分布式三维协同仿真研究