掌桥专利:专业的专利平台
掌桥专利
首页

一种基于离散-连续异构Q网络的强化学习连续动作控制方法

文献发布时间:2024-04-18 19:53:33


一种基于离散-连续异构Q网络的强化学习连续动作控制方法

技术领域

本发明涉及一种基于离散-连续异构Q网络的强化学习连续动作控制方法,属于强化学习技术领域,尤其涉及基于值函数的强化学控制方法。

背景技术

控制技术,是现代人类社会所最依赖的技术之一,充斥着人们生活的各个角落。从家电设备,到工业设备、交通工具、电网系统,乃至于航天技术,都离不开控制技术的身影。而近年来,随着人工智能技术的不断发展,越来越多的智能化产品开始走进社会。这些智能化产品在给人们的生活带来极大便利的同时,也对控制技术产生了更高的要求。其中最有代表性的,就是各式各样的无人设备,智能能无人驾驶汽车、服务机器人、仿生机器人等。该类设备的控制问题往往是高维、时变、非线性的,传统方法很难对这些系统进行分析并给出合理的控制规律。此外,该类智能设备在不同的使用场景下有着不同的控制需求,如机械臂在抓取物体和推动物体时,由于目标不同,所使用的控制规律也是不同的。采用传统方法设计应对不同目标的不同控制律,会耗费大量的人力物力。

因此,相关领域的研究人员开始尝试以各种智能控制方法代替传统控制方法,以实现无人设备控制律的自主智能设计,在节约人工成本的同时,提升无人设备的控制效果以及多任务能力。相关方面的研究包括模糊控制、专家控制、模型预测控制、神经网络控制、强化学习控制等;其中,基于强化学习的智能控制是最有潜力的方法之一。该类方法基于马尔可夫决策过程,通过最大化目标奖励值函数的方式拟合一个最优策略,从而实现无人设备的稳定控制。基于强化学习的控制方法已经在多个实物场景下被证明有效,如2018年伦敦帝国理工大学计算机学院实现的机械臂折叠布料、2019年人工智能研究机构OpenAI实现的机械手复原魔方等。

然而,基于强化学习的无人设备控制方法在泛化与推广上仍然有着较大的难度。其中最困难的,是强化学习在实物系统上的经验采集问题。当前强化学习算法的训练效率仍然不够高。即使应用仿真训练+迁移学习等优化方法降低对于经验样本的数量需求,完成一个强化学习智能体控制策略的训练仍然需要至少数万次实物采样。庞大的实物经验样本需求意味着高昂的时间与经济成本,严重阻碍了强化学习控制技术在实物无人设备之上的推广。此外,当前强化学习方法所训练得到的策略仍然不够稳定,难以保证实物应用所需要的效果。

截至目前,相关领域研究人员对强化学习控制器的设计思路大体相同,即在选择合适的强化学习核心方法的前提之下,应用深度学习技术进行改进与适配,以使得原方法能够较为稳定、高效的应用于目标任务。在强化学习领域,主流的方法可以分为三类:基于值的强化学习方法、基于策略梯度的强化学习方法以及基于策略-评价(Actor-Critic)的强化学习方法。其中,基于值的强化学习方法有着成熟、稳定、高效的表现,且发展较为完善,其中的代表方法是谷歌人工智能研究机构DeepMind于2012年提出的深度Q网络(DQN)算法,及其相关的改进算法。该类算法设计的针对目标是具有离散动作空间的强化学习任务,如电子游戏等,不能直接应用于动作连续的控制问题。而单纯基于策略梯度的强化学习方法虽能够处理控制问题的连续动作,但由于经验样本利用效率过于低下,现阶段已经使用较少。

目前最适用于无人设备控制任务的强化学习方法,是基于策略-评价体系框架的方法。该类方法的主要特点是采用一个网络拟合强化学习的值函数,另一个网络根据该值函数的评估结果进行策略优化。策略-评价方法中最有代表性的有Schulman等提出的在线强化学习方法“近端策略优化(PPO)”,以及Lilicrap等提出的离线强化学习方法“深度确定性策略梯度(DDPG)”。其中DDPG由于能够储存并回放经验,效率远高于在线方法,故更适用于经验采集困难的强化学习控制任务。原始版本的DDPG稳定性较差,在一些较为复杂的任务下,常出现不收敛、训练失败的情况。该算法的数个改进版本在一定程度上弥补了该缺陷,同时也提升了训练效率,其中应用最广泛的,是由Fujimoto等于2018年提出的双延迟深度确定性策略梯度方法(TD3),以及由Haarnoja等人同样在2018提出的柔性策略-评价方法(SAC)。在部分无人设备的强化学习控制中,该两个算法表现出了较好的性能。

但由于策略-评价框架结构的一些固有问题,以上两个算法在部分场景下的表现仍然不佳。基于值的强化学习方法能够通过值函数直接表达策略,而相比之下,策略-评价结构需要一个策略网络通过策略梯度的方法学习评价网络的连续Q函数,两个网络之间深度耦合,导致算法整体的稳定性显著降低。此外,由于控制器的控制量输出是有上限的,与之相对应的策略网络必须采用一个Tanh层作为激活函数以将动作限制在一定范围之内。在实际训练过程中,Tanh层很容易导致梯度消失问题,影响强化学习的整体训练效率。

为避免策略-评价算法的一系列问题,部分强化学习研究人员尝试对DQN方法进行改进,使其能够适用于连续动作空间下的控制任务。DQN用于连续控制的最大问题在于动作离散化所导致的维度爆炸问题。该问题曾由Lilicrap等在其工作中举例说明,由于DQN的离散动作是针对整体动作空间而非某个动作维度,故连续动作空间的离散化过程需要对各动作维度的离散化动作进行遍历组合,这就导致了连续动作空间所对应的离散动作数量与维度呈指数关系,DQN在该种场景下无法应用。针对该问题,部分相关工作尝试对动作空间的各个维度进行独立的离散化,并采用DQN独立训练或依次训练。该类方法中效果较好的是Tavakoli等人提出的BDQ,其能够有效解决部分连续控制任务,但效率与稳定性仍达不到实际应用的标准。

发明内容

本发明的技术解决问题是:克服现有技术的不足,提出一种基于离散-连续异构Q网络的强化学习连续动作控制方法,该方法在对各维度的动作空间进行独立离散化的基础之上,设计了一种离散-连续异构Q网络架构及其相应的强化学习训练方法,解决各动作维度的Q函数之间相互耦合的问题,显著提升值函数强化学习用于连续控制问题的训练效率与终态表现。该架构中包含了两种不同结构的Q网络:连续评价Q网络和离散动作Q网络;连续评价Q网络输入状态与连续动作,输出相应的状态-行为值,采用时序差分法进行更新,主要用于为离散Q网络提供导师信号;离散Q动作网络的作用类似于策略-评价结构中的Actor网络,输入状态,输出各维度离散动作所对应的状态-行为值,采用监督学习的方式跟随连续评价Q网络的值函数,可以通过贪婪策略输出动作。本发明所设计的基于连续-异构Q网络架构的强化学习方法充分利用了该架构的特点,在高效利用经验样本进行离线更新的同时,采用了一种∈-高斯复合探索方法提升强化学习的探索效率,相比于常用的策略-评价结构强化学习方法,有着更快的收敛速度以及更加稳定的训练过程,显著提升强化学习控制器应用于无人设备的控制效果。

本发明的技术解决方案是:

一种基于离散-连续异构Q网络的强化学习连续动作控制方法,该方法的步骤包括:

第一步,构造连续-离散值函数强化学习模型;

值函数强化学习选择动作的主要方式,是比较不同动作所对应的状态-行为值,选择最大状态-行为值所对应的动作。而连续状态空间有着无穷多的动作,无法进行比较,因此需要首先进行离散化,在动作数量有限的离散状态空间中挑选最优动作。对于连续动作维度较高的机器人等无人设备的控制问题而言,如对动作进行集中离散化,则离散动作空间中的动作数量与连续动作的维度呈指数关系,比较每一个离散动作的状态-行为值同样不可行。而本发明采用各动作维度独立离散化的方式,分别设置每个动作维度所对应的值函数和离散动作空间,有效的解决了连续动作离散化动作数量过多的问题。

本发明采用连续-离散双值函数的方法训练强化学习,因此分别构造了离散值函数与连续值函数所对应的强化学习模型,其中连续值函数所对应的的强化学习模型定义在全局动作之上,采用马尔可夫决策过程的标准范式。该模型由马尔可夫五元组构成:

其中

换而言之,最优确定性策略应能够选择一个可以获得最高期望累计回报值的动作。而在动作a(t)=μ(s(t))下,模型能够获得的期望累计回报值又称为状态-行为值或Q函数值,在连续模型下通过以下公式进行计算:

/>

为获得最高的累计回报值,连续Q函数强化学习模型的最优确定性策略定义为以下形式,即选取最大状态行为值所对应的动作:

离散Q函数的强化学习模型基于连续Q函数的强化学习模型进行衍生构造,其定义在被控对象的每个连续动作维度(电机等可控单元)之上。对于维度m,离散Q函数强化学习模型由以下马尔可夫五元组构成:

其中

其中

p

在转移概率p

五元组中的r

基于以上两个定义的耦合关系,单维度离散强化学习模型中奖励值与下一状态的概率只与状态和维度m的动作相关,其他维度的动作均由给定的策略

以上单维度离散强化学习的目标,是寻找一个单维度最优离散策略μ

而离散模型的状态-行为值函数,也就是Q函数通过以下形式计算,作为策略μ

为最优化离散Q函数强化学习模型的累计回报,单维度离散策略μ

在本发明的离散模型中,离散动作a

在该耦合关系下,连续模型的最优策略μ(s(t))可以用离散模型的最优策略近似,离散策略经连续化后便可作为连续模型的近似最优策略:

