朱 杰,游 雄,夏 青
(1. 信息工程大学 地理空间信息学院,河南 郑州 450052;2. 73021部队,浙江 杭州 315023)
为建立仿真系统与指挥控制系统之间的一体化互联、互通、互操作,美军提出一种明确无歧义的语言--战斗管理语言BML(Battle Management Language)确保军事计划和命令在军事人员、指控系统和仿真系统之间清晰无异的传输[1].目前,国内已有一些学者在此基础上借鉴美军BML研究成果推进适合我军的战斗管理语言的发展,以促进仿真系统与指控系统之间的互操作性,提升仿真系统自动化水平[2-3].
为了提高作战指挥、军事决策过程的高效灵活性,需要对BML在特定领域进行扩展,最大程度地对指控信息中地理环境数据作以标记进而形成理解战场环境的信息和知识.GeoBML(Geographic Battle Management Language)在BML基础上扩展为对战场环境关键信息表达,是指控系统在地理空间信息和知识上明确无歧义的描述[4].目前,由于指控系统与战场环境数据服务之间存在数据格式不统一、结构层次不一致及内容规范不明确等相关要素的互操作性还不完善,导致地理空间数据还没有被完全集成在作战指挥过程中,指控系统与战场环境信息之间的交互多集中于基础地理信息,如地貌、交通、水系等战场环境静态实体要素,而不同任务条件下,随着位置空间关系的变化,不同的战场环境要素对任务产生的影响不同,指控系统从任务需求上需要集成过程相关地理空间要素,尤其是动态变化的战场环境要素,如战场动态目标数据.
针对上述战场环境仿真系统与指控系统互操作性不完善,为解决战场环境仿真系统能有效解析指控系统关键信息需求问题,本文首先围绕作战任务,采用面向对象的方法构建战场环境仿真过程概念模型,其次通过基于GeoBML描述语言对仿真过程形式化,建立计算机能有效识别的数据模型,并根据语义关系关联任务与战场环境仿真过程,完成仿真数据映射,实现指控系统到环境仿真系统的关键信息理解无缝衔接,并有效地扩展战场环境仿真系统对任务信息时空关系表达能力.
面向作战任务的战场环境仿真过程是根据作战任务,在任务信息中挖掘影响任务的环境要素,抽取其关键信息需求,在各个层级的作战规则库与军事行动库的支持下,建立战场环境模型的过程[5].任务过程通常采用过程发生的时间、地点、作用的对象、发生的行为和触发事件这5个方面来描述,因此,对于战场环境仿真过程,也可以从时间、空间、对象、活动和属性5个方面来描述[6-9].那么,基于面向对象的战场环境仿真过程是用面向对象的方法对战场环境仿真过程结构化,按照关系范式对描述触发环境对象行为发生变化的各类关系语义进行封装,表达对象及对象之间的相互关系,以及记录触发对象变化的过程.由此,战场环境仿真过程概念模型可形式化描述为六元组:
其具体参数描述如下:
EP_ID表示仿真过程的唯一标识号,与作战任务标识相对应;
∑EP_Object(i)表示引起仿真过程作用的环境对象集合;
∑EP_Process(i)表示组成仿真过程的活动集合;
EP_Spatial表示仿真过程发生的空间区域;
EP_Time表示仿真过程发生的时态信息;
EP_Attribute表示仿真过程属性,包括过程的空间属性、时间属性和语义属性.
基于任务的战场环境仿真过程概念模型将空间(实体)对象、过程和语义规则封装在一起成为对象结构模型,从而完整地描述了三者之间的相互关系,能够实现战场环境仿真过程对象在空间、时间、事件、属性上的统一描述与表达.
基于GeoBML的战场环境仿真过程逻辑模型是采用GeoBML作为战场环境仿真过程的形式化描述语言,然后将其映射为XML表示的数据模型,实现计算机对此的有效识别.
根据参考文献[10-12]对作战任务过程的BML描述,战场环境仿真过程的GeoBML描述如下:
其中,由于GeoBML在时空语义的表达上进行了扩展,非终结符Verb决定了非终结符Affected受影响的环境实体是否出现及其要素的组成;非终结符Where扩展基于位置的空间对象数据组织方式,如分为在某地At-Where和经过某地Route-Where两种方式描述实体位置,其描述方式为
式中,"at""along""from""to"为终结符,表示仿真过程实体空间关系语义;非终结符Location表示仿真过程中要表达的与任务信息相对应的实体位置信息;非终结符Path表示点状实体与线状实体对象构成的路径信息.
利用XML Schema技术对上述GeoBML形式化的描述转化为标准化数据格式和结构化描述[15],如图1所示.
图1 战场环境仿真过程形式化描述框架Fig.1 Formal description framework of battlef i eld environment simulation process
战场环境仿真过程对象数据结构包括仿真过程类型、过程属性、过程操作、环境要素关联及其时空关联特征等,其结构体可具体定义如下:
Struct Process_SRO{
//过程类型
long ID; //对象ID,唯一标识符,主键
Struct Type; //过程对象类型
Struct Attribute; //过程对象属性信息
Struct Rule; //过程对象操作规则
//环境要素关联
Struct Env_Object; //环境要素对象结构
Struct Env_Object_Attribute; //环境要素对象属性
//时空特征关联
Sdo_Geometry Region; //过程域几何信息
Struct Position; //过程域位置信息
Data Process_Begin; //过程起始有效时间
Data Process_End; //过程终止有效时间
//调用数据库表操作
void GetDate (char index); //读取对应数据库索引并返回数据
void UpdateDate (BLOB Data,charindex); //修改数据并返回索引
}
作战任务过程始终都是处于战场环境中,整个过程都是发生在某种环境中,从语义上分析,执行任务的过程一定是发生在某个时间段、某个区域、某种天气地形状况等的一些环境中,而这些环境会影响着执行任务的作战行为,最终也影响到指挥决策的结果.因此,任务驱动的战场环境仿真过程数据映射是对战场环境影响作战任务整个过程的抽象表达,是作战任务在时空表达上的动态映射.
任务过程有其自身的起始位置和目的地位置,自身的下达时间和完成时间,因而,从时空特性上仿真过程与任务过程相一致,从属性特征上以任务需求关联战场环境要素对象,在语义关系上形成过程关联相关度.战场环境仿真过程数据映射操作运算的主要因素包括:作战任务过程集(TP)、时间属性集(Time)、位置属性集(Location)、环境仿真对象特征集(ES)等对象集合,和时间属性值域V_t、位置属性值域V_l、环境属性值域V等相关属性集对应的值域以及战场环境仿真过程属性关系映射函数f、关系运算操作符R.其可形式化描述为:
SPM
式中,TP定义为任务过程集合;
Time为时间属性集合;
Location为位置属性集合;
ES为所有关联环境仿真对象特征集合,将其限定为任务过程中所关联的战场环境仿真对象集合:
ES={es,es,es,…,es{,(1≤i≤n),es表
123ni示第i个环境仿真对象,n为环境仿真对象的数量;
V_t为时间属性的值域;
V_l为位置属性的值域;
V为所有环境仿真对象属性的值域:V=∪(V_esi|esi∈ES,i=1,2,…,n),其中,V_esi表示环境仿真对象特征个体esi的值域,ESXV为仿真对象特种集属性与值域的笛卡尔乘积,包括了仿真对象属性及其取值的所有组合,在实际应用场景中,通常由战场环境仿真过程∪及对应取值构成的二元组合X来表示仿真过程域,其满足ESXV;
映射函数f表示在当前仿真过程x满足xi∈X(i=1,2,…,n)条件下,将每个环境属性esi∈ES(i=1,2,…,n),映射到对应的情境属性值V_esi中,记作:f(xi,esi,V_esi)=0;
关系运算操作符R表示任务过程与仿真过程之间语义关系的操作运算,包括时间、空间、属性特征等语义相关性运算,记作:
R=fcon(time,loc,task,…),fcon为上下文的语义计算函数.以位置相关性为例,根据地理知识网络语义理论,建立任务与仿真对象之间的位置信息表达和推理关系,设两个语义单位S1、S2分别为基于GeoBML的任务过程、仿真过程解析实体位置语义信息,则有两者基于上下文语义树的语义相似度为:,其中,Dis(S1,S2)表示两者在语义树中的距离,λ表示加权因子用于调节权重.
由此,仿真过程域可以表示为:
其中,当前仿真过程X由n维环境对象组成,每维环境对象xi包括"属性-值"的二元组,即(esi,f(xi,esi,V_esi));
实现上述战场环境仿真过程数据映射算法流程描述如下:
1)形式化定义作战任务过程;
2)对任务过程按照分解粒度及时间序列进行逐级分解,得到具有相互关系的事件序列;
3)根据GeoBML对任务信息进行描述,提取任务关键信息需求,判断是否需要建立当前分解粒度的仿真过程模型,若需要则转4),若不需要则转2);
4)由分解结果确定与之匹配的仿真过程模型;
5)分析仿真过程模型之间的时空逻辑关系;
6)建立作战任务过程与仿真过程之间的映射关系;
7)生成对应作战任务过程的具体战场环境仿真过程数据.
用UML活动图(UML Activity)说明战场环境仿真过程动态映射模型构建,如图2所示.
图2 战场环境仿真过程动态映射模型UML构建图Fig.2 UML construction diagram of dynamic mapping model for battlef i eld environment simulation process
以地面战术机动任务为例,下面给出一个简单的任务过程,以测试面向任务的战场环境仿真过程模型的表达能力和对关键信息的映射功能.以下是某一阶段执行作战任务过程中上级通过指控系统下达给机械化战术分队的任务指令:
你分队于"2016-07-09 15:00:00"开始沿着"黑石头村(116.112,37.948)"经"佟家坟(116.134,39.965)"、至"潭峪(116.143,39.978)"一线于"2016-07-09 16:00:00"前执行隐蔽机动任务以阻止敌逃窜.
将其用GeoBML表示后的形式如下:
*隐蔽机动* *合成战术兵团司令部* *战术分队* *开始* *沿着"黑石头村(116.112,37.948)"经"佟家坟(116.134,39.965)"至"潭峪(116.143,39.978)"一线* *2016-07-09 15:00:00**2016-07-09 16:00:00* *前* *阻止* 命令_引用_标识1 /命令_引用_标识2/.
用GeoBML语法树结构表示如图3所示.
图3 基于GeoBML任务命令语法树Fig.3 Task command syntax tree based on GeoBML
根据上述GeoBML表示的命令通过战场环境仿真过程模型数据映射,对其中关联的环境要素建立位置特征矩阵M,包括要素位置坐标Loc、位置权重δ和要素特征属性值V构成,记为:M=(LociδiVi),i=1,2,…,n,采用Voronoi图的计算模式,将机动路线中设置的3个途径点作为关键点,按照K-近邻算法对所在的邻域搜索相关要素,使之生成实例空间上的决策面,进而完成机动路径相关的威胁区域自动生成,其可视化表达如图4所示.
图4 战场环境仿真过程表达界面Fig.4 Battlef i eld environment simulation process expression interface
目前,多数战场环境仿真系统与指控系统下达的任务信息之间的互操作都是基于人工的互操作,即通过军事仿真人员对作战任务信息的分析进而处理成仿真系统能够"理解"的过程,而本文提出的面向作战任务的战场环境仿真过程模型以作战任务为核心,从功能特征上通过GeoBML定义语义将仿真过程与任务过程进行映射,增加过程语义信息解析,因此,该模型主要有以下几个特点:①采用面向对象的方法对仿真过程进行结构化语义描述;②通过基于GeoBML语法树对作战任务过程中的战场地理空间信息进行无歧义描述,建立战场环境仿真过程表示模型;③定义了仿真过程对象数据结构,通过构建动态映射模型建立仿真过程与作战任务之间的映射关系.但是,本文对作战任务与战场环境仿真过程的描述与结构化建模仍存在局限性;对GeoBML语义扩展及适用性需要进一步探讨;对模型的验证缺乏数学模型的表达,以及模型的应用需要进一步结合目前人工智能计算方法(如机器学习),以适应未来战场环境仿真智能化的需求.