计算机系统应用  2024, Vol. 33 Issue (12): 185-196   PDF    
基于深度强化学习的四旋翼无人机抗扰控制
徐博洋, 时宏伟     
四川大学 计算机学院, 成都 610065
摘要:随着无人机应用需求不断拓展, 为了保证无人机能够按要求完成预定任务, 抗干扰控制器的设计受到了诸多关注. 目前广泛使用的传统控制算法稳定性较好但抗干扰能力较差. 针对上述问题, 提出了一种基于改进双延迟深度确定性策略梯度(TD3)算法的混合抗干扰控制器, 该方法使用非线性模型预测控制(NMPC)作为基础控制器, 并引入了一个基于改进TD3的干扰补偿器进行混合控制. 该方法结合了NMPC控制器的优点的同时解决了传统控制算法在抗干扰方面的不足. 本文将多头注意力机制(MA)以及长短期记忆网络(LSTM)引入TD3的Actor网络中, 提高了TD3对于空间管理信息以及时间关联信息的捕捉能力, 同时引入一种连续型对数奖励函数来提高训练稳定性和收敛速度, 并使用带随机干扰的随机任务场景进行训练以提高模型泛化性. 在实验中将NMPC-MALSTM-TD3架构与使用DDPG、SAC、TD3、PPO算法作为干扰补偿器的架构进行对比, 实验结果表明, NMPC-MALSTM-TD3架构的综合表现最好, 而且对NMPC的稳定性和实时性影响较小.
关键词: 深度强化学习    非线性模型预测控制    TD3    多头注意力    LSTM    
Disturbance Rejection Control of Quadrotor UAVs Based on Deep Reinforcement Learning
XU Bo-Yang, SHI Hong-Wei     
College of Computer Science, Sichuan University, Chengdu 610065, China
Abstract: As the demand for unmanned aerial vehicle (UAV) applications continues to expand, the design of disturbance rejection controllers which aim to ensure that UAVs can complete designated tasks as required has received significant attention. Traditional control algorithms widely used currently exhibit good stability but poor disturbance rejection capability. To address this issue, a hybrid disturbance rejection controller based on an improved twin delayed deep deterministic (TD3) policy gradient algorithm is proposed. This method utilizes nonlinear model predictive control (NMPC) as the base controller and introduces a disturbance compensator based on improved TD3 for hybrid control. This approach combines the advantages of the NMPC controller as well as addresses the shortcomings in disturbance rejection of traditional control algorithms. This study introduces a multi-head attention (MA) mechanism and long short-term memory (LSTM) network into the Actor network of TD3, enhancing TD3’s ability to capture spatial management information and temporal correlation information. Additionally, a continuous logarithmic reward function is introduced to improve training stability and convergence speed, and training is conducted using random task scenarios with random disturbances to enhance model generalization. In experiments, the NMPC-MALSTM-TD3 architecture is compared with architectures using DDPG, SAC, TD3, and PPO algorithms as disturbance compensators. Experimental results demonstrate that the NMPC-MALSTM-TD3 architecture exhibits the most excellent disturbance rejection capabilities and a smaller influence on the stability and real-time performance of NMPC.
Key words: deep reinforcement learning     nonlinear model predictive control     TD3     multi-head attention     LSTM    

多旋翼无人机以其轻便、体积小、机动性强、起降方便以及能够实现空中悬停和低空稳定飞行的优点, 已经被广泛应用于航拍摄影、物流、资源勘探等领域[1,2]. 其中, 四旋翼无人机作为一种最常见的多旋翼无人机, 由于其系统的非线性和强耦合特性, 设计一种可靠、稳定而高效的控制算法具有一定的挑战性.

随着无人机应用需求的不断扩展, 保证无人机能够完成预期飞行任务的重要性不言而喻. 为此, 越来越多的研究者正致力于开发鲁棒的无人机控制器. 目前, 已经有多种高效且可靠的控制算法被提出, 包括模型预测控制(MPC)、自适应控制、比例-积分-微分(PID)控制和反步法等. 其中, 模型预测控制尤其适用于处理多变量、多约束的非线性系统控制问题, 将非线性系统引入模型预测控制就得到了非线性模型预测控制(NMPC). 并且相比于其他算法, MPC在控制中能直接考虑输入、输出和状态的约束, 并能通过使用预测模型及优化算法来预测和优化未来一段时间内的控制策略, 从而实现更精确和稳定的控制. 此外, 一些高性能计算包的出现让MPC的计算速度得到了极大的提升, 保证了其实时性. 传统控制算法已然较好地完成了无人机的控制任务, 但是在一些强干扰的场景中, 传统控制算法无法做出及时响应, 这就导致在某些情况下, 传统控制算法可能会极大地偏离任务轨迹导致任务出现差错.

强化学习作为机器学习中的核心领域之一, 已经被广泛应用在各种领域当中. 在无人机控制领域中, 其也被广泛作为无人机控制方法或抗干扰算法的一部分来使用, 文献[3]设计了一种基于风源视觉特征的迁移强化学习四旋翼无人机前馈补偿器来抵抗风扰, 文献[4]设计了一种基于深度强化学习的前馈补偿器来抵抗四旋翼无人机近距离交叉飞行时所产生的剪切气流造成的突然干扰, 文献[5]设计了一种基于强化学习且支持高动态控制的四旋翼无人机控制方法, 该方法对扰动的抵抗效果较传统控制算法更好, 文献[6]设计了一种带干扰探测和补偿的强化学习控制器. 上述文献中直接利用强化学习算法作为控制方案的不确定性较大, 在未知任务下的表现可能会出现较大偏差, 相比之下, 一些传统控制算法虽然抗干扰能力可能不及强化学习算法, 但在未知任务下的稳定性要优于强化学习算法. 另外, 上述文献中提出的强化学习抗干扰补偿器均存在一定的场景限制, 不能广泛地应用在不同的任务场景下.

鉴于此, 本文采用非线性模型预测控制方法作为基础控制器, 以保证每个场景任务下的控制稳定性, 同时引入一个深度强化学习干扰补偿器来抵消不同场景下的干扰, 从而保证在干扰场景下的稳定运行. 同时, 本文将多头注意力机制(MA)以及长短期记忆网络(long short-term memory, LSTM)引入TD3算法的Actor网络当中, 提出了一种基于MALSTM的改进TD3算法作为干扰补偿器, 提高了模型处理空间以及时间信息的能力. 此外, 本文还提出了一种带边界的可控尺度连续型对数奖励函数, 以提高模型的收敛速度和训练稳定性, 并利用带随机干扰的随机空间训练策略来保证模型的泛化性. 实验结果表明, 本文提出的改进模型能够有效地对不同场景下的随机干扰进行抵抗, 并且对传统控制算法的实时性和稳定性影响较小.

