多智能Agent系统

2024-05-28

多智能Agent系统(通用9篇)

多智能Agent系统 篇1

0 引言

智能电网的发展方向是建设具有灵活、清洁、安全、经济和友好等性能的电网。可见,节能发电智能调度是实现智能电网关键的一环。与传统的调度系统相比,智能调度具有“多目标”、“可控制”、“自适应”、“自处理”、“自决策”和“快速性”等特征[1,2,3,4]。所谓“多目标”是指系统能协调“安全”、“经济”、“节能”和“环保”等多目标,可根据不同的任务状态制定不同的目标函数,最终达到总体最优的运行状态,即“多目标趋优”。“可监控”指可监测及控制设备的运行状态,出力情况及电网的潮流分布。“自适应”指可根据系统运行方式及实际情况设置运行参数,或充分利用风能及水情预测确立相应的约束。智能电网下,广而多的分布式发电的接入,随时都会导致系统功率失衡,因此应在调度过程中加以考虑和应用其预测结果,确立相应的备用及出力等约束,从而提高系统运行的经济性和可靠性。“自处理”系统能自动处理目标函数及约束的变化,并采用合理的算法解算出满足安全、经济、环保及节能的调度计划,指导系统运行。“快速性”主要指系统具有较强的负荷跟踪能力,能快速响应负荷的波动。此外,要有足够的旋转备用,以弥补负荷的突然变化和难以预计的发电机组开断所引起的功率失衡。大规模风电并网后,风电的随机波动与负荷的波动叠加在一起,使系统面临的不确定因素更大,因此需要配置更多的旋转备用。而备用配置过多会增加运行成本,过少则会增加运行风险,因此风电场的日前调度问题应着重考虑充分利用电网备用。

可见,传统的人工协调调度方式不可能满足智能电网下调度的要求。基于此,本文通过构建智能电网下节能发电调度的功能结构,充分利用多Agent的智能分散协调控制优势[5,6,7,8,9,10,11,12],建立实现节能发电调度的分布式智能系统。系统根据各功能结构设计单个Agent的目标及推理机制,当运行状况发生改变时(如风速、可用水量和机组出力等),各Agent能感知外部环境和条件的变化,通过相互协调、协商,获取所需知识和数据,按照定义的规则,启动推理及解算器,实现预期目标。同时各Agent相互独立,达到并行工作的效果,从而大大缩减调度决策时间。最后,以某一系统故障为例,对比说明了多Agent智能调度系统的调度决策过程,结果验证了该系统的“智能特征”,为实现智能电网环境下节能发电调度开辟一个有效的实施途径。

1 节能发电调度方式

节能发电调度方式[13,14,15,16,17,18,19,20,21]与传统的调度运行方式相比发生了重大的变革,其计划制定方式从传统的均衡发电到按机组的能耗排序发电;管理方式从传统的简单粗放到精细化边际化管理;调度运行方式从传统的仅考虑安全裕度到综合考虑安全、经济、节能和环保。也就是说,节能发电调度机组组合是考虑新能源在内的多种电源的组合优化,实现节能、环保和经济的综合目标。图1示出了节能发电调度的主体流程,从流程看,节能发电调度计划制定需要考虑负荷、备用、检修及安全等众多因素,仅依靠人工难以完成,因此建立能综合考虑上述因素的节能发电调度计划制定分布式系统势在必行。

2 节能发电调度分布式系统的实现

2.1 智能调度分布式结构

图2中,系统被封装为三种类型Agent,即控制Agent,协调Agent和基本功能Agent。控制Agent感受外界环境变化而对任务进行辨识和分解,基本功能Agent包括制定机组发电顺序、调峰调频、安全稳定控制、市场管理和备用管理等。控制Agent是系统的中心操作员,指挥协调Agent按照目标要求制作一个发电计划表。协调Agent属于移动的Agent,其通过在网络访问所有的基本功能Agent,为每个时间段寻找和评估出一个满意的发电计划。全局约束条件在协调Agent巡访基本功能Agent的时候得满足;每个基本功能Agent负责提供和校验局部约束条件的工作。

智能电网下,电网将建设为一个具有较强交互能力的综合型网络,能使其实现信息、电力数据的实时交换,上述各Agent之间能实现实时高速的数据信息交换。当运行条件发生变化,如负荷变化、机组故障或风速突然减弱,则对应负荷管理Agent、机组Agent发生改变,从而更新基础信息管理Agent。备用Agent等各功能Agent感受到变化时,将启动其目标检测部分,当目标与外部变化相关时,则执行其推理器,完成任务后将结果传给协调Agent,若检测到变化与其无关时,则拒绝工作,并告知协调Agent。协调Agent综合上述Agent的结果,重构一个调度模型并将模型传给调度决策Agent进行解算决策。调度决策Agent将待解算模型分解给n个计算Agent,多个Agent进行并行计算,最后将结果传给调度决策Agent,调度决策Agent综合结果并公布。

可见,该模型能自动感知外界运行状态和条件的变化,Agent之间通过相互协商、协调和协作,共同制定对应的调度决策,具有高度的智能性和自适应性。同时,各功能Agent相对独立,并行多线程工作,提高调度决策的速度,及时跟踪电力系统运行中的各种变化,具有快速性,从而保证电网安全稳定运行。

2.2 各功能Agent的设计

功能Agent结构如图3所示,其由通信接口部分、任务控制部分、推理部分和知识库等四部分组成,各部分的功能介绍如下。

(1)通信接口模块负责与其他Agent间的通信,它是机组组合Agent与其他Agent进行相互作用的桥梁。

(2)任务控制部件,该部分保存了对Agent能力的描述,任务控制策略以及整个多Agent系统方法论知识的表述。若外部请求到达时,任务控制模块首先判断它的请求是否在自己的能力范围内,当不能完成请求时,则通过通信模块发出消息告知拒绝该请求;否则,则根据规则告知移动Agent,并启动推理机进行工作。

(3)推理部分。按照其所需完成功能制定相应的执行规则或算法,从而顺利完成任务。

下面对本文所涉及的各功能Agent的推理器进行介绍:

(1) 调峰调频Agent

节能发电调度环境下,制定机组发电计划时,应充分体现机组的调峰调频能力。该Agent负责确定参与调峰、调频、调压和备用的机组。其制定规则为:

规则1:有调节能力水电厂应充分发挥其调峰、调频作用,按预先制定的水库水位控制计划安排发电负荷;

规则2:天然气、煤气化发电机组按照气源情况和系统负荷特性参与电力系统调峰运行;

规则3:电力调度机构应积极开展流域水电优化调度和水火联合优化调度,提高水资源利用率,并充分发挥水电的调峰、调频作用;

规则4:电网调峰任务原则上由抽水蓄能、有调节能力的水电机组、燃气、燃油机组承担,必要时火电机组应进行深度调峰或启停调峰;

规则5:抽水蓄能机组根据电网调峰调频的需要安排发电和抽水;

规则6:天然气、煤气化发电机组按照气源情况和系统负荷特性参与电力系统调峰运行。

该Agent按照上述规则,确定在各时段的必开机组,从而满足电网调峰调频的需要。

(2) 发电序位管理Agent

根据机组的安全、环保及经济等指标,制定机组的发电序位,以体现节能降耗。按照节能发电调度的要求,可在其推理器设置如下排序规则[21]:

规则1。对不同类型发电机组,调度优先顺序为:

a)无调节能力的风能、太阳能、海洋能、水能等可再生能源发电机组;

b)有调节能力的水能、生物质能、地热能等可再生能源发电机组和满足环保要求的垃圾发电机组;

c)核能发电机组;

d)按“以热定电”方式运行的燃煤热电联产机组,余热、余气、余压、洗中煤和煤层气等资源综合利用发电机组;

e)天然气、煤气化发电机组;

f)其他燃煤发电机组,包括未带热负荷的热电联产机组;

g)燃油发电机组。

规则2。对于同类发电机组,考虑安全、环保及经济等综合性指标,其主要涉及可靠性指标(R),经济性指标(E),环保指标(D)和热电比(H)等,分别赋予权值aR,aE,aD和aH,于是按如下式子计算其排序指标,按指标从大到小进行排序。

其中,aR+aE+aD+aH=1,可以由调度人员根据实际运行进行设置。

各指标的确定规则如下:

a)可靠性指标为发电机组的安全可靠运行的概率,由调度人员根据实际需要设定。

b)经济性指标按照单位出力消耗一次能源水平来确定,如火电机组则用单位出力耗煤量表示,燃油机组则用单位出力耗油量表示,水电机组则用单位出力耗水量表示,依此类推。

假设机组运行的经济性与出力的函数关系为E(P),则经济性指标的计算公式为:

c)环保性指标采用单位出力排放有害气体总量来表示,假设机组运行时的某种气体排放量与出力的关系为Di(P),则环保性指标的计算公式为:

d)热电比指标采用单位出力转换热量表示,即转换效率。假设机组热电转换的函数关系为H(P),则热电比指标的计算公式为:

式(2)、(3)和(4)中,P和Pmax分别为机组的出力和最大出力限制。

(3) 市场管理Agent

该Agent充分考虑电力市场的因素,使节能调度方案与电力市场平滑衔接和过度。在制定发电计划过程中应体现“三公”调度原则,跨区跨省地购销合同,阻塞管理及企业的利益调整和补偿等电力市场因素,如调峰、调频及备用的经济补偿。

该Agent主要负责计算机组的合同完成率,省际间或区域间的交易合同,提供该机组当日出力的上下限Pmin和Pmax,从而为制定发电计划提供依据。其计算规则为,假设某外资发电机组购电合同总量为P总,从合同生效之日至今累计发电量为P实,现距合同结束时间为T,则该机组当日发电的上下限可按式(5)确定:

Pmax设为机组出力的上限。

(4) 目标管理Agent

与传统的调度目标相比,智能调度的目标不仅仅考虑经济性,其目标应综合协调考虑经济性、节能环保性,安全性和可靠性。具体有如下几种形式。

1)运行费用最小;

2)购电成本最小;

3)反映资源配置效率的社会总收益最大;

该Agent通过其任务管理器确定目标函数的形式,并将其交给协调Agent。

(5) 机组管理Agent

该Agent通过可利用资源的情况,确定机组出力的上下限。

确定规则为:

1)除水能外的可再生能源机组按发电企业申报的出力过程曲线安排发电负荷。

2)无调节能力的水能发电机组按照“以水定电”的原则安排发电负荷。

3)对承担综合利用任务的水电厂,在满足综合利用要求的前提下安排水电机组的发电负荷,并尽力提高水能利用率。对流域梯级水电厂,应积极开展水库优化调度和水库群的联合调度,合理运用水库蓄水。

4)资源综合利用发电机组按照“以(资源)量定电”的原则安排发电负荷。

5)核电机组除特殊情况外,按照其申报的出力过程曲线安排发电负荷。

6)燃煤热电联产机组按照“以热定电”的原则安排发电负荷。超过供热所学的发电负荷部分,按冷凝式机组安排。

7)火电机组按照供电煤耗等微增率的原则安排发电负荷。

(6) 安全管理Agent

该Agent不仅能为调度决策Agent提供安全稳定约束,且能独立完成安全稳定校核任务。

当任务管理器接受的任务为重构安全稳定约束时,此Agent依据《电力系统安全稳定导则》和相关安全规定的要求,为开停机方式和负荷分配提供安全稳定校核的约束,从而使调度结果满足安全稳定要求。该Agent的推理器根据系统的运行状态(如正常状态、异常或紧急情况和事故状态)或不同的网络拓扑情况,重构相应的安全稳定约束有电压无功约束,线路热稳极限,线路传输容量,断面传输功率,电网的N-1约束,区域最小开机约束,其他复杂网络约束等。并将约束通过协调Agent送给调度决策Agent,从而使所制定方式满足继电保护和安全稳定的要求。

当任务管理器接受的任务为对某种运行方式进行安全校核时,该Agent的推理器根据上述所获取的安全稳定约束(如图4所示)判断所给运行方式是否存在可行解。

即采用内点法求解如下模型,若收敛则说明运行方式可行,否则该运行方式不能满足安全稳定要求。

(7) 检修管理Agent

该Agent主要是确定可以安排检修的机组。燃煤、燃气、燃油发电机组检修应充分利用年电力负荷低谷时期、丰水期进行。各级电力调度机构应依据负荷预测结果和排序表,在保证系统运行安全的前提下,综合各种因素,优化编制发电机组年、月检修计划;依据短期负荷预测结果,安排日设备检修工作。

当该Agent接受了安排检修机组的任务时,其知识库向推理器提供负荷及备用约束、安全约束等,推理器计算校核各约束是否能满足,若能满足则该Agent同意批准该检修计划,否则不予安排。

也就是知识库建立含系统控制变量和状态变量的一组非线性约束:

a)网络潮流约束;

b)备用约束;

c)母线或变压器上的最大允许电流约束;

d)馈线的容量约束;

e)系统中各节点电压幅值约束。

即可转化为如下模型:

该Agent的推理器通过内点法求解模型,由该模型是否有解判断由a)-e)方程组是否存在可行解。

(8) 调度决策Agent

该Agent负责提供调度的决策和指令,负责机组发电组合调整,负荷分配,发电机出力调整及机组检修、调峰、调频及备用容量的安排等。

该Agent通过协调Agent获取各功能Agent的结果,从而得到含决策变量优化模型的目标函数和约束,表示为如式(8)所示的模型。

其推理器为基于内点法求解非线性规划的求解器,具体步骤可参照文献[20]。

(9) 备用管理Agent

安排备用容量应满足《电力系统安全稳定导则》和有关行业标准的要求,在不同类型机组和地区间合理分布。在智能电网下,大规模的风电并网后,风电的随机波动与负荷的波动叠加在一起,使系统面临的不确定因素更大,因此需要配置更多的旋转备用。而备用配置过多会增加运行成本,过少则会增加运行风险,因此节能调度问题应着重考虑如何优化和利用电网的备用。其推理器综合考虑逻辑推理和解算结构两种形式。

解算形式:

数学优化模型:

变量:承担旋转备用机组的出力。

备用:运行机组的容量-出力。

目标函数为:系统在调度周期内总备用最小。

约束:

a)系统功率平衡方程;

b)机组输出功率约束;

c)机组爬坡率约束;

d)节点电压约束;

e)输电线路电流约束;

f)机组备用容量约束;

g)系统稳定性约束;

h)输电线路容量约束;

i)联络线传输容量约束;

j)区域系统频率偏差约束。

从而得到如式(8)所示的数学模型,其推理器为基于内点法求解非线性规划的求解器。

推理形式:

上述的备用管理Agent。也可按如下规则确定备用。

式中:s1为平衡瞬间负荷波动与负荷预计误差的旋转备用容量,经验值为预测最大发电负荷的2%~5%,高峰时段按下限控制;s2为事故备用的可供短时调用的备用容量,经验值为预测最大发电负荷的10%左右,且不小于系统中最大单机容量或电网可能失去的最大受电功率;s3为满足运行机组周期性检修所需的检修备用容量,经验值为预测最大发电负荷的8%~15%;s4为应对水电来水以及其他可再生能源发电能力波动的备用容量,可依实际需要留用;s5为应对重大节假日和重大活动的备用容量,依实际需要留用;s6为应对新建机组投产日期不确定性和运行初期不稳定性的备用容量,依实际需要留用。

s1、s2、s3、s4、s5和s6可由该Agent与调度员交互,由调度人员根据实际经验确定,或该Agent通过建立最优备用模型自主确定。

2.3 Agent间的协作

智能调度系统中,在各个Agent不断地对其他Agent发送信息或服务求解,或者不断地响应其他Agent的消息的过程中,智能调度系统的功能得以实现。各类Agent的协作关系如下:

(1) 协调Agent:

是系统中最活跃的Agent。在其接收到控制Agent的命令之后,巡访所有的功能Agent,并和基本功能Agent进行沟通协商。通过与其他类型的Agent协商,完成在计划周期内的机组的开/停,和出力/备用容量状态的计划。协调Agent有自己的沟通规则,这些规则可使它的任务完成得更为出色,获得更加令人满意的短期发电计划。

(2) 基本功能Agent:

存在于每台机组的控制计算机,或者每个独立电厂的服务器上。其知识库中保存有机组的完整特性信息和相应的一系列规则(约束条件)。这些Agent不能移动,但是掌握着一些和协商Agent的简单计算规则和函数,并具有判断某些约束条件和自动改变机组状态(如:开/停状态)的功能。它们可独立完成某种任务,检修管理Agent能审核检修计划,安全管理Agent能校核系统安全性。同时,也能通过协调Agent为调度决策Agent提供对应的约束条件,从而获得最大利润的出力/备用参考服务计划。

(3) 调度决策Agent:

是系统的中心决策者。运行与控制中心的服务器上(例如,嵌入在电力系统监视和控制系统中),与其他分散在各地的计算机用网络相连。它从其他的支持系统获得预测数据(负荷/备用需求,实时电价,备用电价等),并命令协调Agent根据预测数据去完成短期发电计划任务。能观察到基本Agent的状态信息,还能发送调节发电信息要求给协调Agent,并等待接收协调Agent的应答。

以制定某日方式为例,介绍Agent间的消息传递过程,如图5所示。

(1)控制Agent接收到外界发送的“制定日调度计划”通知消息;

(2)控制管理Agent根据功能对任务进行分解,产生n个子任务,并向协调Agent发送消息;

(3)协调Agent收到子任务消息通知后,根据子任务的目标向各功能Agent发送任务消息,并等待结果;

(4)各功能Agent完成任务后,向基础数据管理Agent发送消息索取所需数据;

(5)基础数据接受到所要数据消息后,将数据返回各功能Agent;

(6)各功能Agent接到数据通知后进行计算,并将完成情况以信息形式返回协调Agent;

(7)协调Agent获得所有功能Agent的回应后,给调度决策Agent发送通知,并向其传送数据;

(8)调度决策Agent接受到任务后,向基础数据管理Agent发送消息索取所需数据;

(9)基础数据接受到所要数据消息后,将数据返回各功能Agent;

(10)调度决策Agent获得数据后,启动并行推理计算,并将结果通知协调Agent;

(11)协调Agent接受到结果通知后,向控制Agent返回调度结果;

(12)控制Agent通过通信管理Agent执行或公布调度决策。

至此,完成整个通信过程。

根据对Agent之间协作关系的讨论,可以看出在智能调度系统中,若干管理Agent起着主导作用,其他Agent则响应它的控制,提供服务,处于从属地位。这是一种主从服务的协作关系。例如,任务管理Agent和资源管理Agent之间存在服从关系。另外,在Agent之间还存在一种对等的协作关系,这些Agent处于平等的地位,彼此之间相互提供服务。例如,在单元管理Agent之间的协作就是对等的。

3 智能调度多Agent系统的应用举例

为了验证该智能调度多Agent系统的自适应性、智能性和快速性,本文采用如图6所示的某区域智能电网[21],对比说明传统调度系统与多Agent智能调度系统的决策过程。

(1) 传统自动化调度系统工作过程

0.6 s

如果发电机G1突然发生故障,变电站B的调控计算机一般会关闭L3号线,以减少供电需求。但是现在G1发电机是系统有意停止运转的,因此整个1号地区的计算机便发出通知,决定让一家大型工厂停止生产,大大降低供电需求。这一措施减少了发电量之间供不应求的状况,以保证诸如路灯照明和医院之类的重要职能部门的供电。

10 s

几秒钟后,由于供不应求的状况仍然十分严重,变电站的计算机检测到整个1号地区的电压开始波动,波动值超过安全允许的范围,有可能给L3和L4号地区和L7号地区的计算机将发电机G2的控制改为人工操作,并建议1号地区调度中心的调度人员增加发电量减少用电负荷,调度员会采取其中一项措施。

60 s

L3、L4和L7号线路已处于空载状态,而L4号线开始出现过载,该调度中心调度人员通过卫星通信与2号地区的调度员联系,请求帮助。2号地区调度员通过L8号线路发送电力;他们还命令其部门的调控计算机稍微调整供电电流,以平衡因突然借电而带来的电力失衡。一旦维修人员修复了受损坏的L5号和L7号线路,计算机便让L1号线路和发电厂G1马上投入正常运行。至此,三个地区的电力供应全面恢复正常。

