近似强化学习算法研究综述

2022-04-21 05:11司彦娜普杰信孙力帆
计算机工程与应用 2022年8期
关键词:梯度状态函数

司彦娜,普杰信,孙力帆,2

1.河南科技大学 信息工程学院,河南 洛阳 471023

2.电子科技大学 信息与通信工程学院,成都 611731

2016年3月,来自Google公司的AlphaGo[1]向韩国职业九段棋手、围棋世界冠军李世乭发起挑战,并最终以4∶1的总比分获胜。此次人机大战的胜利,使AlphaGo成为第一个打败围棋职业选手,战胜世界冠军的人工智能程序。同时,其背后的核心算法吸引了社会各界的广泛关注,也引发了全球对高级人工智能的热烈讨论。

简单来说,AlphaGo使用了一种结合了深度学习(deep learning,DL)和强化学习(reinforcement learning,RL)两种机器学习技术的新方法——深度强化学习(deep reinforcement learning,DRL)。其中,前者作为感知部分,用于观察棋盘,从环境中获取状态信息,为智能体的行为选择提供依据;后者作为决策部分,根据当前状态决定落子位置,并基于预期回报评估动作价值。这种“感知+决策”的组合,与人类的学习行为十分接近,被视为人工智能领域有史以来最成功的范式之一,被迅速应用于各种领域。

近年来,得益于计算机技术的发展,深度学习的相关研究已经形成了较为成熟的理论体系,实际应用也非常广泛[2-4]。而强化学习的发展相对较慢,自20世纪80年代以后,逐渐出现在机器学习研究领域中,伴随着AlphaGo的大获全胜,再度引起学界重视,并取得了一定的进展[5-7]。

整体来看,强化学习过程中,没有任何预先给出的标签数据或教师信号,智能体通过与环境的不断交互来获取外部信息,然后根据环境的反馈信号调整自身的行为。这种“trial and error”的学习方式,通过实践累积经验,以达到学习目的,特别适用于缺少先验知识或高度动态化的复杂优化决策问题。因为在智能系统的设计过程中,面对复杂、未知的环境,获得模型参数和教师信号往往比较困难或者根本无法实现,如果智能体具备一定的自主学习能力,就能在缺乏信息和知识的情况下依靠自身继续完成任务。

然而,传统强化学习算法针对有限的离散空间,状态或状态-动作对的有关信息采用表格的形式进行存储和计算,当面对大规模、连续空间任务时,表格型强化学习无法有效求解,离散化处理也可能遭遇维数灾难(curse of dimensionality)。为此,研究人员利用函数逼近思想,对价值函数或策略函数进行近似表达,通过学习逼近器参数间接获得最优策略,形成了近似强化学习方法。并且,其中部分成果在实际应用中取得了优秀的学习表现,例如资源优化调度[8-9]、医学实验[10-11]、机器人控制[12-13]、工业过程控制[14]、金融投资[15]等。

近年来,随着信息技术的进步和机器学习理论的不断完善,近似强化学习研究也得以迅速发展。然而,公开的成果虽然很多,相关的综述却大部分集中在深度强化学习方面,相对比较片面。鉴于此,本文对近似强化学习有关的算法进行较为全面的分类梳理,重点综述基于价值函数、基于策略函数及Actor-Critic三类不同的近似方法。通过对各类算法的分析与比较,指出各类算法的优缺点与适用场合,总结出当前存在的若干问题,为后续研究提供参考,以期进一步提高算法性能,并扩展其在实际问题中的应用。

1 近似强化学习基础

1.1 马尔科夫决策过程

马尔科夫决策过程(Markov decision process,MDP)是序贯决策问题的数学模型,在系统状态具有马尔科夫性质的环境中,用来模拟智能体可能实现的随机策略和奖励。

完整的MDP通常由四元组(S,A,P,R)描述,其中S表示有限的状态集合{s0,s1,…,sT};A表示有限的动作集合{a0,a1,…,an};P表示环境的状态转移概率P(s,a,s′);R表示标量奖励{r0,r1,…,r n}。

在强化学习系统中,智能体是整个系统的学习者和决策者,状态是对环境信息的描述;动作是智能体对环境的反应;奖励是环境对动作的评价。如图1所示,智能体通过观察环境,根据获取的状态信息选择合适的动作;环境接收到动作,做出相应的反馈,同时转移到新的状态;智能体得到环境的奖励,继续调整下一步的动作。

图1 基本强化学习系统Fig.1 Basic reinforcement learning system

智能体和环境在每个时间步相互作用,这种从状态到动作的映射称为策略,用π表示,即:

强化学习的目标是寻找最优行动策略,智能体在学习过程中收到的正反馈越多,也意味着学习到的策略越好。因此,将每一步的奖励值随时间的加权累积和定义为回报(Return),即:

式中,γ表示折扣因子。

通过最大化长期回报Gt,可以获得相应的最佳行动策略。为了更好地描述在状态s处执行策略π时的长期价值,定义此时回报的期望为状态值函数:

同理,遵循策略π,衡量在状态s处执行动作a的价值大小可定义为动作值函数:

根据贝尔曼方程(Bellman equation),可对价值函数作如下分解:

类似地,可以得到动作值函数的贝尔曼方程形式:

一般认为,当价值函数最大时,相应的策略即最优策略。因此,最优状态值函数和最优动作值函数的贝尔曼方程可以分别表示为:

1.2 价值函数估计算法

根据环境模型(状态转移概率)是否已知,价值函数估计可以分为基于模型(model-based)的方法和无模型(model-free)的方法。

当MDP的环境模型已知,值函数可以通过动态规划(dynamic programming,DP)算法计算。当前状态的所有后继状态都可以根据状态转移概率和行为策略计算得到,直到到达终止状态。此时,值函数的计算公式为:

在学习过程中,值函数的更新形式通常记作:

当模型未知时,无法计算全部后继状态,只能利用实验和采样的方式每次获得一个后继状态。蒙塔卡罗算法(Monte-Carlo,MC)算法采用经验平均代替回报的期望来估计当前状态的价值函数。每次实验,从任意状态开始,到终止状态结束,视为一个回合(episode)。每次实验的回报值记为:

经验平均即对多个回合的结果求平均值,经过K个回合的实验以后,状态st处的值函数为:

当K足够大时,状态st处的值函数更新过程可以表示为:

式中,α是学习率。

MC算法中用到回报值,只有在每个回合结束以后才能计算,导致学习速度较慢,效率较低。时序差分(temporal difference,TD)算法结合DP算法中的bootstrapping方法与MC算法中的采样方法,有效克服了这个问题。其值函数更新公式为:

式中,r t+1+γv(st+1)称作TD目标。

根据以上分析,MC算法使用了价值函数的原始定义,利用回报值估算价值函数;DP算法和TD算法则利用bootstrapping方法对当前值函数进行一步预测。不同的是,DP算法针对模型已知的问题,直接利用状态转移概率计算后继状态,而TD算法使用实验采样的方法得到后继状态。

2 近似强化学习算法

在处理复杂的强化学习问题时,需要应对连续的状态或动作空间,经典强化学习算法难以获得理想的学习效果。为了应对此类问题,近似强化学习方法利用函数逼近的思想对价值函数或策略函数进行近似表达,通过学习逼近器参数间接获得最优策略。本章将分别总结值函数近似方法和策略梯度方法,其中前者适用于连续状态空间,后者适用于连续动作空间。

2.1 基于价值的近似方法

基于价值的近似方法利用线性或非线性函数对价值函数进行参数化表示,通常情况下,价值函数的近似形式可以表示为:

式中,w为逼近器参数。

根据逼近器的结构特性,值函数近似方法可以分为线性近似和非线性近似两种。其中,线性近似方法采用一组特征基函数和一个参数向量的线性乘积来近似表示价值函数,原理简单,易于实现。

