陆军合同战斗方案仿真实验评估分析框架
2019-10-14李策,杨博
李 策,杨 博
(国防大学联合作战学院,河北石家庄 050084)
在软件系统开发领域,框架是一种包含特定领域应用的,具有通用功能、易扩展、可复用和提供外部开发接口的一种软件构件形式。一个好的框架可提高领域应用系统开发效率、增强系统的灵活性。
陆军合同战斗仿真实验分析中,即使对同一组仿真结果数据集,面向静态和动态、综合和要素、全程和片段等评估要求,其评估内容和评估结果在表现形式上有很大的不同。随着各种新型装备投入使用和新战法的运用,评估分析的内容也会随之变化,因此需要一种能满足快速开发和适应变化的软件开发基础框架,以有效提高构造评估分析系统的能力。
本文基于框架技术思想和仿真实验分析需求,结合近年来开发评估分析软件的经验,抽取陆军合同战斗仿真分析中的通用功能,构成实验评估分析框架,通过封装最基本的一组功能和外部接口,供开发人员进行扩展和实例化,满足快速生成不同评估目的的分析系统。
1 框架的结构组成
从应用和开发的视角看,评估分析框架由功能、逻辑和接口三部分组成。
1.1 应用功能结构
应用功能为面向使用者所表现出来的评估功能,主要由静态评估显示、动态评估显示、态势过程复现以及评估报告生成等组成,其需要的相关支持模块关系见图1。
图1 框架的应用功能结构和组成
1.2 逻辑结构
按照模块功能独立、分层的原则,框架的逻辑结构从低层到上层划分为数据资源层、数据解析层、模型计算层和展现应用层,邻层之间下层为上层提供支持,各层组成结构见图2。
图2 框架的逻辑结构
1.3 接口结构
对外提供的接口主要有图形显示、静态评估数据、动态评估数据、行动过程数据、评估模型开发和报告生成接口,事件管理调度器用于协调内部各种数据的访问和解析,其组成结构见图3。
图3 框架的接口结构和组成
2 框架的关键功能模块设计
框架中行动解析器、协同分析器和跟踪过滤器位于中间环节,起着承上启下的转换连接作用。
2.1 行动解析器
行动解析器是以实体编码、时间、简令和地点等组合条件为输入,以具有一定作战行动军事含义的结构化数据集为输出的功能模块,支持行动效果计算和行动过程数据展示,其基本结构和组成见图4。
分类器以实体名称(编码)为基本输入元素,在类别数据库的支持下,通过与指令、时刻等条件组合,对实体的静态数据和动态数据进行分类。实体的静态数据按照实体的生成时刻、类别、所属作战编组、指挥关系以及支援和保障关系等进行分类。实体的动态数据可按照五个视图的方式进行分类组织。其中,数据视图按照时间轴(空间区域)给出每个时刻点(或位置点)上人员、装备和损耗等数据。行动视图按照时间轴(空间区域)给出每个时刻点(或位置点)上执行的行动,也可按照时间区间(局部区域)给出相应的行动。报告视图从报文中抽取各种数据元素,按照时间轴(空间区域)给出每个时刻点(或位置点)上的报告数据。状态视图反映实体作战过程中实体的动态属性变化,可在时间轴给出状态变化的内容,也可按照实体的运动轨迹给出发生变化的属性。交互视图反应实体在作战过程中所发生的己方、敌方以及环境实体间的交互情况,可按照时间轴和位置轨迹给出交互发生的行动和效果。关联输出器的作用是将相对独立的五个视图中的数据进行关联后输出,如将某实体一个行动的内容、执行结果、交互效果和报告数据进行关联可形成该实体某一方面的完整描述。
图4 行动解析器的结构和组成
2.2 协同分析器
协同分析器是以作战阶段、协同内容和实体属性等组合条件为输入,以具有作战行动协同含义的结构化数据集为输出的功能模块,支持进一步的作战协同行动效果评估和数据效果展示,其基本结构见图5。其中,分类器的作用是按照不同领域对协同内容具体区分,在每个领域内,将该领域相关实体执行模型中的动作、状态、报告等数据以及接收的指令按照时间轴形成序列化结构;时空与目标关联解析器通过对这些序列中实体间支援关系、保障关系、交战关系、相对位置关系以及搭载关系进行解析,从中析取反映协同的具体数据,最后分类输出相应的数据集。
图5 协同分析器的结构和组成
2.3 跟踪过滤器
跟踪过滤器是按照其他模块提交的数据需求,将行动解析、协同分析产生的数据以及源于方案数据库的设计数据进行检索过滤,以实体为线索将实体的动态数据按照时间变化的顺序提供给需求方,其结构见图6。跟踪过滤器在工作过程中需要调用行动解析器和协同分析器的内部接口,分类产生按时间排序的位置、侦察、交战等类别的数据流,再经过条件过滤筛选,输出满足查询条件的数据流。
图6 跟踪过滤器的结构和组成
3 框架的设计与实现
3.1 框架设计
评估分析框架采用面向对象的软件设计方法,首先确定每层对象类的组成,然后建立层之间的交互关系,其组成结构见图7。
数据资源层主要由实体管理类、实体类、编组类、目标类、行动类、任务类、标准管理类和评估标准类等组成,用于描述实验方案数据、仿真模拟数据和方案评估数据,提供与数据解析层、模型计算层和展现应用层的各类接口。地形数据、气象数据、资料数据和其他基础数据的访问功能由相关支撑平台提供。实体管理类EntityManager负责实验各方相关实体的数据管理、评估分析等;实体类Entity描述兵力实体和武器平台,也是环境实体的基类;编组类Group描述各作战编组,由一组实体组成;目标类Target描述目标的类型、状态和毁伤情况等;行动类Action描述实体的作战行动、保障行动和支援行动;任务类Mission描述作战编组和实体的各类任务;评估标准类Standard描述用于评估分析的标准数据和参考数据;标准管理类StandardManager用于实验评估标准管理。
数据解析层主要由行动解析类、协同分析类和跟踪过滤类等基类组成,由各实体类、编组类、目标类、行动类和任务类等实现,提供与数据资源层、模型计算层和展现应用层的各类接口。行动解析类ActionAnalysis负责对实体的行动执行情况进行解析,还原行动执行的细节,分析行动的关联影响因素;协同分析类EntityCooperateEvaluate负责对实体间存在的协同动作进行分析,查找动作冲突情况,分析协同匹配环节,估算协同时间,计算协同效果;跟踪过滤类Filter负责对行动解析,协同解析产生的数据和其他实验数据进行过滤跟踪。
模型计算层主要由评估模型接口、静态评估模型工厂、动态评估模型工厂、各评估模型和评估结果类等组成。评估模型接口ModelInterface负责描述评估模型的各类接口定义;静态评估模型工厂PlanEvaModel-Factory负责创建静态评估模型;动态评估模型工厂SimEvaModelFactory负责创建动态评估模型;模型类PlanEvaluateModel、SimEvaluateModel是各种评估模型的基类,分别用于静态评估和动态评估,PlanEvaluateModel以实验方案的决心和任务数据为基础实现方案的静态评估,SimEvaluateModel以模拟过程和行动效果数据为基础进行方案的动态评估;评估结果类Result负责保存评估分析结果数据。
展现应用层主要由评估管理、方案管理、评估结果管理、显示控制和报告生成等类组成,负责与用户间进行交互,展现相关分析结果。评估管理类EvaluateManager负责总体控制和管理;方案管理类PlanManager负责实验相关方案数据的加载、评估分析的调度;评估结果管理类ResultManager负责实验评估分析结果数据的管理;显示控制类Display负责按照需要提供以文、图、表等形式显示实验数据;报告生成类Report负责汇总评估结果和生成报告文档。
图7 评估分析框架的类组成结构图
3.2 框架的实现
框架的实现由评估管理类EvaluateManager进行总体控制,可分为数据加载、实验评估和结果分析三个阶段,见图8。
图8 评估分析框架的交互实现图
数据加载阶段,通过类EvaluateManager、PlanManager和EntityManager的Load()方法加载实验方案数据、实体数据、行动数据、任务数据和目标数据,保存到方案链表PlanList、实体链表EntityList、编组链表GroupList、任务链表MissionList、行动链表ActionList、目标链表TargetList中。实体链表包含实验方案各实验方的实体类实例,各实体类包含人员列表、装备列表、弹药列表、物资列表和行动列表等,通过Load()等接口与其他模型和显示等类进行交互。
实验评估阶段,通过类EvaluateManager调度ModelFactory创建评估模型EvaluateModel,由模型类加载所需的评估标准到标准列表StandardList中,并通过Evaluate()方法执行评估过程。评估执行过程中需要用到实体、目标、任务、行动、协同分析、行动解析和显示等类,通过Evaluate()、Filter()等接口进行交互合作。
结果分析阶段,通过类EvaluateManager调度Display的Show()接口,将评估结果以文、图、表、态势图等方式展现出来,通过人机交互接口对评估结果进行数据重构、原因追溯和统计分析等操作,从时间域、空间域和业务域多个方位展示实验各方实体在战场空间内的交互过程及结果。
4 结束语
为了满足各种仿真实验的不同评估需求,快速构建实验评估分析系统,本文基于软件的构件技术思想,首先从功能、逻辑和接口三个视角描述了评估分析框架的结构组成,重点对构成框架关键功能的行动解析器、协同分析器和跟踪过滤器等模块进行了结构设计,最后用面向对象的方法给出了框架的设计和实现,为评估应用开发设计了通用基础部件,有利于实验评估分析系统开发效率的提升。