(2) 多Agent智能系统工作过程

当系统检测处于紧急运行状态时,控制Agent首先通知1号地区的安全校核Agent,计算该地区满足安全稳定的运行方案,并向控制Agent返回计算结果。

若安全校核Agent计算收敛,则控制Agent将该计算结果返回通信管理Agent,由通信管理Agent执行。假设计算结果为请求2号地区支援50 MW。

2号地区的通信管理Agent接收到指令后,其控制Agent与安全校核Agent通信,安全校核Agent通过推理计算,获取一个满足该地区安全稳定调度方案后,其通信管理Agent通过L8线路发送电力,并按该方案调整本区内。

至此,两个地区电力供应恢复正常。

可见,与传统方案相比,所建立的多Agent系统具有如下特点:

智能性:多Agent能自动感知外部的变化,并通过计算获取合理的调度方案;而传统调度自动化通过调度员来决策,难以考虑众多方面,往往会出现调度不当,扩大事故,从而造成不必要的损失。

自愈性:该系统自动感知外界变化,系统中的多Agent相互协调、协商及协作自动处理了异常情况,所以系统具有很强的自适应性和自愈能力。

快速性:在整个处理过程中,并不需要调度员的处理,全靠计算机来实现,计算机处理的速度远优于调度员,因此,系统能及时跟踪外界的变化。

4 结论

为了实现智能调度,更好地满足智能电网的要求,本文综合Agent理论,节能发电调度实施细节及电力系统运行特点,建立节能发电多Agent智能调度系统,该系统将节能发电调度中复杂抽象的原则、理论、方法、技术与电力专业分析技术紧密结合起来,充分发挥Agent的自主性、自治性以及智能性,形成基于多Agent的人机合作系统,分散协调控制节能调度中所涉及的安全、经济、节能和环保等诸多方面,制定出符合节能发电调度原则的优质调度方式。文中最后通过示例,与传统调度自动化相比,该系统具有更好的智能性,自适应性,快速性和自愈能力,满足智能电网建设的要求。本文研究成果为智能电网下智能调度的建设和实施提供了有效的方案。

多智能Agent系统 篇2

关键词:Agent MES 平台 系统设计 总体设计

中图分类号:TP182 文献标识码:A 文章编号1672-3791(2016)06(a)-0000-00

本文运用构件及分布式对象计算技术构建基于多Agent的MES系统,取得良好的运用效果,推动了MES技术中小企业的推广应用。

1.MES总体设计

1.1 系统总体设计思路

本文将多Agent技术引入到MES系统的分析与设计中,利用多Agent系统的分布式特点,将复杂的问题分解成多个简单的子问题分布求解,构建基于多Agent的MES系统。 MES系统总体设计思路如图1所示。

1.2 MES系统功能模块

本系统根据对MES系统的需求,设计MES系统的功能模块,主要包括物料管理,工单管理, 生产管理, 质量管理, 仓库管理, 追踪追溯六个功能模块,如图2所示

各系统功能模块介绍:

(1)物料管理。该模块主要功能是实现原材料和成品/半成品管理基础资料与物料清单的维护管理。(2)工单管理。管理车间生产过程中工单的生成、记录、流转和统计。(3)生产管理。该功能主要是按照生产线的生产能力、订单的紧急度、生产效率等因素,进行生产任务分配,确保合理安排生产作业的同时能够符合预定交期、符合生产线产能, 并能实时掌握各生产指令的进度状况。(4)质量管理。该模块的功能是根据质量目标来实时记录,跟踪和分析产品和加工过程的质量,以保证产品的质量控制和确定生产中需要注意的问题。(5)仓库管理。对仓库内的原材料、产品等。进行规范管理、提高仓库利用率、大大提高了物流的准确性、实时性等。(6)追踪追溯。通过监视产品在任意时刻的位置和状态来获取每一个产品的历史纪录,该记录向用户提供产品组及每个最终产品使用情况的可追溯性。

1.3调度Agent

调度Agent即通过数据库获得产品工时、设备工时等信息,判断车间工作能力,并根据相关规则进行能力平衡及决策规则、调度算法来最终确定车间的工作任务和作业计划。

2 结语

本文将 Agent 技术与 MES 的任务调度相结合, 以多Agent 技术作为系统的实现形式, 将MES中的各个功能模块通过agent的方式建立,满足生产企业对调度的特殊要求,设计和实现基于多Agent的MES平台,取得非常好的应用效果。

参考文献

[1] 范玉顺,曹军威.多代理系统理论、方法与应用[ M] .北京:清华大学出版社,2002.

[2] 何炎祥,陈莘萌.Agent和多agent系统的设计与应用[M].武汉:武汉大学出版社,2001.

[3] F. Chen, Z. Drezner, J. K. Ryan, etc. Quantifying the bullwhip effect in a simple supply chain: the impact of forecasting, lead times, and information. Management Science.2000,46(3):436-443.

多智能Agent系统 篇3

1 Agent技术概述

Agent技术是人工智能的一种,其概念是由麻省理工学院的著名计算机学家和人工智能学科创始人之一的Minsky首先提出。Agent可以理解为计算社会中的一些特殊个体,它的体系结构就是用软件或硬件的方式来实现Agent的过程[2]。Agent的基本结构如图1所示[3]。

从图1中可知,Agent主要由环境感知模块、执行模块、通讯模块、信息处理模块、决策与智能控制模块以及知识库和任务表组成。环境感知模块、执行模块和通讯模块负责与系统环境和其它Agent进行交互,任务表为该Agent所要完成的功能和任务。信息处理模块负责对感知和接收到的信息进行初步地加工、处理和存储,决策与智能控制模块是赋予Agent智能的关键部件。它运用知识库中的知识对信息处理模块处理所得到的外部环境信息和其它Agent的通讯信息进行进一步的分析、推理,为进一步的通讯或从任务表中选择适当的任务供执行模块执行做出合理的决策。

2 网络智能答疑结构框图

基于多Agent理论的网络智能答疑系统的功能如下:

1)用户通过登陆能对学习过程中遇到的问题,运用自然语言进行提问,并可对提问方式进行选择,也可选择系统自动回答的相关参数。

2)系统可以通过常见问题库、知识库及课件素材库中搜索答案并自动回答用户所提问题,也可以通过e-mail、BBS或留言板等方式使用户的问题得以解答。

3)系统呈现在用户浏览器上的答案应包括两方面内容:一是多媒体形式的问题解答;二是用户应巩固复习的知识点建议、少量练习题等。

4)系统能够自动生成和维护常见问题库(FAQ库),并保持其结构良好性,同时还应该支持专任教师用户的人工维护(增加、删除和修改等)。

多Agent系统强调从整体上对多个Agent集体行为的性质进行分析与定义,因此Agent是能自主学习、适应环境的实体,应用基于多Agent系统的网络教学模式,能克服一般系统的局限和不足,提高了系统的智能性,达到了个性化教育和改善教学效果的目的。基于多Agent思想的智能答疑系统结构框图如图2所示。

智能答疑系统由接口层、功能实现层和数据服务器三层体系,其中接口层由学员Agent和教师Agent通过Internet与数据服务器进行交互,其中接口可以实现学员以多种方式连接系统并且提问;功能实现层是整个系统的应用核心,由Agent自主进行学习、自动答疑、自动交互等功能;数据服务器主要是管理用户资料和存放知识库等大型数据,并且数据库Agent可以自动生成和维护常见问题库。

客户端Agent包括学习者、教师和管理员三类用户,每类用户均通过浏览器登录系统, 经过客户端的Agent处理, 与服务器端的Agent进行联系, 并从服务器端取回相应需要的数据。功能实现层就是各个Agent实体进行通信的过程,由Agent自主进行学习、自动答疑、自动交互;数据服务器Agent在接收到学习者Agent的描述后,会自动根据提取的特征词进行数据库匹配。由于一般数据库层所包含的数据量较大,因此必须使用高效快速的搜索算法进行结果匹配,才能满足多用户同时应用的需求。

3 主要Agent设计

在网络智能答疑系统的设计中,根据网络智能答疑系统的功能,把整个系统拆分为多个Agent系统,并且对主要的Agent进行设计。

总体来看,客户端Agent除了用户的权限有区别外,其他行为模型是一致的,在系统收到客户端信息匹配后,由通信层的Agent进行信息的提取、问题分类等工作。对于人机交互界面的Agents, 主要功能是对身份信息的识别和提取,首先由系统提示用户输入个人信息,然后由交互界面的Agent进行判断,如果用户信息错误,则转到提示错误界面,如果用户信息正确,则转到系统的下层界面,流程图如图3所示。

通信层Agent包括用户管理Agent,用户模型Agent,答疑Agent,教学管理Agent,答疑信息Agent等Agent组件,分别负责用户管理、用户模型匹配、用户提问处理、答疑系统维护等,以答疑Agent为例进行说明。

在答疑Agent中,用户进入提问后,系统给出提问输入界面,等待用户输入。在用于确定提出来的问题后,点击“提交问题”,此时系统的答疑Agent开始工作,工作原理如图4所示。

答疑Agent通过与外界的交互感知了解用户的输入动作,得到用户输入的问题,通过目标分解,把用户问题分解为小问题。通过数据库对问题进行匹配,提取出问题的答案等知识信息。然后在输出层对问题整合,并且最终把整合后的信息传递给用户。

4 结论

本文论述了智能答疑系统在网络教育中的重要地位,介绍了Agent系统和主要结构,分析了多Agent系统在网络答疑中的作用,对整个答疑系统的功能及其功能实现进行了论述和剖析,最后结合系统中的功能,分析了的设计思想和设计思路。

参考文献

[1]绕涛, 林育曼.基于Agent技术的智能答疑系统的研究与设计[J].佛山科学技术学院学报, 2008 (1) .

[2]李英.多Agent系统及其在预测与智能交通系统中的应用[D].上海:华东理工大学出版社, 2004.

[3]张浩.Agent技术在网上答疑系统中的应用研究[D].山西:太原理工大学, 2008.

多智能Agent系统 篇4

摘要:本文对多Agent技术进行了介绍,从个性化服务系统这种应用领域出发对该技术进行了新的改进,提出了一个基于协同Agent的个性化智能服务系统,介绍了系统的组成和运行原理:对系统的核心—协同Agent处理器的构成、运行原理、流程进行了研究与设计。