Bradtke等[16]最先提出了基于线性最小二乘(least squares,LS)逼近理论的时序差分算法(LSTD)及其递归版本(RLSTD),从训练经验中提取更多信息,提高了学习效率。Xu等[17]在此基础上引入资格迹,提出了基于递归最小二乘的多步时序差分算法RLS-TD(λ),利用资格迹提高数据的使用效率,进而加快收敛速度。

LSTD在固定策略下学习状态值函数,无法在缺少底层过程模型的时候进行动作选择和控制,Lagoudakis等[18]为此提出了最小二乘策略迭代(least-squares policy iteration,LSPI)算法,允许在没有模型的情况下随机选择动作,并进行增量式策略改进。然而,该算法对Q值函数估计不足,且只适合off-line情况。因此,Busoniu等[19]提出了在线最小二乘策略迭代(online LSPI)算法,每经历几次转换就可以更新一次策略,并且在线收集样本,增强了对未知动作的探索。此外,周鑫等[20]提出了批量最小二乘策略迭代(batch least-squares policy iteration,BLSPI)算法,从经验数据中提取出更多有用信息,进一步提高了样本的利用效率,加快了收敛速度。

以上算法中,特征基函数需要人为选取,对先验知识依赖性较强,具有一定的局限性。为解决这个问题,程玉虎等[21]提出一种基于状态-动作图测地高斯基的策略迭代强化学习方法,利用基于近似线性相关的核稀疏方法自动选择测地高斯核的中心,但该方法仅适用于动作值函数逼近。Song等[22]提出了一种基于梯度校正的最小二乘时序差分算法(LS-TDC),利用核方法自动选择特征向量,并通过近似线性相关分析实现核的稀疏化。季挺等[23]提出一种基于状态聚类的非参数化近似广义策略迭代增强学习算法(NPAGPI-SC),利用delta规则和最近邻思想在学习过程中自适应地调整逼近器。

此外,当特征数量很大时,LSTD算法会对数据产生过拟合,并且计算成本升高。文献[24]提出了一种正则化框架克服这些困难,并针对L1正则化LSTD不能表示为凸优化的问题,利用一种类似于最小角度回归(least angle regression,LADS)算法的高效算法计算最优解。文献[25]则引入L2范数惩罚项克服过拟合,同时利用递归算法消除矩阵逆操作,有效降低了算法的计算复杂度。

总体看来,基于线性逼近的方法易于理解且具有可靠的收敛保证。但是,特征基函数的选取,大多依赖先验知识或通过反复试凑确定,缺乏自动构建的能力。当面对复杂问题时,特征基函数选择不当可能导致精度不够或计算冗余等问题。根据以上分析,表1总结了部分典型线性值函数近似算法及其优化算法的基本原理和优缺点。

表1 线性值函数近似方法比较Table 1 Comparison of linear value function approximation methods

与线性函数逼近相比,非线性逼近方法种类更多,并且逼近能力更强,实际应用更加广泛。在近似强化学习中,通常采用模糊推理系统(fuzzy inference system,FIS)、人工神经网络(artificial neural network,ANN)等非线性值函数逼近算法。

其中,Kim等[26]将模糊推理系统与Q学习相结合,提出了模糊Q学习(fuzzy Q-learning,FQL),利用有限的模糊变量描述连续状态和动作空间,通过与环境的交互产生模糊规则,而不需要对环境有先验的认识。Shi等[27]将模糊Q学习方法用于欠驱动的无人机系统,设计了一种解耦控制器,利用Q学习进行自适应伺服增益调整,同时采用模糊方法调整学习速率,实现了无人机的稳定控制。Derhami等[28]首次提出了模糊Sarsa学习(fuzzy Sarsa learning,FSL),证明了其在平稳策略下的收敛性,并且实验证实FSL比FQL的学习速度更快。文献[29]提出了一种可解释模糊强化学习(interpretable fuzzy reinforcement learning,IFRL)的新方法,使用最新的模糊系统逼近状态-动作值函数,在线生成易于理解的规则,并采用Sarsa(λ)算法更新规则,多个任务表明该算法具有更少的参数和更快的收敛速度。