1 四旋翼无人机建模

四旋翼无人机是一个欠驱动、非线性、高耦合的系统, 其包含XYZ轴平移运动以及滚转(roll)、俯仰(pitch)和偏航(yaw)这3个旋转运动, 共6个自由度[7], 但只能依靠其自身的4个螺旋桨转动产生的推力来进行位置和姿态控制, 建立四旋翼无人机动力学模型之前, 需要建立描述模型所需的无人机结构和坐标系, 具体结构如图1所示.

图 1 四旋翼无人机模型

图1中$ {O_E} \text{-}{X_E}{Y_E}{Z_E} $代表惯性(地球)坐标系, $ {O_B} \text{-} {X_B}{Y_B}{Z_B} $代表机体坐标系, 机体坐标系与无人机臂成$ 45^\circ $夹角. 建立动力学模型时将四旋翼无人机视为一个刚体, 且假设其几何中心处位于其重心, 为了计算方便同时忽略空气阻力. 在建立模型以及后续姿态解算时采用四元数的方式进行姿态表示, 其避免了使用欧拉角表示时可能产生的万向锁等问题[8]. 四元数被定义为一个超复数, 其由1个标量$ {q_0} $和3个矢量$ {q_{1:3}} = {\left[ {\begin{array}{*{20}{c}} {{q_1}}&{{q_2}}&{{q_3}} \end{array}} \right]^{\mathrm{T}}} $构成[9], 因此它可以被表示为:

$ q = {\left[ {\begin{array}{*{20}{c}} {{q_0}}&{{q_1}}&{{q_2}}&{{q_3}} \end{array}} \right]^{\mathrm{T}}} $ (1)

四旋翼无人机4个螺旋桨推力差异会产生扭矩. 当需要改变姿态时, 通过改变不同螺旋桨的转速, 使各旋翼产生不同的推力, 从而产生扭矩, 改变无人机的姿态. 这里绕机体坐标系的扭矩$ {\tau _x} $$ {\tau _y} $$ {\tau _{\textit{z}}} $表示为:

$ {\tau _x} = l\cos \left(\frac{\text{π} }{4}\right) \cdot ({u_2} + {u_3} - {u_1} - {u_4}){F_{m} } $ (2)
$ {\tau _y} = l\cos \left(\frac{\text{π} }{4}\right) \cdot ({u_3} + {u_4} - {u_1} - {u_2}){F_{m} } $ (3)
$ {\tau _{\textit{z}}} = c({u_2} + {u_4} - {u_1} - {u_3}){F_{m} } $ (4)

其中, $ l $表示螺旋桨电机中心到无人机重心的距离, $ c $表示扭矩系数, $ {F_{m} } $表示单螺旋桨电机的最大推力, $ {u_i}\;( i = 1, 2, 3, 4 ) $表示每个螺旋桨电机的激活水平, $ {u_i} \in [0, 1] $, 其与最大推力的乘积为对应电机产生的推力$ {F_i} ={u_i}{F_m} $.

利用Newton-Euler法建立四旋翼无人机的动力学方程时, 在表示速度动力学方程时会用到从机体坐标系到惯性坐标系下的正交旋转矩阵$ R_{\mathrm{B}}^{\mathrm{E}} $, 此外, 在表示四元数动力方程时还会用到角速度矩阵$ {R_\omega } $, 基于四元数姿态表示下的正交旋转矩阵以及角速度矩阵表示如下:

$ R_{\mathrm{B}}^{\mathrm{E}} = \left[ {\begin{array}{*{20}{c}} {1 - 2q_2^2 - 2q_3^2}&{2{q_1}{q_2} - 2{q_0}{q_3}}&{2{q_1}{q_3} + 2{q_0}{q_2}} \\ {2{q_1}{q_2} + 2{q_0}{q_3}}&{1 - 2q_1^2 - 2q_3^2}&{2{q_2}{q_3} - 2{q_0}{q_1}} \\ {2{q_1}{q_3} - 2{q_0}{q_2}}&{2{q_2}{q_3} + 2{q_0}{q_1}}&{1 - 2q_1^2 - 2q_2^2} \end{array}} \right] $ (5)
$ {R_\omega } = \left[ {\begin{array}{*{20}{c}} 0&{ - {\omega _x}}&{ - {\omega _y}}&{ - {\omega _{\textit{z}}}} \\ {{\omega _x}}&0&{{\omega _{\textit{z}}}}&{ - {\omega _y}} \\ {{\omega _y}}&{ - {\omega _{\textit{z}}}}&0&{{\omega _x}} \\ {{\omega _{\textit{z}}}}&{{\omega _y}}&{ - {\omega _x}}&0 \end{array}} \right] $ (6)

其中, $ {\omega _x} $$ {\omega _y} $$ {\omega _{\textit{z}}} $分别表示机体坐标系下无人机绕$ x $$ y $$ {\textit{z}} $轴的角速度. 基于上述公式, 利用Newton-Euler法建立的非线性四旋翼无人机动力学方程表示如式(7)所示.

