APP下载

舰载机弹药调度演示系统设计与实现*

2023-10-10吕晓峰杨东泽孟祥玉

舰船电子工程 2023年6期
关键词:舱室弹药适应度

吕晓峰 杨东泽 刘 瑜 王 理 孟祥玉

(1.海军航空大学 烟台 264001)(2.中国人民解放军91954部队 永州 425000)(3.中国人民解放军92635部队 青岛 266000)

1 引言

舰载机弹药调度演示系统是指根据舰载机弹药保障需求生成弹药调度方案并以可视化的形式展示,其中主要功能为生成并展示弹药调度方案,也是目前舰载机弹药保障相关专业训练的重点内容。

在大型舰船的实际弹药保障中,会根据弹药的存放要求和舱室的布局将弹药存放于不同舱室,通过升降机将弹药从舱室转运至甲板,其中存在不同的舱室会使用同一部升降机转运,这里将同一升降阱道下的所有舱室划分为一个舱群。在确定舰载机弹药保障需求后,理论上所需的弹药可来自符合其需求任意舱室,可以由符合条件的任意升降机转运。因此随着舰载机弹药保障需求的增大,弹药保障方案将呈指数级增长,无法依靠人工计算方案[1],需通过软件解决调度方案生成问题。

2 系统概述

2.1 系统设计目标

系统的目标是在用户进行弹药的存储和出库工作时为其提供数据汇总和辅助决策等功能,并能够辅助调度人员计算弹药的调度方案,同时将弹药保障方案以可视化的形式进行展示。

2.2 开发环境

系统基于Qt Creator 5.0 开发平台,底层支撑技术为C++语言和SQLite 数据库等,前端以Qt 为主,还包括QCustomPlot等图形化组件[2~3]。

Qt Creator 可以跨Linux(32 位及64 位)、Mac OS X 以及Windows等多个平台运行,其可通过C++代码编辑器快速编写代码,并且可提供代码的静态检验功能[4~6];集成特定于Qt 的功能,并集成了Qt Designer 可视化布局和格式构建器[7];采用了面向对象的设计方案,良好的封装机制使得其模块化程度很高,可重用性好,对用户开发较为方便[8~9]。

2.3 系统功能需求分析

系统的功能需求如下:

1)根据弹药保障需求可迅速准确地计算出各个型号弹药的调度方案,为用户提供辅助决策的功能,缩短调度方案生成的时间。

2)具备良好的交互性和和易操作性,系统不需安装即可运行,方便用户使用,尽量减少用户的培训时间,并保证系统稳定的运行。

3)具备良好的可扩展性,可通过对数据库的更新及扩充来实现系统功能的扩展,并根据后续需求进一步增加系统功能。

3 总体设计

3.1 系统结构与功能

系统共包含6 个模块,分别是存储管理、制定方案、导入方案、汇总查询、基础数据管理和生成向导模块,系统结构如图1所示。

图1 系统结构

1)存储管理。存储管理模块包括存储方案导入和存储方案制定,可导入已有的存储方案或者制定全新的存储方案,为制定方案提供依据。

2)制定方案。制定方案模块包括制定舱群方案和舱室方案,制定方案是系统的主要功能,依据现有的存储方案,通过用户请求给出定位到舱群或舱室的参考方案,主要包括方案准备、方案制订、方案管理等功能模块,并以图形化显示舱群方案,如甘特图。

3)导入方案。导入方案模块包括导入舱群方案和舱室方案,主要是由用户导入已有的舱群方案或舱室方案的报表,为用户提供参考。

4)汇总查询。汇总查询模块包括舱群方案查询、舱室方案查询和消耗汇总查询,可以根据方案的时间和摘要等条件查询舱群方案或舱室方案,方便用户管理。

5)基础数据管理。基础数据管理模块包括弹药类型管理、弹药运输时间和舱群运力信息,方便调度人员对弹型运送时间、舱群运力信息、弹型信息、模块信息、角色信息和权限信息进行管理。

6)生成向导。生成向导模块是对主要功能模块进行整合,采用向导式页面进行顺序操作,引导用户依次进行导入存储方案、制定舱群方案、制定舱室方案和汇总查询。

3.2 系统模型

本文运用UML 时序图从动态角度对软件生成调度方案时对象之间的交互关系进行描述[10],如图2所示,显示了用户与软件交互,并按照顺序显示了用户与软件之间消息的发送与接收,清晰地表达了各个对象之间的关系[11~13]。

图2 系统主要功能时序图

3.3 关键技术的实现

系统在计算弹药调度方案时首先需建立舰载机弹药调度数学模型,本模型要解决的问题是基于一定的约束条件,求得以最短的时间完成舰载机弹药保障任务对应的调度。因此令目标函数为