模糊推理原理简单,容易理解,实际应用效果较好。但是,其结构单一,模糊规则的制定具有一定难度,并且直接影响学习效果。与模糊逻辑相比,人工神经网络具有多种结构,相关逼近算法的应用更加广泛。因此,在近似强化学习研究中,神经网络是最为常见的一种函数逼近器。

其中,刘智斌等[30]融合资格迹与反向传播(back propagation,BP)神经网络,实现了强化学习过程的多步更新,并利用改善的残差梯度法更新权值,同时保证学习速度与收敛性能。Zhang等[31]针对强化学习效率低下的问题,提出了一种基于RBF网络和启发式Q学习的RNH-QL方法,用于大规模状态空间的路径搜索,表现良好。Pan等[32]将极限学习机(extreme learning machine,ELM)应用于Q学习,并引入滚动时间窗口,在一定程度上减小了样本空间的大小,提高了学习速度。张耀中等[33]将多层脉冲神经网络与强化学习算法结合,提出忆阻脉冲强化学习(memristive spiking reinforcement learning,MSRL),显著增强了智能体的学习能力和效率。此外,闵华清等[34]采用小脑模型神经网络(cerebellar model articulation controller,CMAC)拟合值函数,并利用Bellman误差的变化趋势实现状态自动划分。季挺等[35]利用CMAC逼近值函数,同时结合初始划分和拓展划分确定CMAC状态划分方式。

基于浅层神经网络的近似强化学习在相对简单的控制任务中表现较好,但神经网络的整体性能受神经元个数与网络层数的限制。相比之下,深度学习的表达能力更加突出。将深度学习良好的感知能力与强化学习的决策能力相结合,可以为复杂系统的决策问题提供新的解决思路。

2015年,Mnih等[36]首次提出了深度Q网络(deep Q-network,DQN),通过引入经验回放机制同时构建独立的目标网络,直接由高维感知输入学习到成功的策略,实现了端到端的学习,应用于Atari游戏,取得了巨大成功。但是该算法仍然存在一些不可避免的问题,例如Q值过估计,样本利用率低,学习稳定性差等。因此,Hasselt等[37]提出了Double DQN算法,使用不同的网络进行动作选择和价值评估,且两个网络的参数独立训练,有效缓解了Q值估计偏高导致的非最优解和学习过程稳定性下降的问题。Schaul等[38]则提出了经验优先回放(prioritized experience replay,PER),根据重要程度对经验进行重复利用,打破了数据之间的强相关性,样本利用效率提高的同时学习效率也得到较大的提升。但该算法依旧只适合离散动作空间,并且存在价值低估的风险。

上述DQN相关算法的改进,重点在于融合新的改进机制,并未对网络结构或RL控制算法有较大的改动。所以,Wang等[39]提出了一种更适合无模型RL的神经网络体系结构——Dueling DQN,将Q值函数逼近器分割为状态价值函数逼近器和与状态相关的动作优势函数逼近器,分别学习状态和动作两个层次的策略。虽然算法性能有所提升,但网络结构变得更加复杂,并且该网络仅适用于基于动作值函数的算法。Hausknecht等[40]将长短期记忆网络(long short term memory,LSTM)结合DQN,形成深度循环Q网络(DRQN),通过时间整合每帧间的信息,可以使用部分观测信息学习,具有更强的适应性。但单层LSTM网络的记忆能力有限,在连续性不强的环境中学习效果受到影响。

上述DQN的改进算法从不同角度进行优化处理,虽然在一定程度上缓解了过估计问题,提高了样本的利用效率,但对离散动作空间的要求并未改变。表2简要总结了部分DQN系列算法的原理与优缺点。

表2 非线性值函数近似方法比较Table 2 Comparison of nonlinear value function approximation methods

2.2 基于策略的近似方法