$ \left\{ \begin{gathered} \dot p = v \\ \dot q = \frac{1}{2}{R_\omega }q \\ \dot v = R_{\mathrm{B}}^{\mathrm{E}}a - {\boldsymbol{g}} \\ {{\dot \omega }_x} = \frac{1}{{{J_x}}}\left( {{\tau _x} + ({J_y} - {J_{\textit{z}}}){\omega _y}{\omega _{\textit{z}}}} \right) \\ {{\dot \omega }_y} = \frac{1}{{{J_y}}}\left( {{\tau _y} + ({J_\textit{z}} - {J_x}){\omega _{\textit{z}}}{\omega _x}} \right) \\ {{\dot \omega }_{\textit{z}}} = \frac{1}{{{J_\textit{z}}}}\left( {{\tau _{\textit{z}}} + ({J_x} - {J_y}){\omega _x}{\omega _y}} \right) \\ \end{gathered} \right. $ (7)

其中, $ p = {\left( {x, y, {\textit{z}}} \right)^{\mathrm{T}}} $表示无人机在惯性系下的位置, $ v = {\left( {{v_x}, {v_y}, {v_{\textit{z}}}} \right)^{\mathrm{T}}} $表示无人机在惯性系下的速度, $ {J_x},\; {J_y},\; {J_{\textit{z}}} $分别表示无人机绕机体系$ x, y, {\textit{z}} $轴的转动惯量. $ a $为机体系下的无人机加速度向量, $ {\boldsymbol{g}} $为地球坐标系下的重力加速度向量, 具体表示如式(8)、式(9)所示, 其中$ m $表示无人机质量, $ {\mathrm{g}} $表示重力加速度.

$ a = {\left[ {\begin{array}{*{20}{c}} 0&0&{\dfrac{1}{m}\displaystyle\sum {{F_i}} } \end{array}} \right]^{\mathrm{T}}} $ (8)
$ {\boldsymbol{g}} = {\left[ {\begin{array}{*{20}{c}} 0&0&{\mathrm{g}} \end{array}} \right]^{\mathrm{T}}} $ (9)
2 NMPC控制器设计

NMPC是一种先进的反馈控制策略, 它基于动态优化反馈控制策略. 该策略的整体性能主要取决于系统模型的准确性. NMPC通过优化模型在有限时间域内的行为来计算当前最佳控制输入. 最优系统行为的预测来自开环在线优化, NMPC将其形式化为受约束的有限范围内最优控制问题(OCP) [10].

2.1 离散时间非线性系统

在非线性模型预测控制中需要建立离散时间非线性系统模型, 一般的非线性状态空间方程可以表示为:

$ \left\{ \begin{gathered} \dot X = f\left( {X\left( t \right), U\left( t \right)} \right) \\ Y\left( t \right) = X\left( t \right) \\ \end{gathered} \right. $ (10)

其中, $ X $表示系统状态变量, $ U $表示系统控制输入, $ Y $表示系统输出变量. 在本文中系统状态$ X $定义为13个相关物理量, 系统控制输入$ U $定义为4个螺旋桨的激活程度, $ \dot X = f\left( {X\left( t \right), U\left( t \right)} \right) $定义为基于式(7)的状态空间方程, 其中系统状态$ X $表示如下:

$ \begin{split} X =& \left[ {\begin{array}{*{20}{c}} x&y&{\textit{z}}&{{q_0}}&{{q_1}}&{{q_2}}&{{q_3}} \end{array}} \right. \\ & {\left. {\begin{array}{*{20}{c}} {{v_x}}&{{v_y}}&{{v_{\textit{z}}}}&{{\omega _x}}&{{\omega _y}}&{{\omega _{\textit{z}}}} \end{array}} \right]^{\mathrm{T}}} \end{split} $ (11)

为了方便将上述非线性状态空间方程应用到计算机当中进行计算, 需要将上述非线性状态空间方程转化为离散时间非线性系统模型, 设定采样时间$ \Delta t $, $ k + 1 $时刻的系统状态可以表示为:

$ \left\{ \begin{gathered} {X_{k + 1}} = {X_k} + \Delta t \cdot f\left( {{X_k}, {U_k}} \right) \\ {Y_k} = {X_k} \\ \end{gathered} \right. $ (12)

以位置状态空间方程为例, 在采样时间$ \Delta t $的条件下, $ t $时刻对应下一采样时间的位置状态转移方程可以表示为:

$ \left\{ \begin{gathered} x(t + \Delta t) = x(t) + \Delta t \cdot {v_x}(t) \\ y(t + \Delta t) = y(t) + \Delta t \cdot {v_y}(t) \\ {\textit{z}}(t + \Delta t) = {\textit{z}}(t) + \Delta t \cdot {v_{\textit{z}}}(t) \\ {v_x}(t + \Delta t) = {v_x}(t) + \Delta t \cdot \dot v(t) \\ {v_y}(t + \Delta t) = {v_y}(t) + \Delta t \cdot \dot v(t) \\ {v_{\textit{z}}}(t + \Delta t) = {v_{\textit{z}}}(t) + \Delta t \cdot \dot v(t) \\ \end{gathered} \right. $ (13)
2.2 最优控制问题

作为基础控制方法, 非线性模型预测控制仅以期望轨迹跟踪为目的而不涉及其他任务, 为此, 简化NMPC的控制约束, 参考MPC标准形式, 以不带终端误差约束的系统状态约束以及控制输入界限约束为基础, 构建第$ k $个采样时间下的最优控制问题以求得系统控制输入:

$\left\{\begin{split} & \min \frac{1}{2}\sum\limits_{i = 1}^N {|{{\tilde Y}_{k + i}} - {{\bar Y}_{k + i}}|_{{Q_t}}^2} + \left| {{U_{k + i - 1}}} \right|_{{Q_r}}^2 \\ & {\mathrm{s.t.}}\left\{\begin{array}{l}{X_{k + 1}} = {X_k} + \Delta t \cdot f\left( {{X_k}, {U_k}} \right) \\ {Y_k} = {X_k} \\ {X_0} = {X_{\rm init}} \\ {u_{\min }} \leqslant u \leqslant {u_{\max }} \end{array}\right. \end{split} \right.$ (14)

其中, $ {\tilde Y_k} $表示第$ k $个采样时间下的预测状态, $ {\bar Y_k} $表示第$ k $个采样时间下的期望状态, $ {Q_t} $表示系统状态误差加权矩阵, $ {Q_r} $表示控制输入加权矩阵, $ {X_{\rm init}} $表示控制开始时刻初始系统状态, $ {u_{\max }}, {u_{\min }} $分别表示控制输入的上下限, $ N $表示预测时域长度.

为了满足实时性要求, 针对上述最优控制问题, 利用CasADi[11]和ACADOS[12]进行求解, 其主要思路是首先利用多重打靶法将最优控制问题转化为非线性二次规划问题, 再利用实时迭代(real time iteration, RTI)策略下的序列二次规划(sequential quadratic programming, SQP)进行求解[13]. 上述最优控制问题求解后得到控制量序列, 取第1个序列作为四旋翼无人机的控制量.

在ACADOS框架下, 为了高效求解MPC问题中的二次规划问题, 本文选择使用其提供的内点法求解器HPIPM[14]进行求解, HPIPM对于实时性要求较高的场景非常适用, 并且在应用HPIPM时采用全局缩减策略, 使HPIPM处理大规模问题时能够显著减少问题的维度, 从而提高求解速度; Hessian矩阵的近似方法采用Gauss-Newton近似, 其简化了Hessian矩阵的计算, 减少了计算负担的同时也保持了优化问题的求解精度; 此外, 采用四阶龙格库塔方法对系统方程进行数值积分, 来模拟从当前时刻到未来某一时刻系统的状态变化.

3 基于改进TD3的深度强化学习补偿器

在非线性模型预测控制中, 当遇到强干扰时NMPC控制器无法及时作出反应, 为了对抗干扰的同时不影响NMPC控制器的实时性, 一种基于改进TD3的端到端控制补偿器被提出. 该补偿器基于当前场景的领航机状态以及被控机状态得到四旋翼无人机的基础控制量补偿$ \Delta {u_i} $, 其本质是为了让被控机状态尽量贴近领航机状态从而达到抗干扰的效果, 这里的领航机状态集可以是领航机在该场景下任意一次平稳控制的预置状态集.

3.1 强化学习基础

一个标准强化学习问题可以被抽象为一个马尔可夫决策过程(Markov decision process, MDP). 马尔可夫决策过程由元组$ \left( {S, A, P, r, \gamma } \right) $组成, 其中$ S $代表智能体的状态空间集合、$ A $代表智能体能采取的动作集合、$ \gamma $代表折扣因子、$ r $代表一个奖励函数、$ P $代表一个状态转移函数. $ \gamma \in [0, 1) $代表未来奖励占比, 决定了未来奖励对于当前决策的影响大小, $ r\left( {s, a} \right) $表示在状态$ s $下采取动作$ a $所产生的奖励, $ P\left( {s'\mid s, a} \right) $表示在状态$ s $下采取动作$ a $之后状态转移至$ s' $的概率. 基于折扣因子, 定义马尔可夫决策过程中的回报$ {G_t} $为从第$ t $时刻的状态$ {S_t} $到终止状态期间的所有折扣奖励之和, 表示为:

$ {G_t} = {R_t} + \gamma {R_{t + 1}} + {\gamma ^2}{R_{t + 2}} + \cdots = \sum\limits_{k = 0} {{\gamma ^k}{R_{t + k}}} $ (15)

智能体的策略(policy)通常是一个函数$ \pi \left( {a\mid s} \right) $, 其被定义为某一状态$ s $下采取某一动作$ a $的概率. 当一个策略是确定性策略 (deterministic policy) 时, 其在处于某个状态下时只会输出某一个确定性动作, 即在该状态下采取该动作的概率为1. 策略函数一般被表示为:

$ \pi \left( {a\mid s} \right) = P\left( {{A_t} = a\mid{S_t} = s} \right) $ (16)

在强化学习中, 定义状态价值函数(state-value function)和动作价值函数(action-value function)来评估当前所处状态$ s $的好坏以及处于某一状态$ s $下采取某一动作$ a $的好坏. 状态价值函数$ {V_\pi }\left( s \right) $被定义为在状态$ s $下遵循策略$ \pi $所得到的期望回报, 动作价值函数$ {Q^\pi }\left( {s, a} \right) $被定义为基于策略$ \pi $时在状态$ s $下执行动作$ a $所得到的期望回报, 它们分别表示为:

$ {V_\pi }\left( s \right) = {\mathbb{E}_\pi }\left[ {{G_t}\mid{S_t} = s} \right] $ (17)
$ {Q^\pi }\left( {s, a} \right) = {\mathbb{E}_\pi }\left[ {{G_t}\mid{S_t} = s, {A_t} = a} \right] $ (18)

强化学习的目的是找到期望累计奖励最大时的最优控制策略[15], 为了实现该目的, 在一些强化学习方法, 例如在采用Actor-Critic (AC)架构的算法中, 利用神经网络拟合一个Critic网络作为$ Q $函数并利用神经网络拟合一个Actor网络作为策略函数$ \pi $. 其中Critic提供当前策略下所采取动作的长期期望价值估计, 而Actor直接与环境交互并根据反馈调整策略. Actor无法直接获得每个动作所产生的长期影响, 故Critic提供的期望价值估计可以指导Actor向更有利的动作选择方向更新策略, Actor通过最大化$ Q $值来更新策略, 从而间接地最大化长期回报.

3.2 双延迟深度确定性策略梯度(TD3)算法

深度确定性策略梯度(deep deterministic policy gradient, DDPG) [16]算法是DeepMind于2016年提出的一种深度强化学习算法, 该算法结合了深度神经网络和确定性策略梯度方法, 可以被用于解决高维、连续动作空间下的控制问题, 但该算法学习过程中稳定性不佳且存在高估的问题. 在此基础上Fujimoto等人于2018年提出了双延迟深度确定性策略梯度算法(twin delay DDPG, TD3) [17], 旨在改进DDPG算法中存在的高估等问题.

TD3算法是一种Actor-Critic (AC)架构的强化学习算法, 其中包含了一个目标Actor、两个目标Critic网络以及一个Actor、两个Critic主网络, 引入目标网络是为了减少训练中的不稳定性, 相较于DDPG额外引入了一个Critic网络以解决高估的问题. TD3首先从经验回放池中取出批次样本$ \left( {{s_i}, {a_i}, {r_i}, {s_{i + 1}}} \right) $, 并利用目标Actor网络$ {\pi _{\phi '}} $选取下一状态采取的动作$ {\tilde a_{i + 1}} $, TD3额外加入了一个随机噪声平滑$ \varepsilon $以减少价值函数的过度估计:

$ {\tilde a_{i + 1}} = {\pi _{\phi '}}\left( {{s_{i + 1}}} \right) $ (19)
$ {\tilde a_{i + 1}} = {\tilde a_{i + 1}} + \varepsilon ,\;\; \varepsilon \sim clip\left( {{N}(0, \sigma ), - c, c} \right) $ (20)

TD3在基于时序差分法(temporal difference, TD)计算目标$ Q $值时, 选取通过Critic网络计算得到的值中较小的一个进行计算, 以避免高估的问题, 并利用MSE损失基于梯度下降法对主Critic网络参数$ {\theta _j}\;( j = 1, 2 ) $进行更新:

$ y = {r_i} + \gamma {\mathop{\mathrm{min}} \limits_{j = 1, 2}}{Q_{\theta' _j}}\left( {{s_{i + 1}}, {{\tilde a}_{i + 1}}} \right) $ (21)
$ {\theta _j} \leftarrow {\mathop{\arg\min}\limits_{{\theta _j}}}{N^{ - 1}}\sum {{{\left( {y - {Q_{{\theta _j}}}\left( {{s_i}, {a_i}} \right)} \right)}^2}} $ (22)

为了进一步减少$ Q $值的估计偏差, 同时保证学习的稳定性, TD3在主Critic网络更新更新多次之后, 才更新一次主Actor和Critic网络. 其中Actor网络根据确定性策略梯度来延迟更新网络参数$ \phi $:

$ {\nabla _\phi }J(\phi ) = \frac{1}{N}\sum {{\nabla _a}} {Q_{{\theta _1}}}({s_i}, a)\left| {a = {\pi _\phi }({s_i})} \right.{\nabla _\phi }{\pi _\phi }({s_i}) $ (23)

Critic网络基于一个目标平滑系数$ \tau \in \left( {0, 1} \right) $来延迟更新网络参数$ \theta' _j\;\left( {j = 1, 2} \right) $:

$ \left\{ \begin{gathered} \theta' _j \leftarrow \tau {\theta _j} + \left( {1 - \tau } \right)\theta' _j \\ \phi' _j \leftarrow \tau {\phi _j} + \left( {1 - \tau } \right)\phi' _j \\ \end{gathered} \right. $ (24)
3.3 状态、动作空间

该问题下的状态$ S $被定义为领航机状态$ {S_l} $与被控机状态$ {S_c} $的组合, 共包含24个特征值:

$ S = \left( {{S_l}}\;\;\;\;\;{{S_c}} \right) \in {{{R}}^{24}} $ (25)

另外, 在整个强化学习框架中, 四旋翼无人机的姿态表示被转换为基于欧拉角的表示, 状态$ S $可以被具体表示为基于领航机的位置$ {p_l} $、欧拉角$ {\Theta _l} $、速度$ {v_l} $、角速度$ {\Omega _l} $以及被控机的位置$ {p_c} $、欧拉角$ {\Theta _c} $、速度$ {v_c} $、角速度$ {\Omega _c} $所组成的集合:

$ S = \left\{ {{p_l}, {\Theta _l}, {v_l}, {\Omega _l}, {p_c}, {\Theta _c}, {v_c}, {\Omega _c}} \right\} $ (26)

动作空间为螺旋桨电机激活程度的补偿量, 表示为:

$ a = \left[ {\Delta {u_1}, \Delta {u_2}, \Delta {u_3}, \Delta {u_4}} \right] $ (27)

其中, $ \Delta {u_i} \in \left[ {{{ - 1} \mathord{\left/ {\vphantom {{ - 1} 5}} \right. } 5}, {1 \mathord{\left/ {\vphantom {1 5}} \right. } 5}} \right]\left( {i = 1, 2, 3, 4} \right) $表示4个电机的激活程度补偿量, 四旋翼无人机的最终控制量可表示为:

$ {u_i} = {u_i} + \Delta {u_i} $ (28)
3.4 奖励设计

奖励设计在强化学习任务中起到至关重要的作用, 奖励设计的好坏直接决定了强化学习的训练结果. 为了提高模型的稳定性和收敛速度, 提出一种带边界的可控尺度连续型对数奖励函数, 该奖励函数可以设置每个物理量的奖励边界, 奖励边界可以将每个物理量的误差映射到统一的尺度上. 每项奖励$ {r_i}\;\left( {i = 1, 2, 3, 4} \right) $以领航机与被控机之间的状态误差为基础建立, 共包含两机的位置、欧拉角、速度以及角速度误差, 它们对应的奖励边界分别为$ 0.01 $$ \ln ({\text{π} \mathord{\left/ \right. } {12}} )$$ 0.05 $$ \ln ({\text{π}\left/\right.} {12}) $, 对应的奖励尺度分别为$ 10 $$ 4 $$ 3 $$ 2 $, 每项奖励具体表示为:

$ {r_i} = \left\{ \begin{gathered} - {\lambda _i}(\ln {d_i} - \ln {b_i}), \;\;\;\;\;\;{d_i} \gt 0 \\ - {\lambda _i}\left( {\ln 0.01 - \ln {b_i}} \right), \;{d_i} = 0 \\ \end{gathered} \right. $ (29)

其中, $ {d_i} $表示领航机与被控机的物理量在某一时刻下的欧氏距离, $ {\lambda _i} $表示对应物理量的奖励尺度, $ {b_i} $表示对应物理量的奖励边界. 最终奖励表示为每项奖励的总和:

$ reward = - \sum\limits_{i = 1}^4 {{\lambda _i}\left( {\ln {d_i} - \ln {b_i}} \right)} $ (30)
3.5 训练场景设计

为了使模型能够得到更多的探索并增加其泛化能力, 训练时, 每局均采用带随机干扰的随机空间场景进行训练, 如图2所示. 另外, 每局领航机状态均使用前文所述的 NMPC控制器在无干扰情况下进行控制后得到. 训练中, 完全随机干扰以5%的概率在训练过程中的每一时间刻随机出现一个固定时间, 固定时间长度为总时长的1/16, 处于干扰阶段时不会触发下一次干扰, 且每一段干扰大小固定但不同, 随机干扰的生成方法表示为$ {u_{\text{k}}} = {u_k} + {\varepsilon _k},\; {\varepsilon _k} \sim U({m_1}, {m_2}) $, 其中$ {u_k} \in \left( {0, 1} \right) \left( {k = 1, 2, 3, 4} \right) $代表四旋翼无人机对应螺旋桨的激活程度, $ {m_1} $$ {m_2} $代表所服从均匀分布的上下限.

另外, 每局采用随机参考轨迹策略时, 起始点在一定范围内使用均匀分布抽样得到, 且每一时刻轨迹点按照某种方式随机生成, 每一时间刻的参考轨迹点生成方法表示为:

$ \Delta s = \frac{{{l_s}}}{M} $ (31)
$ \left\{ \begin{gathered} {x_{i + 1}} = {x_i} + \Delta s \cdot \sin ({\beta _i}) \cdot \cos (\beta' _i),\; i \gt 0 \\ {y_{i + 1}} = {y_i} + \Delta s \cdot \sin ({\beta _i}) \cdot \sin (\beta' _i),\;\; i \gt 0 \\ {{\textit{z}}_{i + 1}} = {{\textit{z}}_i} + \Delta s \cdot \cos ({\beta _i}),\qquad\quad \;\;i \gt 0 \\ {x_0} \sim U({x_{\min }}, {x_{\max }}) \\ {y_0} \sim U({y_{\min }}, {y_{\max }}) \\ {{\textit{z}}_0} \sim U({{\textit{z}}_{\min }}, {{\textit{z}}_{\max }}) \\ \end{gathered} \right. $ (32)

其中, $\; \beta $代表极角, 用来控制关于$ {\textit{z}} $轴的倾斜程度, $ \;\beta ' $代表方位角, 用来控制$ xoy $平面的偏转程度, $ \Delta s $代表单位时间下的行走距离, $ {l_s} $代表路径总长度, $ M $代表单局训练的总步数. 另外, 对于每一时间刻, $ \;{\beta _i} $$ \beta'_i $满足下面的均匀分布, 其中$ n $代表随机程度:

$ \left\{ \begin{gathered} \beta' _i\sim {{U}}( - n, n), \;i \ne 0 \\ {\beta _i}\sim {{U}}( - n, n), \;i \ne 0 \\ \beta' _0\sim {{U}}(0, 2\pi ), \;i = 0 \\ {\beta _0}\sim {{U}}(0, \pi ), \;\;\;i = 0 \\ \end{gathered} \right. $ (33)
图 2 训练任务场景示例

3.6 MALSTM-TD3补偿器

TD3的Actor网络输入中包含领航机和被控机的位置、欧拉角、速度以及角速度, 为了使模型能够更加充分地学习不同物理量之间以及领航机与被控机之间的关系, 引入多头注意力机制(multi-head attention, MA)进行处理. 多头注意力机制能够处理多个序列, 从而发掘不同序列之间的相互关系. 此外, 它还能关注每个序列中不同位置的信息, 进而揭示序列内部的结构性关联. 多头注意力机制通过将注意力分解为多个“头”, 使得每个头可以独立学习序列的不同特征表达, 这种分解方式允许模型在处理信息时获得更为丰富的上下文信息, 从而改善对信息的整体理解. 另外, 在无人机控制过程中, 存在显著的时间关联性, 为了有效捕获这种时间依赖性, 引入长短期记忆网络(long short-term memory, LSTM), LSTM是一种专门用于处理和记忆时间序列数据中的长期依赖关系的循环神经网络.

对于每一时间刻下的状态$ {S_t} $, 在进行多头注意力机制处理前, 需要将原始输入$ S =( {{S_l}}\;\;\;\;{{S_c}} ) \in {R^{24}} $按领航机与被控机的状态分组为位置$ p = ({{p_l}}\;\;\;\;{{p_c}}) $、欧拉角$ \Theta = ({{\Theta _l}}\;\;\;\;{{\Theta _c}}) $、速度$ v = ({{v_l}}\;\;\;\;{{v_c}}) $以及角速度$ \Omega = ({{\Omega _l}}\;\;\;\;{{\Omega _c}}) $这4个1×6的输入向量, 并将它们分别输入不同的全连接层映射到高维特征空间. 之后, 将4个全连接层的1×128输出按照不同的特征序列组合为1×4×128的输入向量输入到多头注意力机制中, 并利用多头注意力机制提取相关空间特征, 本文所使用的的多头注意力机制包含4个注意力头. 随后, 将多头注意力产生的1×4×128输出向量输入LSTM中, 利用LSTM处理4种特征的前后关联时间序列信息, 进一步优化对动态环境的理解和预测能力. 最后, 将通过LSTM得到的1×256的特征向量通过两层全连接层进一步提取特征后转换为网络输出. 多头注意力机制与LSTM进行融合, 能够让网络从输入状态中捕捉到训练前后时间刻中复杂的空间和时间关系. 引入多头注意力机制以及LSTM后的Actor网络架构如图3所示.

图 3 MALSTM-Actor网络架构

3.7 整体架构

NMPC-MALSTM-TD3控制器的整体架构如图4所示, 图中白色虚线框中的架构为引入MALSTM后的TD3算法单步训练过程, 详细原理见第3.2节所示, 其中策略函数与目标策略函数均被替换为MALSTM-Actor网络架构, 领航机$ t + 1 $时刻的状态被用于生成一个经验回放池的Transition. 图中灰色虚线框内为具体应用架构, 其中包含一个基础NMPC控制器、一个训练得到的稳定MALSTM策略网络以及一个基于当前场景的预置领航机状态集. $ {p_{\rm ref}} $表示任务参考轨迹集合, 其大小与预测控制时域长度相同. 另外, 需要注意的是, 在应用架构中, 领航机状态集仅提供$ t $时刻的状态$ {s_l} $. 在实际应用中, 非线性模型预测控制器根据参考轨迹集合得到一个基础控制量$ u $, 然后再利用MALSTM-TD3补偿器根据当前时刻的被控机与领航机状态生成一个补偿量$ a $, 最终两者求和可得到四旋翼无人机的最终控制量$ u $.

4 仿真实验与分析 4.1 仿真实验配置

本文利用不同的强化学习方法在相同场景下进行了训练, 包括TD3、DDPG、SAC、PPO, 以及本文提出的MALSTM-TD3, 对比了它们的效果和差异, 并在不同场景下测试了基于TD3、DDPG、SAC、MALSTM-TD3的模型稳定性以及抗干扰效果, 同时测试了引入MALSTM-TD3给系统带来的实时性影响. 本文所采用的仿真平台基于Windows WSL2创建的Ubuntu 22.04.4LTS系统下的3.8版本Python环境, CUDA版本为12.4, PyTorch版本为12.1, ACADOS计算平台版本为0.3.0, CasADi版本3.6.4; 硬件运行环境采用AMD平台R7-5800H处理器, 32 GB内存, NVIDIA RTX3070 Laptop GPU. 仿真实验中NMPC的采样时间为0.05 s, 仿真时间为10 s, 预测时域长度为10, 系统状态误差权重矩阵$ {Q_t} $和控制输入权重矩阵$ {Q_r} $表示为:

$ \begin{split} {Q_t} = &{\text{diag}}\left( {\left[ {\begin{array}{*{20}{c}} {10}&{10}&{10}&{0.1}&{0.1}&{0.1}&{0.1} \end{array}} \right.} \right. \\ & \left. {\left. {\begin{array}{*{20}{c}} {0.05}&{0.05}&{0.05}&{0.05}&{0.05}&{0.05} \end{array}} \right]} \right) \end{split} $ (34)
$ {Q_r} = {\text{diag}}\left( {\left[\begin{array}{*{20}{c}} {0.1}&{0.1}&{0.1}&{0.1} \end{array}\right]} \right) $ (35)

另外, 仿真所使用的强化学习模型参数基本相同, 除MALSTM-TD3以外的模型架构均相同且处于训练任务下的较优水平, 经过实验测试采用4层或以上的全连接层效果较差, 对于该问题采用3层256维全连接层网络架构为较优架构. 仿真实验中四旋翼无人机参数、MALSTM-TD3算法训练参数以及训练场景相关参数分别如表1表2表3所示.

图 4 整体架构图

表 1 四旋翼无人机参数

表 2 MALSTM-TD3算法训练参数

表 3 训练场景参数

4.2 仿真实验结果与分析

本文以不同强化学习方法作为补偿器进行训练, 并对比了它们的奖励趋势初步分析不同模型的优劣, 训练过程中单局奖励为该回合每一采样时间下的奖励总和, 训练得到的奖励如图5所示, 图中阴影部分代表真实奖励变化趋势, 实线代表真实奖励进行移动平均后的平均奖励变化趋势. 相比于TD3和MALSTM-TD3, DDPG、SAC和PPO算法在该场景下的表现较差, DDPG在600局左右奖励出现了大幅下降, SAC整体训练稳定在3000局左右收敛到一个比较差的水平. TD3于2300局左右收敛, MALSTM-TD3于1900局左右收敛, 相较于TD3, MALSTM-TD3奖励数值整体高出TD3约500. MALSTM-TD3相比TD3收敛速度有一定的提高、训练过程更加平稳, TD3与MALSTM-TD3较其他算法的表现更加优秀, 整体收敛于一个较高的水平.

由于PPO算法的效果不佳, 故仅利用上述训练得到的DDPG、TD3、SAC以及MALSTM-TD3模型作为补偿器分别在一个六边形场景下进行测试, 且DDPG采用训练600局时的参数. 在仿真中, 于第7 s左右加入一个$ x $轴正上方向的强干扰, 来测试不同模型的抗干扰能力. 包括单NMPC控制在内的模型在该场景下的表现如图6所示, 不同算法下的控制状态曲线如图7图12所示.

图 5 每局奖励变化

图 6 六边形轨迹任务表现

基于图6分析, 单NMPC控制器下的无人机状态在干扰处均处产生了较大的偏差. 在基于不同补偿器的控制算法下的位置控制表现中, 不同算法下的四旋翼无人机的$ x $轴方向的位置表现如图7所示, 不同算法的表现均比较稳定且在干扰处可以得到较好的抵抗效果, 但是DDPG在非干扰区域会产生一定的偏差; $ y $轴方向位置表现如图8所示, 其没有受到干扰的影响故不存在显著差距, 但DDPG仍然存在一些偏差; $ \textit{z} $轴方向上的位置表现如图9所示, 领航机在原始控制中产生了一些波动, DDPG与SAC在全程上都相较领航机产生了较大的偏离, TD3在第8–16 s中产生了比较大的偏离, 相较之下MALSTM-TD3能够全程都比较稳定的贴合领航机状态飞行, 且在干扰处的抵抗效果较好.

图 7 $ x $轴位置变化曲线

图 8 $ y $轴位置变化曲线

图 9 $ {\textit{z}} $轴位置变化曲线

在基于不同补偿器的控制算法下的姿态控制表现中, 无人机的滚转角姿态表现如图10所示, DDPG在整体表现中出现了较大的偏移, SAC在滚转角控制上的表现整体都较为稳定, TD3在10–13 s间出现了明显的波动, MALSTM-TD3在3 s左右出现了一个明显的抖动但整体状态更加稳定, TD3与MALSTM-TD3在干扰处均有较好的抵抗效果; 无人机的俯仰角姿态表现如图11所示, 在俯仰角的控制表现上不同模型的效果与在滚转角姿态控制的表现较为类似; 无人机的偏航角控制表现如图12所示, 相比之下MALSTM-TD3虽也出现了偏差但较DDPG与TD3更好, 在此场景下SAC的表现最佳, 全程都能够稳定贴合领航机状态飞行.

图 10 滚转角姿态变化曲线

图 11 俯仰角姿态变化曲线

图 12 偏航角姿态变化曲线

另外, 基于不同算法的补偿器在该场景下与领航机的平均状态误差表现如表4所示, 可以看出在主要的位置跟踪任务中除了DDPG以外其他算法的$ x $轴、$ y $轴方向位置的状态差距并不大, 而在$ {\textit{z}} $轴方向的控制上MALSTM-TD3要远远优于其他算法. 在姿态控制表现上, 除DDPG以外其他算法在滚转角和俯仰角上的表现差距并不大, SAC相较其他算法在姿态控制上的表现更好, MALSTM-TD3相较TD3在偏航角的控制表现上优化了一倍. 在主要的位置控制任务上, MALSTM-TD3相较其他算法的表现较好, 但是其在偏航角的控制上较SAC有较大差距, 综合来看, MALSTM-TD3较其他算法的效果更优. 除此之外, 从表4中也可以看出, SAC在该任务上的潜力很大, 尽管在$ {\textit{z}} $轴方向的位置控制较差, 但在其他状态控制上效果较好.

表 4 不同算法在六边形轨迹任务下的平均状态误差

为了确保模型能够被应用在不同的场景中, 将不同模型分别在圆形以及方形轨迹场景下进行测试, 并在其中某段施加一个相同的$ x $轴正上方向的强干扰, 不同模型在圆形轨迹任务下的表现如图13所示, 在方形轨迹任务下的表现如图14所示. 可以看到在不同场景下, NMPC-MALSTM-TD3控制器均可以达到比较好的抗干扰效果, 且稳定性较好, 不会出现较大波动.

图 13 圆形轨迹任务表现

另外, 在基于R7-5800H的单核实验平台下进行实时性测试, 将任务全部放于CPU中进行处理, 分别利用NMPC-MALSTM-TD3与NMPC在六边形轨迹任务下分别进行10局控制任务并记录每局的程序运行时间后进行平均得到平均运行时间, 其中NMPC控制器的平均运行时间为2.11 s, NMPC-MALSTM-TD3控制器的平均运行时间为2.29 s. 根据实验结果, 相比于仿真时长10 s, 该方法能在2 s左右就完成控制决策, 且引入MALSTM-TD3补偿器以后的时间复杂度增加不超过10%, 在本文的实验平台中具有较好的实时性. 然而主流的PC级计算平台并不适用于四旋翼无人机控制这样的移动计算任务, 需要将其与移动计算平台进行对比, 表5为本文的计算平台与近年来主流移动计算平台的单核计算能力的相对分数.

图 14 方形轨迹任务表现

表 5 不同计算平台单核相对测试分数

理论上, 只要程序运行时间不超过仿真时间, 就可以认为计算平台性能足以应对实际场景, 然而计算平台不仅承担控制计算, 可能还承担其他计算任务, 故这里以运行时间5 s作为计算性能允许的最小值, 那么以上面实验结果为例, 相对测试分数值至少为0.458才满足要求. 而根据表5, 近几年主流移动计算平台的计算性能要远远高于该标准, 理论上本文提出的控制方法可以被应用于实际四旋翼无人机控制领域当中. 事实上, 移动计算平台的计算性能已经能够达到一些主流PC级计算平台的水平, 且算力出现了较大的冗余, 采用一些旧的移动计算平台不仅能够完成相关控制任务, 成本也能够得到控制.

5 结论与展望

本文针对NMPC控制器在抗干扰方面的不足进行了改进, 提出了一种基于深度强化学习的混合抗干扰控制器, 用于解决NMPC控制器在遇到干扰时产生的剧烈波动, 在此基础上对TD3算法进行了改进, 引入了MALSTM-Actor网络, 将多头注意力机制与LSTM进行融合以后加入Actor网络, 提升了模型对于空间和时间信息的表达能力, 并提出了一种带边界的可控尺度连续型对数奖励函数让模型训练稳定性得到一定提升, 同时采用了一种带随机干扰的随机场景训练策略来提升模型的泛化性. 仿真实验结果表明, 基于MALSTM-TD3的补偿器在综合表现上最佳, 特别是在$ {\textit{z}} $轴位置的稳定性方面比较突出, 并且, 基于深度强化学习的端到端补偿器对原控制器的实时性影响较小可以轻易引入并应用在原控制器当中. 本文提出的补偿器效果较好, 理论上可以应用于其他传统控制算法当中, 该想法有待进一步研究验证. 与此同时, 该模型也存在一些不足, 例如应用模型前, 必须要使用领航机在任务场景中进行一次稳定控制, 并得到相应的状态集才可以使用该模型, 未来可以进一步研究无领航机下的抗干扰补偿器, 以使其能够得到更加广泛和灵活的应用.

参考文献
[1]
Chen LL, Liu ZB, Gao HG, et al. Robust adaptive recursive sliding mode attitude control for a quadrotor with unknown disturbances. ISA Transactions, 2022, 122: 114-125. DOI:10.1016/j.isatra.2021.04.046
[2]
Zou X, Liu ZB, Zhao W, et al. Optimal hovering control of a tail-sitter via model-free fast terminal slide mode controller and cuckoo search algorithm. Proceedings of the 2021 International Conference on Unmanned Aircraft Systems (ICUAS). Athens: IEEE, 2021. 978–984.
[3]
Song FL, Li Z, Yu XH. A feedforward quadrotor disturbance rejection method for visually identified gust sources based on transfer reinforcement learning. IEEE Transactions on Aerospace and Electronic Systems, 2023, 59(5): 6612-6623.
[4]
Song FL, Li Z, Yang SC, et al. Anti-disturbance compensation for quadrotor close crossing flight based on deep reinforcement learning. IEEE Transactions on Industrial Electronics, 2023, 70(3): 3013-3023. DOI:10.1109/TIE.2022.3172764
[5]
Li MJ, Cai ZH, Zhao J, et al. Disturbance rejection and high dynamic quadrotor control based on reinforcement learning and supervised learning. Neural Computing and Applications, 2022, 34(13): 11141-11161. DOI:10.1007/s00521-022-07033-7
[6]
Pi CH, Ye WY, Cheng S. Robust quadrotor control through reinforcement learning with disturbance compensation. Applied Sciences, 2021, 11(7): 3257. DOI:10.3390/app11073257
[7]
范文茹, 刘权威, 田栢苓. 基于干扰补偿的四旋翼无人机轨迹跟踪控制. 现代防御技术, 2024, 52(2): 87-93.
[8]
Islam M, Okasha M, Sulaeman E. A model predictive control (MPC) approach on unit quaternion orientation based quadrotor for trajectory tracking. International Journal of Control, Automation and Systems, 2019, 17(11): 2819-2832. DOI:10.1007/s12555-018-0860-9
[9]
Zhang TH, Kahn G, Levine S, et al. Learning deep control policies for autonomous aerial vehicles with MPC-guided policy search. Proceedings of the 2016 IEEE International Conference on Robotics and Automation (ICRA). Stockholm: IEEE, 2016. 528–535.
[10]
刘昊. 基于非线性模型预测控制的无人船路径跟踪方法研究 [硕士学位论文]. 哈尔滨: 哈尔滨工业大学, 2022.
[11]
Andersson JAE, Gillis J, Horn G, et al. CasADi: A software framework for nonlinear optimization and optimal control. Mathematical Programming Computation, 2019, 11(1): 1-36. DOI:10.1007/s12532-018-0139-4
[12]
Verschueren R, Frison G, Kouzoupis D, et al. ACADOS—A modular open-source framework for fast embedded optimal control. Mathematical Programming Computation, 2022, 14(1): 147-183. DOI:10.1007/s12532-021-00208-8
[13]
柳子然, 戴梓健, 岳程斐, 等. 基于高斯混合过程的空间机器人任务空间预测控制方法. 系统工程与电子技术, 2023, 45(11): 3597-3605.
[14]
Frison G, Diehl M. HPIPM: A high-performance quadratic programming framework for model predictive control. IFAC-PapersOnLine, 2020, 53(2): 6563-6569. DOI:10.1016/j.ifacol.2020.12.073
[15]
梁吉, 王立松, 黄昱洲, 等. 基于深度强化学习的四旋翼无人机自主控制方法. 计算机科学, 2023, 50(11A): 220900257. DOI:10.11896/jsjkx.220900257
[16]
Lillicrap TP, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning. arXiv:1509.02971, 2015.
[17]
Fujimoto S, Hoof H, Meger D. Addressing function approximation error in Actor-Critic methods. Proceedings of the 35th International Conference on Machine Learning. Stockholm: PMLR, 2018. 1587–1596.