基于分层结构的C4ISR服务部署分布式演化方法

2021-05-31 13:49焦志强张杰勇姚佩阳何宜超
系统工程与电子技术 2021年6期
关键词:代价层级部署

焦志强, 张杰勇, 姚佩阳, 王 勋, 何宜超,2

(1. 空军工程大学信息与导航学院, 陕西 西安 710077; 2. 空军工程大学研究生院, 陕西 西安 710077;3. 国防科技大学信息通信学院, 陕西 西安 710106)

0 引 言

随着联合化作战、跨域作战思想的提出,基于面向服务架构(service oriented architecture, SOA)的思想构建指挥信息系统(command, control, communications, computers, intelligence, surveillance and reconnaissance, C4ISR)势在必行,并已经取得了长足的发展[1]。在SOA架构下,新一代C4ISR将各个功能进行服务化封装,并依托军事作战云对服务进行合理部署,以实现作战信息在执行任务平台间的高效流转[2]。这种功能服务化封装、服务分布式部署的架构有利于打破各军兵种信息系统间的信息壁垒,整合海、陆、空、天、赛博全域空间中的态势信息,从而为联合作战和全域作战提供有力支撑。为了有效应对信息化军事对抗中战场环境复杂多变的挑战,C4ISR还需要具备敏捷的演化机制来适应作战环境的动态变化,以维持系统完成既定任务的能力。虽然目前对C4ISR演化问题的研究已取得不少成果,但这些研究仍然具有一定的局限性。

文献[3]研究了C4ISR架构与演化过程的形式化描述方法,基于美国国防部体系架构框架2.0(Department of Defense Architecture Framework 2.0, DoDAF 2.0)体系结构提出了一种面向服务视图的C4ISR体系结构描述框架,并给出了系统演化操作的相关定义。文献[4]根据C4ISR的演化特点,给出了基于构件的系统演化过程,并基于高阶π演算保证系统演化的一致性与正确性。文献[5]以波模型为基础,对C4ISR体系演化过程中的涌现行为进行了探讨。通过提出C4ISR演化过程模型,并抽象描述系统能力涌现机制,为后续C4ISR调整方案的生成提供理论指导。然而,上述工作主要集中于对C4ISR演化框架及描述方式的研究,对具体演化方法的探索还有待进一步加强。

与此同时,文献[6]针对C4ISR系统结构中指挥控制关系的演化方法进行了研究,通过定义组织演化代价和性能代价提出了指控关系适应性演化模型,并基于m-best策略提出了相应的求解算法。文献[7]侧重于考虑时间约束对指控结构适应性演化的影响,并根据任务变化和平台损毁两种情况建立了演化模型,同时基于贪心思想设计了指控结构适应性演化方法,以降低算法的时间开销。文献[8]则将Holon控制理论引入指控组织设计与演化问题,研究了不同决策模式下的资源调度问题,构建了集中与协作相结合的资源调度和演化机制。可以看到,文献[6-8]虽然对系统演化的具体问题进行了探讨并设计了相应的求解算法,但其研究的重点在于系统中指挥控制组织的演化过程,而对于SOA架构下服务部署的演化问题缺乏针对性的研究。

本文中的C4ISR服务部署演化问题主要包括系统状态监控与演化总体框架构建、服务部署方案动态调整方法设计两个方面。从本质上看,该问题与云计算领域的云资源调度问题[9-12]有类似之处,都是通过监控系统的运行状态并对服务/虚拟机进行迁移来维持整个系统的正常运行。但对云资源调度问题的处理一般都是在云计算中心完成的,由于云计算中心拥有足够的计算、内存、存储和通信资源,其对服务/虚拟机的调度可以通过集中规划的方式利用热迁移技术在各服务器间实现,因此云资源调度问题注重提高云计算中心中各类资源的利用率,许多研究以降低能耗为目标开展了云资源调度研究[13-15]。在此基础上,一些研究借鉴了云计算领域中的服务部署方法,将系统服务集中部署在云计算中心[16],利用云计算中心充足的资源支持服务部署的演化过程。然而,对于前出作战的终端平台(尤其是空基平台,如侦察无人机等)而言,其通信资源往往十分受限,如果将其侦察到的数据直接传输到云中心将会造成信道的拥塞从而降低系统的效能。因此,本文借鉴了C4ISR的移动云模式[2]以及雾计算[17]、边缘计算[18]等新兴服务计算技术的核心思想,考虑在C4ISR服务分布式部署到作战平台的场景下,研究部署方案的演化问题。在此场景下,部署方案的调整具有以下特点:一是相较于云计算中心,终端作战平台的计算、内存、存储和通信资源都十分有限;二是在执行任务过程中对调整方案的影响范围十分敏感。由于作战过程中涉及的平台较多,采用集中式的调整方式需要对所有作战平台进行统一的状态监控和资源调度,这势必将消耗过多的系统资源,同时集中式的全局调整虽然能取得系统效能上的优势,但其在通盘考虑的过程中难免会出现调整范围过大的情况,而作战平台分布在整个作战空间中,过大的调整范围将会造成调整策略执行的迟滞。

综上所述,本文针对C4ISR服务部署演化问题特点,基于分层结构设计了分布式状态监控与演化总体框架,在降低平台状态监控与平台资源调度开销的同时将大规模的优化问题进行分解,帮助快速找到较优的可行解以适应演化过程的实时性要求;在服务部署模型的基础上,通过定义信息流转路径长度和方案调整代价构建了C4ISR服务部署演化模型;最后将成对交换(pair-wise exchange, PWE)方法、最短路径规划方法与m-best寻优过程相结合设计了系统服务部署层级演化方法,使得系统能够在短时间内找到调整代价较低的调整方案。

1 C4ISR分布式状态监控与演化总体架构

在云环境下,系统资源状态监控系统的架构如图1所示。可以看到,整个监控流程主要由数据采集/存储模块、数据分析模块以及系统状态反馈展示模块构成。其中,数据采集/存储模块负责采集计算、内存、网络等各类资源状态[19-20],并对这些数据进行存储为后续分析提供充足的历史数据。数据分析模块则基于上述数据对当前系统状态进行具体分析,判断/预测是否可能出现了异常情况,并对异常提出告警[21-22]。系统状态反馈展示模块则将数据分析模块得到的结果进行综合处理[23],以更加直观的方式向云服务提供商和用户进行展示,为后续调整策略的制定提供依据。

新一代C4ISR的部署位置相对分散,不再局限于某个固定的节点,对其状态的监控无法直接通过图1中的结构进行。图2展示了C4ISR服务部署的一个简单案例。

图1 云环境下资源状态监控系统架构Fig.1 Architecture of resource status monitoring system in cloud environment

图2 C4ISR服务部署案例Fig.2 C4ISR service deployment case

可以看到,相关服务部署在各类平台上,散布于海陆空天等作战空间中,传统集中式的监控已经无法满足要求。同时,由于平台间的通信资源十分宝贵,监控数据的实时传输可能会占用过多的信道带宽,从而影响C4ISR的正常运行。因此,本文基于分层结构提出了C4ISR分布式状态监控与演化总体架构,如图3所示。

图3 基于分层结构的C4ISR分布式状态监控与演化总体架构Fig.3 Architecture of C4ISR distributed state monitoring and evolution based on hierarchical structure

可以看到,该架构主要可以分为5个模块:数据监测模块、异常发现模块、资源协调模块、策略分解模块、状态汇集/预测模块。每个平台上的通用计算设备主要包含了计算、内存、存储等资源,负责支撑相关服务的运行。值得注意的是,每个平台的存储空间内不仅可以存储本平台部署的服务,还可以对其他服务进行备份以方便部署方案调整时相关服务的快速接替。

1.1 数据监测模块

用于对每个平台中资源的使用状态进行监测和记录,包括CPU使用率、RAM使用率、Hardware使用率、响应时间、错误率等信息(图3中的绿色实线)。这些信息将被存储在本地数据库中,作为历史数据用于后续的异常分析。为了提高数据的使用效率,相同类型节点或是相同类型服务的相关数据可以进行共享以增加历史样本数量。为了减少通信带宽压力,这些数据的传输不必实时进行,可以选择在通信带宽的空闲时段进行批量传输。

1.2 异常发现模块

主要完成对异常状态的发现和上报。针对数据监测模块捕获的数据,利用已有的历史样本分析节点当前是否存在异常。这里为了减少计算、存储以及通信等资源的开销,将所有平台进行层级划分,并在每个层级设立中心平台(如图3中平台1和平台2)。若判断当前平台处于异常状态,则将相关信息发送至本层级中心平台(图3中的红色虚线),由其直接进行层级内的资源协调,减少了监控数据层层上传而造成的资源和时间开销。异常分析的过程是可持续更新的,能够按照效能反馈模块的信息进行模型的调整,从而适应系统的整体演化。

1.3 资源协调模块

根据数据分析模块得到的异常信息和来自本层级(及以下层级)平台的异常信息(图3中的红色实线),生成本层级(及以下层级)平台中的资源调整策略,完成对异常的处理。为了降低调整策略对整个系统的影响,这里采用自下而上的信息传递及策略生成机制。由于资源协调模块只能接收到来自本层级(或以下层级)的信息,因此调整策略的作用范围限定在本层级(或以下层级)内。若本层级资源仍然无法满足需求,则将该异常继续向上层中心平台传递(图3中的红色虚线)。

1.4 策略分解模块

根据平台间的层次关系,将资源协调模块得到的调整策略或者作战指挥/系统维护人员提出的主动调整策略进行分解(图3中的蓝色实线),明确本层级平台应当执行的调整操作并以指令的形式发送到本层级内对应平台的通用计算设备(图3中的蓝色虚线)以完成本层级平台的调整过程。同时,将下级平台的调整策略继续发送至相关中心平台的策略分解模块(图3中的蓝色虚线),重复进行上述分解过程,直至整个调整策略被完整执行。

1.5 状态汇集/预测模块

汇集/预测系统状态信息,形成系统状态的总体情况并对下一阶段系统的状态进行预测。该模块以直观的方式对系统的当前状态和未来的预测状态进行展现,方便作战指挥/系统维护人员做出主动调整策略。这里需要注意的是,系统当前状态的正常与否是系统状态总体情况中的重要信息,需要进行实时的汇集,而每个平台具体的运行数据则可以在信道空闲时间进行传输,以降低节点间的通信压力。系统状态的总体情况也将被保存在系统运行历史数据库中以方便后续对系统进行优化。

在上述分布式架构下,系统调整策略的制定不必集中进行,而是由对应层级的中心平台承担。若本层级内的平台资源无法满足需求则由本级中心平台向上级中心平台上报,并由其在上级层次的平台中进行协调。平台只需要存储部署在本层级平台内的相关服务即可保证相应调整方案的执行,从而避免每个平台都需要备份所有服务所造成的存储空间的浪费。这种自下而上的调整机制能够减少监控信息在网络中的冗余传输,并且能有效控制系统演化的范围,减少对高层级平台的影响。本文后续工作主要针对演化架构中的资源协调模块开展,为服务部署方案设计适应性调整算法,在时间允许的范围内制定合理的系统调整方案,快速解决平台内服出现的各类型问题,从而维持系统完成任务的能力。

2 C4ISR服务部署方案动态调整问题描述

2.1 C4ISR服务集合及交互关系

C4ISR服务集合可以表示为

Service={si|1≤i≤sn}

(1)

集合中的服务si可用一个七元组表示:

si=

stpsi,sprbi,rmipsi,rrami>

式中,snamei为服务名称;sidi∈N为服务编号;pftypei为可以部署该服务的平台类型集合;stpsi表示需要为服务i提供信息的平台集合;sprbi∈R|stpsi|×1表示各平台到该服务之间的通信带宽需求;rmipsi∈R+为服务的指令处理能力需求;rrami∈R+为服务的内存需求。服务集合中各个服务间的数据交互关系可以表示用IR∈Rn×n表示,IRi,j代表服务i和服务j之间的带宽需求。