关键词:多Agent协同Agent智能服务系统

中图分类号:TP311.52文献标识码:A

0引言

随着信息技术和电子商务信息服务平台的建立与应用,企业需要具备更多的销售模式并加入到战略伙伴的供应链上,以提高销售业绩获得更丰厚的利润。同时用户期望获得更加符合个性化需求的服务,电子商务的网络运营商需要不断地改进服务模式和业务流程,来满足用户、供应商和服务商的各种需求。传统企业架构由于技术层与业务层之间不能直接通信,无法满足客户复杂多变的业务需求,而面向用户的个性化智能服务是分布式的智能计算系统。

Agent技术源于分布式人工智能(distributed artificial intelligent,简称DAI)领域。面向Agent方法是在面向对象方法的概念上发展的。建立在人工智能基础上的Agent,能够表达启发式知识,因此面向Agent方法能够较好的解决个性化服务中的很多问题。但由于推荐需求与应用系统之间的差别,推荐系统需要根据Web站点进行定制开发,所以系统移植性差,难以动态有效地管理和维护多个推荐工具和大量数据,但如果定义一组以Agent为核心的概念体系,运用基于多Agent系统的体系结构来理解和认识应用系统,则更能体现自主、个性和智能的自然属性,适用于分布、异构、开放和动态的世界环境,具有更大的灵活性和适应性,从而为企业提供强大的威力和灵活性,本文提出了一种改进的基于协同Agent的个性化智能服务系统。

1基于协同Agent的个性化智能服务系统

协同Agent的个性化智能服务系统框架如图1所示,该系统是一个智能互连环境,它为用户提供资源及所需的知识服务,辅助实现知识创新、协同工作、问题解决和决策支持。其原理是在推荐系统中设置协同Agent处理器,该处理器首先给出一个刻画和分析Agent协作的公共描述框架,然后基于该框架定义了一组协作模型,处理器负责为每个用户设置一个接收用户需求的Agent,然后将需求信息传给合适的协同Agent处理器。模型中,Agent间的交互关系仅仅是请求和服务关系,而且这些Agent是在服务协同Agent管理器中进行协调和控制,即通过协调搜索到一个合适的Agent并向另一个Agent提出服务请求或提供服务。

用户的请求通过协同Agent处理器的处理得到响应。处理器的运作机制是首先以服务信息为来源,由最相邻的服务Agent负责分析用户的需求,结合用户知识库,在服务系统的服务目录库中寻找最相关的服务,如果没有检索到相关服务,则启动服务智能搜索子系统动态形成新服务,结果注册与服务目录子系统中,存储在应用系统本体数据库中。最后通过服务库管理子系统在虚拟服务社区中调用智能推荐子系统,进行商品知识与用户知识的匹配。

2协同Agent处理器设计与原理分析

多Agent协同管理层是系统的核心部分,其结构如图2所示。协同Agent系统与传统的多Agent系统不同的是,该系统不仅定义了Agent的通信语言、协作目的、交互协议和交互过程,而且在各个协同Agent之上构建一个协同Agent管理器。该管理器接收到服务请求后通过任务调度和搜索,组合功能后将这些任务交由系统中的一组Agent执行,管理器先对各种功能的Agent进行评估,选择最合适的Agent执行任务,当Agent完成任务后将结果反馈给协同Agent处理器。

协同Agent处理器主要负责协调Agent网络,Agent之间通过规定的通信语言、通信协议和通信模型进行交互协作完成服务,交互Agent实现智能化的交互,其中具体的功能包括显式收集服务请求信息、隐式服务请求信息、收集信息以及将推荐结果反馈给用户。交互功能的实现由协同Agent管理器搜索Agent网络,找到最近合适的跟踪Agent和交互Agent完成。当用户登录服务系统或登录服务客户端时,由Agent网络中的跟踪Agent主要实现用户信息的隐式收集,系统自动找到一个跟踪Agent获取用户相关数据提供服务。跟踪Agent将记录用户访问模式的数据记录在用户数据库中,同时控制层与推荐层实时的分析点击流数据来实现策略即相关商品页面的实时推荐和制作个性化用户界面。

Agent协调器是在一组Agent之间进行任务的合理分配、实现合作问题求解。其运行方式是以一个管理者的身份进行,它拥有一组任务并且需要将这些任务交由系统中的Agent执行。为了确保这些任务能够得以成功执行并且获得尽可能高的利益,管理者在将这些任务交给Agent之前需要对Agent执行任务的一些性质进行评估,从而将任务交给最为合适的Agent执行,任务执行完后Agent需要将任务执行的结果反馈给管理者,由管理者对这些结果进行汇总和处理。其处理流程如图3所示:

Agent协调器主要是基于服务内容搜索算法、基于用户统计信息搜索算法和基于关联规则推荐算法,控制层分析获得的数据类型和用户需求,自动选择合适的服务算法进行推荐服务,控制层由策略Agent和规则库组成。策略Agent接收来自交互层的数据,根据不同的数据类型以及各种推荐算法的适用范围确立算法规则。算法规则有:接收到用户访问页面的点击流数据则采用基于关联规则推荐算法:接收到用户个人资料信息则采用基于用户统计信息推荐算法;接收到用户评分数据则采用协同过滤推荐算法;接收到文本信息则采用基于内容推荐算法。并将这些算法规则储存在服务规则库中。

规则库是存放算法规则的数据库,算法规则用逻辑语言记录在规则库中,便于算法匹配Agent调用。当Agent协调器通过目标Agent确定具体搜索目标后,在Agent网络中搜索相邻的最合适的Agent进行服务,并产生候选Agent序列进行备选。

Agent评估模块实现算法计算和信用评价,主要是根据目标确立的算法规则,从算法库中调用相关服务算法进行计算得出服务结果。在服务结果中再进行汇总和综合处理。

3结束语

多智能Agent系统 篇5

随着计算机技术和网络等信息技术的飞速发展和应用, 远程教育作为一种全新教学方式受到了全世界人们的重视。远程教育的发展已经历经了三代:第一代是函授教育;第二代是广播电视教育;第三代是利用计算机网络和多媒体技术, 在数字信号环境下进行的教学活动, 被称为“现代远程教育”[1]。现代远程教育是指通过音频、视频 (直播或录像) 以及包括实时和非实时在内的计算机技术把课程传送到校园外的教育。近年来, 随着人们对认知学习理论的研究, 其重要分支建构主义理论越来越盛行, 建构主义认为, 知识不是通过教师传授得到, 而是学习者在一定的情境即社会文化背景下, 借助他人 (包括教师和学习伙伴) 的帮助, 利用必要的学习资料, 通过意义建构的方式而获得。现代远程教育系统如果以建构主义的学习理论和教学理论为指导, 利用多agent技术, 就能够进行智能化、个性化的辅导, 统一世界范围的教育资源, 为学习者构建知识提供更多信息, 从而提高整个远程教育系统的性能, 改善教学质量。因此, 基于多agent的智能远程教育系统必将成为未来教学发展的趋势。

1 Agent介绍

1.1 Agent系统的概念

智能Agent是一个快速发展的领域, 它是分布式人工智能和现代计算机、通信技术发展的必然结果。Agent现最经典和广为接受的定义是Wooldridge等人提出的“弱定义”和“强定义”[2]。

(1) 弱定义:

Agent一般用以说明一个具有自主能力、社交能力、反应能力和预动能力的软硬件系统。

(2) 强定义:

Agent在弱定义的基础上, 还应具有知识、信念、目的、义务等人类所具有的特性。

Agent系统分为单agent系统和多agent系统。单个agent系统研究重点是对计算能力、推理能力、记忆能力、学习能力、直觉能力等的研究和模拟。多agent系统则集中在自主的agent之间智能行为的协调, 他们之间协调各自的知识、目标、技能、规划来产生相应行为或解决问题。

多Agent系统 (Multi-Agent system, MAS) 可定义为:能进行问题求解, 能随环境改变而修改自己的行为, 并能通过网络与其他agent进行通信、交互、协作、协同完成求解同一问题的分布式智能系统。与单个agent相比, MAS能够在现代网络技术中应用的更加广泛。

1.2 多Agent技术在现代远程教育的优势

现有的远程教育只是把传统的课堂教育搬到了网上, 教材以电子化方式呈现, 并没有考虑到智能化、个性化和交互性, 而多agent 技术的出现是解决以上问题的有效方法。多agent技术应用在现代远程教育有着以下的优势:

(1) 各Agent之间能相互通信和作用, 通过相互交流, 能够协作完成任务。

(2) Agent能对分布式教育资源搜索, 建立快速的搜索机制, 找到符合学习者需要的资源和服务。

(3) Agent能将学习者的兴趣、习惯、学习情况用信息化的形式存放到数据库中, 供决策使用。

2 多Agent远程教育平台的研究与设计

建构主义认为学生是学习的主体, 教师是学生的引导者。本系统的设计是以建构主义学习理论思想为指导, 运用多Agent技术, 通过学生模型数据和认知状态来确定在教学过程中采用的教学策略, 在学生学习过程中不断监视学生与系统的交互行为来调整策略, 从而实现一个具有智能性、协作性、个性化的远程教学系统原型。

系统采用B/A/S (浏览器/真体/服务器) 结构, 这样用户只要能上网就可以在任何地方使用系统而不需要安装客户端软件, 实现方便和快捷的访问。系统的总体结构如图1所示。

系统的主要工作流程如下:

(1) 学生通过界面Agent验证登录系统后生成学生Agent。如果学生首次登录系统, 则通过学生Agent注册信息后, 提取注册信息写入学生模型库的学生信息库中。

(2) 学生Agent向系统发出教学请求, 教学过程管理Agent和教学策略Agent相互协作, 根据学生模型库学生信息, 从教学策略库中选择适合当前学生的教学策略, 发送至学生Agent。

(3) 学生Agent根据教学策略, 通过界面Agent的显示, 向学生建议学习的计划安排, 并判断与哪个Agent联系, 实施教学、测验、答疑等行为。

(4) 教学管理Agent通过界面Agent采集的当前学生的行为、兴趣, 以及教学Agent反馈的学生信息, 不断分析学生学习状态, 调整教学策略, 并将分析结果返回学生模型库, 为学生下一步的学习作准备。

(5) 教学Agent顺利完成教学等行为后, 如学生想要继续学习, 则跳至步骤 (2) 。

(6) 教学过程管理Agent将本次学生的学习结果分析后返回学生模型库, 为下一次该学生学习作准备。

3 系统Agent的功能

3.1 学生Agent功能

(1) 学生与系统交互的桥梁, 引导学生学习, 将学生信息发送给系统, 将系统信息反馈给学生。

(2) 根据学生实际情况, 与教学策略Agent交互, 从教学策略库中选择合适的教学策略予以指导。

(3) 与教师Agent建立连接, 申请某类课程或知识教师进行教学辅导。

(4) 与测试Agent通信, 对学生进行测试, 将测试结果反馈给学生, 并将信息保存至学生模型库的测试记录库中。

(5) 与教学过程管理Agnet交互协作, 为教学过程管理Agnet的个性化的教学服务提供必要的学生模型信息。

(6) 与其他学生Agent进行教会交流通信, 讨论问题。

3.2 教师Agent功能

(1) 教师与系统交互的桥梁, 可将教师信息传递给系统, 也可将系统信息发送给教师。

(2) 通过教学过程管理Agent的监视, 了解学生的学习过程和反应, 对学生的理解和行为给出评价。

(3) 接受学生Agent的教学申请, 有针对的, 动态的对学生进行辅导。

(4) 如果学生在学习中出现迷航出错, 教学Agent能及时的予以纠正。

(5) 教师Agent能够按照学生的学习情况, 通过教学策略Agent, 对教学策略进行调整。

(6) 根据学生学习的需要, 对试题库, 教学资源库, 答疑库进行调整和扩充。

3.3 界面Agent功能

(1) 验证用户的合法性, 为登录成功的学生生成学生Agent, 为合法教师生成教师Agent。

(2) 将格式化的系统转换为用户能识别的信息, 通过屏幕显示给用户。

(3) 记录学生的学习行为, 收集学生的学习兴趣:如鼠标的点击, 拖动网页浏览器的滚动条, 浏览学习资料等[3]。

(4) 与教学过程管理Agent交互, 将学习的行为, 兴趣等信息传递给教学过程管理Agent, 以实施个性化的教学。

3.4 教学策略Agent功能

(1) 与教学管理Agent交互, 根据学生模型库中关于学生认知状态和学习记录, 从教学策略库中选择适合该学生的教学策略。

(2) 与学生Agent交互, 将教学策略数据传递给学生Agent对学生实施教学。

(3) 当教学资源库中某种教学资源缺乏时, 教学策略Agent调整对该学生的教学策略。

3.5 教学过程管理Agent功能

(1) 搜索学生模型库, 查看学生以往学习记录, 呈现学生本次学习的教学资料。

(2) 在学生学习过程中, 分析学生的学习状态, 给出学生下一步的学习建议。

(3) 与界面Agent、学生Agent通信, 监视学生的学习会话, 根据学生反馈, 通过教学策略Agent有针对性的调整教学策略, 调整教学材料的呈现方式等方法, 对学生个别指导, 实施个性化服务。

(4) 将本次分析学生的学习结果返回学生模型库, 为学生的下次学习服务。

3.6 测试Agent功能

(1) 测试Agent对学生当前的学习或某一阶段的学习进行出题, 考察学生对知识的掌握情况。

(2) 测试结束后, 将正确答案通过学生Agent呈现给学生, 并把评测结果作出评估后放入学生模型库的测试记录库中。

(3) 与教师Agent联系, 教师可将扩充试题库。测试Agent还能通过互联网搜索合适的试题放入试题库, 完成试题库的更新与扩充。

3.7 答疑Agent功能

对学生提出的常见问题, 能够由答疑Agent从答疑库选择合适的答案来自动解答。如果答疑Agent遇到无法解答的问题, 向教师Agent发出请求, 由教师来回答问题。对新问题的解答由答疑Agent存放到答疑库中以便以后由答疑Agent自动解答。

4 关键技术架构及Agent通信方式

4.1 教学过程管理Agent设计

根据教学过程Agent的功能可以知道, 教学过程Agent对于整个平台的智能化和个性化起着关键作用。教学过程管理Agent的构建如下图2所示。

教学过程管理Agent的定义如下:

〈教学过程管理Agent〉::=〈AgentID、通信接口、过程管理控制器、学生模型库〉

〈过程管理控制器〉::=〈学生信息库、学生认知库、学生个性库、测试记录库的查询、更改〉

〈学生模型库〉::=〈学生信息库、学生认知库、学生个性库、测试记录库〉

相关数据库解释如下[4]:

学生信息库:存放学生的基本情况。如姓名、帐号、密码等。

学生认知库:存放学生的学习进度和认知程度。

学生个性库:学生的特征、学习能力等信息。

测试记录库:记录学生每一次测试的成绩、出错的情况及试题掌握的程度。

4.2 Agent之间的通信

本系统Agent间的通信采用KQML通信语言进行通信。KQML是一种最通用的Agent通信语言, 它既是一种Agent之间的消息表达格式, 也是一种消息处理协议, 支持Agent之间运行是知识共享[5]。

5 系统的实现思路与运行效果

5.1 系统的实现思路

根据上述设计思路与功能, 本系统开发采用Java语言为基础语言, 设计系统中的各个Agent的算法, 以实现Agent所需的功能。采用JSP作为动态网页设计开发技术, 完成人机交互的界面。系统的数据信息的存储采用了SQL Server2000作为后台数据库来存储数据, 数据库的连接使用JDBC和平台无关的API来实现。

新用户通过注册模块, 来实现注册, 并验证输入信息是否正确, 如不正确, 提示原因。注册后的信息插入学生或教师信息表中。用户登录模块实现学生或教师的登录, 用户输入用户名和密码, 系统与后台数据库匹配, 如正确, 则进入学生或教师主页面, 若不正确, 提示出错信息。

学生登录成功后进入学生主页面。学生主页面上显示三个按钮:“继续上一次学习”、“系统推荐学习”、“自主学习”。选择“继续上一次学习”进入到上次还没有完成的学习内容。选择“系统推荐学习”可以进入到教学过程管理Agent和策略Agent, 根据学生的兴趣、学习状态、认知能力等所推荐的学习内容的页面中。选择“自主学习”进入全部课程中学习。在自主学习页面中, 学生选择相应的课程, 会进入到课程页面, 课程页面左侧显示了该课程的所有学习内容, 包括“课程公告”、“课程信息”、“课程资源”、“课程测试”、“答疑中心”、“课程交流”模块。学生可以在其中自行选择来学习。

教师登录成功进入到教师主页面, 登录后可显示按钮:“通知管理”、 “学习申请管理”、“答疑管理”、“课程管理”、“题库管理”、“学生管理”。选择“学习申请管理”模块, 可以查看学生的学习申请, 并相应学生, 对学生进行辅导。

“答疑管理”模块包括了问题的检索、提出问题、常见问题、未解答问题、分析统计等功能。进入“课程管理”, 用户可以对所属课程的简介、大纲、教学计划、资源、指导等进行添加、编辑, 还能够创建和管理课程的章、节、知识点结构。“题库管理”包括了习题的批量导入, 单个习题的查询、修改等功能。“学生管理”可以对正在登录学习的学生进行监控, 对学生的信息进行管理。

5.2 系统的运行效果

智能远程教育系统的基本功能实现以后, 对该系统进行了试用, 实际表明该系统达到了预期的效果, 受到了参与测试的老师和学生肯定, 他们一致认为该系统能够实施多门课程的智能教学, 能够根据学生提供的基本信息, 学习状态, 学习喜好, 动态选择教学内容, 实现个性化的教学。系统能够根据学生的认知水平、学习能力等情况的不同, 选择合适难度和重点的知识点作为教学内容, 并采取适当的教学方法和教学进度实施教学。系统能够根据权值算法预测学生能力, 提供学生相应难度的习题进行测试, 并对测试结果进行评价, 作为衡量学习能力的依据。教师也能够方便的对教学内容、习题、答疑库进行编辑, 便于学生的学习。

6 结束语

分析了目前远程教育系统存在的不足, 提出了一种基于多Agent的远程教育系统模型, 并对实现系统的基本功能及运行效果作了介绍。本系统以建构主义的学习原理为指导, 多个Agent之间的协作, 根据学生的学习情况, 在教学过程中能够智能选择教学策略和动态调整教学策略, 提高了学生学习效率。该系统体现了智能性、主动性、适应性等特征, 真正实现因材施教的个性化教学。随着人工智能的不断发展, 基于多Agent的智能远程教育必将得到广泛的应用。

参考文献

[1]王汝传, 徐小龙, 黄海平.智能Agent及其在信息网络中的应用[M].北京:北京邮电大学出版社, 2005.

[2]张洁, 高亮, 李培根.多Agent技术在先进制造中的应用[M].北京:科学出版社, 2004.

[3]蔡军卫, 田中彬, 马彦, 等.基于Agent的个性化远程教学系统研究[J].甘肃科技, 2007 (7) :86-87.

[4]李晓明, 张喜洁, 吴万生.基于Agent技术的远程教学平台设计[J].东北大学学报, 2008 (4) :118-121.

多智能Agent系统 篇6

系统采用B/A/S结构,即浏览器/Agent/服务器三层结构。其主要特点是分布运算和集中管理。客户端利用浏览器上网,使得这种结构的系统在任何可以访问Internet的地方都可以获取系统的服务。与C/S结构相比,这是一种“瘦客户”模式,有助于加快访问速度,占用客户端的资源很少,对客户端的软硬件要求较低,不再需要为不同的客户端安装不同的客户程序。而且,用户不直接和数据库服务器交互,减轻服务器负担,提高了系统数据的安全性。中间的Agent层负责沟通客户端和服务器端。

基于Agent的优越功能,提出了基于Agent的智能教学系统模型。如图1所示。

Browser层位于浏览器端,为用户提供友好的交互界面。客户端是统一的图形化用户界面,使用方便。用户按角色划分为学生、教师和管理者,分别为3种角色提供了3个界面,分别是学生界面、教师界面、管理界面。其中学生是服务的对象。不同的角色对系统的使用权限不同。其中管理者的权限最高,他负责对系统日常的维护,负责审核教师权限并授权。教师的主要任务是:管理教学资源,包括对习题和教学内容进行编辑、添加、修改;对专业知识进行分析,提取知识点,划分知识结构,根据专业知识的特点,确定教学内容的优先关系,确定教学内容的难度和重点度等。学生是系统的主要服务对象,学生由系统提供学习资料,在系统的指导下学习,最后完成系统要求的测试,努力达到预定的学习目标。

Agent层是提供智能化和个性化服务的核心。由6个A-gent组成,分别是学生Agent、教师Agent、教学Agent、管理Agent、通信Agent、个性分析Agent。

Server层由Web服务器和数据库服务器组成,提供数据服务和Web服务。这一层存放着系统的所有物理数据,管理各种教学资源,包括习题和教学知识(教学策略和教学方法),以及学生和教师的用户基本信息。

2 各个Agent的结构及功能

学生Agent是一类大量而分散的Agent。当学生登录后,系统自动生成一个对应的学生Agent,引导学生学习。生存周期是一个Session,功能主要包括:读取学生资料,生成用户界面;向教学Agent发送学生的上课申请,接收教学Agent发送的教学资料;个人控制自己的学习,调整进度;个人复习,考试申请;实时向教师Agent提问。记录用户访问曾经访问的网址及访问次数;记录学习状态,在下次登录时直接还原到用户上次退出时的学习环境,避免重复学习;提供书签、闹钟、备忘录等辅助服务。学生Agent之间的活动是相互独立的,不受其他Agent的限制;学生Agent之间也可以进行交流。学生Agent的结构如图2所示。

教师Agent[1]是该系统中的重要的Agent。此类Agent素质高低直接关系到网络学习效果。它是网络教学资源库主要建设者,有两大功能:其一,负责对知识库的知识进行有效管理;其二,负责对题库的测试题进行管理,完成添加、修改、删除等。此外,还要负责制定课程的学习目标、计划、进度等,负责对学生Agent在学习过程中遇到的问题进行答疑,批改试卷。教师Agent为教师提供服务界面,查看学生学习状况、批改试卷、回答学生提问等功能。教师Agent的结构如图3所示。

管理Agent[1]为系统管理人员提供系统管理和维护服务。负责对系统进行全面管理,保证系统正常运行。负责对用户授权,使不同用户具有不同的权限;负责对用户信息进行管理,如删除一个学生或教师用户,或对学生、教师的信息进行修改;负责对课程进行管理,如添加或删除一门课程等。管理Agent的结构如图4所示。

个性分析Agent负责在学生的整个学习过程中不断地分析学习者的学习状态,将分析结果存入学习者信息库,为其下一步学习做准备,提供资料。在学生的整个学习过程中,学生Agent为个性分析Agent提供分析依据———学习者的学习状况;个性分析Agent则利用这些资料进行分析,并将分析结果传给教学Agent,为学习者的学习提供指导,提供适合其知识水平的教学内容及难度适中的考试试卷。学生Agent和个性分析Agent及教学Agent之间的交互是最繁忙的,正是三者的不断交互为学习者营造了一个与众不同的个性化学习空间。

教学Agent在系统中履行现实中教师的职能。向学生发送学习资料;学生提出考试请求后,给学生出考题;对学生的学习行为进行分析,判断学生的学习能力,并进行记录,根据学生的学习能力记录,预测学生的识记能力、理解能力、应用能力和创新能力,安排合适的教学方法、内容和进度,实施针对性教学,从而实现因材施教。

通信Agent是Browser层、Server层以及各个Agent通信的桥梁,协调各Agent协作和作业调度。

3 系统的基本工作过程

学生用户在学生界面上填写登录信息,身份确认后生成一个学生Agent,学生Agent将学生信息保存到学生信息库中,并将学习请求提交给教学Agent。教学Agent根据学生行为库中对该用户学习能力的记录(非第一次登录该系统的学生)选择一个最优的教学方法,组织教学内容。如果是第一次登录,系统要求学生注册,将注册信息保存到学生信息库中。教学Agent向学生发送教学资料,学生Agent接收教学Agent发送的教学资料,自己控制学习速度。在学生的学习过程中,系统会向学生提供个性化教学服务。完成阶段学习后,可以向教学Agent提出考试申请。教学Agent根据学生所学知识生成一套难度适中的试题,学生答完之后,提交教师Agent批阅。在学习过程中,疑难问题可以通过教学Agent向教师A-gent提出,由教师Agent解答。

在本系统中,实现了对学生个性化教学。个性化服务[2]是指能够满足用户的个体信息需求的一种服务,即用户可以按照自己的目的和要求,在某一特定的网上服务中,设定信息的来源方式、表现形式、特定的功能及其他的信息服务方式等;或者是通过对用户个性、兴趣、心理和使用习惯的分析,而主动地向用户提供其可能需要的信息服务,这种服务首先是能够满足用户的信息需求。个性化服务就是在深入学习者的个性、行为、习惯、兴趣与爱好的基础上,并根据不同学习者的不同的习惯、兴趣及爱好,为不同的学习者提供更合适其个性特征及知识水平的教学内容、教学策略,提供给学习者更好的、更具有针对性的服务。

个性化服务主要是通过不断地对学习者的个性特征,例如行为、习惯进行提取,然后进行分析处理,最后根据处理结果系统提供给学生符合其特点或者爱好的知识。

个性分析Agent负责监控、分析学习者的学习行为,收集学习者的各种请求,查看学生以往的学习情况,根据这些记录为学生提供相应的教学资源,如组织和呈现教学资料,帮助学习者完成学习。当学习者通过身份认证登录到系统后,学生A-gent开始收集学生提出的各种请求,监控跟踪学习者的行为,这里收集的信息有学习者在什么时间学习什么知识、在学习过程中遇到了哪些问题、作业完成情况、测验成绩、回答问题对错情况,也可通过非在线的、在后台进行收集。所有这些信息都存入学习者个性数据库,个性分析Agent从学习者个性数据库中提取出这些信息,进行分析、处理后,根据处理结果,从课件库中抽取符合学习者个性特征和知识水平的知识点,通过个性化的学习者界面展现在学习者面前。考试时,同样根据个性数据库中的信息的处理结果,控制试题难度系数,从试题库中抽取符合学习者个性特征和知识水平的试卷。

4 Agent的实现

本系统选用JATLite作为智能Agent的开发工具。该平台提供一种快速构建Agent的方式,并为Agent之间的交流提供底层通信支持。JATLite是由美国斯坦福大学开发的Java类库。它包括5个层次:抽象层、基础层、KQML层、路由器层和协议层。开发者可以根据需要,方便地选择任意一层来创建系统,还可以根据需要扩展它所提供的类库,改变其中一层后,其他层不受影响。JATLite提供使用高级语言和协议创建代理的模板,利用其提供的通用平台,用户能够迅速快捷地创建自己的应用系统。

5 Agent之间的协作通信

通信机制是Agent间相互感知、信息沟通的基本途径,它包括通信方式、通信原语和通信内容3部分,表示为:

通信机制::=<通信方式>,<通信原语>,<通信内容>

通信方式::=<点-点通信>|<间接通信>|<约定通信>|<混合通信>

通信原语::=<公告>|<预约>|<请求>|<允诺>|<通知>|<拒绝>|<应答>

通信内容::=(<行为>,<源Agent>,<目标Agent>,<时间>,<原因>,<信息>)[3]

上述构造的多Agent智能教学系统模型的通信机制采用KQML语言实现。KQML(Knowledge Query and Manipulation Language)是一种较为成熟的Agent通信语言和通信协议,其通信动作和通信内容无关,能够传递不同的数据。它支持A-gent的高层通信,能在多Agent间共享知识。

摘要:在分布式网络环境下,根据Agent的原理,构建多Agent网络智能教学系统。

关键词:智能教学,多Agent

参考文献

[1]汪前进.基于Agent的智能教学系统[D].硕士论文.南京理工大学,2003.

多智能Agent系统 篇7

现代网络智能模型系统中的人工智能或者说智能水平主要以个性化服务为主, 而要达到这种“因人而异”的目标, 针对不同的行为者找到最恰当的策略并且能够根据实际情况动态调整策略是一个亟待解决的实际问题。

1 选题策略

在行为者完成对某一单元的训练后, 必须进入测试阶段。多Agent抽取与该单元相对应的试题供训练者练习使用, 训练者完成测试后, 多Agent会自动保存答案, 同时根据答案进行评分, 最后保存测试结果。试题的针对性能够反映智能化水平, 所选题目应能包含所学内容。系统采用选题算法进行选题。试题难度分为初等、中等和高等三种难度。一般情况下, 用难度系数数组M={mi, i=1, 2, 3}表示试题难度。难度系数数组M主要取决于训练者上一单元的测试结果。如果训练者上一单元的答题正确率高, 则加大难题所占比例, 否则适当降低。如果训练者是首次训练该门课程, 则采取将各级别的题目平均分配到各章的策略。使用试题向量Vector来保存抽取试题。设本单元章数为n, 算法的具体步骤如下:

(2) 如果N>n, 则退出;

(4) 如果i>3, 则退出;

(6) 如果mi>0, 从本单元第N章中抽取难度为i的题目保存到试题向量Vector中, j=j+l;

(7) 如果j>mi/n且i<3, 则i=i+l, 转至 (6) , 否则如果i<3则i=i+1, 转至 (5) ;

(8) 如果i>5且N<n, 则N=N+l并转至 (2) , 否则如果N>=n, 则退出。

将抽取试题保存在向量Vector中, 组成一份涵盖训练者所学单元所有章节的试题, 由训练者A-gent以界面形式呈现给训练者。

2 方法调整规则

训练者完成测试以后, 由多Agent负责批改试题, 同时对训练者在各章节的测试得分及总分进行计算分析, 最终反馈给训练者Agent。训练者Agent选择适当的时间应用测试分析法, 分析计算出识记能力、理解能力、实践操作能力以及拓展能力的分值。针对不同的课程, 训练者的认知水平是不同的。因此, 网络训练系统应该允许同一训练者对待不同课程的认知水平存在差异。

训练方法调整规则是网络训练系统将训练者各章节的训练成绩作为划分条件, 从而分析鉴别训练者训练行为特征的规则。它的形式主要包括条件和结论两部分。

在训练策略的知识表示部分, 讲述了基于知识点的难度不同, 确定不同的训练策略。除此之外, 训练Agent还根据训练者的识记能力、理解能力和动手操作能力, 修订训练策略, 调整训练进度。如果训练者测试效果较好, 则提升难度;反之, 降低难度。采取的规则如下:

设训练者Si对某章的得分为Scorei, 令表示所有训练者对这章的得分均值;K表示常数因子, 建议取0.1~0.2) 。如果则建议再训练;如果则提示再复习一遍, 也可以训练新章节。如果Scorei≥+△S-core则提示表扬信息, 建议训练新内容。

通过运用课程一单元一章节的知识体系结构, 便于追溯训练者知识体系中存在的不足, 以便查漏补缺, 进行针对性地强化训练, 提高训练效果。

3 基于错误诊断的强化训练

网络训练系统有一个非常重要的功能就是对训练者的错误进行诊断。如果系统不能够对训练者进行正确的评价和适时的训练调整那就不具备错误诊断功能。系统必须对训练者每次的训练进行解析和评价, 通过对错误的检查、诊断, 找到训练者知识的薄弱环节, 给出合理建议, 以此提高训练者的训练效率。具体的实施策略如下:

3.1 分析过程和制定强化训练途径

当训练者完成测试后, 系统会根据试题找到相关知识点, 并建立关系, 如表一所示。

表格中包含了所有试题对应的知识点。

T1~T10:表示10个测试题目;

Kl~K8:表示该单元中所有的原子知识点;

S (Kj) :表示测试结果中元知识点Kj所占的比重;

E (Kj) :表示测试结果中错误答案与知识点Kj所占的比重;

ER (Kj) :表示测试结果中错误答案与中权重的比例关系。

题目测试结果假定为T3, T6, T9, ER (K4) =1/10=0.1, ER (K5) =5/9=0.56, ER (K6) =1/5=0.2。

知识点间的相互依赖关系如图一所示。图一中, 下层知识点的前驱知识点是上层知识点, 假设K8的前驱知识点是K6, 那么必须先训练K6再训练K8。

阈值L代表训练者掌握特定知识点的指标。当ER (Kj) <L, 说明训练者己经掌握Kj, 在训练者知识树中将Kj的master属性改为1, 表示已掌握, 否则仍需要加强该原子知识点的训练, 在训练者知识树中将Kj的master属性改为0.5, 表示未掌握。

假定阈值L降低到0.5, 则需要重点训练的知识点将包括K7, K3, K5, K1。对照图一, 训练的顺序应该为:K1→K3→K5→K7。在这条路径中, K1和K3是训练的重点, 系统将建议训练者更深入训练K1和K3。

3.2 错误诊断算法

为了判断训练者没有掌握的知识引入了诊断错误算法, 根据训练者的测试情况, 通过逻辑推理得出训练者知识点的薄弱环节, 制定强化训练方案。诊断错误算法是在训练者测试后, 整理出所有错误的内容, 得出需要加强的训练范围。诊断错误算法的代码如下:

首先, 分析Agent接收训练者输入的测试答案;通过对训练者测试答案的分析批改, 计算出测试题目的S, E, ER值, 然后在错误知识集中增加ER值超过阈值L的概念, 同时在训练者Agent中修改这些知识点的属性。最后, 基于错误知识集自动生成加强训练的路径, 发生信息使训练者Agent把路径中的知识点加入强化训练的知识点集strengthen List中。

测试结束后, 训练者如何进行下一步训练主要取决于诊断结果。基于测试结果, 网络训练系统将会为训练者推荐合适的练习题目。

4 结束语

为了使网络训练系统平台具有个性化、智能化、自适应性、实用性的特点, 需要长时间的研究繁杂的设计过程, 通过不懈的努力才能得到提高。本文所探讨的网络训练策略还只是初步的研究, 在以后的工作中, 将通过实践, 努力完善网络训练策略其他方面的研究。

摘要:基于多Agent技术的网络训练系统有助于激发受训者的训练兴趣, 提高受训者的学习效率, 实现网络训练系统的个性化、智能化、自适应性和实用性。本文从基于多Agent的智能模型的选题策略、方法调整规则、基于错误诊断的强化训练三方面进行了初步研究。

关键词:选题,调整,强化,Agent

参考文献

[1]张婧.基于多Agent的智能网络训练系统模型研究[D].南昌:华东交通大学, 2009.

[2]刘洁.多媒体远程教育技术的发展现状及问题初探[J].电化教育研究, 2000, (08) :17-19.

多智能Agent系统 篇8

CAI系统中的教学信息是由教师事先构造教学流程, 从而为学生提供的。系统根据学生回答问题的答案来引导学生学习, 以实现从一个页面到另一个页面的跳转。这样的系统在一定程度上实现了因材施教, 但其不了解学生的认知风格与认知水平。智能导学系统是针对CAI系统的不足而提出的, 其建立过程涉及多门学科的知识, 如心理学、教育学、计算机科学技术、认知学等, 它是人工智能技术在教育领域中最重要的应用。

2. 智能导学系统

智能导学系统是一种借助人工智能技术, 让计算机扮演教师的角色, 向不同需求、不同特征的学习者传授知识, 以提供个别化教学的学习支持系统[1]。

智能导学系统应具备以下智能特征[2]: (1) 具备某一领域的学科知识, 有完备的知识库; (2) 能自动生成各种习题和测试题; (3) 能够分析学习者的特征, 根据学生的水平、学习情况调整学习内容和进度; (4) 能不断在教学中改进教学策略。

根据系统目标, 智能导学系统基本可以划分为问题求解支持和课程序列两类:

(1) 问题求解支持

智能导学系统的一个基本作用是问题求解支持。问题求解支持的主要目的是, 当学生处理诸如一个工程或一个问题这样的任务时, 系统为学生提供诸如实施步骤此类的智能化帮助;当学生在某一步骤遇到困难时, 智能导学系统会给出一个提示, 为学生提供一种解决办法。此时, 对系统开发者而言, 最需要解决的问题是-如何准确理解学生行为, 从而为学生提供好的解决方案。

(2) 课程序列

课程序列技术旨在为学生提供个性化的、最优化的学习路径。智能导学系统自动地选择最优的教学方式, 如案例教学、课堂提问等。

利用智能导学系统学习的学生往往是一个人在按照自己的进度学习, 并且没有辅导教师的指导。而对于学生来说, 正确的学习路径、建议很重要, 这有助于学生顺利完成学习任务, 提高学习效率。

3. 多Agent技术介绍

3.1 Agent的基本属性

一个程序是否是一个Agent就在于它是否利用了一个或多个展示某种类型智能的属性[3]。

3.2 Agent间的通信

Agent之间的通信主要由通信的具体对象、与通信对象发生通信时所在的位置、通信发生的时间、通信时所使用的语言等四个方面确定。

要实现Agent间的通信, 必须知道通信的对方是谁, 怎样找到它、初始化通信以及如何保持通信。知识共享计划 (Knowledge Sharing Effort, KSE) 的Externa Interfaces工作组提出了知识查询与操纵语言 (Knowledge Query and Manipulation Language, KQML) , 智能物理Agent基金会 (Foundation for Intelligent Agents, FIPA) 开发了ACL语言。

虽然KQML的出现是一个创新并取得了成功, 但它仍存在以下两个缺点[4]: (1) 语用词不完善; (2) 语用词的含义只是以自然语言英语描述, 并没有严格定义, 从而无法给出特定的形式语言描述。FIPA-ACL的提出很好地解决了以上两个问题。

一条典型的FIPA-ACL消息如下:

3.3 多智能代理系统

多智能代理系统 (Multi-Agent System, MAS) 是由多个自主协作、相互配合的Agent个体构成的, 它提供了分散控制和并行处理。在MAS中, Agent之间以及Agent与环境之间, 通过通讯、协商与协作来共同完成依靠某一个Agent无法完成的任务。它具有灵活性、适应性, 适合应用于开放、动态的环境。基于智能导学系统多用户、并发访问的特点, 使用Multi-Agent技术进行智能导学系统的设计与开发。[5]

3.4 多Agent系统的开发平台

国内外学者多使用ZEUS和JADE开发平台对多Agent系统进行研究、开发, 它们都是基于JAVA语言开发的开源平台。研究[6]表明, 作为开源平台, JADE与ZEUS相比具有以下两个优点: (1) JADE通过内核直接提供消息服务, 服务速度快;在同一条件下, JADE平台上发送消息的速度几乎是ZEUS的10-20倍; (2) 系统稳定性好, 即使系统需要部署大量的Agent, 使用JADE平台进行开发, 系统稳定性依然很好。

JADE (Java Agent Development Framework) 是意大利电信联合研究中心和帕尔玛大学计算机工程研究组共同研制、开发的一个中间件产品, 用以辅助与FIPA规范兼容的Agent应用开发, 尤其是对于互操作的智能MAS[7]。在Agent应用程序需要利用一些FIPA标准规范所涵盖特征 (消息传递、Agent生命周期管理等) 时, JADE提供相应的支持;它使编程人员能够通过面向对象的抽象来利用FIPA标准资源[8]。JADE平台提供一个符合FIPA规范的软件框架, 能够轻松实现命名服务、黄页服务、通讯服务等功能, 减轻MAS开发的难度, 为系统集成开发提供了便利条件。JADE基本上是基于Agent的系统开发的最佳解决方案和最适合的开发工具、运行时环境。

4. 系统的设计

4.1 系统功能的设计

系统主要由学生和教师两类用户构成;系统中包含学生、教师以及管理员三类角色, 考虑到普通管理员专业性不足以及管理负担, 部分教师承担管理员角色。系统功能如图1-1所示。

4.2 学生模型的建立

学生模型以一种计算机可识别的、易修改的、可扩展并且易检索的形式呈现, 它是系统中学习者的抽象表示, 记录了学生的基本信息以及认知水平信息。这些信息准确无误地、客观地、真实地反映了学生当前的知识水平和认知能力, 对于获得学习者对知识内容的理解状态非常重要。

