张勇明,赵金超,张 立
(海军工程大学,湖北 武汉 430033)
维修理论
船舶修理企业能力评估仿真系统研究
张勇明,赵金超,张 立
(海军工程大学,湖北 武汉 430033)
为提高船舶修理企业抗风险能力,构建了船舶修理企业修理能力评估仿真系统。系统以高级体系结构(High Level Architecture,HLA )为基本框架,将参与评估仿真的实体设计为智能仿真主体,依据船舶修理企业实际修理计划调度过程,建立了系统仿真流程,然后设计了一个适用于HLA框架的仿真Agent模板,并以此为基础完成了系统中Agent组织的实例化。仿真实例结果表明,系统能对企业修理能力进行较好的评估,为企业决策提供重要支持。
船舶修理;评估;HLA;Agent
为提高船舶修理企业的在全球航运市场波动中的抗风险能力,提升企业效益,对企业修理能力进行客观评估是一项很重要的工作[1]。目前,关于船舶修理企业能力评估方面的研究还很少,船舶修理系统工艺复杂,且一般多个项目并行开展,项目间存在资源竞争,各项目内部又存在工艺时序约束,对于这一类复杂系统,Agent建模技术能保证系统仿真的灵活性和准确性[2-3],但多Agent系统在通信、主体协调、时间同步等底层开发上存在较大难度,而HLA仿真框架提供了发布订阅、时间同步等标准服务[4-5],能解决多Agent系统的问题,便于系统实现及二次开发。
因此,以HLA体系作为系统框架,应用Agent技术完成修理系统中活动主体的智能化设计,保证了船舶修理企业修理能力仿真评估系统的评估智能性和科学合理性。
1.1 基于HLA的系统仿真框架
船舶修理企业修理能力评估仿真系统框架采用HLA技术进行构建,系统中的维修活动主体公司、工厂、待修船舶等以联邦成员的身份加入仿真联邦,每个联邦成员均由RTI接口和Agent组织两部分组成。系统总体框架如图1所示。图1中各Agent联邦成员功能描述如下。
图1 船舶修理能力仿真评估系统总体框架
1)船舶Agent容器联邦成员,是仿真评估联邦系统的一个重要联邦成员,也是一个比较特殊的成员,它的主要功能是随着仿真时间的推进,触发生成新的船舶Agent联邦成员动态加入联邦。
2)船舶AAgenti联邦成员,负责仿真第i艘被修理的船舶,它在适当的仿真时间由船舶Agent容器联邦成员触发生成,然后动态加入联邦中,随着时间的推进,船舶修理计划调度完毕,船舶AAgenti申请退出联邦。进入联邦的船舶Agent的数量由系统实际修理容纳能力决定。船舶Agent的主要功能是提供船舶修理工程单,为系统仿真提供输入。
3)公司计划Agent联邦成员,负责根据工程单生成初步方案并通过发布传递给工厂调度优化Agent,最后接收工厂调度优化Agent的反馈后生成最终修理方案。
4)工厂调度优化Agent联邦成员,负责根据初步方案中的初始修理网络计划图,调用启发式优化算法,生成优化后的修理网络计划图,将优化后的结果反馈给公司计划Agent。
5)观察者Agent联邦成员,负责记录仿真过程及数据。
1.2 系统仿真流程
系统是以HLA为框架的多Agent系统,这个多Agent系统是依据船舶修理企业实际修理计划调度流程而建立的。系统仿真流程逻辑框图如图2所示。
图2 系统仿真流程逻辑框图
在系统仿真流程中,系统输入为修理计划工程单和修理资源,系统输出为修理计划总周期和资源利用率,具体的仿真步骤如下:
step1:令i=0;
step2:仿真循环开始,i=i+1;
step3:船舶Agent容器创建一个船舶AgentSi;
step4:船舶AgentSi生成一个工程单Di;
step5:根据船舶AgentSi的特性和工程单Di,公司Agent选择调用模板库,生成初步方案Sib,
并将对应的初步修理网络计划图Pib通过发布传送给工厂Agent;
step6:工厂Agent调用启发式规则库,通过优化配置资源,生成优化后的修理网络计划图Pie,反馈给公司Agent;
step7:公司Agent根据优化后修理网络计划图得出对应修理方案Sie;
step8:若i≥n或T仿≥T,跳转step9,否则跳转step2;
step9:对比目标,得出评估结果,仿真结束。
系统仿真流程是一个循环过程,其中step8表述的是系统仿真循环结束条件,当系统中仿真修理完成船舶数量达到计划的n艘或仿真时间达到预设时间T时,仿真循环结束。
由于HLA框架中信息发布订阅、时间同步等机制的支持, Agent自身在通信、协调等方面的设计可以弱化,内部结构简化后就便于Agent的实现,便于系统的开发。系统的Agent组织主要是指系统仿真中的各个主体,包括公司计划Agent、工厂调度优化Agent、船舶Agent以及船舶Agent容器,其中设计开发的重点是前2个Agent。为了降低开发难度,同时便于系统重用及二次开发,系统设计了一个适用于HLA框架的Agent模板[6],然后再在此模板基础上开发系统中的各个具体Agent。
2.1 Agent模板
为适应系统HLA基础框架,通过增加通信转换模块RTI/Agent中间件,设计了一个适用于HLA体系的仿真评估Agent模板,该模板具有3层结构,分别是通信层、功能层和数据层,如图3所示。
图3 仿真评估系统Agent 3层结构模板
通信层是Agent与外部仿真运行支撑框架RTI交互的中间结构,包括KQML消息管理器和RTI/Agent中间件。系统中Agent通信时采用消息机制,具体的通信语言为通用智能体通信语言KQML,通信层中的KQML消息管理器主要负责消息的管理和解释。由于评估仿真系统是基于HLA框架的,而KQML智能体通信语言一般用于点对点通信,因此需要对通信消息进行形式转换以适应仿真运行支撑框架RTI规范,这就是RTI/Agent中间件的主要功能。
数据层负责Agent与数据库的交互,采用标准ADO接口,内容根据具体Agent仿真过程中所需数据决定。
功能层包括运行控制模块、修理决策反应模块、修理决策推理模块、修理调度决策模块,其中运行控制模块是Agent实现时必须的,负责Agent运行时的内部调度,其他模块根据具体Agent的功能需求有选择性地实现。
2.2 Agent形式化描述
系统中Agent以图3中给出的Agent 3层结构为模板来实现,主要根据具体Agent的需要有选择性地实现相应模块,下面以工厂调度优化Agent为例,给出其实现的形式化描述。
Class Factory-Agent
{
/////////////////数据层
//修理资源基础数据
int Source-code [n]; //资源标识码
int Source-type; //资源类别
int Source-capability[i]; //资源容量
float NC;//任务、资源匹配系数阈值
//启发式规则数据
string Source-regulation; //资源调度规则
...
//////////////通信层
void commu-Agent(id_sender, id_ receiver,
kind_kqml,content);//KQML通信函数
void trans-rti-Agent(message_Agent,info-rti,
flag-direc);//RTI/Agent中间转化函数
...
//////////////功能层
void Progress-Control(); //进程控制模块
//修理调度决策模块
void Source-apply(W_id, Source_code);
//资源配置函数
//资源配置动态属性
int Ship-Source[i]; //资源与船舶对应数组
int Work-Source[i]; //资源与任务对应数组
float Free-Source[i];//资源空闲率
...
}
系统采用VC++6.0语言编程实现,HLA框架中的RTI采用PichAB公司的pRTI,目前应用于上海某船舶修理厂,下面是该公司能力仿真评估的一个实例。修理厂的船坞、船排和各车间的专业维修小组构成了仿真系统的修理资源,共39种,具体如表1所示。
表1 修理资源列表
船厂半年内计划修理20艘型号、修理等级、工程范围、开工时限各不相同的船舶。通过人工准备修理工程单、修理资源数据,系统自动生成修理网络计划图,采用“最早结束时间优先”启发式规则进行仿真运算,系统评估仿真的2个主要输出数据为修理计划总周期和资源利用率。
图4为原计划总周期与启发式规则下仿真调度总周期比较图。
图4 修理计划仿真调度总周期比较
图4仿真结果显示,以一定的启发式规则对修理计划实施仿真调度,修理总周期较原计划的半年183 d缩短了47 d。该评估仿真结果表明:对于当前的计划修理任务,若改变计划调度规则,修理资源总体上有一定的富裕,为提高公司效益,要么增
加修理业务单即增加计划修理的船舶数量,要么总体上减少公司当前的修理资源储备。
船舶修理企业能力仿真评估系统采用Agent技术,保证了仿真灵活性和评估准确性,而基于HLA框架设计则降低了系统底层开发的难度,并有利于系统二次开发。仿真实例表明,仿真评估系统能反映船舶修理企业总体修理能力相对计划业务量的富裕程度,为企业提高资源利用率提供决策支持。系统对于当前提高船舶修理企业抗风险能力,提升企业效益,具有重要的现实应用意义。
[1] 崔光楼. 中国修船市场2013年回顾及2014年展望[J].中国远洋航务,2014(4):58.
[2] 郭静文. 基于MAS技术的物流配送运输调度系统架构分析[J].物流技术,2014,33(7):446-447.
[3] 付征叶,毋琳,王晶. 基于Agent的遥感应用网络硬件监控[J].计算机工程,2014,40(2):308-313.
[4] 张家祥. HLA仿真技术应用教程[M]. 北京:国防工业出版社,2007.
[5] 何心怡,邓建辉,赵丹辉,等. 基于HLA的火箭自导深弹仿真系统研究[J].系统仿真学报,2014,26(12):2874-2881.
[6] 曲朝阳,沈晶. 基于扩展KQML语言的Agent模板实现[J].计算机应用,2004,24(1):90-91.
声 明
近期本刊编辑部接到热心读者反映,有部分非法单位和个人冒充本刊,打着本刊的名义征稿,严重影响本刊声誉。本刊将长期开展整治并严肃处理此类非法行为。在此,本刊严正声明,本刊未曾授权任何单位和个人在任何地方设立办刊办事机构、未曾开办其他投稿网站。为减少作者不必要的麻烦,请作者投稿时仔细辨别,谨防上当受骗。
本刊唯一投稿邮箱:zgxc2007@126.com
邮寄地址:天津市滨海新区塘沽新港三号路4号
邮编:300456
联系电话:022-25792835
特此声明
《中国修船》编辑部
For improving the anti-risk capability of ship enterprise,the repair capability assessment system is built based on HLA and Agent.According to the practical process of ship enterprise,the simulation process is given.Agent is designed in detail based on the template for HLA,finally the simulation application is brought forward.The benefit will be brought to enterprise decision because of the good result of assessment simulation.
ship repairing;assessment;High Level Architecture;Agent
张勇明(1980-),男,湖北松滋人,讲师,硕士,主要从事装备保障、环境仿真等方面的研究。
U673;TP391.9
10.13352/j.issn.1001-8328.2016.02.013
2015-11-20