2. 空军工程大学 空管领航学院 国家空管防相撞技术重点实验室, 西安 710051
2. National Key Laboratory of Air Traffic Collision Prevention, Air Traffic Control and Navigation College, Air Force Engineering University, Xi'an 710051, China
随着智能系统与复杂体系、感知与认知、分布式协同与群体智能、算法战等理论与技术的不断发展与突破,空中作战已呈现出无人化、智能化、集群化等特征。为抢占未来军事科技制高点,世界各主要军事强国竞相开展自主集群作战的理论探索和关键技术攻关。航空集群作为未来自主集群作战的主要作战样式,其内涵是由一定数量的单功能和多功能、有人和无人、智能和非智能航空飞行器共同组成,以交感网络为基础,整体具有能力涌现特点的空中移动系统[1]。该系统可以实现单个平台行为自主决策、平台间行为协同,最终产生能力涌现。而决策规则库的构建是实现其自主决策的基础,研究航空集群决策规则库构建方法对于实现未来自主集群作战具有重要的现实意义。
航空集群决策规则库是基于航空集群作战需求和特点而建立的形式化的集群及平台作战规则集合,是对领域知识近似完整的数字化表示。其构建的核心之一是决策规则的提取与表达。目前,关于规则提取并没有明确的定义,绝大部分文献都将规则提取视为知识发现的一个关键步骤。从本质上说,规则提取属于知识发现的范畴,即从大量的、不完全的、模糊的或随机的数据中提取隐含在其中的、事先不知道的但又潜在有用的知识的过程,最终以if-then或者M-of-N的形式表示成人们易于理解和解释的模式。按照规则提取的对象不同,又将其分为基于数据库的规则提取和基于“黑箱”模型的规则提取[2]。其中,基于数据库的规则提取指从经过处理的决策表中抽取出规则形式的知识,常用的理论和方法包括遗传算法[3]、决策树方法[4]、粗糙集理论[5]和概念格理论[6]等。基于“黑箱”模型的规则提取指用可理解的规则集来补充黑匣子模型卓越的预测性能。该方法可以有效打开黑匣子,提供对黑匣子模型作用情况的深入洞察。从受训模型上提取符号规则,可以为黑匣子模型添加可理解性。用不可理解的黑匣子模型作为规则提取的入手点,比如支持向量机[7]或者神经网络[8],其好处是能够为更为复杂的关系建立模型,从而增强这些模型的工程实用性。但是,在作战决策领域的规则提取和规则库的构建鲜有涉及。这主要是由于决策规则很难解析或形式化描述,使得规则提取和规则库构建是一个十分复杂的过程[9]。由于航空集群系统和任务的复杂性,这一问题更加突出。考虑到战场态势数据来源多样、格式不统一,具有冗余性、不完整性、非结构性和高度动态性的特点,传统的规则学习算法很难解决顶层决策问题。此外,航空集群作为一种新兴的作战样式,国内外目前都没有太多现成的数据和案例可供参考,现有基于大数据的学习算法也很难发挥作用,使得“从战争中学习战争”的思路变得更加困难。
而情景分析法可以依据发展趋势的多样性,通过对系统内外相关问题的系统分析,设计出多种可能的未来前景,并用类似于撰写电影剧本的手法,对系统发展态势做出自始至终的情景与画面的描述。其优势主要在分析长期不确定性情形,以及缺乏数据和非量化的因素,能有效描绘未来变化的进程,适用于战略规划[10]、政策分析[11]、以及决策管理等领域[12]。此外,情景分析还可以将非结构化且不可解的问题转化为一系列小的结构化且可解的子问题[13]。上述特性很好地契合了航空集群决策规则提取的需求,可以构建任务实例并通过具体细节来提供规则提取的基础。因此,本文从战争设计角度出发,探讨性地提出一种基于情景分析(Scenario Analysis)的规则库构建方法。该方法从情景构建着手,以任务执行流程为线索,通过详细分析作战过程的逻辑关系、状态变迁,最终实现对象、事件、行为的关联。
1 背景与问题描述 1.1 背景介绍航空集群由一定数量的单功能和多功能有人或无人航空飞行器共同组成,在交感网络的支撑下,节点具有交互与反馈、激励与响应等交感行为,整体具有涌现特点,可实现单个平台行为自主决策、平台间行为协同,最终产生能力涌现的自主式空中移动系统[1]。需要指出的是:航空集群不是多平台的简单编队,其集群能力也不是诸多平台单一能力的简单叠加,而是由多航空器平台通过科学的方法聚集后,经过集群自组织机制与行为调控机制的有机耦合,产生新的能力或原有能力发生质的变化,最终实现作战能力的“涌现”。其中,用于空中作战的航空集群是能够遂行作战任务、适应作战环境、对作战进程进行自主决策的新型空中作战体系。其作战示意如图 1所示。
航空集群作为一种智能的新型空中作战体系,具备快速的反应能力、超强的决策能力、灵活的自组织能力以及高效的协同能力。而支撑实现上述能力的核心是构建一系列的规则库,主要包括决策规则库、战术规则库、交感规则库以及控制规则库。其中,行为决策研究的是航空集群宏观能力模式与战场态势的对应关系,主要包括航空集群进行侦察、干扰、突防、进攻、防御等各种作战策略的时机与方式;战术规划研究的是每一种作战策略的实现机制,包含航空集群内部各战术角色的定义与变更机制、战术的实施流程、航空集群空间构型选择与演变规则以及不同战术与外界环境特别是敌方目标的配属方法,保证正常作战条件下每一种作战场景下航空集群均能做出恰当的战术决策,尽管未必总是最优决策,但不会出现决策盲区;在战术执行过程中,航空集群任务系统跨平台的能力协同是通过航空集群成员之间的高效交感实现的,需要研究在交感网的支撑下,各类任务系统交感信息的协调机制和时序控制逻辑;而在底层支持集群能力涌现的是航空集群空间构型控制和任务系统状态控制。
1.2 问题描述决策规则库的构建是实现航空集群作战系统自主决策的基础,其构建的核心是决策规则的提取与表达。而决策规则往往由其系统的决策机制决定,为此,要构建航空集群决策规则库,首要任务是确定航空集群作战系统的决策机制;其次是在特定的决策机制下,决策规则是如何表达的,最后在缺乏案例以及数据的情形下,如何对顶层决策规则进行提取。因此,现阶段航空集群决策规则库的构建问题可以进一步细化为2个子问题:子问题1是航空集群决策规则如何定义以及表达;子问题2是如何实现对航空集群决策规则的提取。本文主要针对上述2个子问题进行研究,具体研究思路如图 2所示。
针对子问题1,基于团队前期在航空集群理论与技术方面的研究积累,从航空集群行为决策与状态自主演变的外部触发条件和内部驱动机制出发,借鉴文献[14]的思想,提出了基于事件触发-规则驱动的决策机制。另外,航空集群作战具有事件驱动性、自主性,其自主决策的行为状态演变过程也可以视为一个动态的信息流过程。而事件-条件-动作(Event-Condition-Action, ECA)是一种将事件触发、规则驱动相结合的知识表示结构,具有很强的语义表达能力,可扩展性强[15]。其对触发式系统的激励响应描述具有简洁、清晰、可解释的特征,可以用来描述系统信息流活动间的执行依赖关系以及整个系统的状态转换过程。因此,借鉴ECA表达机制来描述航空集群决策规则。
针对子问题2,考虑到航空集群作为一种新兴的作战模式,可供参考的样例和数据很少,现阶段无法完全借助大数据以及人工智能的方法对其决策规则进行提取。为此,首先,借鉴情景分析理论的思想,按照任务-能力-作战样式的设计思路,从情景构建着手,以任务执行流程为线索,将航空集群作战任务分解为一系列的原子任务,对航空集群作战任务进行情景分析;然后,在子问题1的研究基础上,将航空集群决策规则抽象为事件、条件和行为3部分;最后,详细分析作战过程中的逻辑关系、状态变迁,最终实现对象、事件、行为的关联,提取出航空集群决策规则。
2 航空集群决策机制及决策规则表达 2.1 航空集群决策机制航空集群作为一个行为可测、可控以及可用的亚复杂系统,其产生适应性涌现的关键在于遂行作战任务的集群作战平台能够针对特定的触发事件,以线下建立的规则为驱动,自主进行行为决策与状态演变[14]。
从航空集群行为决策与状态演变的外部触发条件来看,集群作战战场态势数据来源多样、格式不统一,具有海量性、冗余性以及高动态性等特征。如果决策层直接对这些底层数据进行处理需要消耗大量的存储、计算和时间资源,难以满足作战决策的实时性需求。此外,数据的冗余性以及高动态性容易导致决策系统的“空转”,即对同一问题的多次决策结果可能是完全相同的,导致系统重复响应。为此,本文将事件触发机制引入到航空集群决策系统中。通过引入事件检测器,对这些底层数据进行事件提取,并与线下建立的事件库进行匹配,建立事件与特定行为的映射关系。在满足任务需求的前提下,只在特定事件发生时,决策系统才会启动并生成“零星”的控制指令,在保证决策实时性的同时也节约了存储和计算资源。另外,事件作为一种“知识”,不仅为平台与平台、平台与战场环境之间的激励与响应、交互与反馈提供了有效手段,而且也在一定程度上提高了决策过程的可解释性。
从航空集群行为决策与状态演变的内在驱动机制来看,航空集群的自主决策与状态演变必然要遵循一定的规则,才能保证整个系统可控与可用。复杂的集群行为能够通过简单的局部交互规则产生已经成为普遍接受的事实[16]。也就是说复杂系统的涌现来源于个体之间复杂的交互过程,而组成系统的个体行为规则可以非常简单。这方面最好的例子就是Reynolds提出的Boid模型[17],该模型中只包含了3条简单规则:①分离(Separation),避免个体之间发生碰撞;②聚集(Cohesion),驱动个体之间相互靠近;③速度匹配(Alignment),控制个体与邻近个体速度趋同。正是这3条简单的规则却成功地模拟了鸟群等生物集群的复杂群体运动行为,这说明遵守有限的简单规则就可以执行复杂的任务。在军事领域,尽管局部行为可能十分复杂,但所有的宏观涌现行为都可以归结为4类元规则的作用,即观察(Observe)、判断(Orient)、决策(Decide)以及行动(Act)。因此,从原子任务规则开始,找到一种最简单的规则体系作为积木,在明确任务结构关系、依赖关系的基础上进一步分析规则的交互,通过少但组合起来能够完备描述航空集群作战原理和行为规律的规则集合是可行的。
基于上述分析可知:将基于事件触发-规则驱动的决策机制引入到航空集群决策系统之中是切实可行的。该决策机制依据事件的优先等级、重要程度进行规则匹配和推理决策。当满足一定条件时可以自动触发演化阶段、任务进程、系统功能向另一个阶段、进程、功能转换,甚至激活多个进程、功能并行处理,大大提高了航空集群的灵活性和适应性。因此,航空集群决策规则可以视为支撑其自主行为决策与状态演变中的概念化、形式化、抽象化描述的知识,由事件、条件和行为组成。明确地描述了任务空间相关要素与系统状态转移之间的关联关系。集群飞行器(Swarm Aerial Vehicle, SAV)之间通过交感网络进行信息交互,以事件为触发机制,在规则的驱动下自发的进行状态转移,从而实现系统状态变迁、任务进程、系统功能演变。同时,SAV在自主决策的过程中,其状态的改变总是伴随着事件的发生,特定的事件触发特定的动作,而状态的变迁又会引发新的事件。这样就将抽象的航空集群决策规则具体化为事件-条件-动作之间的映射关系。为规范化表达这种映射关系,引入ECA描述机制。
2.2 航空集群决策规则的表达一条完整的ECA规则可以简单表述为
On < Event>
If < Conditon>
Do < Action>
其含义为:当事件(Event)发生时,如果满足条件(Condition),则执行相应的动作(Action)。其中,事件表示规则在什么时候可以执行,条件表示在执行一定动作之前必须要满足的前提,而动作则表示对事件响应所采取的行为。
现有的针对ECA规则的研究主要是面向动态数据库[18]和CA(条件-动作)[19]等传统规则的,对事件处理能力较弱,本质仍然是数据驱动。特别是判定条件Condition往往只能是可量化参数,采用>、< 、=、≠等基本关系运算符号进行条件检验,比如温度t>10 ℃、距离d=10 m等,无法表示事件的时间、空间约束及其复合关系。比如,无人机起飞时,需要满足自检正常、接收到起飞指令,且这两条件事件必须按时间顺序发生,不允许交换。为此,本文在ECA的基本框架上,将航空集群决策规则的事件Event作为一个相对独立的模块,设计专门的检测和处理机制,可以实现其对环境、目标、系统的各种状态或属性变化更好的表达。条件Condition则表示为事件的组合操作方式,只有当事件检测模块检测到各个基本事件发生且事件之间的复合关系满足条件Condition规定的组合操作时,才会执行规定的动作。由于有相对独立的事件检测机制并引进了时序、空间、复合事件等新成分,ECA规则可以处理的事件类型大大增加,而不再局限于传统的数据更新类操作。其基本结构如图 3所示。当航空集群进入战场或执行动作时,会对战场环境产生影响,使得战场态势发生改变。传感设备采集战场态势变化的数据,由事件监视器进行事件检测和处理。当特定的触发事件发生时,决策系统启动,并判定是否满足动作执行的条件。动作的执行又会作用于战场环境,从而形成一个完整的闭环。
单一的基本事件通常不会触发系统演化阶段、任务进程、系统功能的变迁,决策者往往更关心包含多个属性、时空状态变化的复合事件。因此,航空集群决策规则中的触发事件Event可以表示为
$ \text{Event }::=\left\{ {{e}_{1}}, {{e}_{2}}, \cdots , {{e}_{m}};{{c}_{1}}, {{c}_{2}}, \cdots , {{c}_{n}} \right\} $ |
式中:ei(i=1, 2, …, m)表示基本事件;cj= < Ej, Rj>表示复合事件, Ej表示构成cj的基本事件集合, Rj表示事件操作符。
事件的发生会触发一个规则,而条件则用来判断规则中的动作是否执行。虽然在一些简单的任务中,条件是以“真(1)”或“假(0)”的形式出现的布尔值,但在大多数情况下,条件Condition的形式都是非常复杂的。为此,把多个基本事件或复合事件通过事件操作符关联起来作为动作能否执行的判断条件,将条件模板定义为
Con dition::= < Relation Condition>(and < Relation Condition>)
Rel ation Condition::= < Expression> < Operator> < Expression>
Exp ression::= < Event > | < Variable.AttributeValue>
Ope rator::= < Event Operator > | < Relation Operator >
Eve nt Operator::=∧|⇑|⊕|↑|∨|↕|→||↗|↙|┐
Rel ation Operator::=| < |>|≠
其中:>、< 、=、≠为基本关系运算符;∧、⇑、⊕、↑、∨、↕、→、为二元事件操作符,↗、↙、┐为一元事件操作符。设e1和e2表示2个事件,条件模板中事件操作符的具体含义如表 1所示。
符号 | 名称 | 类型 | 含义 |
e1∧e2 | 时间与 | 二元 | e1和e2同一时刻发生 |
e1⊕e2 | 时间异或 | 二元 | 同一时刻e1和e2有且仅有一个发生 |
e1∨e2 | 时间或 | 二元 | 同一时刻e1和e2至少有一个发生 |
e1→e2 | 时间顺序 | 二元 | 事件e2紧随事件e1顺序发生 |
e1⇑e2 | 空间与 | 二元 | e1和e2同一地点发生 |
e1↑e2 | 空间异或 | 二元 | 同一地点e1和e2有且仅有一个发生 |
e1|e2 | 空间或 | 二元 | 同一地点e1和e2至少有一个发生 |
e1e2 | 空间临近 | 二元 | 事件e2在事件e1附近发生 |
e1↗ | 事件开始 | 一元 | 事件e1开始 |
e1↙ | 事件终止 | 一元 | 事件e1终止 |
┐e1 | 否定事件 | 一元 | 事件e1不发生 |
规则中的动作是当触发事件发生且满足条件时而引发的系统响应行为,其模板规范定义为
Act ion Calls::= < Action Template > < and/or > < Action Template >
Act ion Template::= < Action Names > < Action Parameters >
决策层输出的动作参数(比如空间构型、传感器指向、武器装订参数等)发送给控制层执行,控制层只需将动作参数代入模板,即可执行相应的动作,由此便保证了规则的通用性和SAV的互操作性,提高了航空集群内部资源调度与配置的灵活性。此处的Action所代表的不仅仅是需要执行某一个动作,而是根据当前事件和条件,需要激活的一系列驱动规则子集,包括飞机平台的机动、传感器指向、消息的接收与发送等。
在上述规范模板的基础上,一条完整的航空集群决策规则可以表示为
Rule < Name > (< Parameters>)
On < Event>
If < Condition>
Do < Action>
3 航空集群决策规则提取航空集群的每一个情景都表示了由环境、目标和航空集群活动所构成的一系列情节,情景构建正是在现有素材和领域知识的基础上,根据作战任务进行情节设计的过程。为此,本文在任务情景分析的基础上,借鉴文献[9]的思想,提出了一种基于情景分析的航空集群决策规则提取方法。
3.1 任务情景分析任务情景分析是根据作战任务、领域知识、素材,将战术任务执行情景分解成多个可组合的子任务,并确定这些子任务之间的逻辑结构。其中,在实战和训练中形成的经验、针对突发情况的处置预案、作战仿真的数据都可以作为情景构建和分析的素材;领域知识则是军事专家已能解释清楚并提炼成规则的事实和规律等,是情景构建和分析的基本约束[20]。通过高层任务与原子任务的分解映射形成任务间的父子关系,并可用如图 4所示的任务层次图描述。将每个复杂任务对应一个情景,而原子任务则描述了更具体的行动细节,因此将原子任务执行作为情景构建的一个原子情景。子任务的可组合性表示一组子任务是否可以组合成一个更复杂的任务,只有从属于同一父级任务的子任务才是可组合的。例如,在图 4中,子任务组{AtomTask4, AtomTask5, AtomTask6}是可组合的,{AtomTask1, AtomTask5, }则是不可组合的。
一个复杂的任务可根据需要表示为
$ \text{Task = }\!\!\{\!\!\text{ TaskGroup, TaskStructure, TaskDependency }\!\!\}\!\!\text{ } $ |
式中:TaskGroup={SubTask1, SubTask2, …, SubTaskn}表示任务分解得到的子任务组;TaskStructure表示子任务之间的执行结构;TaskDependency∈{and, or}表示父任务Task对子任务的依赖关系。
任务组的执行结构主要针对由同一父任务分解得到的子任务之间的执行关系,其基本结构主要有顺序结构、并发结构、选择结构以及循环结构4种,如图 5所示,图中,Input、Output、分别表示任务的输入和输出,Cpre、Cpost分别表示任务执行的前置条件和后置条件。其中,顺序结构指上一子任务执行结束后下一子任务才能开始执行。选择结构指子任务的执行过程相互间是互斥的,即有且仅有一个子任务被执行。因此,任意2个原子任务的前置条件不能完全相同,且必须是互斥的。并发结构是指一组原子任务需要同时被执行。因此,子任务组的前置条件是完全相同的。循环结构是指一组子任务需要循环地执行,且循环中子任务执行的顺序是固定不变的。
在任务分解和情景设计的细化过程中,为进一步描述父、子任务的依赖关系,引入关系算子and和or。关系算子and将父任务连接到所有子任务上,父任务的完成依赖于所有子任务的执行情况。关系算子or表示父任务的实现只需任意子任务满足即可。
3.2 规则提取流程一个任务情景由多个原子情景组成,每个原子情景通过任务参与者的行为执行来实现特定的原子任务。通过遍历任务的各层子任务组和原子任务,可构建完整的任务情景,从而全面地反映任务执行的细节。根据原子任务的可组合性,航空集群决策规则提取过程只需将复杂任务递阶分解为一系列原子任务,参考现有素材和领域知识构想出原子任务执行的情景,并分析系统可能产生的事件、评估不同行为的执行条件以及可能的结果,最终实现系统的事件、条件、行为关联映射。因此,基于情景分析的航空集群决策规则提取步骤如下:
步骤1 任务分析。根据航空集群系统需要完成的作战任务,结合情景设计素材以及领域知识约束,进行任务分解与分级,列出所有可能的情况,将复杂任务分解为原子任务,并确定这些原子任务之间的执行结构和依赖关系。
步骤2 情景分析。根据实际可能出现的情况,列出各个原子任务执行过程中系统的可能状态以及各个状态下可能执行的动作,每一个动作的执行又会使系统达到新的特定状态。用状态Si(t)、情景Scenarioi(t)、动作Ai(t)表示情景分析图的组成元素。其中,Si(t)={SVi(t), STi(t), SEi(t)},SVi(t)、STi(t)、SEi(t)分别表示集群系统、目标和战场环境的属性或状态;Ai(t)表示SAV的动作;Scenarioi(t)表示对应状态下执行相应动作的过程,也是决策规则和控制算法发挥作用的过程。将动作执行时需要满足的状态、行为分别用矩形和正六边形表示,如图 6所示。
步骤3 触发事件分析。综合任务分析和情景分析,提取出对应的事件和触发条件。事件是指在一定的条件下系统、目标、环境所发生的具有某种军事意义的时空状态改变或属性的变化,触发事件是激活相应规则的“开关”。因此,在由情景分析图推导状态转移的触发事件时,作如下规定:
规定1 当SAV处于某种状态SVi(t)下,如果Ai是由{SVi(t), STi(t), SEi(t)}中的某一个状态变化引起的,那么SVi(t)对应任务执行过程中的“状态”,相应状态的变化对应“触发事件”,Ai(t)对应“动作”。
规定2 当SAV处于某种状态SVi(t)下,如果Ai是由{SVi(t), STi(t), SEi(t)}中多个状态变化引起的,那么SVi(t)对应任务执行过程中的“状态”,每一个状态的变化对应“原子事件”,由多个原子事件通过给定的事件操作符运算得到的复合事件对应“触发事件”,Ai(t)对应“动作”。
规定3 若Ai的执行无需其他条件,那么SVi(t)对任务执行过程中的“状态”,Ai对应“动作”,“触发事件”为空。
步骤4 状态转移条件分析。规则中的事件实际上是情景的变化,条件则是对过去、现在、未来的情景进行的有目的判断,以确定规则中的动作是否执行。此处的“目的”包括情景分析中当前状态、需要达到的状态、领域知识提供的约束等。判定的条件既可以是组成情景的系统、目标、环境属性的量化值,也可以是定性的事件复合关系。
步骤5 规则表达。根据2.2节定义的ECA规则的语法结构,将每一个状态下得到的触发事件、条件、动作通过代入规则的语法结构中,即可得到相应的规则。规则提取的本质是将状态转移的过程以规则形式表示,如图 7所示。
4 实例验证与分析本文作者以团队形式参加2019年“智联畅胜”无人蜂群联合行动挑战赛科目三:多目标协同侦打为基础,对支撑无人机集群自主行为决策与状态演变的决策规则进行提取。为保证执行效率和决策输出的稳定可靠,决策规则的提取是线下完成的。无人机在执行任务过程中的自主行为决策与状态演变是对决策规则的在线使用,主要目的是根据触发事件匹配并调用规则库选择对应的执行动作。按照事件触发-规则驱动的自主决策机制,参赛无人机根据赛场环境发生的各类事件进行自主决策,在不同的事件触发条件下,激活相应的响应规则。整个流程的决策规则提取如下:
1) 无人机集群从起降区起飞后,以密集编队沿预设航线飞行抵达任务区,然后对任务区域内的目标进行搜索、识别与定位,最后对识别的目标进行攻击。11架无人机按照任务不同分为3架侦察机、8架攻击机。整个自主察打任务可以递阶分解为无人机自检、起飞、集结、编队前突、协同搜索、协同定位、待战、突防引导、打击引导、返航共10个原子任务,如图 8所示。
2) 受领任务后,首先根据目标区域边界信息,由任务地面站加载任务区域边界点坐标,执行侦察机侦察航线和攻击机待战点规划。采用平行搜索策略[21],为每架侦察机设置若干平行航线,每条航线上选取离散坐标点,确保采集的图像能覆盖整个目标区域。为了尽可能缩短察打任务切换时间,为每架攻击机设置待战点。考虑到尽可能不影响搜索任务执行,攻击机待战点设置在任务区域边界。原子任务执行以顺序结构为主,在目标搜索阶段,存在选择结构:若任务过程中侦察机未搜索到目标,则所有无人机返航;若识别到目标,则先由侦察机进行目标定位并进行突防引导和打击引导,然后再由攻击机进行突防和打击,如果需要攻击多个目标,则“突防引导和打击引导”以及“突防和打击”均构成循环结构,直到目标清单为空。攻击机和侦察机的原子任务执行结构分别为图 9(a)和图 9(b)所示,自主察打任务情景分析如图 10所示。
3) 在任务情景分析的基础上,结合步骤3中3条规定,得到事件集合如表 2所示。
事件 | 事件名称 | 触发条件 |
e0 | 自检指令 | test_state=1(自检事件发生) |
e1 | 自检正常 | test_nomal=1(无人机启动正常) |
e2 | 起飞指令 | takeoff_state=1(起飞指令发生) |
e3 | 飞至集结空域 | ∀ LSAVi∈Ω1(无人机位于集结空域范围内) |
e4 | 集结完毕 | ∀ DSAVi↔j∈[Da-εa, Da+εa](无人机彼此之间的相对位置满足编队要求) |
e5 | 抵达任务区 | ∀ LSAVi∈Ω2(侦察机位于任务区域范围内) |
e6 | 形成协同搜索构型 | ∀ DSAV.si↔j∈[Ds-εs, Ds+εs](侦察机彼此之间相对位置满足搜索构型约束) |
e7 | 任务区域内存在目标 | Target_state=1(目标被侦察到) |
e8 | 形成定位构型 | ∀ DSAV.si↔j∈[Dl-εl, Dl+εl](侦察机之间相对位置满足定位构型约束) |
e9 | 目标定位完成 | Location.Targeti_state=1(目标位置已确定) |
e10 | 目标分配完成 | (SAV.ai↔Targetj)_state=1(攻击机与目标之间建立映射关系) |
e11 | 侦察机到达引导攻击阵位 | ∀ LSAV.si∈[Dg-εg, Dg+εg](侦察机的位置满足引导攻击阵位约束) |
e12 | 攻击机抵达待攻击阵位 | ∀ LSAV.ai∈[Dw-εw, Dw+εw](攻击机的位置满足待攻击阵位约束) |
e13 | 攻击完成 | Bomb_state=1(顺利投弹) |
e14 | 目标清单已清空 | Target.clear_state=1(任务区内所有目标被摧毁) |
e15 | 攻击机到达待战区域 | ∀ LSAV.ai∈Ω3(攻击机位于待战区域范围Ω3内) |
e16 | 攻击机到达攻击阵位 | ∀ LSAV.ai∈[Dt-εt, Dt+εt](攻击机的位置满足攻击阵位约束) |
e17 | 攻击机收到突防指引信息 | R.penetration_state=1(收到侦察机反馈的突防指引信息) |
e18 | 攻击机收到攻击指引信息 | R.attack_state=1(收到侦察机反馈的打击指引信息) |
e19 | 无人机抵达降落区 | ∀ LSAVi∈Ω4(无人机位于降落区域范围内) |
注:Da、Ds、Dl、Dg、Dw、Dt分别表示无人机i和j在集结、搜索、定位、引导打击、待打击和攻击状态时的距离约束; εa、εs、εl、εg、εw、εt为对应约束所允许的误差。 |
4) 在任务情景分析的基础上,按照子任务之间的时序及逻辑关系,在领域知识的支撑下,梳理出图 10中S0~S13共14个状态迁移的触发事件、条件以及动作集合,具体如表 3所示。
状态迁移 | 触发事件 | 变迁条件 | 执行动作 |
S0→S1 | e0 | c0→1:e0↗ | a0→1:执行自检 |
S1→S0 | ┐e1 | c1→0:test_nomal=0 | a1→0:断电并检修 |
S1→S2 | e1, e2 | c1→2:e1→e2 | a1→2:起飞机动 |
S2→S3 | e3 | c2→3:∀ LSAVi∈Ω1 | a2→3:集结机动 |
S3→S4 | e4 | c3→4:∀ DSAVi↔j∈[Da-εa, Da+εa] | a3→4:前突飞行 |
S4→S5 | e5, e6 | c4→5:e5→e6 | a4→5:搜索机动 |
S5→S6 | e7, e8 | c5→6:e7→e8 | a5→6:定位机动 |
S5→S12 | ┐e7 | c5→12:Target_state=0 | a5→12:返航机动 |
S6→S7 | e9, e10 | c6→7:e9∧e10 | a6→7:执行突防引导 |
S7→S8 | e11, e12 | c7→8:e11∧e12 | a7→8:执行攻击引导 |
S8→S7 | e13, ┐e14 | c8→7:e13→┐e14 | a8→7:执行突防引导 |
S8→S12 | e13, e14 | c8→12:e13→e14 | a8→12:返航机动 |
S4→S9 | e5, e15 | c4→9:e5⇑e15 | a4→9:悬停待战 |
S9→S10 | e10, e17 | c9→10:e10→e17 | a9→10:突防机动 |
S9→S12 | ┐e7 | c9→12:Target_state=0 | a9→12:返航机动 |
S10→S11 | e16, e18 | c10→11:e16→e18 | a10→11:攻击机动 |
S11→S9 | e13, ┐e14 | c11→9:e13→┐e14 | a11→9:悬停待战 |
S11→S12 | e13, e14 | c11→12:e13→e14 | a11→12:返航机动 |
S12→S13 | e19 | c12→13:∀ LSAVi∈Ω4 | a12→13:降落机动 |
5) 按照无人机集群自主察打任务情景分析,侦察机、攻击机的状态转移如图 11所示。其中,蓝色和红色虚线框内分别为侦察机和攻击机的状态转移过程;红色椭圆圈里的Rm表示第m条规则;每一条带标记的有向边
根据航空集群决策规则的语法结构,将全部的状态转移映射为相应的规则,共得到16条决策规则,具体如下:
Rule < R0>
On < e0>
If < e0↗>
Do < Test>
Rule < R1>
On < ┐e1>
If < test_nomal=0>
Do < Power off and repair>
Rule < R2>(< Takeoff_H>)
On < e1, e2>
If < e1→e2>
Do < Takeoff>
Rule < R3>(< Ω1>)
On < e3>
If < ∀ LSAVi∈Ω1>
Do < Assembly maneuver>
Rule < R4>(< Da, εa>)
On < e4>
If < ∀ DSAVi↔j∈[Da-εa, Da+εa]>
Do < Protrusion flying>
Rule < R5>(< Ω2, Ds, εs>)
On < e5, e6>
If < e5→e6>
Do < Search maneuver>
Rule < R6>(< Dl, εl>)
On < e7, e8>
If < e7→e8>
Do < Location maneuver>
Rule < R7>
On < e9, e10>
If < e9∧e10>
Do < Penetration guidance>
Rule < R8>(< Dg, εg, Dw, εw>)
On < e11, e12>
If < e11∧e12>
Do < Attack guidance>
Rule < R9>
On < e13, ┐e14>
If < e13→┐e14>
Do < Penetration guidance>
Rule < R10>
On < e13, e14>
If < e13→e14>
Do < Return maneuver>
Rule < R11>
On < ┐e7>
If < Target_state=0>
Do < Return maneuver)>
Rule < R12>(< Ω1, Ω3>)
On < e5, e15>
If < e5⇑e15>
Do < < Hovering>
Rule < < R13>
On < e10, e17>
If < e10→e17>
Do < Penetration maneuver>
Rule < R14>(< Dt, εt>)
On < e16, e18>
If < e16→e18>
Do < attack maneuver>
Rule < R15>(< Ω4>)
On < e19>
If < ∀ LSAVi∈Ω4>
Do < Landing maneuver>
为便于理解,以无人机执行起飞动作的规则R2为例进行说明。规则R2的含义为:当检测到事件e1(自检正常)和e2(起飞指令)发生时,若e1、e2满足e1→e2(顺序发生,且顺序不可交换),则执行动作Takeoff,即起飞到指定的高度。其中,R2表示规则名,Takeoff_H为输入参数,表示起飞高度。其余规则的具体含义可参照R2理解,具体含义可结合图 10、图 11和表 2、表 3进行理解。
上述决策规则提取方法已在此次竞赛中得到初步应用,也在一定程度上验证了本文所提方法的可行性。团队试验试飞视频链接为:https://www.bilibili.com/video/av70169188或https://v.youku.com/v_show/id_XNDM4Njg3NzU2NA==.html。为更好地验证本文所提方法的可行性,本文借助地面站系统(见图 12)对动态攻击子群1(根据目标分配和规划结果SAV1和SAV4、SAV5、SAV8组成动态攻击子群1)中无人机自主行为决策与状态演变过程中相关的触发事件和相应活动统计,如图 13所示。图中,横轴表示的时间从前突飞行到达任务区域(e5)开始计算,事件和驱动规则的含义见表 3。
图 13(a)为侦察机SAV1的触发事件和活动规则,事件取值为负表示事件的“非”运算。可以看到,SAV1共检测到11条触发事件(e4~e14),激活了6条规则(R4~R10),分别对应侦察机的编队前突、协同搜索、协同定位、突防引导、打击引导、返航状态。图 13(b)~图 13(d)分别为攻击机SAV4、SAV5、SAV8的触发事件和活动规则统计。由图可知,每架攻击机共检测到9条事件,激活了5条规则,分别对应攻击机的编队前突、待战、突防、打击、返航状态。
对比侦察机和攻击机的活动规则可以看到:所有无人机在经过约90 s(规则R4的执行时间)的前突飞行后,到达任务区域,即事件e5发生。根据无人机的类型,分别激活了规则R5和R12,侦察机进入搜索状态,攻击机进入待战状态。侦察机经过约45 s(规则R5的执行时间)完成对任务区域的搜索(事件e7发生),并将搜索到的目标添加到目标清单中,若目标清单非空(事件┐e14发生),则开始对目标进行协同定位。经过约80 s(规则R6的执行时间),侦察机完成目标定位(e9发生),并以侦察机为子群首,进行目标分配和任务规划(事件e10发生),由SAV4、SAV5、SAV8组成的攻击子群1进入突防-打击状态。经过约25 s后(规则R13的执行时间),侦察机和攻击机同时到达攻击阵位(事件e16、e18发生),开始对目标进行打击。在投弹阶段,为避免相撞风险,侦察机每次仅引导一架攻击机对目标进行打击,每架攻击机完成打击耗时约15 s。由图 13(b)~图 13(d)可以看到,SAV4首先对目标进行打击,耗时约15 s(SAV4执行规则R14的时间)。完成打击后,SAV4立即返航,侦察机继续引导SAV5进行打击。SAV5的攻击状态保持了约30 s(SAV5执行规则R14的时间),其中包含了等待SAV4完成打击的时间约15 s。直到SAV8完成打击,侦察机开始返航,对坚固目标的打击总耗时约40 s(SAV1执行规则R8的时间)。通过触发事件和活动规则的对应关系,可以看出基于事件触发-规则驱动的自主决策机制的有效性。
另外,所有无人机的触发事件和活动规则都十分简单,每一个状态由1~2条事件触发,其空间构型演化由一条活动规则驱动实现。可见,将ECA规则的事件Event作为一个相对独立的模块,通过设计专门的事件检测和处理机制,不仅可以实现对环境、目标、系统的各种状态或属性变化更好的表达,同时也可以提高规则的通用性,约简规则体系,减少规则数量。
5 结论本文从战争设计的角度出发,借鉴情景分析的思想,提出了一种基于情景分析的航空集群决策规则库构建方法。该方法从情景构建着手,以任务执行流程为线索,通过详细分析作战过程的逻辑关系、状态变迁,最终实现对象、事件、行为的关联。通过本文的研究得到如下结论:
1) 基于事件触发-规则驱动的自主决策机制是切实可行的。这种决策机制依据事件的优先等级、重要程度进行规则匹配和推理决策,当满足一定条件时可以自动触发状态演变阶段、任务进程、系统功能向另一个阶段、进程、功能转换,甚至激活多个进程、功能并行处理,大大提高了航空集群的灵活性和适应性。
2) 将情景分析理论应用于航空集群决策规则提取的方法是切实可行的。情景表示了由环境、目标和航空集群个体所构成的一系列过程,通过情景任务分析,将复杂的作战任务分解为一系列可执行的原子任务。以简单的规则作为积木,在明确原子任务的结构关系、依赖关系的基础上,提取能够完备描述航空集群作战原理和规律的规则库是一种可行的方法。
研究结论一方面为研究可解释的人工智能提供了一种可行的思路:事件为平台与平台、平台与战场环境之间的激励与响应、交互与反馈提供了一种有效手段,同时也提高了决策过程的可解释性;另一方面为扩展航空集群作战场景和顶层决策规则提取的相关研究提供了一种新的思路:通过任务情景分析,预设不同的情景,分析不同情景下对应的策略集,逐步完善决策规则库,这也是本文后续研究的重点方向之一。另外,在本文的研究基础上,将进一步研究如何将相应的方法扩展到更为复杂的任务,以及如何对规则库的完备程度、规则之间可能产生的冲突进行验证和检测。
[1] |
柏鹏, 梁晓龙, 王鹏, 等. 新型航空集群空中作战体系研究[J]. 空军工程大学学报(军事科学版), 2016, 16(2): 1-4. BAI P, LIANG X L, WANG P, et al. Research on new air combat system of aviation swarms[J]. Journal of Air Force Engineering University (Military Science Edition), 2016, 16(2): 1-4. (in Chinese) |
Cited By in Cnki | Click to display the text | |
[2] | FORTUNY E J D, MARTENS D. Active learning-based pedagogical rule extraction[J]. IEEE Transactions on Neural Networks and Learning Systems, 2015, 26(11): 2664-2677. |
Click to display the text | |
[3] | POURPANAH F, LIM C P, SALEH J M. A hybrid model of fuzzy ARTMAP and genetic algorithm for data classification and rule extraction[J]. Expert Systems With Applications, 2016, 49: 74-85. |
Click to display the text | |
[4] | MASHAYEKHI M, GRAS R. Rule extraction from decision trees ensembles:New algorithms based on heuristic search and sparse group lasso methods[J]. International Journal of Information Technology & Decision Making, 2017, 16(6): 1707-1727. |
Click to display the text | |
[5] | KARIMI T, FORREST J Y L. Using grey incidence to analyze the energy audit reports and rough set for rule extraction[J]. Kybernetes, 2016, 45(7): 1024-1035. |
Click to display the text | |
[6] | YANG H F, ZHANG J F, HU L H. Classification rule extraction based on the rough concept lattice[J]. Kybernetes, 2010, 39(8): 1336-1343. |
Click to display the text | |
[7] | LI A, CHEN G. A new approach for rule extraction of expert system based on SVM[J]. Measurement, 2014, 47: 715-723. |
Click to display the text | |
[8] | SHAHABI M, HASSANPOUR H, MASHAYEKHI H. Rule extraction for fatty liver detection using neural networks[J]. Neural Computing & Applications, 2017, 31(4): 979-989. |
Click to display the text | |
[9] |
刘晓伶, 卢涛. 基于情景分析的ECA规则提取方法研究[J]. 计算机工程, 2012, 38(22): 154-158. LIU X L, LU T. Research on ECA rule extraction method based on scenario analysis[J]. Computer Engineering, 2012, 38(22): 154-158. (in Chinese) |
Cited By in Cnki | Click to display the text | |
[10] | PISHVAEE M S, FATHI M, JOLAI F. A fuzzy clustering-based method for scenario analysis in strategic planning:The case of an Asian pharmaceutical company[J]. South African Journal of Business Management, 2008, 39(3): 21-31. |
Click to display the text | |
[11] | SANGHA K K, GERRITSEN R, JEREMY R S. Repurposing government expenditure for enhancing Indigenous well-being in Australia:A scenario analysis for a new paradigm[J]. Economic Analysis and Policy, 2019, 63: 75-91. |
Click to display the text | |
[12] | WRIGHT G, CAIRNS G, BRIEN F A, et al. Scenario analysis to support decision making in addressing wicked problems:Pitfalls and potential[J]. European Journal of Operational Research, 2019, 278(1): 3-19. |
Click to display the text | |
[13] | CLEMONS E K. Scenario analysis and managing strategic ambiguity:How to remember future events, before they actually occur![M]. Heidelberg: Springer, 2019: 163-165. |
[14] |
梁晓龙, 何吕龙, 张佳强, 等. 航空集群构型控制及其演化方法[J]. 中国科学:技术科学, 2019, 49(3): 277-287. LIANG X L, HE L L, ZHANG J Q, et al. Configuration control and evolutionary mechanism of aircraft swarm[J]. Scientia Sinica (Technologica), 2019, 49(3): 277-287. (in Chinese) |
Cited By in Cnki | Click to display the text | |
[15] | ISAZADEH A, PEDRYCZ W, MAHAN F. ECA rule learning in dynamic environments[J]. Expert Systems with Applications, 2014, 41(17): 7847-7857. |
Click to display the text | |
[16] |
毛琼, 李小民, 王正军. 基于规则的无人机编队队形构建与重构控制方法[J]. 系统工程与电子技术, 2019, 41(5): 1118-1126. MAO Q, LI X M, WANG Z J. Formation and reformation control method for UAVs formation shape based on rules[J]. Systems Engineering and Electronics, 2019, 41(5): 1118-1126. (in Chinese) |
Cited By in Cnki (5) | Click to display the text | |
[17] | REYNOLDS C W. Flocks, herds and schools:A distributed behavioral model[J]. Computer Graphics, 1987, 21(4): 25-34. |
Click to display the text | |
[18] | MCCARTHY D R, DAYAL U. The architecture of an active database management system[C]//Proceedings of the 1989 ACM SIGMOD International Conference on Management of Data. New York: ACM, 1989: 215-224. |
[19] | ZHOU Y L, HSU M. A theory for rule triggering systems[C]//International Conference on Extending Database Technology. Heidelberg: Springer, 1990: 409-421. |
[20] |
金欣. 指挥控制智能化现状与发展[J]. 指挥信息系统与技术, 2017, 8(4): 10-18. JIN X. Status and development of intelligent command and control[J]. Command Information System and Technology, 2017, 8(4): 10-18. (in Chinese) |
Cited By in Cnki | Click to display the text | |
[21] | SHI Z, WEI C A, FU P, et al. A parallel search strategy based on sparse representation for infrared target tracking[J]. Algorithms, 2015, 8(3): 529-540. |
Click to display the text |