基于策略(policy-based)的近似方法直接对策略函数进行参数化表示,然后利用梯度上升法更新目标函数相对于策略参数的梯度,最终得到最优或局部最优策略,适用于具有连续动作空间的强化学习问题。策略函数的近似表达式可以记作:

式中,θ是逼近器参数。由于策略代表某个状态下采取任意可能动作的概率,可以将πθ看作概率密度函数,θ决定了策略的概率分布形态。

为了评估策略函数,需要设置一个与参数有关的待优化目标函数,常用的优化目标有以下几种:

(1)在回合环境中,可以使用初始状态的价值:

(2)在连续环境中,可以使用平均价值:

(3)或者采用每一时间步的平均奖励:

式中,dπθ是关于策略πθ的马尔科夫链的平稳分布。

根据策略梯度定理,对于任意可微的策略πθ(s,a),上述任一种目标函数的策略梯度均可以表示为:

在经典策略梯度算法中,利用蒙特卡罗法估算每个时间步的状态价值v(s),策略函数的参数优化采用梯度

上升的方法,则参数更新表达式为:

式中,α表示学习步长,策略πθ通常使用高斯策略、softmax策略等。

常见的策略梯度方法通常属于随机策略,输出为确定状态下每个可能动作的概率,代表性算法如REINFORCE[41]、GPOMDP[42]等。策略梯度方法在梯度估计过程中,普遍存在方差较大的问题,容易导致策略更新不稳定,收敛速度缓慢。

因此,相关文献主要针对方差问题进行优化。文献[43]将方差正则化思想、基于参数的探索及基线减法相结合,直接利用策略梯度的方差作为正则化器来抑制梯度估计的方差,实验证明能够提供比非正则化方法更可靠的策略更新,但缺乏相应的理论分析。文献[44]提出了基于改进的贝叶斯框架的策略梯度方法,使用Hessian矩阵分布调整学习率,同时在计算策略梯度分布时,利用贝叶斯求积方法估计Hessian矩阵分布,以提高贝叶斯策略梯度算法在方差和样本方面的性能。文献[45]提出了一种基于信赖域随机方差缩减的策略梯度优化方法,将随机方差减少梯度(stochastic variance reduction gradient,SVRG)应用于信赖域优化框架,并从随机小批量估计引入小的控制噪声鼓励参数探索,以获得更好的样本效率。

此外,还有一些其他方法用于解决样本和方差的问题,如期望最大化(expectation maximization,EM)和相对熵(relative entropy,RE)。文献[46]提出一种基于参数探索的EM策略搜索方法,直接在控制器参数空间进行多次采样以收集样本,来克服随机探索过程中梯度过大的问题,同时利用重要采样技术以重复使用策略更新过程中收集的样本,降低采样成本。文献[47]为了克服重要性采样带来的不稳定性问题,将奖励加权回归与自适应重要性采样技术相结合,提出一种用于直接策略学习的高效数据重用算法。文献[48]则通过相对熵技术将外部强化信息与直接策略评估联系起来塑造奖励函数,防止策略改进过程中损失过多的信息,为寻找最佳策略参数提供更有效的学习。

另一方面,Schulman等[49]着重考虑了更新步长在策略梯度算法中的影响,设计了一种随机控制策略优化的方法——置信域策略优化(trust region policy optimization,TRPO),通过回报函数分解及平均KL散度约束,保证了回报函数在更新过程中单调不减,算法得以收敛到局部最优或全局最优。然而,使用随机策略在梯度方向进行搜索,建立在大量采样的基础之上,对样本的数量存在依赖较,计算量也较大。为此,Silver等[50]提出了确定性策略梯度(deterministic policy gradient,DPG)算法,对某个状态只输出确定的动作,而不是根据概率分布随机选择动作,当动作空间维度较高时,需要的样本数量更少,梯度估计效率更高。

2.3 基于Actor-Critic的近似方法