2.2 云平台

在实际运用过程中,云平台为了更好地为使用者提供合适的云资源,会事先将虚拟机根据其CPU、内存等参数划分为不同的类型。假设VM={vmi|1

vmi=

式中,vcpui∈N为虚拟机的CPU核心数量;vrami∈R+为虚拟机的内存开销;vmipsi∈R+为虚拟机的指令处理速度;cvmi∈R+为虚拟机的使用成本。云平台到各终端平台的通信带宽可用CPB∈R1×pn表示。

2.3 终端平台

终端平台指分布于陆、海、空、天各作战空间中的各类型武器装备、移动指挥所、单兵作战系统等能够提供计算、存储、通信资源的作战平台。尽管与云平台相比,该类平台只能够提供有限的系统资源,但由于其具备机动性、灵活性、隐蔽性等特点,往往可以在一些复杂情况下支持部分服务的顺利运行。一个终端平台可以定义为一个八元组:

TPi=

Tirbi,Tcpui,Trami,Tmipsi>

(2)

式中,typei∈N+为该平台的类型;idi∈N+为该平台的编号;loctioni∈R1×3为该平台所处的地理位置;终端平台在执行任务时需要一些服务为其提供必要的信息支持,为了简化表述这种需求关系,这里通过Tissi表示需要为平台i提供信息的服务集合,Tirbi∈R|Tiss|×1表示各服务到该平台之间的通信带宽需求;Tcpui∈N+为平台所能提供的CPU核心数量;Trami∈R+为平台所能提供的内存资源;Tmipsi∈R+为平台的指令处理速度。终端平台之间的通信带宽可用CB∈Rpn×pn表示,pn为平台数量。

2.4 部署方案

指挥信息系统中的服务部署方案不仅需要为流程中的每个服务指定了支撑其运行的(终端/云)平台,还需要为服务间需要传递的信息确定流转路径。因此,指挥信息系统服务流程部署方案可以定义为一个二元组:

DPscheme=

(3)

式中,STP∈Rn×1为服务到平台的映射矩阵,STP(i)表示服务i被分配到的终端平台编号;

(4)

表示所有信息流转路径的集合,其中SSPath为服务与服务之间的信息流转路径集合;sspathi, j表示服务i和服务j之间的信息流转路径;SPPath为服务与平台之间的信息流转路径集合;sppathi, j表示服务i和平台j之间的信息流转路径;PSPath为平台与服务之间的信息流转路径集合;pspathi, j表示平台i和服务j之间的信息流转路径。sspathi, j、sppathi, j和pspathi, j本质上都可以定义为一个点对集合:

(5)

2.5 部署约束

由于服务特性、平台特性、战场环境等因素的限制,服务在部署到(终端/云)平台中时需要满足以下约束。

约束 1终端平台中的系统资源能够支撑服务的运行,即对于终端平台i而言,若部署上该平台上的服务集合为TDi,则应该满足:

(6)

(7)

式中,n为终端平台数量;Tmipsi和Trami分别表示终端平台i能够提供的计算和内存资源。

约束 2当两个需要进行信息交互的服务部署于不同平台时,平台间的通信带宽应该能够支撑服务间通信带宽需求;若需要进行信息交互的两个服务部署在不能直接进行通信的平台上,则该信息需要流转经过其他平台以达到终点平台,即在上述两个平台间找到一条能够支撑得起该信息流带宽需要的通路。式(4)将所有的信息流分为了3类:服务到服务信息流集合SSPath、服务到平台信息流集合SPPath以及平台到服务信息流集合PSPath,尽管这3类信息流的起始点类型不同,但由于服务最终都是由平台承载的,因而当服务-平台映射关系STP确定时,上述3类信息流都可以转化为平台到平台的信息流,从而形成最终的信息流路径集合PathSet。PathSet中的每一条路径都可以通过式(5)来表示,为了保证该条路径上的带宽能够支撑得起需求,式(8)对流经平台m1和平台m2间的所有信息流的带宽需求进行了统计,并确保其不超过平台m1和平台m2间的最大通信带宽。(若两个服务部署在同一平台上,则该约束自然满足。)因此,对于可直接进行信息交互两个平台m1和m2而言,应满足

m1,m2=0,1,2,…,pn

(8)

式中,CBm1,m2为平台m1和平台m2之间的最大通信带宽,满足式(8)即意味着所有需要流经平台m1和平台m2之间信道的带宽需求不会超过其能够提供的最大带宽。这里不考虑云平台中各虚拟机相互之间的通信带宽约束,即将虚拟机统一看作为一个云平台进行处理。为了方便区分云平台和终端平台,可将云平台的编号定义为0号,终端平台的编号则从1号开始续编。

约束 3考虑到部分服务的运行不仅需要计算、内存等系统的支撑,还可能需要一些硬件设备(如雷达、红外探测器、摄像头等传感器)的支持。因此,此类服务在部署时还需要考虑平台的硬件设备是否满足服务运行的条件,即对于服务i而言,若其部署在平台m上则应满足(若pftypei=∅,则该约束自然满足):

TPtypem∈pftypei

(9)

综上,一个部署方案需要满足式(6)~式(9)才能被认为是一个可行方案。

2.6 C4ISR服务部署分布式调整模型

考虑到系统信息流转路径对指挥信息系统效能造成的影响,这里的优化目标基于系统信息的流转带宽需求及流转长度进行构建,即通过降低各类信息在无关平台中流转次数以提升系统的运行效率。假设在新部署方案DPscheme′下的信息流转路径的集合为PathSet′,则系统信息流转代价可以定义为

(10)

根据部署方案的定义,在给定DPscheme′和DPscheme的情况下,参与调整过程的平台数量为

(11)

信息传输路径的变化则相对复杂,不仅需要关注同一信息流起/终点的变化,而且对于起点和终点相同但传输过程路径发生变化的情况也需要进行考虑。由于在式(5)中,路径被定义为点对集合,因此针对同一信息流可以通过比较前后两条路径交集中的点对数量来衡量两条路径的变化程度。基于上述分析,信息传输路径的变化率可以定义为

(12)

在式(11)和式(12)的基础上,部署方案调整的代价约束可以定义为

decost=PEN·ITCR≤σ

(13)

式中,σ为指挥信息系统服务部署方案调整能够承受的最大代价。

综上,指挥信息系统服务流程部署方案调整问题可以表示为优化问题。

(14)

3 基于m-best的服务部署调整方案生成方法

上述优化问题可以采用遗传算法、蜂群算法等智能搜索算法进行求解,然而这类算法的时间开销较大且最终得到的结果质量不稳定。考虑到C4ISR服务部署演化是一个实时性要求较强的问题,本文基于m-best策略提出一种贪心搜索算法来对该优化问题进行求解。

在作战过程中,部署方案进行调整主要可以通过服务迁移/接替进行解决,对应到部署方案上也就是对STP和PathSet的调整。从调整顺序上看,对STP的调整势必会影响PathSet,因而这里必须首先考虑对STP进行调整,然后以调整后的STP为基础,根据信息流转需求和通信线路受影响的情况对PathSet进行调整。

3.1 基于PWE的信息流转路径重规划

这里先对一个子问题进行求解,即如何在单个服务si迁移后对PathSet进行调整。对于服务si而言,若部署位置从TPj迁移至TPk,则可以表示为si(TPj→TPk)。为了减少信息流转路径改变带来的调整代价,对于不受si部署位置改变影响的服务和平台间的信息流转路径应该尽量保持原有方案不变,而对于受影响的信息流转路径则需要重新进行规划。对于单个信息流转路径而言,可利用Dijkstra算法直接进行解算。而对于多条路径的同时规划问题,则很难在多项式时间内获得其最优解。一种简单的思路是:首先固定一个求解顺序,然后按照顺序对多条信息流转路径以此进行求解。求解顺序可以根据各信息流转路径的重要度降序排序得到,这里直接将重要度定义为信息流的带宽需求,即认为带宽需求大的信息路径需求具有更高的优先级,因而有

IMDi=Bi

(15)

然而,上述方法将有可能受到求解顺序的影响而变的不稳定,若求解顺序选择不当有可能导致传输路径代价过高甚至无法找到可行解的情况出现。基于上述考虑,本文利用PWE方法[24]对所求的路径集合进行优化。PWE方法的核心思想是在重要度排序的基础上随机选择多对待规划的信息流转路径,交换各路径对的规划顺序,并按照调整后的顺序进行规划,最后选择最优的结果作为当前情况下的PathSet。需要注意的是,若在某路径规划顺序下无法得到满足信息流转约束的解,则将该路径规划顺序舍弃;若所有顺序下始终无法得到满足约束的解,则对应的服务迁移方案将被认为是不可行的。

基于PWE的信息流转路径重规划算法可以描述如下。

算法 1基于PWE的信息流转路径重规划

输入:原部署方案DPscheme={STP,PathSet},单个服务部署调整策略si(TPj→TPk),服务集合中各个服务间的数据交互关系IR,各平台的信息需求集合TISS={Tissi|i=1,2,…,pn},原方案下终端平台之间的空闲带宽CB′。

输出:路径集合PathSetre,调整后的信息流转代价fcostre。

步骤 1根据原服务-平台映射矩阵STP,单个服务迁移方案si(TPj→TPk),服务集合中各个服务间的数据交互关系IR以及各平台的信息需求集合TISS={Tissi|i=1,2,…,pn},整理得到需要重新规划的信息流转路径集合

步骤 2去除PathSet中与Upathsetre中路径对应的原信息流转路径,并对CB′进行调整。

步骤 3利用式(14)为集合Upathsetre中的所有元素进行重要度计算,通过降序排序得到路径序列ps0。

步骤 5随机选择PPOS中的一组路径序列psi,令cbi←CB′。

3.2 基于m-best策略的服务部署调整方案生成

m-best策略[25]本质上是一种改进的贪心策略。其在贪心策略的基础上每一步都对最优解和部分(m-1)个次优解同时进行考察。这种全局性质的评估将缓解贪心策略中每一步都直接选择当前最优解而造成的“短视”情况,从而使最终结果逼近全局最优,如图4所示。

图4 m-best策略示意图Fig.4 Schematic diagram of m-best strategy

这里先对基于贪心策略的服务部署调整方案生成进行介绍。其核心思想是先按照服务的带宽需求确定调整顺序,然后按照顺序对各个服务进行考察。在考察单个服务的部署位置时,计算所有情况下的信息流转代价,选择代价最小的平台作为该服务调整后的部署平台。

为了方便算法的描述,先对邻域的概念进行介绍。对于服务si而言,其在原部署方案DPscheme基础上所有可能的部署调整方案si(TPj→TPk)构成的新部署方案集合NDPS称为DPscheme关于si的邻域。在此基础上,基于贪心策略的服务部署调整方案生成过程如下。

算法2基于贪心策略的服务部署调整

输入:当前部署方案DPscheme={STP,PathSet},终端平台集合TPS,服务集合中各个服务间的数据交互关系IR,各平台的信息需求集合TISS={Tissi|i=1,2,…,n},当前方案下终端平台之间的空闲带宽CB′,待部署的服务集合RSS={si|i=1,2,…,nrs},以及可接受本次重新部署的平台集合RPS={TPi|i=1,2,…,nrtp}。

输出:信息流转代价fcostre。

步骤 1根据RSS中各服务所需带宽总量对待重新部署的服务进行降序排序,令当前方案DPschemeN←DPscheme。

步骤 2按照顺序在RSS选择当前调整服务si。

步骤 3根据式(6)、式(7)和式(9)计算DPschemeN关于si的邻域NDPS。

步骤 4利用算法1对NDPS中所有方案的PathSet和fcost进行计算,选择选择信息流转代价最小的方案作为si的调整策略。

步骤 5在当前策略下对DPschemeN和CB′进行更新。

步骤 6令RSS←RSS/{si},若RSS=∅,转步骤7;否则,转步骤2。

步骤 7输出当前DPschemeN对应的信息流转代价fcostre。

在算法1和算法2的基础上,基于m-best策略的服务部署调整方案生成过程如下。

算法3基于m-best策略的服务部署调整

输入:原部署方案DPscheme={STP,PathSet},终端平台集合TPS,服务集合中各个服务间的数据交互关系IR,各平台的信息需求集合TISS={Tissi|i=1,2,…,pn},原方案下终端平台之间的空闲带宽CB′,待重新部署的服务集合RSS={si|i=1,2,…,nrs}以及可接受本次重新部署的平台集合RPS={TPi|i=1,2,…,nrtp}。

输出:调整后的部署方案:

DPschemere={STPre,PathSetre}

步骤 1根据RSS中各服务所需带宽总量对待重新部署的服务进行降序排序,令当前方案DPschemeN←DPscheme。

步骤 2按照调整顺序依次对服务si执行以下步骤。

步骤 2.1计算DPschemeN关于si的邻域NDPS;

步骤 2.2利用算法1对NDPS中所有方案的fcostre进行计算,选择选择信息流转代价最小的前m个方案构成当前考察方案集合CCPS;

步骤 3输出当前部署方案DPschemeN。

综上,基于m-best的C4ISR服务部署层级调整算法流程如图5所示。

图5 基于m-best的C4ISR服务部署层级调整流程图Fig.5 Flow chart of C4ISR service deployment hierarchy adjust based on m-best

可以看到,当某个平台上的服务出现异常时,该情况会先上报至本级中心平台并由其进行调整方案的生成。若本层级中心平台调度失败则往上级中心平台上报,在更大的范围内进行调整。不难发现,方案的调整并不是一开始就直接在整个系统平台中进行的,而是首先在其所处的层级内进行的。同时,调整方案的规划者也是先由各层级中心平台担任,并非直接由最顶层的平台集中担任,因而本文提出的调整方法可以看作是分布式的。

4 仿真验证

为了验证本文所提出算法的有效性,以一个联合作战场景下C4ISR服务部署想定为算例在Core i9-9900K CPU 3.6 GHz计算机上进行仿真实验。算例中,参与作战行动的平台包括云平台、联合指挥所、雷达站、沿海机场等共计9类19个平台,详情如表1所示。针对所要执行的作战任务,服务流程可用图6表示,每个服务对应的编号如表2所示。当前服务部署方案如表3所示。

表1 作战平台编号及名称

表2 服务名称及编号

表3 原服务部署方案

图6 C4ISR的服务流程Fig.6 Service process of C4ISR

为了减少全局调整带来的时间开销过大问题,这里依据平台在作战过程中所处的位置将平台分为3个层级,并为每个层级确立中心平台以进行层级内服务迁移方案的制定,具体分级情况如表4所示,其中带*号标记的平台表示各层级的中心平台。

表4 平台层级分配方案

在上述算例下,根据服务原部署平台对初始调整层级进行确定,并随机生成需要重新部署的服务集合。基于本文所提出的算法生成部署调整方案并与全局调整方法对比,算法中m-best策略的变量m值分别为1,2和3,表5为100组实验所得结果的平均值。

表5 层级调整与全局调整的对比结果

为了进一步体现本文所提算法在求解系统服务部署方案动态调整问题上的优越性,与其他智能优化算法进行对比,各算法参数设置如下。

遗传算法(genetic algorithm, GA)[26]:种群规模N=500、进化代数K=100、交叉比率Cp=0.8、变异概率Mp=0.01。

粒子群优化(particle swarm optimization,PSO)算法[27]:粒子规模N=500、进化代数K=100、惯性权重w=0.729 8,自学习因子c1=1.496 2,全局学习因子c2=1.496 2。

人工蜂群(artificial bee colony, ABC)算法[28]:种群规模N=500、进化代数K=100、蜜源停留次数限制Lb=10,加速系数上限lac=1。

功能点分析(function points analysis, FPA)算法[29]:种群规模N=500、进化代数K=100、转换概率ps=0.8。

鲸鱼优化算法(whale optimization algorithm, WOA)[30]:种群规模N=500、进化代数K=100、对数螺旋形状的常数b=1、模型选择概率mp=0.5。

本文算法:成对交换次数nPWE=5、m-best策略值m=3。

在上述算法参数定义下,对调整代价约束分别为250、200和150的3种情况进行仿真实验。图7~图9分别为3种情况下各算法均成功找到可行解的10组仿真结果。

图7 算法结果对比(σ=250)Fig.7 Comparison of algorithm results (σ=250)

图8 算法结果对比(σ=200)Fig.8 Comparison of algorithm results (σ=200)

图9 算法结果对比(σ=150)Fig.9 Comparison of algorithm results (σ=150)

从图7~图9中可以看到,本文提出的算法在信息流转代价增量上的表现较其他智能优化算法略显优势,而在调整代价上的表现则明显优于智能优化算法。

表6为各算法在3组实验下的时间开销,可以发现本文算法相比其他智能优化在时间开销上也表现出了明显优势。

表6 不同调整代价约束下的算法时间开销

这里需要注意的是,在需要调整的服务集合是随机生成的条件下,对于智能优化算法而言这里选取的结果是其首次找到的满足约束的解,如果让算法继续运行,智能优化算法可能会找到更优的解。然而,这对于演化问题而言是不具备可行性的,在任务执行过程中对系统进行调整时,调整方案生成的时间开销是非常重要的,若时间开销过大则有可能直接导致本次任务执行的失败。为了进一步比较各算法在求解C4ISR服务部署方案动态调整问题时的表现,这里进行100次蒙特卡罗仿真,图10~图12分别为各算法的信息流转代价增量、调整代价和时间开销的箱线图,图13为各算法成功找到调整方案的概率。

图10 不同算法的信息流转代价增量箱线图Fig.10 Box diagram of information flow cost increment of different algorithms

图11 不同算法的调整代价箱线图Fig.11 Box diagram of adjustment cost of different algorithms

图12 不同算法的时间开销箱线图Fig.12 Box diagram of time cost of different algorithms

图13 不同调整代价下各算法的规划成功率Fig.13 Planning success rate of each algorithms under different evolutionary costs

从图10~图12中可以看到,随着调整代价约束的收紧,各算法所得结果的质量在整体上升。其中,GA、ABC算法和WOA在信息流转代价增量方面的表现尤为突出,本文算法在信息流转代价增量上的优势逐渐减弱。而在调整代价方面,各算法所得方案的调整代价均在下降,但本文算法则始终保持了绝对的优势。在时间开销方面,由于本文算法基于贪心策略无需进行多次的迭代搜索,时间开销要远低于其他智能优化算法。在图13中,智能优化算法的搜索成功率随着约束的收紧在不断下降,而本文算法始终能够得到可行的调整方案,体现了该算法的鲁棒性。

5 结 论

本文针对C4ISR服务部署分散、演化实时性要求高的特点,基于分层结构设计了SOA架构下C4ISR分布式状态监控与演化总体架构,在减小演化范围的同时节省了各平台的存储空间。在服务部署模型的基础上通过定义调整代价建立了服务部署方案动态调整模型,并结合PWE方法、最短路径规划方法和m-best策略提出了一种贪心求解算法。实验结果证明了分布式层级调整架构与方法的有效性,显示了其相对于全局优化的优势,并通过与多种智能优化算法的对比,体现了其在减小调整代价、缩短时间开销以及算法鲁棒性方面的特点。下一步工作将针对结构分层方法开展,探索不同分层方式对系统整体演化过程的影响,研究如何在大规模联合作战场景下有效对各类作战平台进行结构分层,从而提升C4ISR服务部署演化效果。

猜你喜欢
代价层级部署
一种基于Kubernetes的Web应用部署与配置系统
晋城:安排部署 统防统治
军工企业不同层级知识管理研究实践
基于军事力量层级划分的军力对比评估
部署
职务职级并行后,科员可以努力到哪个层级
爱的代价
代价
部署“萨德”意欲何为?
任务期内多层级不完全修复件的可用度评估