杨 帆,王家润,曹占广
(1.华北计算技术研究所,北京 100083;2.国防大学 联合作战学院,北京 100091)
作战编队是军事上特有的一类军事群体组织方式。最初源于生物界中的雁群空中飞行的人字队形或一字队形,该队形符合气流动力学原理,可极大减轻整个群体的体力消耗。上述仿生学原理已在军事上应用广泛,例如空战作战编队常采用:楔队、梯队、纵队、横队等,具有增加命中率、减少气流阻碍、减少雷达反射等优势,可极大提升作战群体的作战能力。无人/有人机(船、艇等)集群在军事领域中也已开始大规模应用,面向群体的相关研究引起了各方的高度关注[1]。
作战编队可视化的基础是图可视化。图是表达群体内部逻辑关系的数据结构。传统的图可视化采用图数据结构进行表达,2012年谷歌提出了知识图谱的概念后,以图为基础的知识图谱成为大规模图的研究方向。图或知识图谱的可视化是显示群体复杂关系的关键[3-5],广泛应用于各种领域,如医学[6]、深度学习[7]、社交网络[8-9]等。
针对作战编队,王家润等提出了基于视觉感知拓扑关系模型的作战编队可视化[10],在作战编队的队形上,通过附加辅助连线等,对作战编队群体的内部及外部进行了显示增强,但是对聚合显示没有给出相关的研究。袁德平等采用约束条件下的chameleon算法对敌目标进行空间群聚类并构建进攻矩阵,实现了对敌目标群的划分[11]。张森等针对多机协同作战编队队形控制,提出了基于几何约束的三角形、菱形、主从式等典型树形编队的控制模型[12]。李凤霞等从多分辨率作战编队队形属性出发,利用位置、状态、战损3种常用属性和队形在聚合解聚过程中的依赖关系及附加存储结构,利用标准队形数据库的方法减少了模型失真[13]。黄亚锋等基于Delaunay三角网模型,给出了点军标群的聚合显示中标号重叠等问题的解决策略[14]。上述这些研究,从不同角度对作战编队进行了一定的研究,但是总体来看面向作战编队的聚合及解聚可视化的体系化研究还较薄弱,特别是聚合后的作战编队显示增强方面。
作战决策OODA(Observation、Orientation、Decision、Action)循环理论中,观察是基础,战场态势可视化的核心作用是增强作战指挥人员的观察能力。战场态势中敌我双方的各种作战编队可明显体现出作战意图,因此,作战编队成为重点关注的军事群体,作战编队可视化也成为了战场态势综合显示中的重要组成部分。但是,美军的作战符号标准体系MIL-STD-2525X系列[2],仅对军队标号个体显示进行了描述,缺乏对作战编队群体的标准化设计。另外,随着战场态势中目标显示数量的大规模增加,战场综合态势显示出现拥挤、叠加等视觉混乱问题,而且显示窗口屏幕范围是有限的,减缓了指挥人员对战场态势的认知速度。因此需要探索作战编队的聚合简化技术,减少非关键目标的干扰,增强对战场态势的认知。
本文主要开展面向作战编队聚合/解聚的体系化可视化研究,期望推进军事群体可视化的相关理论及应用技术的发展。
本节首先给出作战编队聚合/解聚可视化控制模型的总体设计,然后对其中关键环节给出具体的实现。
MVC是经典的软件设计模式,主要包含三部分:Model:模型(M),View:视图(V),Controller:控制器(C),从数据逻辑层、表示层、控制层等给出软件的设计。MVC模式中,用户向控制器发出请求,控制器调用合适的模型,模型对用户的请求进行处理,并返回数据给控制器,控制器再根据返回的数据切换显示视图,呈现给用户。该模式具有结构清晰,各模块相对独立,可复用性强,易扩展等优点。基于MVC,提出作战编队基于知识图谱及MVC的聚合/解聚可视化控制模型,主要包括:作战编队基于知识图谱的语义建模(M)、作战编队聚合布局建模(V)、作战编队解聚布局建模(V)、作战编队显示切换(C)等,如图1所示。
图1 作战编队聚合/解聚可视化控制模型组成及MVC逻辑映射图
整个处理流程如下:首先,对作战编队进行语义建模;其次,依据当前地图比例尺,对作战编队进行聚合及解聚显示切换判断;最后,根据判断结果,进行解聚布局显示或聚合布局显示,如图2所示。
图2 作战编队聚合/解聚可视化的控制流程
作战编队中的每个个体,称之为军事实体(Entity),包含属性-属性值,重要属性包含ID识别号、中文名称、地理位置(经、纬、高)、对应的标号编码、敌我类别等。作战编队中的关系含有简短的文字描述说明,主要有指挥、通讯、隶属、火力支援等关系。
作战编队可用图可视化进行表达。图数据结构:G=(V,E)是图可视化的重要方法,其中V是节点集合,E是边集合。作战编队可用图数据结构进行表达,结构中的节点表示军事实体,边表示实体间的关系。针对复杂的战场态势,因为包含太多的作战编队,简单的图数据结构已不能满足实际需求,可采用基于图的知识图谱进行管理。用知识图谱三元组:实体(Entity)-关系(Relationship)-实体(Entity)记录作战编队内各实体之间的关系[15]。作战编队基本的知识图谱三元组表示可采用:下属实体-隶属-指挥者实体进行描述。作战编队中特殊的关系可参考上述三元组进行描述,如:实体A-支援-实体B。由于作战编队中关系较为简单,进行知识图谱构建时可尝试采用自顶向下(Top-Down)的构建方式。采用自底向上(Bottom-Up)的构建方式,采集半结构化数据,在关系抽取时可采用预先设置实体关系的方法,对作战编队中的实体关系进行抽取,该方法具有较高的准确度。针对战场态势中所有作战编队的知识图谱,可采用图数据库(RDF数据库系统3store、RDF三元组库Jena、原生图数据库Neo4j、原生图数据库Cayley等)进行存储管理,采用图查询语言(SPARQL、Cypher、GraphQL等)进行查询处理,图查询语言要注意与图数据库相对应。对作战编队的实体及实体关系的知识图谱建模是进行后续作战编队可视化的基础。
复杂的战场综合态势中实体数量多,关系(含作战编队)错综复杂,传统基于图的数据结构无法解决查询慢及关系数量较大的问题,而知识图谱有专用的高效的图数据库、高效的图查询接口以及标准化的实体关系描述,这是传统的图数据结构所不具备的。此外,传统的关系数据库在存储实体关系方面具有数据冗余的可能,在关系查询方面也存在一定的技术瓶颈,而图数据库不仅能够减少数据冗余的可能,在关系查询方面,相比关系数据库也更加高效,同时其存在易扩展,方便动态更新,可存储结构化和半结构化数据的特性,更适合存储知识图谱[15]。因此,图数据库及图查询成为知识图谱的核心技术。此处对作战编队中复杂关系采用知识图谱进行建模,可较好地应对未来战场综合态势中的大规模关系存储及高效关系查询等军事需求。
层级显示LOD(Levels of Detail)技术是高性能渲染的常用技术,通常是指根据物体模型的节点在显示环境中所处的位置和重要度,决定渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。即可根据物体是否在视点观察范围、物体的重要度、物体各节点是否可视、物体距离视点远近等不同属性,对物体进行显隐操作、显示精细度切换,或对物体部分节点进行剔除操作,以加快渲染速度。
LOD技术可分为离散LOD、连续LOD和多分辨率LOD三类[16]。离散LOD技术最先出现,技术相对成熟,具有渲染时计算量小的优势,但需要较大的存储空间,存储空间大小与所分层级数有关。另外,离散LOD在进行层级转换时,视觉上会出现不连续的跳跃感。连续LOD技术的出现解决了不同层级转换时出现的视觉上有跳跃感的问题,但在渲染时计算量大,渲染相对耗时,不适用于大规模场景。多分辨率LOD技术可将模型分块,根据重要度等属性的不同,分区减少细节信息,但该技术同样具有计算量大,渲染耗时的问题。
地图中常采用不同的比例尺来实现LOD思想,不同比例尺下所显示的内容不同。同样,对战场态势中作战编队的显示也采用LOD渲染策略,将作战编队看作整体,编队中的实体可采用两级显示:粗略显示(聚合过程)及精细显示(解聚过程),简称为聚合/解聚LOD,即ADLOD (Aggregation/ Disaggregation LOD)。采用地图比例尺1:5万、1:25万、1:100万、1:400万等作为解聚/聚合显示切换的控制依据。当用户选定1:25万作为显示切换控制依据时,当前地图显示窗口中的地图比例尺如果大于该值,则对显示窗口中的作战编队进行解聚显示,否则,则对其进行聚合显示。在实际应用中,用户也可根据当前的作战任务需求,动态调整解聚/聚合显示切换规则。默认选择以1:25万作为解聚/聚合显示切换控制依据。
作战编队解聚/聚合显示切换控制中可运用LOD思想。由于作战编队在聚合布局显示和解聚布局显示时,差异较大(参见1.4节及1.5节),因此不需考虑视觉上是否有跳跃感,选择采用离散LOD技术。在作战编队中使用LOD技术进行聚合计算,不仅能够提升渲染效率,更能有效地解决复杂战场态势中标号显示叠加、混乱导致的难点。
作战编队识别是作战编队聚合显示的基础。同一作战编队拥有以下特性:(1)空间位置相近;(2)运动方向一致。聚合操作通常使用聚类算法。简单地使用一般聚类算法,直接将空间地理位置相近的实体判定为同一作战编队,不能满足实际作战编队判别的需要。通过作战队形识别作战编队,是一种常用的作战编队识别方法[13],深度学习的出现使得智能化识别作战队形得以实现,但直接匹配作战队形更适用于空中作战编队这类作战队形更为固定的场景[17]。使用规则对作战编队进行建模,以实现对作战编队的识别,是另一种常用的识别方法,但该方法建模步骤较为繁琐,实现较为困难[18,19]。作战编队的识别,可为作战编队可视化提供一定的设计基础。
当作战编队处于聚合显示状态,隐藏非关键实体是聚合显示的核心操作,因此,在作战编队能够被识别的同时,还需对各实体的类型加以区分。整个的聚合过程包括如下的各个阶段。
预备阶段:作战编队隶属实体检索
在作战编队图数据库中检索出该作战编队中的实体集合(参见1.2节)。
阶段A:作战编队实体隐藏
对作战编队实体集合中的各个实体(参见图3中左图中的红点),进行隐藏。
图3 作战编队的区域几何辅助对象:椭圆,移动方向:箭头
阶段B:作战编队区域几何辅助对象构建
作战编队涉及多个实体,具有一定的空间分布,构建一个较简易的区域几何辅助对象,用于表征整个编队的空间分布区域(如图3中椭圆所示)。构建步骤如下:
步骤1:将作战编队实体集合中的每个实体的定位点地理位置转换为屏幕坐标;
步骤2:计算作战编队实体集合的主轴方向。采用主成分分析PCA(Principal Components Analysis)[20],计算出对应的位置点集主轴的特征向量,作为方向包围盒OBB(Oriented Bounding Box)的主轴,参见图3左图中的过中心方块的虚线,然后计算该主轴上的几何中心点,参见图3左图中的中心方块;
步骤3:平移到中心点并旋转主轴线到新的XY坐标系下的X轴;
步骤4:在新坐标系下,计算出整个作战编队实体集合的几何包围盒矩形的4个角点;
步骤5:构建经过上述4个角点的椭圆方程;
步骤6:对该椭圆进行均匀采样,离散成点列,进行反平移及反旋转,在屏幕坐标下依次连接,绘制出整个椭圆,以地理经纬高描述方式保存这些椭圆上的点。图3中的椭圆即为最后生成的区域几何辅助对象。
阶段C:作战编队指挥者实体的增强显示
作战编队中的指挥者(如:空中编队中的长机、海上编队中的航母、陆上编队中的指挥车等)在作战编队中非常重要,可对该指挥者实体不隐藏,作为该作战编队的重要代表。采用圆点或标号表示该指挥者实体,颜色采用标号的颜色,如图4中的圆点或标号所示。由于作战编队中,运动方向对于整个作战编队运动趋势的研判很重要,因此,在前述作战编队的区域几何辅助对象中附加箭头,表达作战编队的整体移动方向,箭头长度设为椭圆半长轴长度,如图3右图中的实线箭头所示。
图4 作战编队包含数量的点方式(左图)、标号样式(右图)聚合显示示意图
阶段D:作战编队组成数量的标识设计
作战编队聚合显示时,作战编队中的实体数量未能感知,采用“#+数量”的文字标注方式突出显示,参见图4,文字标注参考美军作战符号标准体系中标号的显示,带有边框及背景色填充,可减轻地图中遥感影像等对视觉的干扰,突出文字标注信息。图4中右图为避免标号与主要移动方向重叠,可将标号调整为指向正北方向。
综合上述各阶段,构建作战编队聚合布局显示过程的描述向量A=(指挥者,区域几何辅助对象,移动方向,组成数量标识,显示样式)。其中显示样式为点或标号,该向量对聚合过程中设计的可视化要素进行了概括。对比图3的左图与聚合后的图4可看出,聚合后屏幕显示的实体减少,可较好地减轻态势显示中的叠加混乱现象,加快态势认知速度,提高显示流畅度,优化用户体验。而且,聚合后对作战编队的关键信息:空间分布范围、编队中实体数量、运动趋势、指挥者等都进行了突出显示,军事语义的表达也更加丰富,可极大增强作战指挥人员对战场态势中“势”的认知深度。
当作战编队处于解聚显示时,主要采用如下两种布局模式:
1)逻辑拓扑布局模式
逻辑拓扑布局无需考虑实际地理位置等,侧重作战编队内部拓扑关系的显示,采用图可视化(节点-连接)表达,可采用半圆形布局、拉杆型布局、树形布局等。为表征作战编队的视觉整体感,借鉴王家润等提出的基于视觉感知拓扑关系模型的作战编队可视化思路,在个体之间增加辅助视觉显示增强虚线进行连接,虚线颜色与标号颜色保持一致。指挥机(舰、车等)放置于视觉上重要几何位置:半圆形中心点;拉杆型顶部点;树形左侧点(根节点)。其中,拉杆型布局的设计思路也借鉴了ArcGIS中的军事制图编辑模块MOLE(Military Overlay Editor)中标号集的拉杆显示[2]。概括上述,作战编队解聚逻辑拓扑布局的描述向量L=(编队实体集合,布局样式,辅助视觉显示增强虚线,显示样式),其中布局样式为半圆形布局、拉杆型布局、树形布局等,显示样式为点或标号。该逻辑拓扑布局模式主要应用于突出作战编队逻辑组成的应用场景,如图5、图6所示。
图5 作战编队逻辑拓扑布局模式:点方式显示样式示意图
图6 作战编队逻辑拓扑布局模式:标号显示样式效果图
2)地理布局模式
地理布局需考虑作战编队中每个实体真实的地理位置,编队中所有实体都在其真实地理位置显示,采用圆点或标号显示样式。采用标号显示样式时,标号的方向与原来的方向保持一致,作战编队此时将会显示编队的队形,编队内部实体之间的距离、间隔、高度差等符合队形的规定要求。该地理布局主要应用于突出显示地理位置的应用场景中,如图7中飞行编队楔形队形所示。为表达对作战编队的整体感,可借鉴王家润等提出的基于视觉感知拓扑关系模型的作战编队可视化中的凸包理念,构建作战编队的二维凸包虚线,进行视觉增强显示,如图8所示。在有些特殊情况下,例如一字形的梯队、纵队、横队时,凸包可简化为首尾不封闭的虚线,参见图5中间图的拉杆型布局显示。概括上述,作战编队解聚地理布局的描述向量G=(编队实体集合,辅助视觉显示增强虚线,显示样式),其中显示样式为点或标号。
作战编队内部实体之间还可能包含复杂的深层次军事语义关系。如带有方向性的上下级指挥或支援保障关系等(参见基于知识图谱的语义描述模型部分),此时可附加有向箭头加文字说明的方式进行突出显示,如图9所示。该可视化手段可进一步把作战编队内部特殊不可见的关系进行视觉呈现,从而实现对作战编队的势的洞察。从上述也可看出,作战编队基于知识图谱的语义描述模型具有良好的关系扩展描述能力,为作战编队内部实体关系的表达提供了通用技术手段。概括上述,作战编队特殊语义显示增强的描述向量E=(实体-关系-实体,显示样式),其中显示样式为左箭头、右箭头、双向箭头等。
汇总上述各部分中的描述向量,作战编队聚合/解聚可视化控制模型的向量形式可表征为V=(K,L,G,E,R)。其中,K标识作战编队的知识图谱语义模型,L为作战编队解聚逻辑拓扑布局的描述向量,G为作战编队解聚地理布局的描述向量,E为作战编队特殊语义显示增强的描述向量,R标识作战编队聚合/解聚显示切换规则。向量V对作战编队聚合/解聚可视化控制模型给出了概念上的整体描述。
本文针对军事群体,特别是作战编队,给出了基于知识图谱三元组的内部实体之间的逻辑关系建模,及解聚/聚合布局的详细设计方法及显示切换控制,并基于经典的MVC软件设计模型,构建了一个面向作战编队的聚合/解聚可视化控制模型,实际效果良好。下一步可基于作战编队知识图谱,采用图卷积神经网络等,研究作战编队的智能挖掘及预测,也可深入开展对作战体系的重心分析等[21],抽取军事群体的特征并进行表意性特征可视化。另外,可进一步补充作战编队知识图谱图数据库中各实体的作战能力等属性,开展面向作战编队的作战能力可视化研究[22]。