CN114386620A - 一种基于动作约束的离线多智能体强化学习方法 - Google Patents
一种基于动作约束的离线多智能体强化学习方法 Download PDFInfo
- Publication number
- CN114386620A CN114386620A CN202111683837.7A CN202111683837A CN114386620A CN 114386620 A CN114386620 A CN 114386620A CN 202111683837 A CN202111683837 A CN 202111683837A CN 114386620 A CN114386620 A CN 114386620A
- Authority
- CN
- China
- Prior art keywords
- agent
- action
- network
- reinforcement learning
- training
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Transportation (AREA)
- Medical Informatics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开一种基于动作约束的离线多智能体强化学习方法。根据QMIX网络,实现基于动作约束的多智能体离线强化学习方法的训练;该方法依据在离线强化学习中将动作约束在离线数据集中可以有效减少外推误差这一特点,通过变分自编码器进行动作约束,并进一步结合中心训练分布式执行的方法。进而达到各智能体在训练中仅依靠所拥有的离线数据去训练智能体,从而达到不需要与环境进行进一步交互和探索的目的。进而提升网络训练效果,降低多智能体算法在离线训练下的难度。
Description
技术领域
本发明属于人工智能、强化学习、智能控制领域。具体涉及一种基于动作离线多智能体强化学习方法,用于解决多智能体强化学习在离线训练中由于外推误差造成的训练崩溃问题。
背景技术
目前多智能体强化学习算法是多智能体智能控制的重要算法之一,其被广泛应用于无人机集群控制、自动驾驶、智能能源控制、游戏AI等领域。其特点在于不需要提前收集大量的标注数据,仅通过智能体与环境的在线交互即可生成相应数据,进而可以实现智能体决策算法的训练。
然而在现实生活中,在某些特定场景下和环境做交互并收集数据的代价是昂贵的或充满危险的。例如在某些机器人控制上运行机器人经济成本极高;而在医疗和自动驾驶领域和环境的交互是充满危险的,错误的决策会导致病人失去生命或车辆发生车祸。因此出于安全性和成本的考虑,基于离线数据驱动的强化学习算法得到了广泛的关注。
离线强化学习即在使用行为策略和环境做交互后,算法学习阶段不再与环境做进一步交互,而是仅对已收集好的离线数据级进行利用,从已有数据集上学习到最优决策,其决策结果甚至可能优于现有数据集。但是在训练阶段使用未出现在数据集上的动作决策会产生外推误差,同时外推误差会随着训练的过程不断累积,最终很难训练到收敛的表现好的行为策略。另一方面,现有离线强化学习算法也很难适用于大规模多智能体决策场景。本发明的特点在于,通过使用变分自编码器对训练过程中的行为动作进行约束,保证其是出现在离线数据及的动作决策,减少外推误差对离线强化学习的影响,同时使用中心训练分布式执行的方法保证多智能体之间的交流以达到最好的离线多智能体决策方法,解决了因外推误差造成多智能体强化学习方法训练失败的问题。
发明内容
本发明要解决的技术问题是,提供一种基于动作约束的离线多智能体强化学习方法,有效解决多智能体强化学习在离线数据集上,因外推误差等原因造成的训练不收敛,训练效果不好等问题。
一种基于动作约束的离线多智能体强化学习方法,其特征在于,包括以下步骤:
步骤(1)使用QMIX网络收集离线多智能体缓存数据集;
步骤(2)基于数据集训练变分自编码器;在数据集上,使用变分自编码器训练生成模型Gω,学习每一个智能体局部观测状态及其执行动作的数据分布,其中ω为生成模型的参数,训练后的模型参数不再更新,即固定ω;
步骤(3)使用训练好的生成模型,对动作进行采样;
步骤(4)利用高斯扰动模型对步骤(3)中得到的动作采样进行干扰,增加约束动作的多样性;
步骤(5)使用步骤(4)中约束过的动作,根据局部观测和相应的动作,利用所述估值网络计算出每一个智能体相应的价值;
步骤(6)将当前时刻的全局状态观测通过超网络与所有智能体的价值,输入到所述的混合网络进行混合,得到全部智能体的总价值;
步骤(7)通过最小化网络损失函数,训练整个网络,更新网络各部分权重及偏置参数,网络迭代300M次以上,选取损失最小的一组权重及偏置参数,作为训练完毕的离线多智能体强化学习模型;将训练好的离线多智能体强化学习模型应用在环境之中,即可根据当前环境下的各智能体局部观测,执行各个智能体的最高价值策略,做出各智能体的最优动作。
步骤(4)对应的动作约束方法,具体为:
根据数据集B对环境中的j个智能体,进行n组的随机采样,并记录下每一组采样下的每一个智能体的局部观测状态,即其中表示第i组采样中第j个智能体的局部观测;使用训练好的生成模型Gω,依据各智能体局部观测生成对应的动作采样,即其中第i组采样中第j个智能体的动作采样;
使用高斯扰动模型,对采样出的动作依次进行干扰,设高斯扰动模型为ξ;其中ξ服从均值为Φ标准差为1的高斯分布;其中Φ为动作a的取值范围的均值,即amax为动作空间的最大合法取值,amin为动作空间的最小合法取值;每一组经过扰动后的动作输出为
步骤(1)对应的离线多智能体缓存数据集B方法,具体为:
从头训练QMIX网络,并且记录下每个智能体,在当前时刻t的局部观测si,t,执行的动作ai,t,以及执行动作后下一时刻观测si,t+1,以及所有智能体拿到的当前时刻t的全局奖励值rt;j为智能体总个数,将t时刻的所有j个智能体的数据,作为一个元组(s1,t,a1,t,s1,t+1,s2,t,a2,t,s2,t+1,…sj,t,aj,t,sj,t+1,rt)存入数据集B之中;经过t次的训练,保存每一时刻的所有j个智能体的动作-观测数据,构成整个数据集B;数据集B形如公式(1),其中包含0时刻即初始时刻,和t-1时刻的全部智能体的动作-观测及奖励数据;
附图说明
图1本发明的外推误差示意图。
图2本发明的设计的整个网络架图。
具体实施方式
为实现上述目的,下面通过附图和具体实施方式,对本发明的技术方案做进一步的详细描述。
目前多智能体强化学习领域主流的QMIX、MADDPG等技术,虽然通过中心训练分布式执行的方法解决了传统的算法在多智能体中难以运用的困难,但对于离线环境则很难取得训练效果。因目前主流多智能体强化学习方法,大多是基于在线环境进行的训练,即在训练过程中由策略网络输出的动作不断地与环境进行交互和探索。而现有算法应用在离线数据集时,如果出现了抽样的状态和其对应的动作不在数据集上的情况,则会出现外推误差,并且这一误差会随着训练的进行不断累积,如图1所示,最终导致训练的失败。经研究发现,如果对离线学习过程中选取的下一步动作进行约束,则可以在一定程度上减少或避免外推误差。因此本发明旨在通过利用生成模型的中的变分自编码器模型,学习离线数据及上的动作分布,来对离线学习过程中的动作选取进行约束,保证动作的选取为当前离线数据集中出现过的或近似的动作。进而减少外推误差,并与多智能体强化学习技术相结合,实现离线多智能体强化学习模型。
为达到上述目的,本发明以QMIX网络为理论基础,设计基于动作约束的多智能体离线强化学习方法。该方法依托于对在离线强化学习中将动作约束在离线数据集中可以有效减少外推误差这一特点,通过变分自编码器进行动作约束。并进一步结合中心训练分布式执行的方法,最终实现整套离线多智能体强化学习方法,解决因外推误差导致的多智能体离线强化学习训练失败,奖励不收敛的问题,进一步提升网络训练效果,降低训练难度。
本发明提供一种基于值约束的离线多智能体强化学习方法,包括以下步骤:
步骤(1)使用QMIX网络收集离线多智能体缓存数据集B。从头训练QMIX网络,并且记录下每个智能体(以第i个智能体为例)在当前时刻t的局部观测si,t,执行的动作ai,t,以及执行动作后下一时刻观测si,t+1,以及所有智能体拿到的当前时刻t的全局奖励值rt。j为智能体总个数,将t时刻的所有j个智能体的数据,作为一个元组(s1,t,a1,t,s1,t+1,s2,t,a2,t,s2,t+1,…sj,t,aj,t,sj,t+1,rt)存入数据集B之中。经过t次的训练,保存每一时刻的所有j个智能体的动作-观测数据,构成整个数据集B。数据集B形如公式(1),其中包含0时刻(初始时刻)和t-1时刻的全部智能体的动作-观测及奖励数据。定义单个智能体(以第i个智能体为例)从0时刻到t-1时刻的动作-观测轨迹为τi=(ai,0,si,1,…ai,t-1,si,t),其中ai,t表示智能体i在t时刻的动作,Si,t智能体i在t时刻的局部观测,观测轨迹中包含了每个智能体i每一时刻前一时刻做出的动作决策ai,t-1及其对应的下一时刻观测状态si,t。定义全局的联合动作观测轨迹为T=(τ1,τ2,…τj),其中包含了第1个智能体到第j个智能体的全部智能体动作-观测轨迹。
步骤(2)基于数据集B训练变分自编码器。在数据集B上,使用变分自编码器训练生成模型为Gω,学习每一个智能体局部观测状态s及其执行动作a的数据分布,其中ω为生成模型的参数,训练后的模型参数不再更新,即固定ω。训练好的生成模型Gω可以依据当前每一个智能体的观测状态s按数据集分布给出相应的执行的动作a。
步骤(3)使用训练好的生成模型,对动作进行采样。根据数据集B对环境中的j个智能体,进行n组的随机采样,并记录下每一组采样下的每一个智能体的局部观测状态,即其中表示第i组采样中第j个智能体的局部观测。使用训练好的生成模型Gω,依据各智能体局部观测生成对应的动作采样,共有j个智能体,采样n组,即其中第i组采样中第j个智能体的动作采样。此时采样出的n组动作中的每一个智能体的动作,均是生成模型根据当前时刻各智能体的局部观测依据离线数据集B生成的动作,是在数据集中出现过的动作。通过对动作的约束,减少未在数据集中出现过的动作,可以有效减少外推误差的影响。
步骤(4)利用高斯扰动模型对步骤(3)中得到的动作采样进行干扰,增加约束动作的多样性。使用高斯扰动模型,对采样出的动作依次进行干扰,设高斯扰动模型为ξ。其中ξ服从均值为Φ标准差为1的高斯分布。其中Φ为动作a的取值范围的均值,即amax为动作空间的最大合法取值,amin为动作空间的最小合法取值。每一组经过扰动后的动作输出为
步骤(5)使用步骤(4)中约束过的动作,根据局部观测和相应的动作,利用估值网络计算出每一个智能体相应的价值Q。将步骤(4)中输出的动作约束按智能体进行整合,设第j个智能体的全部n组扰动后的动作采样为 其中代表第j个智能体的第n组动作采样,设第j个智能体的全部n组局部观测状态为其中代表第j个智能体的第n组局部观测。将当前时刻的智能体的局部观测动作观测和扰动后的n个动作采样输入到估值网络中进行训练,并计算出相应的第j个智能体的n个Q值。
其中估值使用DRQN网络(Deep Recurrent Q-Learning Network),该网络由两层全连接网络和门控循环单元GRU(Gate Recurrent Unit)构成,如图2中的(c)网络。第一全连接层采用ReLU激活函数:门控循环单元包括更新门和重置门:zt=σ(Wz·[ht-1,X1]),rt=σ(Wr·[ht-1,X1]), 循环更新M次,输出hM,并输入到第二全连接层采用softmax函数,X2=softmax(W2 ThM+b2);最终动作的输出,并转化为对应的价值Q。
其中,X1,X2为全连接层1和全连接层2的输出值;W1,b1,W2,b2为全连接层1和全连接层2的权重参数和偏置参数;zt为更新门输出,rt为重置门输出,Wz,Wr分别为更新门和重置门权重参数,ht及ht-1分别代表t时刻的输出和t-1时刻的输出,表示t时刻的更新状态,ReLU为ReLU激活函数,σ为sigmoid激活函数,tanh为tanh激活函数。其中所有权重和偏置初始值为随机值。
在得到n个Q值后通过ε-greedt算法选择动作,以1-ε的概率从每一个智能体的n个Q值选取能获得最大的Q值,以ε的概率从n个Q值中随机选择,即公式(2)。
步骤(6)将当前t时刻的全局状态观测通过超网络与所有智能体的Q值,输入到混合网络进行混合,得到全部智能体的总价值,即Qtot。混合网络如图2中的(a)网络,由两层全连接神经网络构成。混合网络的输入为(P,M),其中P为全局的联合动作观测轨迹,M表示每一个智能体做出的动作的联合动作决策。利用全局状态向量通过超网络和绝对值激活函数生成的非负的权重和偏重向量,来保证单调性,从而保证每一个智能体的Q值对Qtot值起到正向作用。网络的损失函数如公式(3):
其中,θ为混合网络参数,b为训练的批次,Pt为t时刻全局的联合动作观测轨迹,Mt表示为t时刻每一个智能体做出的动作的联合动作决策,表示第i批次折扣累积回报率,其中θ-为估值网络DRQN结构中的目标网络的参数,γ为折扣因子,ri为第i批次即时奖励值。
步骤(7)通过最小化网络损失函数,训练整个网络,更新网络各部分权重及偏置参数,网络迭代300M次,选取损失最小的一组权重及偏置参数,作为训练完毕的离线多智能体强化学习模型。完整的训练的网络如图2所示,整个训练过程中不与原有环境进行交互,仅从离线数据集B中获取数据。训练好的网络模型,即得到了训练完毕的离线多智能体强化学习模型。
我们将训练好的离线多智能体强化学习模型应用在环境之中,即可根据当前环境下的各智能体局部观测,执行各个智能体的最高价值策略,做出各智能体的最优动作。
本发明可应用于各项多智能体决策场景,包括但不限于自动驾驶,游戏AI训练等场景。以自动驾驶场景为例,训练自动驾驶的决策模型,训练过程中各智能体为同一路段内的车辆。各车辆的局部观测为车辆本身的位置、速度、10米范围内其他车辆与本车的相对位置和相对速度、车道线信息等。车辆的动作空间包括速度控制(油门/刹车)以及方向控制(方向盘的转动角度)。应用本发明的所述的基于动作约束的离线多智能体强化学习方法,对车辆在已有历史驾驶数据集上进行离线强化学习,并学习各车辆多智能体之间的协同控制。最终将训练好的强化学习模型应用在同一路段的各个车辆上,即可根据车辆本身的局部观测信息,做出相应的速度控制和方向控制,以实现安全高效的自动驾驶场景。
Claims (3)
1.一种基于动作约束的离线多智能体强化学习方法,其特征在于,包括以下步骤:
步骤(1)使用QMIX网络收集离线多智能体缓存数据集;
步骤(2)基于数据集训练变分自编码器;在数据集上,使用变分自编码器训练生成模型Gω,学习每一个智能体局部观测状态及其执行动作的数据分布,其中ω为生成模型的参数,训练后的模型参数不再更新,即固定ω;
步骤(3)使用训练好的生成模型,对动作进行采样;
步骤(4)利用高斯扰动模型对步骤(3)中得到的动作采样进行干扰,增加约束动作的多样性;
步骤(5)使用步骤(4)中约束过的动作,根据局部观测和相应的动作,利用所述估值网络计算出每一个智能体相应的价值;
步骤(6)将当前时刻的全局状态观测通过超网络与所有智能体的价值,输入到所述的混合网络进行混合,得到全部智能体的总价值;
步骤(7)通过最小化网络损失函数,训练整个网络,更新网络各部分权重及偏置参数,网络迭代300M次以上,选取损失最小的一组权重及偏置参数,作为训练完毕的离线多智能体强化学习模型;将训练好的离线多智能体强化学习模型应用在环境之中,即可根据当前环境下的各智能体局部观测,执行各个智能体的最高价值策略,做出各智能体的最优动作。
2.如权利要求1所述的基于动作约束的离线多智能体强化学习方法,其特征在于,步骤(3)(4)对应的动作约束方法,具体为:
根据数据集B对环境中的j个智能体,进行n组的随机采样,并记录下每一组采样下的每一个智能体的局部观测状态,即其中表示第i组采样中第j个智能体的局部观测;使用训练好的生成模型Gω,依据各智能体局部观测生成对应的动作采样,即其中第i组采样中第j个智能体的动作采样;
3.如权利要求1所述的基于动作约束的离线多智能体强化学习方法,其特征在于,步骤(1)对应的离线多智能体缓存数据集B方法,具体为:
从头训练QMIX网络,并且记录下每个智能体,在当前时刻t的局部观测si,t,执行的动作ai,t,以及执行动作后下一时刻观测si,t+1,以及所有智能体拿到的当前时刻t的全局奖励值rt;j为智能体总个数,将t时刻的所有j个智能体的数据,作为一个元组(s1,t,a1,t,s1,t+1,s2,t,a2,t,s2,t+1,...sj,t,aj,t,sj,t+1,rt)存入数据集B之中;经过t次的训练,保存每一时刻的所有j个智能体的动作-观测数据,构成整个数据集B;数据集B形如公式(1),其中包含0时刻即初始时刻,和t-1时刻的全部智能体的动作-观测及奖励数据;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111683837.7A CN114386620A (zh) | 2021-12-29 | 2021-12-29 | 一种基于动作约束的离线多智能体强化学习方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111683837.7A CN114386620A (zh) | 2021-12-29 | 2021-12-29 | 一种基于动作约束的离线多智能体强化学习方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114386620A true CN114386620A (zh) | 2022-04-22 |
Family
ID=81199987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111683837.7A Pending CN114386620A (zh) | 2021-12-29 | 2021-12-29 | 一种基于动作约束的离线多智能体强化学习方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114386620A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115065728A (zh) * | 2022-06-13 | 2022-09-16 | 福州大学 | 一种基于多策略强化学习的多目标内容存储方法 |
-
2021
- 2021-12-29 CN CN202111683837.7A patent/CN114386620A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115065728A (zh) * | 2022-06-13 | 2022-09-16 | 福州大学 | 一种基于多策略强化学习的多目标内容存储方法 |
CN115065728B (zh) * | 2022-06-13 | 2023-12-08 | 福州大学 | 一种基于多策略强化学习的多目标内容存储方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110262511B (zh) | 基于深度强化学习的双足机器人自适应性行走控制方法 | |
CN110989576B (zh) | 速差滑移转向车辆的目标跟随及动态障碍物避障控制方法 | |
CN111351488B (zh) | 飞行器智能轨迹重构再入制导方法 | |
CN112162555B (zh) | 混合车队中基于强化学习控制策略的车辆控制方法 | |
Wang et al. | Continuous control for automated lane change behavior based on deep deterministic policy gradient algorithm | |
CN112132263B (zh) | 一种基于强化学习的多智能体自主导航方法 | |
Grigorescu et al. | Neurotrajectory: A neuroevolutionary approach to local state trajectory learning for autonomous vehicles | |
CN111580544B (zh) | 一种基于强化学习ppo算法的无人机目标跟踪控制方法 | |
CN103324085A (zh) | 基于监督式强化学习的最优控制方法 | |
CN112183288B (zh) | 一种基于模型的多智能体强化学习方法 | |
CN111625989B (zh) | 一种基于a3c-sru的智能车汇入车流方法及系统 | |
CN114460936B (zh) | 基于离线增量学习的自动驾驶汽车路径规划方法及系统 | |
CN115016534A (zh) | 一种基于记忆增强学习的无人机自主避障导航方法 | |
CN116679719A (zh) | 基于动态窗口法与近端策略的无人车自适应路径规划方法 | |
CN111824182B (zh) | 一种基于深度强化学习的三轴重型车自适应巡航控制算法 | |
CN114355897B (zh) | 一种基于模型和强化学习混合切换的车辆路径跟踪控制方法 | |
CN114386620A (zh) | 一种基于动作约束的离线多智能体强化学习方法 | |
CN114415507B (zh) | 基于深度神经网络的灵巧手抓持过程动力学模型搭建及训练方法 | |
Yun et al. | Parallelized and randomized adversarial imitation learning for safety-critical self-driving vehicles | |
CN110723207B (zh) | 基于模型重构的智能汽车模型预测转向控制器及其控制方法 | |
Zong et al. | Driving intention identification and maneuvering behavior prediction of drivers on cornering | |
Coad et al. | Safe trajectory planning using reinforcement learning for self driving | |
CN113408796A (zh) | 多任务深度强化学习的深空探测器软着陆路径规划方法 | |
Xiao et al. | DDK: A deep koopman approach for longitudinal and lateral control of autonomous ground vehicles | |
Lu et al. | Event-Triggered Parallel Control Using Deep Reinforcement Learning With Application to Comfortable Autonomous Driving |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |