论文 摘要:针对复杂物流系统的复杂性,提出了一种分布式多代理仿真体系结构,阐述了该体系结构在复杂物流系统仿真中的应用过程,将复杂物流系统分布式多代理仿真体系结构和集中式仿真体系结构相结合,提出了集成的复杂物流系统仿真体系结构.
论文关键词:复杂物流系统;体系结构;分布式仿真;多代理仿真;集中式仿真
复杂物流系统的复杂性包括结构复杂性、不确定性、信息的失真与放大、组织机构的动态性等….对于各种复杂的物流系统,无论是线性的还是非线性的,无论是静态的还是动态的,都可以用系统仿真方法来研究.合理地确定仿真体系结构是系统仿真的前提.
本文首先提出了基于hla的分布式多代理仿真体系结构,并将该体系结构应用于复杂物流系统仿真;将该体系结构与复杂物流系统集中式仿真体系结构相结合,提出了一种集成的复杂物流系统仿真体系结构,以满足各种层次的复杂物流系统仿真需求.
1分布式多代理仿真体系结构
首先要探讨基于hl的分布式多代理仿真体系结构.在设计基于hl的仿真体系结构时,涉及联邦成员的划分,它通常采用美国国防部建模与仿真办公室(dmso)提出的开发分布交互仿真系统的软件工程方法,即联邦开发和执行过程模型fedep.其中,在开发联邦概念模型时候,一个很重要的任务是设计系统包含的对象类和交互类结构表.而在设计基于多代理的仿真体系结构时,又涉及代理的划分.因此,我们认为,基于hl的分布式多代理仿真体系结构包括hla/rti通信支撑平台、联邦成员、代理、对象类、交互类、事件六个层次,如图1所示.
图1中,y/个联邦成员中有一个总控台联邦成员,负责创建联邦,所有联邦成员通过hla/rti通信支撑平台实现互联,每个联邦成员又由若干个代理类、对象类和交互类组成,当有相关的事件发生时,代理类生成相关对象类和交互类实例或更新已经存在的对象类和交互类实例属性,并在hla/rti通信支撑平台的支持下,通过对象类和交互类的订购和发布实现对象类实例和交互类实例的发布和接收,从而完成与其他联邦成员中代理类的联系.
基于hla的分布式多代理仿真系统包括接口代理interfaeeagent、通信支撑代理rtiagent事件管理代理eventagent及其他一些根据功能划分的代理,代理们通过事件的执行共同完成仿真运行过程.接口代理执行用户的请求包括仿真开始、仿真暂停、仿真结束等,或将用户的请求传递给其他代理,并通知用户监控仿真结果.通信支撑代理提供rti服务,如创建联邦、加入联邦、时间推进、交互发送和接收、对象属性更新等.事件管理代理负责事件列表的管理,它提取当前时间段的仿真事件并通知相关的代理执行这些事件在所有当前时间段的仿真事件执行完毕后,请求仿真时钟推进.
2复杂物流系统分布式多代理仿真体系结构
当把基于hla的分布式多代理仿真体系结构应用于复杂物流系统分布式多代理仿真时,其关键任务是正确地划分出系统所包含的联邦成员,以及各个联邦成员中所具有的代理类、对象类、交互类和事件类,并且正确地描述它们的相互关系.
我们认为,组成复杂物流系统的各个实体可以直接映射为联邦成员;各个联邦成员内部代理的划分则可以在构造各个联邦成员petri网模型的基础上进行,其基本的划分方法是将主要的变迁映射为代理类④或交互类,位置映射为对象类,而令牌token则映射为代理类属性、对象类属性或交互类属性.当然,具体如何划分代理类、对象类和交互类并不是一成不变的,应视具体情况而定.
对于典型复杂物流系统,其联邦成员包括供应商、制造商、批发商和零售商四类实体,再加上核心 企业 ,共有五类联邦成员,其中核心企业具有总控联邦成员的功能,负责创建仿真联邦,当然也可以单独设置总控联邦成员来创建联邦并记录系统运行情况,这样的划分方法将有六类联邦成员,这里将核心企业和总控台合二为一.下面是典型复杂物流系统中的批发商联邦成员中代理类、对象类、交互类和事件类的划分情况.
代理类:接口代理intefaeeagent;事件管理代理eventagent;通信支撑代理rtiagent;决策
代理decisionagent;发货代理deliveryagent;订货代理orderagent.
对象类:批发商基本信息wholesalerobject.
交互类:订货orderlnteraetion;发货delivery—interaction.
事件类:订货orderevent;发货deliv—eryevent;到货comp[ementevent.
图2是利用有色petri网描述的关于批发商联邦成员中代理类、交互类、对象类及事件类之间的关联关系,限于篇幅,其他联邦成员不再介绍其作法基本相同,但内容稍有不同.图2定义了个颜色集、5个变量(e,i,b,n,s),e表示实体标识;i表示实体现有库存;bo表示延期交货的订单;oo表示未达订单;s表示订货点量(最大库存水平);w是复合颜色集.rtiagent接收来自零售商联邦成员的订货交互,更新wolesalerobjec对象的延期交货订单数量,并据此生成发货事件发货事件执行时,向零售商联邦成员发送发货交互,并更新批发商的现有库存;guard[i+n一b<s]是一个守卫,即当批发商的现有库存加上未达订单减去延期交货订单数量小于订货点量时eventagent生成并执行向制造商的订货事件,同时更新wolesalerobject对象的未达订单数量;之后,rtiagent接收来自制造商联邦成员的发货交互,生成收货事件并执行,更新wolesalerobject对象的现有库存数量.decisionagent调用相关模型以决定订货点量的大小.
3集成的复杂物流系统仿真体系结构
复杂物流系统集中式仿真和分布式多代理仿真构成了复杂物流系统仿真的两大内容,但是它们并不孤立地存在着,它们相互联系、相互配合共同完成复杂物流系统仿真任务.因此,在探讨复杂物流系统仿真体系结构的时候,就是要分析分布式多代理仿真体系结构和集中式仿真的关系将两者有效结合,构筑一个集成的复杂物流系统仿真体系结构.
在讨论集中式仿真与分布式多代理仿真关系的时候,需要解决的是这两种仿真过程的有效的实时动态连接问题.复杂物流系统集中式仿真系统可以通过仿真数据库和复杂物流系统分布式多代理仿真系统进行互联,
图3就是集成后的复杂物流系统仿真体系结构.复杂物流系统分布式多代理仿真系统可以由核心 企业 联邦成员通过hla/rti获取各实体信息及相关参数设置并存入仿真数据库供集中式仿真使用;复杂物流系统集中式仿真系统根据核心企业的请求,经过仿真后将一些关键参数的仿真结果如各实体的订货点量存入仿真数据库,核心企业联邦成员通过hla/rti将这些关键参数发送给相应的联邦成员,然后经过分布式多代理仿真进行检验.核心企业联邦成员可以专门设置一个代理如决策代理发送集中式仿真请求,这样,集中式仿真就可以根据需要实时地穿插在分布式多代理仿真中进行,在集中式仿真的时候分布式多代理仿真处于暂停状态,集中式仿真完成并反馈相关参数后,分布式多代理仿真继续进行.