如何有效评价学生的学习状态以及学生认知水平的表达, 是建立智能导学系统的一个难点。主要是因为: (1) 如果想要了解所有学生的学习水平, 需要大量的观察数据, 而要获取这样的数据非常难, 几乎不可能做到; (2) 即使获取了与学生学习相关的某一类信息, 如学习目标、学习计划、知识水平以及学习中的不足, 信息本身也是非常复杂或是与学生实际行为不一致的数据。通过建立学生模型, 智能导学系统能够推断出学生是否掌握了当前学习的知识点, 进而开展下一步有针对性、个性化的教学, 如呈现适应性教学内容, 给出合适的教学指令、建议, 有效链接等。

目前, 粗糙集、模糊集、向量、网格、贝叶斯网络、图、本体论、与或树等大量技术广泛应用于学生模型的建立。

4.3 系统数据库设计

根据智能导学系统的主要功能, 结合课程实例和知识点的特点, 将数据库内的重点库表分为三类:用户信息库、教学模型库、教学资源库。

5. 结束语

智能导学系统的应用改变了传统的教学模式, 使学生的学习积极性、主动性都得以提高, 教学效率有所提升;但其建立的过程是一个复杂的工程, 多Agent理论应用于构建智能导学系统模型具有可行性, 该技术的应用有效解决了开发过程中所遇到的难题。

参考文献

[1]智勇.分布式学习环境中的智能授导系统研究:[硕士学位论文].南京:南京师范大学, 2004

[2]陆琦.点击流数据仓库在智能导学系统中的应用研究:[硕士学位论文].沈阳:东北师范大学, 2009

[3]M.Tim Jones.人工智能 (黄厚宽, 尹传环, 董兴业等译) .北京:电子工业出版社, 2010, 239~267.

[4]杨健.基于Agent的现代远程教学系统的设计与实现:[硕士学位论文].武汉:华中科技大学, 2007

[5]李海燕, 费洪晓.基于多Agent的智能网络教学系统研究.南华大学学报 (自然科学版) , 2004, 18 (4) :71~74.

[6]Pavel Vrba.JAVA-Based Agent Platform Evaluation.HolonicAnd Multi-Agent Systems For Manufacturing.Berlin:Springer-Verlag, 2003, 47~58.

[7]Fabio Bellifemine, Agostino Poggi, Giovanni Rimassa.DevelopingMulti-agent Systems With a FIPA-compliant Agent Framework.Software—Practice And Experience, 2001, 31 (2) :103~128.

多Agent系统的研究 篇9

近年来,随着计算机技术和信息科学技术的快速发展,对Agent及多Agent系统的研究成为分布式人工智能(DAI)研究的一个热点,并且被赋予高于早期的分布式问题求解型的人工智能的一些特点。多Agent系统(Multi-Agent System)是一个高度交叉的研究领域。它吸取了不同领域的内容,如经济学、逻辑学、生态学、社会科学和哲学。由于它更能体现人类的社会智能,更加适合开放的、动态的社会环境,因而引起了各领域研究人员的浓厚的兴趣,并广泛应用于科学计算、计算机网络、电子商务、企业管理和交通控制等领域。

2 多Agent系统的概念

多Agent系统可以被定义为:由多个问题解决者(Ageni)组成的松散的网络,其中的Agent相互作用从而解决单个Agent由于能力或知识上的不足而无法解决的问题。MAS的主要特点在于,其中的每个Ageni都不具备解决问题的足够的能力或知识,这些A-gent同时运行,不但所需的数据是分散的,而且没有全局控制系统。

3 MAS的关键问题

在一个MAS中的多个Agent需要相互通信、相互协调、相互协商与相互协作,所以这些也就成为MAS研究中的关键问题。

3.1 通信

在多Agent系统中,一个Agent需要和其他Agent或环境进行通信和交互,单个Agent所处的环境需要能够为Agent的通信和交互提供个一个基本的结构,Agent的这种能力来源于Agent的感知能力和动作能力。

Agent间通信的基本作用是提供信息交换的方法,这些信息包括规划、部分结果和同步信息。在分布式人工智能中,Agent的通信主要是通过对话完成的,其中Agent的角色可以是主动的、被动的或二者兼有。Agent通信中有2种基本的消息类型:声明(Assertions)和查询(Queries)。每个Agent,无论是主动还是被动,必须要有接收消息的能力。

3.2 协调

协调是指具有不同活动目标的多个Agent对其目标、资源等进行合理安排,以协调各自行为,最大限度地实现各自目标。协调包括定时地为其他Agent提供必要的信息、保证主体之间活动的同步、避免冗余的问题求解等。

3.3 协商

协商是指多个Agent通过通信,交换各自目标,直到多Agent的目标达成一致或不能达成协议。它是实现协同、协作、冲突消解和矛盾处理的关键环节,其关键技术有协商协议、协商策略、协商处理三种。

3.4 协作

很多协作所采用的基本策略就是分任务,然后把任务分配或分布到不同的Agent上,这种方法可以降低任务的复杂度。然而,系统必须要决定如何分解,分解过程必须要考虑Agent的资源和能力,并且还必须考虑在子任务之间可能存在有交互,在Agent之间还存在有冲突的问题。这就要求Agent之间必须能够合作求解问题、完成任务。但是系统的任务分解要考虑子问题的交互性、协调性、数据相关性等,而任务分配时通常是采用基于合同网机制来分配任务。最终各个Agent对子问题进行求解并综合单个子问题的解。

总之,通信是MAS中进行协调、协商和协作等活动的基础。多个Agent之间通过通信完成自己或整体的任务。

4 构造MAS的组织模型

4.1 MAS组织的概念和基本特性

多Agent系统由一组分离的智能主体构成,为了它们能协作完成各种任务,需建立组织,以进行管理和协调,使多个Agent之间协作完成目标。多Agent系统组织的设计除具有一般组织的基本特性外,还必须使所建立的组织在计算机上易于实现,组织的工作方式适合于计算实体之间的互操作。

多Agent组织定义为由多个智能Agent组成的相对大的系统,是为了实现一定目标而进行合理的管理和协调,并具有一定边界的计算实体的集合。

多Agent组织的基本特性是:具有社会性的计算实体的集合和特定的目标;是承诺、制度的集合体;是一个开放的信息处理系统也是一个松散耦合的分布系统。

4.2 MAS组织建模的设计原则

MAS组织的建造一般要遵循以下设计原则:(1)目标要统一,目的是有利于实现组织目标;(2)要合理地进行分工协作。(3)统一指挥原则,有利于提高管理的效率;(4)控制宽度原则;(5)职权和职责必须协调一致;(6)稳定性与适应性相结合。

4.3 MAS组织建模的过程

通过下面步骤建造一个MAS组织的模型。

(1)确定层次组织中各级机构的目标;(2)为了保证业务活动的分类更科学更合理,要实现目标中需要的各项业务活动或任务,细致地分析实现各级目标所需的所有业务活动,同时还要分析与业务活动相关的可用资源、设施以及利用它们的最佳途径;(3)确定问题求解管理流程的总体设计;(4)设计职能,职能是问题求解管理流程的具体环节,也是组织结构的基本单位。由各类职能形成基层组织,再由基层组织形成上一层管理子系统,直至构成系统的总体结构;(5)定义管理职能和问题求解职能;(6)建立协同工作过程模型和控制模型,它详细说明协同工作模式、职能之间的协作关系、交互控制协议和控制机制等内容;(7)建立完整的组织结构,通过职权关系和信息联系,把各层次、各部门联结成为一个有机整体,形成最终的组织系统图;(8)确定Agent承担的职能;(9)定义Agent实现策略;(10)建立组织管理策略。

5 多Agent技术的应用

5.1 多机器人系统

自主式多机器人系统,尢其是移动机器人系统,其协调十分重要。基于决策论的MAS策略适于多移动机器人的行为协调。多Agent技术可提高多机器人系统的鲁棒性、柔性及容错能力,增加系统的自治性。

5.2 计算机网络

多Agent技术以其独特的自主移动、异步和智能化特性,能较好地适应互联网的高度分布、异构和动态特性,可以弥补传统信息服务模式在复杂的互联网环境下的诸多缺陷。因此,MAS技术已成为替代传统C/S提高网络信息服务质量的首选工具。

5.3 软件工程领域

面向Agent的软件开发方法的优势是数据、控制、资源的分布性、自然的表述方式且便于现有软件系统的集成。它可以描述一些复杂的、有生命的、有行为的组件,并且使它们能与其它一些独立开发的类似组件灵活交互。

5.4 其他应用

多Agent技术还用于过程智能控制、远程医疗、网上数据挖掘、交通控制、信息过滤、评估和集成以及数据管理等。

6 结束语

多Agent技术是当前分布式人工智能及计算机科学领域的研究热点。作为一个新的学术热点,关于多Agent系统技术的研究多数尚处于初级阶段。随着INTERNET和多媒体等信息技术的飞速发展,对MAS研究的需求更加现实地体现出来,这将进一步推动多Agent理论研究的应用技术的快速发展。我们相信随着多Agent理性模型、行为模型的不断完善,面向Agent的实用技术的研究将会成为人工智能的一个重要方向。

摘要:多Agent系统(MAS)是当前分布式人工智能(DAI)的主要研究方向之一。介绍了多Agent系统的背景和概念,着重分析了MAS的关键问题和构造MAS的组织模型,最后给出了多Agent系统的应用。

关键词:Agent,多Agent系统,组织模型

参考文献

[1]蔡自兴,徐光祐.人工智能及其应用[M].北京:清华大学出版社,2004.

[2]朱福喜,杜友福,夏定纯,等.人工智能引论[M].武汉:武汉大学出版社,2006.

[3]王学通,王伟.多Agent系统研究概述[J].现代电子技术,2006,10[225]:65-67.

[4]李海刚,吴启迪.多Agent系统研究综述[J].同济大学学报,2003,31[6]:728-732.

[5]郭海霞,吴捷.多Agent技术的研究进展[J].河南科学,2004,22[2]:242-246.

[6]李薇,张凤鸣.多Agent技术研究与应用[J].软件时空,2006,22[8-3]:293-295.

上一篇:社会生活噪声下一篇:执业道德