CN110806759B - 一种基于深度强化学习的飞行器航线跟踪方法 - Google Patents
一种基于深度强化学习的飞行器航线跟踪方法 Download PDFInfo
- Publication number
- CN110806759B CN110806759B CN201911101117.8A CN201911101117A CN110806759B CN 110806759 B CN110806759 B CN 110806759B CN 201911101117 A CN201911101117 A CN 201911101117A CN 110806759 B CN110806759 B CN 110806759B
- Authority
- CN
- China
- Prior art keywords
- network
- aircraft
- control
- weight
- evaluation network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000002787 reinforcement Effects 0.000 title claims abstract description 26
- 238000011156 evaluation Methods 0.000 claims abstract description 81
- 230000006870 function Effects 0.000 claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 23
- 238000013528 artificial neural network Methods 0.000 claims abstract description 16
- 238000012546 transfer Methods 0.000 claims abstract description 9
- 238000005070 sampling Methods 0.000 claims description 24
- 230000000694 effects Effects 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 8
- 238000004088 simulation Methods 0.000 description 13
- 238000011217 control strategy Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000004913 activation Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000036544 posture Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/027—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Feedback Control In General (AREA)
Abstract
本发明涉及一种基于深度强化学习的飞行器航线跟踪方法,属于机器人智能控制领域。本方法首先构建飞行器轨迹跟踪控制的马尔科夫决策过程模型,分别得到飞行器航线跟踪控制的状态变量,控制变量,转移模型,一步损失函数的表达式;分别建立策略网络和评价网络;通过强化学习,使得飞行器在航线跟踪控制训练中每前进一步不断更新策略网络和评价网络,直至收敛;得到用于航线跟踪控制的最终策略网络。本发明方法的可拓展性强,并不只适用于飞行器航迹跟踪控制问题,只需要重新设定状态变量、控制输入以及损失函数,调节神经网络的结构和参数即可拓展于飞行器控制的其他更加复杂的问题。
Description
技术领域
本发明涉及一种基于深度强化学习的飞行器航线跟踪方法,属于机器人智能控制领域。
背景技术
飞行器的自动驾驶系统往往包含两个控制环路:外环根据指定航线产生期望的姿态;内环控制飞行器跟踪外环产生的指令。与外环控制器不同,内环控制器往往只对特定的飞行器、特定的飞行任务有效。目前大多数的飞行器自动驾驶系统都采用经典的PID控制。尽管PID控制足以完成大多数的控制任务,但是其在动态环境中的表现差强人意,比如:存在风扰、载荷变化、电压骤降等。
飞行器的航线跟踪控制问题是一个非常具有挑战性的研究领域,已经发展了数十年,但大多数研究仍停留在仿真阶段,极少有能投入实际应用的控制方法。根据采用的算法种类,目前机器人跟踪问题的控制算法主要包括六大类:PID(proportion integrationdifferentiation)控制、模糊控制、自适应控制、滑模控制、反步控制和神经网络控制。
PID是一种较为传统的控制方法,在早期的简单机器人控制中被大量使用。但PID控制器需要根据控制的模型进行精细的调参,单独使用PID控制难以完成复杂的跟踪任务。模糊控制鲁棒性较强,对飞行器模型依赖程度较低,适用于强非线性和强耦合的系统,但其需要通过专家知识来构造模糊规则。自适应控制能够自动校正参数,只需要较少的先验知识,对飞行器模型要求也较低,早在1991年便被Fossen用作机器人的跟踪控制,至今仍是机器人控制领域中十分热门的算法。其缺点是控制算法较为复杂,在非线性对象上应用相对受限,性能难以提升。滑模控制算法鲁棒性强,对飞行器模型不确定性和参数摄动不敏感,十分适用于飞行器的控制,并不断有学者提出更鲁棒、更稳定的控制算法,但在实际应用中滑模控制容易产生抖振问题,增大能耗,影响控制其性能。反步控制也是飞行器轨迹跟踪中常用的方法,它构造简单,可以很好的处理系统的非线性,并能通过李雅普诺夫理论提高稳定性,但其对模型精度要求较高。神经网络能逼近任意非线性函数,并且有自主学习的能力,随着机器学习和深度学习的发展,这种控制方法越来越受到学界的关注。但目前来说,神经网络的训练样本难以收集,并且实时更新的神经网络控制较难实现。
各种算法都有自己的长处和短板,因此现代控制算法中一般将两种或多种算法相结合,采用复合的控制方法来获得更优的控制效果,比如Harun[Backstepping ControlStrategy For An Underactuated X4-AUV]将PID控制与反步控制方法结合来实现机器人的平移和旋转操控。
传统控制方法通常通过精准的动力学模型设计控制器。但是,在实际应用过程中难以获得准确的飞行器模型。在这种情况下,我们需要更有效的,可以自适应、自学习的控制策略。基于神经网络的控制策略是解决上述难题的方法之一。强化学习是转移概率未知情况下马尔可夫决策过程的求解框架。大部分的控制问题都可以建模成马尔可夫决策过程,在飞行器控制问题中,转移概率即对应飞行器的动力学模型。因此,强化学习可实现无模型控制,从经验中学习控制策略。
与传统的控制方法不同,强化学习算法不需要飞行器的数学模型,是一种无模型的控制方法。强化学习基于动态规划的框架解决马尔可夫过程问题,且只需要马尔可夫过程的样本点作为训练样本。
发明内容
本发明的目的是提出一种基于深度强化学习的飞行器航线跟踪方法,克服现有技术的不足之处,不依赖飞行器的动力学模型,以飞行器速度、高度、姿态、角速率等传感器信息作为神经网络输入,以油门、升降舵、副翼、方向舵等控制指令为输出,完成飞行策略网络的训练,达到轨迹跟踪的目标。
本发明提出的基于深度强化学习的飞行器航线跟踪方法,包括以下步骤:
(1)构建一个用于飞行器航线跟踪的马尔科夫模型,包括以下步骤:
(1-1)确定马尔科夫模型的状态变量:
用(x,y,z)表示飞行器在惯性坐标系下的水平面坐标x,y和高度z,用表示飞行器在惯性坐标系下的航向角、俯仰角和横滚角,用(p,q,r)表示飞行器在本体坐标系下三轴线速度,(u,v,w)表示飞行器在本体坐标系下的三轴角速度;
则飞行器的马尔科夫模型的状态变量s为:
其中,β表示飞行器的侧滑角,侧滑角是飞行器飞行速度方向与其纵向对称平面之间的夹角,上标T表示矩阵转置;
(1-2)确定马尔科夫模型的控制变量:
设定飞行器副翼的舵量τ1、飞行器升降舵的舵量τ2和飞行器方向舵的舵量τ3,得到马尔科夫模型的控制变量u,u=[τ1,τ2,τ3]T;
(1-3)确定马尔科夫模型的转移模型,表达式为:sk+1=f(sk,uk),
其中,s为飞行器状态变量,k为飞行器状态采样时刻,该转移模型为一个时间离散的黑箱函数,表示在当前采样时刻k的状态变量sk和控制变量uk与下一采样时刻的状态变量sk+1的关系;
(1-4)确定马尔科夫模型的一步损失函数,表达式为:;
其中,k表示采样时刻,ρ1、ρ2、ρ3、ρ4、λ1、λ2、λ3分别表示相应各项的权重系数,上述权重系数均大于零,其中的项用于保证飞行器到达指定高度和指定前进方向,用于使飞行器横滚角和侧滑角为零,λ1(τ1,k-τ1,k-12+λ2τ2,k-τ2,k-12+λ3τ3,k-τ3,k-12用于防止控制变量出现震荡的现象,一步损失函数用于评价在飞行在某个时刻状态下执行控制变量的效果;
(1-5)确定飞行器航线跟踪的目标函数如下:
满足:sk+1=f(sk,uk)k=1,…,∞
(2)构建基于深度强化学习的评价网络与策略网络,包括以下步骤:
(2-1)构建一个策略网络:
策略网络的输入为状态变量s,策略网络的输出为控制变量u,策略网络表达式如下:
u=μ(s)
(2-2)构建一个评价网络:
评价网络的输入为状态变量s和控制变量u,评价网络的输出为累计损失量Qμ(s,u),评价网络的表达式如下:
(3)采用确定性策略梯度方法,对飞行器轨迹跟踪进行控制,具体步骤如下:
(3-1)设定最大迭代次数为M,每次迭代的最大实验步数为T,设定一个训练集,训练集大小为N,设定目标神经网络的追踪比率为τ,设定策略网络滞后时间为D,设定评价网络与策略网络的学习率分别为αω和αω=0.01,设定一个对未来损失权重的衰减因子,γ,0<γ<1;
(3-2)设定步骤(2-1)策略网络μ的权重参数为即设定步骤(2-2)评价网络Qμ(x,u)的权重参数为ωj,j=1,2,即Q(s,u|ωj),初始化时,设定三个网络的权重参数均为0,将初始化后的策略网络记为当前策略网络,将初始化后的评价网络重复记为第一当前评价网络(Q(x,u|ω1))和第二当前评价网络(Q(x,u|ω2));
建立一个空的经验集R,并设置集合R大小为100万;从经验集R中抽取一个训练集,训练集的大小为N;
(3-3)迭代开始,令初始化时,迭代次数m为1;
(3-4)初始化策略网络滞后时间d=1,初始化采样时刻k=0,每次迭代的最大步数为T,初始化飞行器的状态变量s0记为:
并令sk=s0;
(3-5)利用步骤(3-2)的当前策略网络生成采样时刻k控制变量采用正太分布随机生成一个探索噪声Δuk,得到马尔科夫模型的控制量向步骤(1)的马尔科夫模型输入控制量uk与步骤(3-4)的状态变量sk,得到下一采样时刻的状态变量sk+1和一步损失函数ck+1;
(3-6)将步骤(3-4)至(3-5)得到的状态变量sk+1和一步损失函数ck+1,记为一个经验样本ek=(sk,uk,ck+1,sk+1),并将该经验样本存入步骤(3-2)的经验集R中;
(3-7)统计经验集中的经验样本个数NR,并对NR进行判定:若NR≤N,则转到步骤(3-12);若NR>N,则进入步骤(3-8);
(3-8)从经验集R中随机抽取N个经验样本e1,e2,…,eN;
(3-9)按照以下公式分别更新步骤(3-2)的第一评价网络权重和第二评价网络权重:
δi=yi-Q(si,ui|ωj),i=1,2,3…,N
其中,j=1,2,并将更新后的第一评价网络权重和第二评价网络权重记为新的当前评价网络;
(3-10)使策略网络滞后时间d=d+1,对d进行判定,若d相对D的余数为零,则进入步骤(3-11),若d相对D的余数不为零,则进入步骤(3-13);
(3-11)采用确定性策略梯度方法,对步骤(3-2)的策略网络权重进行更新:
其中,将更新后的策略网络记为新的当前策略网络,进入步骤(3-12);
(3-12)按照以下公式,对步骤(3-2)的第一目标评价网络、第二目标评价网络和目标策略网络权重进行更新:
(3-13)使采样时刻k=k+1,对k进行判定:若k<T,则返回步骤(3-5),若k≥T,进入步骤(3-14);
(3-14)使迭代次数m=m+1,对m进行判定:若m<M,则返回步骤(3-4),若m≥M,则将当前策略网络作为最终的策略网络,记为将步骤(1-1)状态变量输入该策略网络输出控制变量,实现对飞行器的基于深度强化学习的航线跟踪。
本发明提出的基于深度强化学习的飞行器航线跟踪方法,,其特点和优点是:
1、本发明方法在飞行器模型未知的条件下实现对飞行器的航线控制。确定性策略梯度方法通过飞行器飞行轨迹的采样数据,通过自主学习出使得控制目标达到最优的评价网络与策略网络,该过程中不需要飞行器模型的任何假设与参数。
2、本发明方法将确定性策略梯度理论与人工神经网络相结合,设计了三个神经网络——评价网络1、评价网络2和策略网络。评价网络用于拟合强化学习中的值函数(Q函数),策略网络在给定状态生成相应的控制策略。由于神经网络强大的表达能力,因此在飞行器模型比较复杂的情况也可以学习出理想的控制策略。同时双评价网络的设计可以很好的解决值函数过估计的问题。
3、本发明方法的可拓展性强,并不只适用于飞行器航迹跟踪控制问题,只需要重新设定状态变量、控制输入以及损失函数,调节神经网络的结构和参数即可拓展于飞行器控制的其他更加复杂的问题。
附图说明
图1为本发明方法涉及的飞行器六自由度示意图。
图2为本发明方法中的策略网络示意图。
图3为本发明方法中评价网络示意图。
图4为本发明方法中深度强化学习架构示意图。
图5为本发明方法的一个实施例中JSBSim和Flightgear仿真平台示意图。
图6为本发明方法的实施例中累积奖励函数变化示意图。
图7为本发明实施例中飞行器高度误差示意图。
图8为本发明实施例中飞行器航向误差示意图。
图9为本发明实施例中飞行器侧滑角示意图。
图10为本发明实施例中飞行器横滚角示意图。
具体实施方式
本发明提出的基于深度强化学习的飞行器航线跟踪方法,包括以下步骤:
(1)构建一个用于飞行器航线跟踪的马尔科夫模型,包括以下步骤:
飞行器航线跟踪的马尔科夫模型包括四个组成部分:状态变量,控制变量,转移模型,一步损失函数;
(1-1)确定马尔科夫模型的状态变量:
如图1所示,用(x,y,z)表示飞行器在惯性坐标系下的水平面坐标x,y和高度z,用表示飞行器在惯性坐标系下的航向角、俯仰角和横滚角,用(p,q,r)表示飞行器在本体坐标系下三轴线速度,(u,v,w)表示飞行器在本体坐标系下的三轴角速度;
则飞行器的马尔科夫模型的状态变量s为:
其中,β表示飞行器的侧滑角,侧滑角是飞行器飞行速度方向与其纵向对称平面之间的夹角,上标T表示矩阵转置;
(1-2)确定马尔科夫模型的控制变量:
设定飞行器副翼的舵量τ1、飞行器升降舵的舵量τ2和飞行器方向舵的舵量τ3,得到马尔科夫模型的控制变量u,u=[τ1,τ2,τ3]T;
(1-3)确定马尔科夫模型的转移模型,表达式为:sk+1=f(sk,uk),
其中,s为飞行器状态变量,k为飞行器状态采样时刻,该转移模型为一个时间离散的黑箱函数,表示在当前采样时刻k的状态变量sk和控制变量uk与下一采样时刻的状态变量sk+1的关系;
(1-4)确定马尔科夫模型的一步损失函数,表达式为:;
其中,k表示采样时刻,ρ1、ρ2、ρ3、ρ4、λ1、λ2、λ3分别表示相应各项的权重系数,上述权重系数均大于零,其中的项用于保证飞行器到达指定高度和指定前进方向,用于使飞行器横滚角和侧滑角为零,λ1(τ1,k-τ1,k-12+λ2τ2,k-τ2,k-12+λ3τ3,k-τ3,k-12用于防止控制变量出现震荡的现象,一步损失函数用于评价在飞行在某个时刻状态下执行控制变量的效果;
(1-5)确定飞行器航线跟踪的目标函数如下:目标函数是使得飞行器到达并维持在指定的高度和航向,即期望累计损失函数的值为最小化:
满足:sk+1=f(sk,uk)k=1,…,∞
(2)构建基于深度强化学习的评价网络与策略网络,包括以下步骤:
(2-1)构建一个策略网络,如图2所示:
策略网络的输入为状态变量s,策略网络的输出为控制变量u,策略网络表达式如下:
u=μ(s)
本实施例中策略网络的结构如图2所示,隐含层的结点数根均为100,隐含层同样采用ReLu激活函数;输出层包含三个结点,分别输出三个控制变量τ1,τ2,τ3,输出层激活函数采用tanh函数,将输出的控制变量限制在[-1,1]区间,再根据飞行器的控制变量限制范围进行放缩。
(2-2)构建一个评价网络:
评价网络的输入为状态变量s和控制变量u,评价网络的输出为累计损失量Qμ(s,u),评价网络的表达式如下:
该评价函数表示在给定状态变量与控制变量时,按照策略网络μ进行控制得到的一步损失函数的累积值。
本实施例中评价网络的结构如图3所示,其中隐含层结点数均为100,隐含层采用ReLu(Rectified Linear Unit)激活函数。输出层的输出即为期望的Q值,输出层激活函数采用线性激活函数。另外值得注意的是,控制变量在评价网络的第二层隐含层输入到网络中。
(3)采用确定性策略梯度方法,对飞行器轨迹跟踪进行控制,具体步骤如下:
(3-1)设定最大迭代次数为M,本发明的一个实施例中,M=1000,每次迭代的最大实验步数为T,本发明的一个实施例中为T=600,设定一个训练集,训练集大小为N,本发明的一个实施例中N=64,设定目标神经网络的追踪比率为τ,本发明的一个实施例中τ=0.9,设定策略网络滞后时间为D,本发明的一个实施例中,D=2,设定评价网络与策略网络的学习率分别为αω和本发明的一个实施例中,αω=0.01,设定一个对未来损失权重的衰减因子,γ,0<γ<1,本发明的一个实施例中,γ=0.99;
(3-2)设定步骤(2-1)策略网络μ的权重参数为即设定步骤(2-2)评价网络Qμ(x,u)的权重参数为ωj,j=1,2,即Q(s,u|ωj),初始化时,设定三个网络的权重参数均为0,将初始化后的策略网络记为当前策略网络,将初始化后的评价网络重复记为第一当前评价网络(Q(x,u|ω1))和第二当前评价网络(Q(x,u|ω2));
建立一个空的经验集R,并设置集合R大小为100万;从经验集R中抽取一个训练集,训练集的大小为N;
(3-3)迭代开始,令初始化时,迭代次数m为1;
(3-4)初始化策略网络滞后时间d=1,初始化采样时刻k=0,每次迭代的最大步数为T,本发明的一个实施例中为T=600,初始化飞行器的状态变量s0记为:
并令sk=s0;
(3-5)利用步骤(3-2)的当前策略网络生成采样时刻k控制变量采用正太分布随机生成一个探索噪声Δuk,得到马尔科夫模型的控制量向步骤(1)的马尔科夫模型输入控制量uk与步骤(3-4)的状态变量sk,得到下一采样时刻的状态变量sk+1和一步损失函数ck+1;
(3-6)将步骤(3-4)至(3-5)得到的状态变量sk+1和一步损失函数ck+1,记为一个经验样本ek=(sk,uk,ck+1,sk+1),并将该经验样本存入步骤(3-2)的经验集R中;
(3-7)统计经验集中的经验样本个数NR,并对NR进行判定:若NR≤N,则转到步骤(3-12);若NR>N,则进入步骤(3-8);
(3-8)从经验集R中随机抽取N个经验样本e1,e2,…,eN;
(3-9)按照以下公式分别更新步骤(3-2)的第一评价网络权重和第二评价网络权重:
δi=yi-Q(si,ui|ωj),i=1,2,3…,N
其中,j=1,2,并将更新后的第一评价网络权重和第二评价网络权重记为新的当前评价网络;
(3-10)使策略网络滞后时间d=d+1,对d进行判定,若d相对D的余数为零,则进入步骤(3-11),若d相对D的余数不为零,则进入步骤(3-13);
(3-11)采用确定性策略梯度方法,对步骤(3-2)的策略网络权重进行更新:
其中,将更新后的策略网络记为新的当前策略网络,进入步骤(3-12);
(3-12)按照以下公式,对步骤(3-2)的第一目标评价网络、第二目标评价网络和目标策略网络权重进行更新:
(3-13)使采样时刻k=k+1,对k进行判定:若k<T,则返回步骤(3-5),若k≥T,进入步骤(3-14);
(3-14)使迭代次数m=m+1,对m进行判定:若m<M,则返回步骤(3-4),若m≥M,则将当前策略网络作为最终的策略网络,记为将步骤(1-1)状态变量输入该策略网络输出控制变量,实现对飞行器的基于深度强化学习的航线跟踪。
本发明提出的一种深度强化学习的飞行器航迹跟踪控制方法,下面结合附图和具体实施例进一步详细说明。
本发明提出一种基于深度强化学习的飞行器航线跟踪控制方法,首先构建飞行器轨迹跟踪控制的马尔科夫决策过程模型,分别得到飞行器航线跟踪控制的状态变量,控制变量,转移模型,一步损失函数的表达式;分别建立策略网络和评价网络;通过强化学习,使得飞行器在航线跟踪控制训练中每前进一步不断更新策略网络和评价网络,直至收敛;得到用于航线跟踪控制的最终策略网络。
图4显示了本发明提出的基于深度强化学习的飞行器航迹跟踪控制方法的框架架构。本发明用固定目标函数的方式,将复杂的优化问题简化为回归问题,增加神经网络收敛的稳定性。在训练中,当前策略网络趋近于目标策略网络,当前评价网络趋近于目标评价网络。训练结束后,只需要当前策略网络就可以控制飞行器实现期望的轨迹跟踪控制任务。
本发明方法所采用的飞行仿真环境为开源平台,可通过网址https://github.com/dongf17/gym-jsbsim获取仿真平台,本发明方法本领域技术人员通过编程即可实现。
下面结合一个具体实施例对本发明进一步说明如下。
仿真实验
(1)仿真设置
本发明提出的方法在仿真平台JSBSim平台上进行了训练和验证,有关仿真平台的相关说明请参照网址https://github.com/dongf17/gym-jsbsim。本实施例中采用的飞行器型号为F15。
(2)仿真结果
(1)仿真设置
本发明提出的方法在仿真平台JSBSim平台上进行了训练和验证,有关仿真平台的相关说明请参照网址https://github.com/dongf17/gym-jsbsim。本实施例中采用的飞行器型号为Cessna172P。令最大迭代次数为M=1000,每次迭代的最大实验步数T=600,经验回放抽取的训练集大小N=64,目标神经网络的追踪比率τ=0.9,令策略网络滞后时间为D=2,评价网络与策略网络的学习率分别为αω=0.01和对未来损失权重的衰减因子,0<γ<1为γ=0.99;此外奖励函数的系数分别为:ρ1=0.5、ρ2=0.5、ρ3=0.1、ρ4=0.1、λ1=0.03、λ2=0.03、λ3=0.03。图5是JSBSim和Flightgear仿真平台的运行界面,左侧的数据由JSBSim提供,右边的可视化窗口由Flightgear提供。
(2)仿真结果
图6显示的是1000次训练中,奖励函数的变化。起始阶段,飞行器获得的累计奖励很小,随着训练次数的增加,累计奖励逐渐变大,最后趋于稳定。
图7-图10显示的是测试结果,即用训练产生的策略网络控制飞行器执行航迹保持任务。图7显示了飞行器的高度误差,图8显示了航向误差,图9和图10分别显示了飞行器的侧滑角和横滚角。在本次飞行中,飞行器的期望高度为1524米,飞行器初始航向误差大于40度。进入稳态后,高度误差小于0.75米,航向误差小于0.1度,侧滑角小于1.3度,横滚角小于0.4度。从图7-图10的结果可以看出,飞行器状态最终趋于稳定,证明本发明提出的方法可以不依赖飞行器模型就产生理想的控制策略。
本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (1)
1.一种基于深度强化学习的飞行器航线跟踪方法,其特征在于,包括以下步骤:
(1)构建一个用于飞行器航线跟踪的马尔科夫模型,包括以下步骤:
(1-1)确定马尔科夫模型的状态变量:
用(x,y,z)表示飞行器在惯性坐标系下的水平面坐标x,y和高度z,用表示飞行器在惯性坐标系下的航向角、俯仰角和横滚角,用(p,q,r)表示飞行器在本体坐标系下三轴线速度,(u,v,w)表示飞行器在本体坐标系下的三轴角速度;
则飞行器的马尔科夫模型的状态变量s为:
其中,β表示飞行器的侧滑角,侧滑角是飞行器飞行速度方向与其纵向对称平面之间的夹角,上标T表示矩阵转置;
(1-2)确定马尔科夫模型的控制变量:
设定飞行器副翼的舵量τ1、飞行器升降舵的舵量τ2和飞行器方向舵的舵量τ3,得到马尔科夫模型的控制变量u,u=[τ1,τ2,τ3]T;
(1-3)确定马尔科夫模型的转移模型,表达式为:sk+1=f(sk,uk),
其中,s为飞行器状态变量,k为飞行器状态采样时刻,该转移模型为一个时间离散的黑箱函数,表示在当前采样时刻k的状态变量sk和控制变量uk与下一采样时刻的状态变量sk+1的关系;
(1-4)确定马尔科夫模型的一步损失函数,表达式为:
其中,k表示采样时刻,ρ1、ρ2、ρ3、ρ4、λ1、λ2、λ3分别表示相应各项的权重系数,上述权重系数均大于零,其中的项用于保证飞行器到达指定高度和指定前进方向,用于使飞行器横滚角和侧滑角为零,λ1(τ1,k-τ1,k-1)2+λ2(τ2,k-τ2,k-1)2+λ3(τ3,k-τ3,k-1)2用于防止控制变量出现震荡的现象,一步损失函数用于评价在飞行在某个时刻状态下执行控制变量的效果;
(1-5)确定飞行器航线跟踪的目标函数如下:
满足:sk+1=f(sk,uk),k=1,…,∞
(2)构建基于深度强化学习的评价网络与策略网络,包括以下步骤:
(2-1)构建一个策略网络:
策略网络的输入为状态变量s,策略网络的输出为控制变量u,策略网络表达式如下:
u=μ(s)
(2-2)构建一个评价网络:
评价网络的输入为状态变量s和控制变量u,评价网络的输出为累计损失量Qμ(s,u),评价网络的表达式如下:
(3)采用确定性策略梯度方法,对飞行器轨迹跟踪进行控制,具体步骤如下:
(3-1)设定最大迭代次数为M,每次迭代的最大实验步数为T,设定一个训练集,训练集大小为N,设定目标神经网络的追踪比率为τ,设定策略网络滞后时间阈值为D,设定评价网络与策略网络的学习率分别为αω和αθ,αω=0.01,αθ=0.001,设定对未来损失的权重衰减因子γ,0<γ<1;
(3-2)设定步骤(2-1)策略网络μ的权重参数为θ,即μ(s|θ),设定步骤(2-2)评价网络Qμ(x,u)的权重参数为ωj,j=1,2,即Q(s,u|ωj),初始化时,设定三个网络的权重参数均为0,将初始化后的策略网络记为当前策略网络,将初始化后的评价网络重复记为第一当前评价网络(Q(x,u|ω1))和第二当前评价网络(Q(x,u|ω2));
建立一个空的经验集R,并设置集合R大小为100万;从经验集R中抽取一个训练集,训练集的大小为N;
(3-3)迭代开始,令初始化时,迭代次数m为1;
(3-4)初始化策略网络滞后时间d=1,初始化采样时刻k=0,每次迭代的最大步数为T,初始化飞行器的状态变量s0记为:
并令sk=s0;
(3-5)利用步骤(3-2)的当前策略网络μ(x|θ),生成采样时刻k控制变量μ(sk|θ),采用正太分布随机生成一个探索噪声Δuk,得到马尔科夫模型的控制量uk=μ(sk|θ)+Δuk,向步骤(1)的马尔科夫模型输入控制量uk与步骤(3-4)的状态变量sk,得到下一采样时刻的状态变量sk+1和一步损失函数ck+1;
(3-6)将步骤(3-4)至(3-5)得到的状态变量sk+1和一步损失函数ck+1,记为一个经验样本ek=(sk,uk,ck+1,sk+1),并将该经验样本存入步骤(3-2)的经验集R中;
(3-7)统计经验集中的经验样本个数NR,并对NR进行判定:若NR≤N,则转到步骤(3-12);若NR>N,则进入步骤(3-8);
(3-8)从经验集R中随机抽取N个经验样本e1,e2,…,eN;
(3-9)按照以下公式分别更新步骤(3-2)的第一评价网络权重和第二评价网络权重:
δi=yi-Q(si,ui|ωj),i=1,2,3…,N
其中,j=1,2,并将更新后的第一评价网络权重和第二评价网络权重记为新的当前评价网络;
(3-10)使策略网络滞后时间计数d=d+1,对d进行判定,若d相对D的余数为零,则进入步骤(3-11),若d相对D的余数不为零,则进入步骤(3-13);
(3-11)采用确定性策略梯度方法,对步骤(3-2)的策略网络权重进行更新:
其中,将更新后的策略网络记为新的当前策略网络,进入步骤(3-12);
(3-12)按照以下公式,对步骤(3-2)的第一目标评价网络、第二目标评价网络和目标策略网络权重进行更新:
(3-13)使采样时刻k=k+1,对k进行判定:若k<T,则返回步骤(3-5),若k≥T,进入步骤(3-14);
(3-14)使迭代次数m=m+1,对m进行判定:若m<M,则返回步骤(3-4),若m≥M,则将当前策略网络μ(x|θ)作为最终的策略网络,记为μ*(x|θ),将步骤(1-1)状态变量输入μ*(x|θ),该策略网络输出控制变量,实现对飞行器的基于深度强化学习的航线跟踪。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911101117.8A CN110806759B (zh) | 2019-11-12 | 2019-11-12 | 一种基于深度强化学习的飞行器航线跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911101117.8A CN110806759B (zh) | 2019-11-12 | 2019-11-12 | 一种基于深度强化学习的飞行器航线跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110806759A CN110806759A (zh) | 2020-02-18 |
CN110806759B true CN110806759B (zh) | 2020-09-08 |
Family
ID=69502487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911101117.8A Active CN110806759B (zh) | 2019-11-12 | 2019-11-12 | 一种基于深度强化学习的飞行器航线跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110806759B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580544B (zh) * | 2020-03-25 | 2021-05-07 | 北京航空航天大学 | 一种基于强化学习ppo算法的无人机目标跟踪控制方法 |
CN111638646B (zh) * | 2020-05-29 | 2024-05-28 | 平安科技(深圳)有限公司 | 四足机器人行走控制器训练方法、装置、终端及存储介质 |
CN111667513B (zh) * | 2020-06-01 | 2022-02-18 | 西北工业大学 | 一种基于ddpg迁移学习的无人机机动目标跟踪方法 |
CN111708378B (zh) * | 2020-06-22 | 2023-01-03 | 哈尔滨工程大学 | 一种基于强化学习的导弹纵向姿态控制算法 |
CN112148025A (zh) * | 2020-09-24 | 2020-12-29 | 东南大学 | 一种基于积分补偿强化学习的无人飞行器稳定控制算法 |
CN112241176B (zh) * | 2020-10-16 | 2022-10-28 | 哈尔滨工程大学 | 一种水下自主航行器在大尺度连续性障碍物环境中路径规划避障控制方法 |
CN112198890B (zh) * | 2020-12-03 | 2021-04-13 | 中国科学院自动化研究所 | 基于强化学习的飞行器姿态控制方法、系统、装置 |
CN112904726B (zh) * | 2021-01-20 | 2022-11-18 | 哈尔滨工业大学 | 一种基于误差重构权重更新的神经网络反步控制方法 |
CN112818599B (zh) * | 2021-01-29 | 2022-06-14 | 四川大学 | 一种基于强化学习和四维轨迹的空中管制方法 |
CN113139655B (zh) * | 2021-03-31 | 2022-08-19 | 北京大学 | 一种基于强化学习的目标追踪的训练方法、追踪方法 |
CN113031642B (zh) * | 2021-05-24 | 2021-08-10 | 北京航空航天大学 | 动态禁飞区约束的高超声速飞行器轨迹规划方法和系统 |
CN113419548A (zh) * | 2021-05-28 | 2021-09-21 | 北京控制工程研究所 | 一种航天器深度强化学习莱维飞行控制系统 |
CN114167748B (zh) * | 2021-10-26 | 2024-04-09 | 北京航天自动控制研究所 | 一种飞行控制算法一体化训练平台 |
CN114756025B (zh) * | 2022-04-02 | 2024-07-23 | 天津大学 | 一种自主小车巡航控制方法及装置 |
CN114967713B (zh) * | 2022-07-28 | 2022-11-29 | 山东大学 | 基于强化学习的水下航行器浮力离散变化下的控制方法 |
CN115328196B (zh) * | 2022-08-05 | 2024-06-14 | 北京航空航天大学 | 一种基于学习的飞行器实时航路点决策-轨迹规划方法 |
CN115562345B (zh) * | 2022-10-28 | 2023-06-27 | 北京理工大学 | 一种基于深度强化学习的无人机侦测轨迹规划方法 |
CN118131649B (zh) * | 2024-05-10 | 2024-09-13 | 西北工业大学宁波研究院 | 变展长飞行器在气动不确定性下的智能变形决策方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9622133B1 (en) * | 2015-10-23 | 2017-04-11 | The Florida International University Board Of Trustees | Interference and mobility management in UAV-assisted wireless networks |
CN106595671A (zh) * | 2017-02-22 | 2017-04-26 | 南方科技大学 | 一种基于强化学习的无人机路径规划方法和装置 |
CN107102644B (zh) * | 2017-06-22 | 2019-12-10 | 华南师范大学 | 基于深度强化学习的水下机器人轨迹控制方法及控制系统 |
CN107748566B (zh) * | 2017-09-20 | 2020-04-24 | 清华大学 | 一种基于强化学习的水下自主机器人固定深度控制方法 |
CN108803321B (zh) * | 2018-05-30 | 2020-07-10 | 清华大学 | 基于深度强化学习的自主水下航行器轨迹跟踪控制方法 |
CN109597425B (zh) * | 2018-10-18 | 2021-10-26 | 中国航空无线电电子研究所 | 基于强化学习的无人机导航和避障方法 |
CN109614631B (zh) * | 2018-10-18 | 2022-10-14 | 清华大学 | 基于强化学习和迁移学习的飞行器全自动气动优化方法 |
CN109443366B (zh) * | 2018-12-20 | 2020-08-21 | 北京航空航天大学 | 一种基于改进q学习算法的无人机群路径规划方法 |
-
2019
- 2019-11-12 CN CN201911101117.8A patent/CN110806759B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110806759A (zh) | 2020-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110806759B (zh) | 一种基于深度强化学习的飞行器航线跟踪方法 | |
CN111351488B (zh) | 飞行器智能轨迹重构再入制导方法 | |
Cheng et al. | Real-time optimal control for spacecraft orbit transfer via multiscale deep neural networks | |
CN110502033B (zh) | 一种基于强化学习的固定翼无人机群集控制方法 | |
CN107748566B (zh) | 一种基于强化学习的水下自主机器人固定深度控制方法 | |
Ma et al. | Deep reinforcement learning of UAV tracking control under wind disturbances environments | |
Han et al. | Online policy iteration ADP-based attitude-tracking control for hypersonic vehicles | |
CN114253296B (zh) | 高超声速飞行器机载轨迹规划方法、装置、飞行器及介质 | |
CN110908281A (zh) | 无人直升机姿态运动有限时间收敛强化学习控制方法 | |
Hu et al. | Proximal policy optimization with an integral compensator for quadrotor control | |
CN117215197B (zh) | 四旋翼飞行器在线轨迹规划方法、系统、电子设备及介质 | |
CN109375642B (zh) | 一种无人机节能控制方法 | |
CN110083168A (zh) | 基于增强学习的小型无人直升机定高控制方法 | |
CN115374933A (zh) | 一种多节点探测器着陆行为智能规划及决策方法 | |
Kose et al. | Simultaneous design of morphing hexarotor and autopilot system by using deep neural network and SPSA | |
CN116088311A (zh) | 基于自适应神经网络扩张状态观测器的无人直升机二阶不确定滑模控制方法 | |
CN114237268A (zh) | 一种基于深度强化学习的无人机强鲁棒姿态控制方法 | |
Wu et al. | Improved reinforcement learning using stability augmentation with application to quadrotor attitude control | |
CN115981149B (zh) | 基于安全强化学习的高超声速飞行器最优控制方法 | |
CN117289709A (zh) | 基于深度强化学习的高超声速变外形飞行器姿态控制方法 | |
Zhou et al. | Launch vehicle adaptive flight control with incremental model based heuristic dynamic programming | |
Li et al. | Autopilot controller of fixed-wing planes based on curriculum reinforcement learning scheduled by adaptive learning curve | |
Shi et al. | Leader-Follower Formation Control for Fixed-Wing UAVs using Deep Reinforcement Learning | |
d’Apolito et al. | Flight control of a multicopter using reinforcement learning | |
Abouheaf et al. | An online reinforcement learning wing-tracking mechanism for flexible wing aircraft |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |