本发明涉及飞行机动策略和人工智能领域,尤其涉及一种无人机机动策略自主生成方法。
背景技术:
近年来,随着无人机技术的发展,无人机的性能飞速提高,不论是军用无人机还是民用无人机,各种新技术层出不穷。其中,提高无人机自主飞行能力,降低人为干预,避免人为失误,是各国无人机科研人员的研究重点。传统的无人机飞行导引通常在获取到需求任务区域内应飞航迹后,在飞行过程中通过控制无人机的机动策略,使之沿应飞航线飞行。传统的无人机的机动决策基于微分对策、矩阵博弈、动态规划、神经网络、专家系统、动态贝叶斯网络、影响图以及轨迹预测等方法。但是,当环境发生较大改变时,上述方法均没有自主解决突发事件的能力,只有无人机操纵者进行手动干预后,无人机才能继续完成任务,该过程极大地影响了无人机执行任务的效率。近年来,由于在电子技术方面的突破性进步,人工智能技术飞速发展,各种人工智能算法不断应用到控制领域。例如,google公司的deepmind人工智能小组,创新性地将深度强化学习方法应用到人形机器人的步态控制上并取得了成功;openai实验室基于进化策略方法设计了一系列控制算法并成功商用。深度强化学习是多门学科多个领域交叉结合的产物,最早可以追溯到巴普洛夫的条件反射实验,但直到上世纪九十年代才逐渐被人们应用于自动控制、机器学习等领域。2015年,deepmind(google)在《nature》上发布了深度q学习算法(deepqlearning,dqn),它是第一个成功地将深度学习和强化学习结合起来的模型。dqn的经验回放策略打破了传统强化学习样本的前后关联性,大大提高了学习效果。
技术实现要素:
为了克服现有技术的不足,本发明提供一种基于dqn的无人机机动策略自主生成方法,在仿真环境中进行训练,训练成功后无人机可以自主生成机动策略,选择合理的机动动作,能够实现自主进行机动躲避障碍物,安全快速地从起点飞向终点,有效提升无人机自主飞行能力。
本发明解决其技术问题所采用的技术方案包括以下步骤:
1)建立无人机三自由度运动模型;
2)建立无人机机动控制库;
3)建立基准地形三维模型和山峰三维模型;
4)计算无人机当前位置下所受地形障碍影响程度值;
5)构建评价网络q(s,a)与目标网络q′(s,a),所述两个网络均属于深度神经网络;q(s,a)和q′(s,a)两个网络采用相同的参数进行初始化;
q(s,a)网络和q′(s,a)网络采用三层网络,每层之间神经元两两连接,激活函数使用线性整流函数relu;
定义状态空间
定义动作空间
定义收益r=-(g(xuav)+p(xuav)),g(xuav)为无人机所受飞行环境的影响值,p(xuav)为无人机与终点的距离,r为无人机当前的收益;
定义回放经验
6)对评价网络q(s,a)进行训练;
7)使用训练结果q′(s,a;θ-)网络作为无人机飞行控制外环控制器,周期性地选择无人机的机动动作,从而进一步控制无人机的两向过载nx、ny和无人机速度倾斜角γc。
所述的无人机三自由度运动模型
所述的无人机机动控制库包括了最大过载左转、最大过载右转、控制不变、最大减速、最大加速、最大过载拉起和最大过载俯冲;机动动作使用无人机切向过载nx、法向过载ny和速度倾斜角γc进行定义,
所述的基准地形三维模型
所述的山峰三维模型
所述的无人机当前位置下所受地形障碍影响程度值
所述的步骤6)首先初始化存储区域d用于存储经验数据
本发明的有益效果是:创新性地将深度强化学习方法和无人机的制导与控制机动策略进行结合,该方法在离线仿真环境中进行学习训练,达到要求后再进行实际应用。由于深度强化学习的应用,该方法极大地增强了无人机在执行任务过程中的自主性,提高了无人机执行任务的效率。
附图说明
图1是无人机机动策略自主生成问题描述示意图;
图2是强化学习典型模型示意图;
图3是dqn算法结构图;
图4是q(s,a)网络结构示意图。
具体实施方式
本发明针对无人机机动策略自主生成问题,提出基于dqn的无人机机动策略自主生成方法,实现无人机能够有效选择自身机动策略,满足飞行需求,提升无人机自主飞行能力。
本发明的实现过程包括以下步骤:
1、建立无人机三自由度运动模型。
式中,nx为无人机在飞机坐标系中的切向过载,ny为飞机坐标系中的法向过载,v为无人机速度,θ为无人机航迹倾斜角,ψc为无人机航迹偏转角,γc为速度倾斜角,x、y和z为无人机在地理坐标系中的三向坐标,m为无人机质量,g为重力加速度。
2、建立无人机机动控制库,无人机机动库使用飞机基本操作动作库,包括了最大过载左转、最大过载右转、控制不变、最大减速、最大加速、最大过载拉起和最大过载俯冲。机动动作使用无人机切向过载nx、法向过载ny和速度倾斜角γc进行定义。如式(2)为切向过载nx、法向过载ny的定义。
式中p为发动机推力,y为无人机所受空气升力,q为无人机所受空气阻力。
3、建立基准地形和山峰等三维环境模型。
建立基准地形模拟模型,本发明采用数学方法对基准地形进行模拟,如式(3)所示为基准地形生成公式。
式中h(x,y)为(x,y)点对应的地面海拔高度,x的正方向为正东方向,y的正方向为正北方向,h的正方向指向天空,当x、y和h均为0时,为地理坐标系原点,a、b、c、d、e、f和g为常系数,这些参数控制基准地形起伏。
建立山峰模拟模型,本发明中采用指数函数对山峰进行描述,如式(4)所示。
式中z为(x,y)点对应的山峰高度,用(hi,xi,yi,xsi,ysi)描述第i个山峰的高低、坡度等属性,hi为山峰海拔高度,(xi,yi)为山峰中心位置,(xsi,ysi)为山峰在x和y方向上的坡度,n为山峰个数。
4、计算无人机当前位置下所受地形障碍影响程度值。
本发明中,以无人机离地面距离远近描述无人机所受地形障碍的影响程度值,如式(5)所示。
式中xuav和(xuav,yuav,zuav)为无人机在地理坐标系中的位置坐标,g(xuav)为无人机所受飞行环境的影响值。在模型计算完成后,输出g(xuav)作为飞行环境对无人机的影响值。
5、基于dqn算法的无人机机动策略自主生成方法。
5.1、构建评价网络q(s,a)与目标网络q′(s,a),在本专利中,两个神经网络均属于深度神经网络(dnn)。此外,q(s,a)和q′(s,a)两个网络采用相同的参数进行初始化,即在训练前,q′(s,a)由q(s,a)复制得到。
在本环节中,对q(s,a)和q′(s,a)的参数进行定义。q(s,a)网络(或q′(s,a)网络)采用如图所示结构搭建,即三层网络,每层之间神经元两两连接,激活函数使用线性整流函数relu,如式(6)所示。
5.2、对状态空间
状态空间
式中,x,y,z为无人机在地理坐标系中的位置,v为无人机的速度标量,θ为无人机航迹倾斜角,ψc为无人机航迹偏转角,距离单位为m,速度单位为m/s,角度单位为°。
动作空间
式中ai表示第i种机动,定义如式(9):
a=[nx,ny,γc](9)
式中,nx为无人机在飞机坐标系中的切向过载,ny为无人机在飞机坐标系中的法向过载,γc为无人机的速度轴系倾斜角。
收益r考虑飞行环境对无人机的影响值和无人机与终点(任务起点、终点位置由实际任务决定)的距离,定义如式(10):
r=-(g(xuav)+p(xuav))(10)
式中,g(xuav)为无人机所受飞行环境的影响值,p(xuav)为无人机与终点的距离,r为无人机当前的收益。p(xuav)的计算如式(11):
式中,(xuav,yuav,zuav)为无人机在地理坐标系中的位置坐标,(xstart,ystart,zstart)为在地理坐标系中的起点坐标,(xend,yend,zend)为在地理坐标系中的终点坐标。
回放经验
式中,s为当前状态,a为当前状态下无人机所选的动作,r为无人机执行a后所得的收益,s′为无人机执行a后的状态
6、对评价网络q(s,a)进行训练。
6.1、初始化存储区域d用于存储经验数据
6.2、开始学习训练m个周期,由于训练过程基于马尔可夫过程,所以在一个周期中又包含了t回合单步训练。开始训练前设置已训练周期数m和已训练回合数t为0。
在每回合中,先根据贪婪策略或其他策略选取当前最优的动作at,如式(13)所示:
将at作为无人机的控制输入后得到当前的收益rt和下一时刻状态st+1,然后将(st,at,rt,st+1)存入
随后从
q(s,a;θ)的参数θ更新完成后,则t=t+1,即本回合训练结束,开始下回合训练,重复本环节中所述内容。同时,每过c步利用q(s,a;θ)的参数θ更新q′(s,a;θ-)的参数θ-。
6.3、当完成t个回合单步训练(即t=t)后,则m=m+1,即开始下一个周期的训练。当m个周期训练结束(即m=m)后,则q′(s,a;θ-)网络为训练结果,可以直接用于无人机的机动策略生成。
7、训练完成后,使用q′(s,a;θ-)网络作为无人机飞行控制外环控制器,周期性地选择无人机的机动动作,从而进一步控制无人机的两向过载nx、ny和无人机速度倾斜角γc。
如表1所示为无人机机动策略自主生成方法的训练流程。
表1无人机机动策略自主生成方法训练流程
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
1、基于式(15)建立无人机运动模型后,根据实际无人机的生产规格设置无人机模型的部分参数和约束条件,包括了无人机重量m,最小、最大飞行速度(本实例中考虑设为[200m/s,400m/s]),最大爬升角、最大俯冲角(本实例中考虑设为[-60°,70°]),最大转弯半径(本实例中考虑设为1km)。在仿真时,无人机速度应大于最小飞行速度,小于最大飞行速度,无人机航迹倾斜角应被限制在最大爬升角和最大俯冲角之间,无人机航迹偏转角应满足最大转弯半径的约束。
2、搭建无人机机动控制库,无人机机动库使用飞机基本操作动作库,包括了最大过载左转、最大过载右转、控制不变、最大减速、最大加速、最大过载拉起和最大过载俯冲。机动动作使用无人机切向过载nx、法向过载ny和速度倾斜角γc进行定义。如式(16)为切向过载nx、法向过载ny的定义。
式中p为发动机推力,y为无人机所受空气升力,q为无人机所受空气阻力。
如表2所示为无人机机动库的定义,第一列代表第i个机动,从1~7依次为最大过载左转、最大过载右转、控制不变、最大减速、最大加速、最大过载拉起和最大过载俯冲,第二列为切向过载取值,第三列为法向过载取值,均为无量纲值,第四列为速度倾斜角取值,单位为角度(°)。表中,cx代表无人机推力最大时的切向过载,
表2无人机机动库定义
3、建立基准地形和山峰等三维环境模型。如图1所示为无人机机动策略自主生成方法的典型训练环境,在本实例中,设置较为平缓的地面基准海拔,设置5个山峰,起点位于环境中左侧,终点位于环境中右侧,地理坐标系原点设置在飞行环境左下角。本实例的目标是实现无人机自主从起点安全快速地飞向终点。
针对地面海拔,采用数学方法进行模拟,如式(17)所示为地面海拔模拟生成公式。
式中的参数a、b、c、d、e、f和g分别可取10~15,0.2~0.6,0.1~0.5,0.6~1.5,1~5,0.1~0.8,0.1~0.8。
山峰采用指数函数进行描述,其数学模型如式(18)所示。
式中xsi,ysi一般取10~30。
4、计算无人机当前位置下所受地形障碍影响程度值。
如式(19)所示,以无人机离地面距离远近描述无人机所受地形障碍的影响程度。
式中xuav和(xuav,yuav,zuav)为无人机在地理坐标系中的位置坐标,在模型计算完成后,输出g(xuav)作为飞行环境对无人机的影响值。
5、基于dqn算法的无人机机动策略自主生成方法。
5.1、构建评价网络q(s,a;θ)和q′(s,a;θ-)。在本实例实施过程中,q(s,a;θ)和q′(s,a;θ-)网络为两层架构,包括输入层和输出层,输入层由32个神经元组成,输入为当前状态量s和动作序号a(
5.2、对状态空间
状态s为一个六维向量,并且
式中,x,y,z代表无人机在地理坐标系中的位置,单位为m,v为无人机速度标量,单位为m/s,θ,ψc为无人机航迹倾斜角和航迹偏转角,单位为°。
动作空间
动作ai实际为一个三维向量,并且
a=[nx,ny,γc](22)
式中,nx和ny分别代表无人机切向过载与法向过载,无单位,γc为无人机速度轴系倾斜角,单位为°。
收益r考虑飞行环境对无人机的影响值和无人机与终点的距离,定义如式(23):
r=-(g(xuav)+p(xuav))(23)
式中,g(xuav)为无人机所受飞行环境的影响值,p(xuav)为无人机与终点的距离,r为无人机当前的收益。p(xuav)的计算如式(24):
式中,(xuav,yuav,zuav)为无人机在地理坐标系中的位置坐标,(xstart,ystart,zstart)为在地理坐标系中的起点坐标,(xend,yend,zend)为在地理坐标系中的终点坐标。
回放经验
式中,s为当前状态,a为当前状态下无人机所选的动作,r为无人机执行a后所得的收益,s′为无人机执行a后的状态
6、对评价网络q(s,a)进行训练。如图所示为dqn算法结构图。
6.1、初始化存储区域d用于存储经验数据
6.2、开始训练m个周期,每周期内训练t个回合。开始训练前设置已训练周期数m和已训练回合数t为0。
在每个训练回合中,首先根据式(26)生成动作at。
将at作用于环境,然后将本次的状态数据s、动作数据a、收益r和下一时刻状态s′,即(s,a,r,s′)存入d中。
随后在d中抽样得到一组样本,利用这些样本根据式(27)采用随机梯度下降法更新q网络参数θ。
q(s,a;θ)的参数θ更新完成后,则t=t+1,即本回合训练结束,开始下回合训练,重复本环节中所述内容。同时,每过c步利用q(s,a;θ)的参数θ更新q′(s,a;θ-)的参数θ-。
6.3、当完成t个回合单步训练(即t=t)后,则m=m+1,即开始下一个周期的训练。当m个周期训练结束(即m=m)后,则q′(s,a;θ-)网络为训练结果,可以直接用于无人机的机动策略生成。
7、训练完成后,使用q′(s,a;θ-)网络作为无人机飞行控制外环控制器,周期性地选择无人机的机动动作,从而进一步控制无人机的两向过载nx、ny和无人机速度倾斜角γc。
本方法结合深度强化学习方法-深度q网络算法(dqn),针对不确定环境下的无人机机动策略自主生成问题,提出了基于dqn的无人机机动策略自主生成方法。采用本发明中所设计的方法,训练结果具有一定的泛化能力,无人机可以自主选择自身机动策略,完成自主飞行控制与导引,实现从起点到终点的全路径自主飞行,极大地增强了无人机在执行任务过程中的自主性,提高了无人机执行任务的效率。