找论文网 > 计算机论文 > 计算机理论 >

多Agent排队系统结构研究(2)

    这里,υ平均(期望)更新时间间隔,Tn 是第n次更新发生的时间, N(t)表示Agent在时间[0,t]中发生的知识更新次数。
    其中,m(t)=E[N(t)] 称为Agent知识的更新函数,有
    m(t)的导数 。 fn(t)是Fn(t) 的知识更新强度。
2.4  Agent的通信模块
    在多Agent排队系统中,每个Agent自主的运行,但是由于每个Agent仅拥有不完全的信息和问题求解能力,所以多个Agent必须相互通信、协同工作。通信是协作的基础。采用消息通信是实现灵活复杂的协调策略的基础。使用规定的协议、Agent彼此交换的信息可以用来建立通信和协作机制。
    通信模块主要包含如下的部分[1]
    (1)socket接口:它的功能是将直接与协议有关的通信部分组合在一起,并给通信模块的其它部分提高一种通信方式,使通信模块的其它部分不用再考虑与发送协议有关的部分。socket接口包含以下内容。
    服务线程:socket接口中有一个服务线程,它使用一个ServerSocket不停地监听Agent的端口地址,一旦发现有消息到来,就启动一个消息线程处理这个消息,然后继续监听。
    消息线程:由服务线程启动。它的任务是读入消息,并将消息送到接受缓冲区。
    客户线程:由发送线程启动。它的任务是将消息通过socket发出。
    (2)接受缓冲区:用来缓存从外界发来的消息。
    (3)发送缓冲区:用来缓存向外界发送的消息。
    (4)发送进程:是一个常驻线程。它的任务是不断监视发送缓冲区,一旦有消息进入发送缓冲区就启动socket接口中的方法来将消息发出。
    (5)接受线程:它的任务是不断查看接受缓冲区,一旦有消息进入接受缓冲区就启动一个过滤线程来对消息进行解释和处理。
    (6)过滤线程:由接受线程启动。它调用语法分析将接受到的字符流的消息转换成符合语法结构的原语,然后调用解释器来对原语解释。
    (7)解释器:解释并处理一些简单的且仅与通信模块有关的一些通信原语。
    (8)地址薄:通信模块保留Agent的地址薄信息。
    (9)消息发送函数:调用转化函数将原语转化成字符流放入发送缓冲区。
    下面介绍几种常用的消息:
bind(agenturl,sendername,receiverurl)
//发送注册消息给对方
shutdown(content,sendername,receiverurl);
//发送注销信息给对方
inquire(content,sendername,receiverurl,senderurl);
//询问接受Agent信息
request(content,sendername,receiverrurl,senderurl);
//向接受Agent发送请求信息
2.5  Agent的规划模块
    在AI领域,规划是通过模拟人类求解复杂问题的过程而形成的一种方法。规划的问题求解方法分为两个过程:规划过程和执行过程。其中,规划过程是针对某一任务,求取完成该任务的动作序列,这一动作序列称为计划。计划是规划过程的输出结果。执行过程是指按照集合实现问题求解,并监控问题求解的进行,当出现意外情况计划无法执行时,调整行为集合或再次规划,直至任务完成。
    Agent的规划模块负责建立中短期的行动计划。它是一个局部的规划。每个Agent根据目标集合、自身的状态、对环境和其它Agent的了解,以及以往的经验规划自身的行为。
Agent规划常用方法之一是将Agent的计划库定义为一个与或图结构,其中,每一条计划由4部分组成。
    (1)计划目标表示该计划能达到的目标;
    (2)计划的前提表示计划执行需要满足的条件;
    (3)计划体表示计划内容,由计划序列和计划子目标组成;
    (4)计划执行结果表示执行计划后外部世界的更新结果。
    有了这些基本要素以后,我们可以根据需求构造基本的Agent了,下面给出Agent的工作流程及算法。
2.6  Agent工作流程及算法
    1)Agent的工作原理
    Agent工作过程如图2所示,当事件到达时,Agent根据前感知的环境信息、自身信息以及自己的能力,若感知的信息比较简单或紧急,则直接反应式决策,否则,要慎思以后进行规划,最后产生决策,即,由信念修正产生目标,并做出相应的计划集,然后选取相应的行为集来完成一系列的计划,如果计划失败,则继续更新信念集。
图2  Agent的工作流程
    2)Agent的工作流程算法
    根据Agent的工作原理,可将其工作流程算法描述为:
function Agent()
Begin
    事件到达;
    将感知信息进行分类;
if P is essy or urgency then reaction;
else
L1:B:=brf(P,B);//根据感知和当前信念集产生新的信念
options:=Option_Generator(Envent_Queue,B,I,G);
//根据环境和目前意图的当前信念产生愿望
Selected_Options:=deliberate(options,B,I,G);//慎思过程
Update_Intentions(selected_options,I); //更新意图
Make_Plan(I);//根据当前意图制定计划
execute(plans);//执行计划
if fail then
{
Update_Belief();
goto L1;
}
}
End;
3  小结
    本文参照多Agent系统的体系结构建立了多Agent排队系统结构,并且构造了单Agent的基本要素,即Agent的心智状态形式化描述、Agent的感知器算法、Agent的知识库、Agent的规划模块和通信模块等。最后给出了Agent的工作机制和算法。
参考文献
[1]史忠植. 智能主体及其应用. 北京: 科学出版社,2002.12
[2]何炎祥,陈莘萌. Agent和多Agent系统的设计与应用. 武汉:武汉大学出版社,2001.6
[3]毛新军,赵建民,王怀民. 多Agent系统抽象合作模型. 计算机研究与发展,2004,41(5):787-795
[4]李凡长,佘玉梅. 感知Agent的基本模型研究. 计算机科学,2004,31(2):120-122
[5]余腊生,蔡莹皓. 实时环境下Agent决策机制研究. 小型微型计算机系统,2005,26(6): 1032-1036
[6]毛新军,陈火旺,刘凤歧. Multi-Agent系统中Agent知识获取地合作模型.软件学报,2001,12(2): 256-262
[7]李凡长. 基于Agent的知识表达度量理论. 计算机科学,2001,28(8):110-113

共2页: 上一页 [1] 2


浅析GPS导航解算原理
数字电视地面广播传输系统中LDPC码的研究
工商管理 | 工科论文 | 财务管理 | 管理学 | 公共管理 | 财政税收 | 证券金融 | 会计审计 | 计算机 | 法律论文 | 医药学 | 汉语言文学
社会论文 | 工科论文 | 理科论文 | 文化论文 | 艺术论文 | 文学论文 | 哲学论文 | 政治论文 | 英语论文 | 写作指导 | 计算机应用
www.zlunwen.com 找论文网 ® 版权所有 网站地图