μ(s(t)):={μ

至此,本发明完成连续-离散值函数强化学习模型的构建。基于以上模型以及两个模型之间的耦合关系和策略转化关系,可以搭建步骤2的神经网络模型。离散模型可以用深度Q网络进行拟合,而连续模型则采用策略-评价(Actor-Critic)架构网络模型,因为连续模型的最优策略以离散模型的最优策略近似,故策略-评价架构的策略网络不进行单独构建,而是采用离散模型的深度Q网络进行替代。

2.构造离散-连续异构Q网络强化学习的神经网络架构

为高效地对以上的离散-连续值函数强化学习模型进行拟合,得到控制问题所需的最优策略,本发明针对性地设计了以下的深度强化学习神经网络架构,该架构共五个神经网络,可以划分为连续Q网络和分解离散Q网络两个模块。

其中,连续Q网络模块采用了类似于double DQN的双网络结构,共有四个网络,包括两个评价Q网络和两个目标Q网络,其分别定义如下:

①评价Q网络1,采用

②评价Q网络2,采用

在强化学习训练的值函数拟合阶段,对于状态-行为值函数的过分高估是影响训练速度以及最终表现的重要因素之一。以上的双网络输出取小操作可以有效抑制高估问题,提升强化学习控制器的表现。

③目标Q网络1,采用

④目标Q网络2,采用

其中τ为目标网络软更新超参数,默认值为0.005。该参数越低,强化学习训练过程越稳定,但设置过低将会影响训练效率。

在评价目标Q函数时,本发明同样采用双目标网络输出取较小值的形式:

分解离散Q网络模块包含1个分解离散Q网络,该网络采用一种“分解”结构,输出每一个动作维度所对应的离散状态-行为值函数,且不同维度的Q函数之间独立;在本发明中,该网络以

由于输出对应离散状态-行为值函数,分解离散Q网络也可以作为策略网络使用,通过贪婪的方式选取

a(f)=μ(s(t);θ

与连续Q网络模块带有目标网络不同,为分解离散Q网络设置目标网络在实际应用过程中并没有明显提升,为节约计算资源,分解离散Q网络模块不设置目标网络,采用单网络结构即有较好的效果。至此,完成离散-连续异构Q网络强化学习的神经网络架构的搭建。

3.对步骤2中的神经网络进行训练

本发明的方法在训练流程的总体框架上与现行的无模型离线策略强化学习方法类似,主要区别在于分解离散Q网络的有监督学习以及交互过程的∈-高斯探索策略。基于离散-连续异构Q网络的强化学习方法在训练过程中主要包括以下步骤:

(1)初始化连续Q网络参数、分解离散Q网络参数,学习率、奖励值折扣率、探索率等超参数,以及储存样本的经验池

(2)环境交互。本发明的方法主要通过环境交互、策略优化同步进行的方式,不断利用新的策略采集环境交互经验样本并储存至经验池中,供连续Q网络进行Q函数迭代更新。为使本发明Q函数能够更快收敛在环境交互过程中采用一种∈-高斯探索策略提升环境探索效率。该策略在本发明中表示为

①基于分解离散Q网络和最大化Q函数值的策略,得到状态s(t)对应的离散动作a(t)=μ(s(t);θ

②应用∈-greedy策略生成探索动作:

即以∈的概率随机选择动作。

③将探索动作连续化,并叠加一个高斯噪声,得到∈-高斯探索策略下的探索动作,其中σ为噪声标准差超参数,一般可设为0.05或0.1:

④将

完成上述环境交互步骤后,将单步状态转移经验样本储存至经验池,该经验样本包括{s(t),a(t),r

(3)经验采样,当经验池中有足够数量(在本发明中一般设为1024)的经验后,从经验池中采样一个批次的经验。每个批次采样的经验数量可以根据训练条件进行调节,本发明中设置默认值为512。采样的经验样本在本发明中记为

(4)连续Q网络更新。该更新过程采用时序差分方法TD(0)同步计算两个评价Q网络的损失函数:

随后以

(5)分解离散Q网络更新。本发明主要采用监督学习的方法缩小分解离散Q网络与评价Q网络之间状态-行为值估计量的差异,从而使得分解离散Q网络能够准确估计不同离散动作状态-行为值的高低,并选择控制效果最佳的动作。在该步骤中,首先以样本批次中的动作量

并定义其排除动作

完成以上步骤后,针对Q函数矩阵中的每一个离散状态-行为值,均可利用连续评价网络输出一个对应的连续状态-行为值,并计算二者之间的均方误差作为分解离散Q函数的部分损失函数:

在计算Q函数矩阵中每个元素所对应的均方误差后,将这些误差加和,作为分解离散Q网络的总体误差函数:

随后以λ

(6)目标Q网络参数软更新:

本发明提供了一种适用于复杂无人设备控制问题的深度Q网络强化学习方法。该方法在对各维度的动作空间进行独立离散化的基础之上,设计了一种离散-连续异构Q网络架构及其相应的强化学习训练方法,解决各动作维度的Q函数之间相互耦合的问题,显著提升值函数强化学习用于连续控制问题的训练效率与终态表现。该架构中包含了两种不同结构的Q网络:连续评价Q网络和离散动作Q网络;连续评价Q网络输入状态与连续动作,输出相应的状态-行为值,采用时序差分法进行更新,主要用于为离散Q网络提供导师信号;离散Q动作网络的作用类似于策略-评价结构中的Actor网络,输入状态,输出各维度离散动作所对应的状态-行为值,采用监督学习的方式跟随连续评价Q网络的值函数,可以通过贪婪策略输出动作。本发明所设计的基于连续-异构Q网络架构的强化学习方法充分利用了该架构的特点,在高效利用经验样本进行离线更新的同时,采用了一种∈-高斯复合探索方法提升强化学习的探索效率,相比于常用的策略-评价结构强化学习方法,有着更快的收敛速度以及更加稳定的训练过程,显著提升强化学习控制器应用于无人设备的控制效果。

有益效果

(1)本发明构建了两种不同的强化学习模型,并提出了利用两种强化学习模型之间状态-行为值函数转换关系训练各连续动作维度分别离散化所形成的离散Q函数,通过值函数强化学习方法有效解决了连续控制问题,为一些在Actor-Critic算法中表现不佳的连续控制任务提供了新的强化学习解决方案。

(2)本发明所构建的分解离散Q函数网络实现了基于离散动作的稳定强化学习控制,进一步提升了离散强化学习用于连续控制问题的效果,能够有效促进离散强化学习的发展与应用。

(3)本发明的方法有着很高的训练稳定性以及训练效率,能够有效降低强化学习控制器训练的时间成本,提升强化学习控制器的表现。

(4)本发明的方法采用了时序差分训练连续评价网络,因此能够对经验进行有效的重复利用,结合该方法的高训练效率,能够显著降低强化学习训练过程对于经验样本数量的需求,降低强化学习部署于实物控制的训练成本,促进强化学习控制在实物系统之上的部署。

(5)本发明所构建的分解离散Q函数网络能够作为策略网络使用,故本发明的方法同时具备值函数强化学习方法与Actor-Critic强化学习方法的结构特点,具备整合两类方法的改进方案的能力,对强化学习控制方法的进一步改进与提升有着重要的参考意义。

附图说明

图1是本发明所提供的离散-连续异构Q网络的强化学习整体网络架构图;

图2是本发明所提供的离散-连续异构Q网络的强化学习方法的分解离散Q函数网络损失函数计算示意图。

具体实施方式

下面结合附图,对本发明进行详细描述。以下附图用于说明,但不用来限制本发明范围。

一种基于离散-连续异构Q网络的强化学习连续动作控制方法,该方法的步骤包括:

步骤1,基于机器人等控制对象的传感器与电机的数量与特征,构造控制对象对应的连续值函数强化学习模型和离散Q函数强化学习模型,并利用二者之间的耦合关系,进一步构造能够基于连续Q函数学习离散Q函数的连续-离散Q函数强化学习模型;

步骤2,根据步骤1得到的连续-离散Q函数强化学习模型,构造离散-连续异构Q网络强化学习的神经网络架构,包括连续Q网络模块和离散Q网络模块;

步骤3,基于时序差分与监督学习,训练步骤2构造的神经网络架构,得到收敛的离散Q网络模块及其对应的分解离散Q函数;

步骤4,将分解离散Q函数作为控制器,在每个时间步选取最大Q函数值所对应的动作,并将其应用于机器人等被控对象,使其能够有效工作,完成基于离散-连续异构Q网络的强化学习连续动作控制方法。

所述的步骤1中,连续Q函数强化学习模型是一个马尔可夫决策过程模型,即五元组

为获得最高的累计回报值,最优化被控对象的表现,连续Q函数强化学习模型的最优确定性策略与连续模型Q函数相关规定为以下的形式:

离散Q函数的强化学习模型基于连续Q函数的强化学习模型进行衍生构造,其定义在被控对象的每个连续动作维度(电机等可控单元)之上。对于维度m,离散Q函数强化学习模型由马尔可夫五元组

p

其中

r

针对动作维度m的离散Q函数强化学习模型目标于寻找一个最优离散策略μ

其中单维度离散策略μ

本发明的离散模型中,离散、连续状态行为值函数(Q函数)之间有以下耦合关系:

基于该耦合关系,连续模型的最优策略μ(s(t))可以用离散模型的最优策略近似,离散策略经连续化后便可作为连续模型的近似最优策略:

μ(s(t)):={μ

所述的步骤2中,离散-连续异构Q网络强化学习的神经网络架构包括连续Q网络和分解离散Q网络两个模块。其中,连续Q网络模块共有四个网络,包括两个评价Q网络和两个目标Q网络,用于拟合连续模型的评价部分:

①评价Q网络1,采用

②评价Q网络2,采用

③目标Q网络1,采用

④目标Q网络2,采用

其中τ为目标网络软更新超参数,默认值为0.005。

分解离散Q网络模块包含1个分解离散Q网络,以

分解离散Q网络也作为连续模型的策略网络使用时,选取

a(t)=μ(s(t);θ

所述的步骤3中,训练深度强化学习网络框架的方法为:

(1)初始化连续Q网络参数

(2)采用∈-高斯探索策略与环境进行交互,采集经验{s(t),a(t),r

(3)当经验池中有足够数量的经验后,从经验池中采样一个批次的经验,记为

(6)连续Q网络更新。该更新过程采用时序差分方法(TD(0))同步计算两个评价Q网络的损失函数:

随后以A

(7)分解离散Q网络更新。针对Q函数矩阵

在计算Q函数矩阵中每个元素所对应的均方误差后,将这些误差加和,作为分解离散Q网络的总体误差函数:

随后以λ

(6)目标Q网络参数软更新:

(7)重复步骤2~6,直至机器人控制策略收敛。

步骤(2)所述的∈-高斯探索策略,主要通过以下方法实现:

①基于分解离散Q网络,得到状态s(t)对应的离散动作:

a(t)=μ(s(t);θ

②应用∈-greedy策略生成探索动作,即以∈的概率随机选取动作:

③将探索动作连续化,并叠加一个高斯噪声,得到∈-高斯探索策略下的探索动作,其中σ是高斯探索噪声的方差:

所述步骤(5)中,分解离散Q网络的参数θ迭代更新,主要通过梯度下降法最小化以下损失函数实现:

其中,

实施例

本发明提供了一种基于连续—离散异构Q网络的强化学习控制方法,以学习两种不同Q函数的方式解决了DQN等值函数强化学习方法所难以解决的连续动作空间控制问题。相较于当前常用于解决复杂强化学习控制的Actor-Critic框架算法,本发明的方法具备更高的训练效率以及更稳定的训练表现,使得强化学习控制的效果更上一个台阶。

为实现以值函数强化学习的方式解决机器人等无人设备的控制问题,本方法需要首先将控制问题所对应的连续动作空间转换为离散动作空间,以方便值函数强化学习方法对不同动作的离散值函数进行比较,从而选择最优控制量。本发明的方法将每个连续动作维度离散化为N个离散动作,这些离散动作在[-1,1]内均匀分布:

在将动作空间离散化的同时,需要将状态空间转换为x维实数空间,即

构造状态、动作空间后,基于其对应的离散Q函数强化学习模型和连续Q函数强化学习模型,构造本发明所述方法步骤3中的强化学习神经网络模型,该模型共包括了两个模块:连续Q网络模块以及离散Q网络模块,如图1所示。

其中连续Q网络模块包括4个网络:评价Q网络1、2,以及目标Q网络1、2;四个网络的定义在以上步骤2中已给出,对于一般复杂度的控制问题,网络结构可直接设置为双隐层全连接网络,输入层x+M(状态维度+动作维度)个神经元,隐层512个神经元,输出层1个神经元;复杂度高的问题可根据实际需要对网络机构做出调整。离散Q网络模块包含一个分解离散Q网络,该网络同样采用双隐层全连接网络结构,输入层x个神经元,隐层512个神经元,输出层M×N(状态维度乘每维状态数)个神经元;对于复杂问题可以根据需要调整结构。完成神经网络的搭建后,采用高斯分布对神经网络参数进行随机初始化。

完成以上神经网络构建步骤后,开始强化学习训练过程。训练流程如上文步骤3所述,首先执行流程中的第一步,对强化学习所需超参数和经验池等进行初始化。初始化完成后,循环第2到6步,对Q网络的状态行为值进行不断更新;其中,第2步为环境交互步骤,第3到6步为神经网络训练步骤;其中第五步,即分解离散Q网络的更新较为复杂,故给出示意图2以供参考,该图为部分损失函数

训练完成后,将分解离散Q网络作为控制器进行部署。在实际应用的过程中,该网络采用分解最大Q函数值策略的形式给出控制动作,即根据系统状态信息,在每个动作维度之上选择最大状态-行为值所对应的离散动作,而后将其连续化并作为控制量输出即可。需要注意的是,本发明所提供的方法中,强化学习的动作空间被限制在了[-1,1]的范围内,故在将动作转换为控制量时,需要需要将动作量映射至原控制量。假设第i维控制量的上界、下界分别为

a(t)=μ(s(t);θ

u(t)=u

在每个时间步将以上方法获得的控制动作持续应用于无人系统,即可获得良好的强化学习控制效果。

综上所述,以上仅为本发明的具体实施方案描述,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改或等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 强化学习任务中高维连续动作空间离散化探索方法
  • 面向连续-离散混合决策的游戏AI智能体强化学习方法
技术分类

06120116338744