摘要:城市威胁背景下无人机集群自组织搜索移动目标问题,是无人机集群作战应用的一个重要发展方向。采用基于Agent的复杂系统建模仿真工具,构建了无人机集群搜索仿真模型框架,设计实现了无人机集群自组织搜索模型。在考虑无人机集群作战可能受到威胁的背景下,展示了无人机集群自组织搜索概念,探索了使用基于概率的有限状态机模型实现集群自主决策的解决方案,并通过案例进行了分析验证。该仿真模型为无人机集群作战应用研究提供了参考案例、模型支撑和实验平台。
关键词:无人机集群 ; 自组织 ; 搜索 ; 威胁环境 ; 仿真 ; 有限状态机
随着战争形态的不断演化,未来的作战对手可能将战争引向城市,依靠高大的建筑物和密集的人群,来躲避搜索跟踪,进而抵消我方侦察和火力打击的优势。无人机集群具有灵活性、自主性、鲁棒性和可扩展性等特点,同时可以降低作战成本、减少作战人员伤亡,并且依赖无人机个体的自主能力实现无人机集群的自组织作战,降低了对人员操控和操作系统的依赖,对破解敌方利用建筑物和地形优势躲避搜索跟踪,提高作战效果具有重要的作战应用价值。
当前,关于无人机和无人机集群的研究较多[1],无人机集群也以其独特的优势日益受到各国军方的广泛关注。在集群搜索问题上[2-3],已有很多搜索算法。本文聚焦无人机集群自组织搜索城市威胁环境中移动的目标进行研究。无人机集群自组织搜索,是指将多架成本低廉、小型轻便、功能相对简单和具有一定自主能力的低成本无人机以集群的方式大量部署,基于一定的间隔分布,形成一定的覆盖范围,按照上一层次的指挥要求,在操控人员监控下,在任务区域上空按照选定的策略飞,实现对目标的搜索、发现、识别和跟踪锁定。无人机个体间采用弱通信方式,基于简单的规则,通过个体间信息交互、感知融合,实现协同行为,采用自下而上的方式,使集群涌现出高度结构化的自组织特性和显著的集群智能行为,使其能够完成远远超出个体能力的复杂任务。
本文采用基于Agent的复杂系统建模仿真技术,对无人机集群自组织搜索的机理进行研究[4-5],构建了无人机机动、协同、搜索、决策等行为模型,建模分析了无人机集群作战威胁环境。探索了使用基于概率的有限状态机模型实现集群自主决策的解决方案,初步实现并展示了无人机集群自组织搜索的作战样式。基于该仿真模型重点研究了无人机性能对集群搜索效果的影响,分析了集群协同方法、集群决策判断方法、目标分配、搜索策略、威胁程度及战场环境等动态因素和潜在因素对集群搜索效果的影响,借助集群模型框架,可以很方便地引入集群智能算法,为集群智能的研究、设计、实验提供了很好的接口和平台。
建模原理与模型框架
无人机集群是由大量具有一定自主能力的无人机个体构成的复杂适应系统,具有自组织特性。自组织,即无需外部干预,仅依赖系统内部的相互作用,自行形成具有特定功能与结构的整体的过程[6]。无人机个体没有对全局模式、策略、目标或层次体系架构的的全局知识,在规则约束或任务指引下,基于局部感知进行决策判断,通过个体交互使集群整体涌现出自组织行为。集群整体行为与无人机个体行为无直接关系,而是通过个体行为间接实现,集群整体行为取决于无人机个体行为变化。
采用基于Agent仿真的方法,通过基于复杂系统的建模仿真框架,对无人机个体行为进行仿真建模描述,构建无人机集群自组织搜索仿真模型,分析个体交互如何影响全局行为,将集群中个体行为和集群整体自组织现象有机结合,是一种自顶向下分析、由底向上综合的有效解决方案。
模型框架
MASON(multi-agent simulator of networks)是基于Agent的复杂系统仿真框架[7],提供了一组设计基于多Agent的建模仿真概念,同时提供了支持实现该框架的软件包,可采用这些概念设计仿真模型,并通过调用相关类库和工具对其进行实现,具有很好的扩展性。
基于MASON在Eclipse开发环境下设计实现了无人机集群自组织搜索仿真模型,主要包括如下模型类:
(1) Target.java:主要实现目标对象的Agent,赋予侦察目标的运动等相关行为和特性,通过实例化该对象,可在仿真中实现目标的可视化展示。在后续开发中,可能要求目标具有复杂的行为和特性,可以通过拓展和完善该对象实现。
(2) ADS.java和Jammer.java:分别用来实现敌方弹炮结合防空系统和敌方电子干扰系统,通过实例化该对象,可构造无人机集群作战使用的威胁环境,实现敌直接火力打击和电子干扰对无人机集群作战效能的影响效果。
(3) BattleField.java:实现战场环境的Agent,如城市建筑物、巷道,以及地形、地物等,都可以通过实例化该对象,在仿真中实现战场的可视化展示。通过设置该模型类的位置、尺寸等属性,可构建无人机集群执行搜索任务的战场环境。
(4) UAV.java:实现UAV对象的Agent,该类包含了单个UAV的所有逻辑,是仿真模型的核心。该类对无人机个体行为功能进行实现,使多架无人机的集合形成集群,产生区别于简单集合的自适应行为和特性。
(5) UAVSwarm.java:定义了交战场景,控制仿真流程,并提供了在仿真环境中包含的可变参数的入口点。该类中包含的main( )方法启动了仿真,并通过调用doLoop方法和输入参数args来生成UAVSwarm的实例,实现对仿真的控制。
args = new string[]{“-repeat”, string.value of(repeat Times),
“-time”, string.value of(0),
“-until”, string.value of(7200),
“-seed”, string. value of(1366691235073L)};
“-repeat”定义了仿真重复次数;”-seed”指定了仿真中的seed;”-time”可以帮助获取每个仿真周期中的状态信息;”-until”定义了每次仿真的最大持续时间(s)。这些参数将在仿真的实验设计中发挥重要作用。
在仿真系统中,交战场景和仿真实体的初始化在UAVSwarm.java类的start( )函数中定义。
(6) UAVGUI.java:一个辅助类,该类实现了对无人机和目标的外形设计,主要用于仿真的可视化展示。该类实例化了一个UAVSwarm对象,并使其运行,进而实现对一次集群自组织搜索仿真过程的可视化展示.
Fig. 1 Visualization of swarm self-organized search simulation model
为便于仿真分析,将战场环境进行了简化描述,并没有考虑气候、天气、电磁环境等的影响。实际执行任务时,一般会将无人机部署在不同高度,以减少碰撞的危险,在此不考虑高度影响,在二维空间内对集群搜索模型进行研究。假设在仿真开始时无人机集群已经完成起飞动作,并已到达指定目标空域开始搜索过程。