式中Tfinish为整个调度任务完成所需的时间,Ti为第i个舱群所提供的所有弹药运送至甲板所需的时间,M为舱群个数。

约束条件包括:

式(2)表示各个舱群提供的弹药数量须等于任务所需的各型号的弹药数量,式中bj为第j型弹药的需求量,xij为第i个舱群提供第j型弹药的数量,N为弹药类型数;式(3)表示库存约束,即对于各个舱群的各型弹药,其方案数量不能超过储存数量,式中aij为第i个舱群存放j型弹药的数量。式(4)表示弹药保障时间取值约束,本文将调度时间分为库内转运时间和升降机转运时间,其中对于库内转运时间只在转运首批次弹药时进行考虑,第一批次之后库内转运与升降机转运是同时进行的,且库内转运所需时间小于升降机转运时间。式中tmn为第m个升降机转运第n型弹药所需时间,t'mn为第m个舱群在库内转运第n型弹药所需时间转运时间,tmnh为第m个升降机转运第n型弹药的第h批次时的时间函数。

系统中计算弹药调度方案所使用的算法是混合粒子群算法,采用了基于遗传算法改进的离散粒子群算法求解弹药调度方案,该算法有效地结合了遗传算法与粒子群算法的优点,计算速度快并且全局搜索能力较强,可根据对粒子适应度值的评价选择更优的方案[14~17],算法步骤如下:

Step 1:设定粒子群算法基本参数。

Step 2:对当前的粒子种群进行初始化。

Step 3:计算适应度值,根据适应度值决定是否更新全局最优解和个体最优解。

Step 4:分别将粒子与个体最优解、全局最优解进行交叉,计算适应度值,更新全局最优解和个体最优解。

Step 5:对粒子进行变异,计算适应度值,若适应度值更优,则更新全局最优解、个体最优解和适应度值。

Step 6:记录当前全局最优解和适应度值。

Step 7:判断是否达到算法的结束条件,若达到则结束循环,输出最优解和适应度值,否则返回Step 4。

图3 混合离散粒子群算法流程图

4 软件实现

本软件中弹药调度方案的生成是系统的主要部分,其中用户可先选择本次弹药保障任务对应的存储方案,再输入各型弹药需求,最终可得到弹药保障方案并进行可视化展示。

4.1 软件主界面

打开软件之后,通过输入用户名和密码登录软件,登陆成功后进入软件主界面,如图4所示。该界面按照软件功能设计有存储管理、制定方案、导入方案、汇总查询、报表管理、用户管理、基础数据、日志管理和生成向导模块,本文着重介绍制定方案模块。

图4 软件主界面

4.2 制定方案模块

制定方案模块是根据用户输入的各型弹药保障需求调用智能算法生成舱群方案与舱室方案。该模块功能实现如下,进入“制定方案”模块用户可根据弹药存储情况导入已有的存储方案,该界面用户可通过下拉菜单选择弹药类型并输入数量,并且可以添加不同的弹药类型。弹药需求输入完成后,即可生成舱群弹药调度方案,如图6所示,进入“舱室方案”即可展示各个舱群下对应舱室的弹药调度方案,如图7所示。

图6 舱群弹药调度方案

图7 舱室弹药调度方案

4.3 可视化展示

在生成弹药调度方案后便可查看甘特图,如图8所示,在图中可清楚地看出各型弹药在各个舱群的调度方案,同时可显示各个舱群调度弹药所需时间,其中各个舱群最长的工作时间即为本次任务所需时间。

图8 舱群弹药调度方案甘特图

5 结语

运用UML 时序图建立了软件动态模型,并设计混合离散粒子群算法计算弹药调度方案,最后运用C++语言基于Qt Creator 5.0 开发平台开发系统。该系统通过选择高效的舰载机弹药调度方案,不仅能够缩短弹药保障方案生成的时间,为调度人员提供辅助决策功能,同时也提高了相关专业人员对舰载机弹药调度的熟练程度和操作水平,加深了对舰载机弹药调度方案的理解。

猜你喜欢

舱室弹药适应度
船舶舱室通风控制策略研究
改进的自适应复制、交叉和突变遗传算法
美国狼弹药公司A16.5mm卡宾枪
打不完的弹药
弹药动态加载下破片测试方法
2016'(第七届)含材料与钝感弹药技术研讨会在海口召开
基于空调导风板成型工艺的Kriging模型适应度研究
舰载导弹意外点火时舱室内喷洒抑制的影响研究
少数民族大学生文化适应度调查
舰艇受损舱室的破损模式识别算法