策略梯度算法解决了值函数算法不能用于连续动作空间的问题,但是其属于回合制更新,学习速度较慢,并且在梯度估计过程中,方差较大导致的策略更新不稳定难以避免。鉴于此,Barto等[51]结合两种学习方法,提出了Actor-Critic学习框架,同时估计价值函数和策略函数。如图2所示,该框架包含了Actor和Critic两个部分,与单纯的策略梯度算法所不同的是,Actor部分参数更新不再使用蒙特卡罗方法估算价值函数,而从Critic部分得到近似后的值函数。

图2 Actor-Critic算法框架Fig.2 Framework diagram of Actor-Critic algorithm

如此,策略函数的参数更新公式变为:

根据任务需要,也可以选择动作值函数完成策略函数的参数更新,即:

Sutton和Anderson分别在对AC方法进行了进一步的研究和扩展[52-53]。根据策略更新时所使用的梯度类型,AC方法可分为标准梯度(standard gradient)和自然梯度(natural gradient)[54]。

标准梯度AC方法没有使用函数逼近技术,仅对状态进行离散化处理,所以可以利用状态泛化来提高学习速度。Cheng等[55-56]针对复杂连续系统,在AC框架下,用同一归一化径向基函数神经网络逼近状态值函数和动作-状态值函数,网络的输入层和隐含层由Actor和Critic共享,并根据任务的复杂性和学习进度自适应调整网络结构和参数。随后,Bhatnagar[57]首次将带函数逼近的AC算法用于折扣成本约束下的MDP问题,算法利用即时扰动随机逼近法对策略梯度进行估计,并证明了算法对局部最优策略的收敛性及高维参数空间的适用性。此外,文献[58]针对连续状态和动作问题,提出了一种基于增量构造RBF网络的AC方法,利用输出的归一化加权和来估计Critic的价值函数,并利用相应基函数接受域的局部TD误差来更新模型。

由于标准梯度适用于具有单个最小值的损失函数,而实际上,强化学习中的损失函数具有多个局部极小值是不可避免的问题;并且,自然梯度在高维空间中的学习性能比标准梯度更为突出,因此相关的研究和应用成果更多。

第一个成功使用自然梯度的AC算法来自Peters等[59],他们介绍了一种估计自然梯度的通用算法,并证明该算法在倒立摆和人形机器人控制中表现优于标准梯度算法。然而,基于策略梯度的方法往往存在样本利用率低及收敛速度慢等问题,文献[60]提出了真实在线增量式自然梯度AC(true online incremental natural Actor-Critic,TOINAC)算法,引入一种新的前向观点来估计自然梯度,再利用资格迹将自然梯度估计变为在线估计,提高了自然梯度估计的准确性和算法的效率。为了降低策略梯度估计的方差,文献[61]利用优势函数参数向量对优势函数进行线性近似,同时在目标函数中加入L2范数进行正则化,以促进优势函数和策略的收敛。

另一方面,随着AlphaGo的成功,基于AC框架的深度强化学习算法在理论和应用方面也取得了较大突破。首先是Lillicrap等[62]将DQN算法和DPG算法结合,提出深度确定性策略梯度(deep deterministic policy gradient,DDPG)算法,采用DQN的方式模拟、训练策略函数和值函数;同时利用DPG减小样本依赖,提高计算速度。在使用相同的优化算法、网络结构和超参数的前提下,DDPG能够很好地解决20多个模拟物理任务,包括倒立摆平衡、灵巧手操作、双腿移动和汽车驾驶等经典问题。之后,Scott等[63]提出双延迟DDPG(twin delayed deep deterministic policy gradient,TD3),利用Double Q-learning的原理,通过选择两个critic网络之中较小的值限制过估计,同时以延迟策略更新减少每次的更新误差,并证明算法表现优于当时其他同类方法。

此外,Mnih等[64]提出了异步优化AC算法(asynchronous advantage Actor-Critic,A3C),利用计算机的多个线程,并行地执行多个Agent,再将每个Agent的学习成果保存在一个公共网络,指导后续的学习过程。A3C因为不需要存储样本而需要的内存更少,并且避免了批量采集样本的相关性。在Atari 2600游戏、TORCS赛车模拟、MuJoCo物理模拟及Labyrinth迷宫等实验环境下的训练速度远远超越DQN等优秀算法。Haarnoja等[65]提出了基于最大熵强化学习框架的离策略AC算法soft Actor-Critic(SAC),该算法通过保持熵最大化尽可能探索所有可能的最佳动作,满足样本高效、稳定的学习,实验证明算法性能优于off-policy的DDPG算法和on-policy的TRPO算法。Schulman等[66]提出了近端策略优化算法(proximal policy optimization,PPO),通过重要采样技术实现策略离线更新,保留TRPO优点的同时,实现过程更简单,更通用,且具有更好的样本复杂度。

标准AC算法可以看作策略梯度算法的延伸,利用值函数近似代替蒙特卡罗方法估算价值函数,将回合制更新变为一步更新,提高了学习速度。因此,一般情况下,将结合AC框架的近似强化学习算法也归为基于策略的方法。表3总结了部分代表性AC算法的原理及特点。

表3 基于AC框架的算法比较Table 3 Comparison of AC-based algorithms

综上所述,Value-based方法通过值函数间接学习控制策略,动作的选取易受价值函数逼近误差变化影响,并且只适用于离散动作空间的强化学习问题。相较而言,Policy-based方法可直接对策略进行表示和搜索,不但具有更为可靠的收敛保证,而且能够求解高维连续动作空间问题。然而,PG算法在学习中存在策略梯度估计方差过大的问题,收敛速度缓慢甚至难以收敛。AC方法结合了Value-based和Policy-based的优势,既可以求解连续动作空间问题,拓宽应用范围;又可以引入状态值函数减小策略梯度估计的方差,加快收敛速度。

3 近似强化学习的应用进展

强化学习的灵感来源于动物和人类的学习行为,其学习过程中不需要精确的数学模型,仅依靠环境的奖励反馈指导动作选择。在机器人控制领域,利用强化学习可以解决模型未知、缺少先验知识或高度动态化的优化决策问题。本章主要介绍近似强化学习在各种机器人控制系统中应用进展。

3.1 移动机器人

移动机器人包括无人驾驶车辆、飞行器和船舶等,常用于代替人类在复杂且危险的环境中工作,例如资源探索、灾难搜救和军事防爆等[67]。导航能力是移动机器人研究的一个基本问题,通常是指在二维或三维环境中,确定从起点到终点的无碰撞最优或次优路径。

移动机器人导航大多使用视觉或激光获取环境信息,然后建立局部或全局地图,规划可行路径。其中,地图的质量易受传感器精度和环境噪声影响,限制了对未知或动态环境的适应能力。而深度强化学习端到端的训练策略极大地简化了基于传感器信息的控制过程,用于移动机器人导航优势明显。Tai等[68-69]首次利用DQN算法,以RGB-D传感器的深度图像作为唯一的输入,进行了虚拟及真实的走廊环境中的移动机器人导航实验,实现了探测和避障能力。随后,Zhu等[70]在此基础上提出了能够泛化到新场景的模型,并将实验扩展到环境更加复杂的室内,使用真实的机器人验证了模型的性能。近年来,Lee等[71]利用强化学习方法规划仓库环境中的移动机器人行进路径,并对其进行优化。Samsani等[72]针对复杂拥挤的人群环境,为机器人建立危险区域模型,并分别使用深度强化学习(DRL),长短期记忆强化学习(LSTM-RL)及社会注意力强化学习(SARL)三种方法实现了社交机器人的导航。de Jesus等人[73]以激光测距结果作为输入,利用DDPG算法输出连续速度,完成了移动机器人障碍物环境中的导航。

此外,对于特殊形态的机器人,文献[74]利用DDPG算法控制无人潜水器(unmanned underwater vehicles,UUVs),有效缩小了跟踪误差,提高了整体性能。文献[75]针对无人战斗机(unmanned combat air vehicles,UCAVs),提出一种连续战略机动规划方法,完成了三维动态高空场景中的目标跟踪,具有较强的鲁棒性。文献[76]提出了一种事件触发强化学习控制策略,用以克服四旋翼无人机(quadrotor unmanned aerial vehicle,QUAV)动态特性复杂难以精确建模的问题,完成机身稳定和跟踪任务。

3.2 机械臂

机械臂是一种特殊类型的机器人,比人类更适合重复性高、强度大或工作环境恶劣的任务,在工业装配、农业采摘、医疗手术等领域应用广泛[77]。不同于移动机器人导航,机械臂需要通过控制各个关节的角度、速度等,完成连杆的运动规划,实现对末端位置的跟踪。

经典的控制方法基于数学模型设计控制器,通过运动学和动力学方程计算关节角度,并且利用各种策略对未建模动态、外部扰动等进行补偿。强化学习不需要数学模型,可以直接以关节角度作为控制变量,学习最优控制策略。文献[78]提出了一种基于核的强化学习控制器,通过核函数抽样形成新的元组描述机械臂控制,在较小的力/力矩条件下实现更好的跟踪性能。为了提高工业机器人的性能,文献[79]提出了一种基于TD3的机械臂运动规划算法,并采用后验经验回放提高样本效率,用于多自由度机械臂中路径更加平滑,距离更短。文献[80]提出了一种基于DDPG的快速、鲁棒无碰撞路径规划方法,利用循环神经网络记忆和利用过去的状态信息,在非结构化的果园环境中,采摘成功率得到较大提高。

特别地,强化学习在多臂系统中的应用也取得了一定的效果。文献[81]针对空间连体机械臂,设计了基于TD3算法的反馈动力学控制器,利用策略网络指导每个机械臂在线调整关节轨迹,在捕获任务中,比传统控制方法的精度提高42%。文献[82]基于SAC算法设计了双臂机器人运动规划方法,利用两个网络分别控制每个的位置和方向,不需要额外的传感器,有效避免了运动中的碰撞。

整体而言,强化学习用于机器人控制,无需精确的模型,避免了复杂的运动学和动力学求解;结合深度学习强大的表示能力,可以降低对传感器精度的依赖,简化控制流程,已逐渐成为新的研究趋势。然而,在动态、复杂的环境中,尽管强化学习可以使机器人具有一定的自学习能力,同时避免监督学习中存在的标签数据采集困难、训练误差大等问题。但其试错学习的方式,需要大量的样本,利用实体机器人采集样本昂贵且耗时。并且,当前的研究大多采用仿真环境验证,算法的性能从模拟到实物的迁移效果很难达到预期。

4 结束语

强化学习理论、算法和应用研究在国内外已经普遍开展,并且取得了大量的研究成果,但针对连续空间的近似强化学习方法仍面临诸多挑战:

(1)部分强化学习算法经改造后虽然可以克服维数灾难,但缺乏可靠的收敛性保证,学习性能比较不稳定。

(2)强化学习算法通过试错学习最优策略,需要大量的采样和迭代计算才能得到较好的收敛效果,学习效率有待提高。

(3)利用逼近原理的强化学习算法往往有许多参数需要设置,算法性能易受经验影响,应用难度较大。

(4)多数强化学习算法都针对某项具体任务设计,难以在不同任务上重复利用,对于训练代价大的算法,易造成资源浪费。

上述难题影响了强化学习算法的进一步应用和推广,若不能很好地解决,将不利于实现更高级的人工智能。因此,对连续空间下的强化学习算法进行研究具有重要的理论意义与实际价值。

猜你喜欢
梯度状态函数
带非线性梯度项的p-Laplacian抛物方程的临界指标
二次函数
第3讲 “函数”复习精讲
二次函数
函数备考精讲
状态联想
一个具梯度项的p-Laplace 方程弱解的存在性
生命的另一种状态
基于AMR的梯度磁传感器在磁异常检测中的研究
基于数字虚拟飞行的民机复飞爬升梯度评估