基于多智能体强化学习的协同驾驶信息传播方法及系统技术方案

技术编号:31161390 阅读:12 留言:0更新日期:2021-12-04 10:29
本发明专利技术公开了一种基于多智能体强化学习的协同驾驶信息传播方法及系统,本发明专利技术构建了多智能体分层注意力强化学习网络MAHA,进行协同驾驶信息传播。本发明专利技术提出的MAHA,可以有效地学习各种车辆通信场景的隐藏模式,可以广泛应用于各种车辆通信场景。本方法所提出的MAHA是第一个将分层强化学习与GAT层相结合的多智能体强化学习框架,它在适当考虑智能体相互影响的情况下的输出动作。响的情况下的输出动作。响的情况下的输出动作。

【技术实现步骤摘要】
基于多智能体强化学习的协同驾驶信息传播方法及系统


[0001]本专利技术属于车辆网络通信
,具体涉及一种基于多智能体强化学习的协同驾驶信息传播方法及系统。

技术介绍

[0002]互联的自动驾驶车辆组成的协同驾驶系统可以显著提高交通效率和通行能力、增强道路公路安全性、降低油耗。作为一种网络化控制系统,协同驾驶系统中的车辆控制依赖于协同感知信息的周期性交换。因此,为车辆设计一个有效的调度算法从而在共享通信信道中周期性地广播它们的运动状态是至关重要的。
[0003]然而,网联车辆的通信具有高度动态的网络拓扑和频繁的通信链路中断等特征。现存的信标发送策略和信标时隙控制机制没有充分解决这几个问题。例如,大多数现有的信标方案在实践中没有考虑到多种协同驾驶模式的共存,这需要在自由车辆和协同驾驶车辆之间进行有效的时隙调度。此外,由于协同驾驶传统的通信协议在设计上很难对交通和通信进行建模,现有大部分研究仅从统计学角度来考虑稳定交通流和通信信道条件下的信标性能,这可能会严重影响信标性能的瞬态阶段。

技术实现思路

[0004]为了解决上述技术问题,本专利技术提供了一个基于多智能体强化学习的协同驾驶信息传播方法及系统。
[0005]本专利技术的方法采取的技术方案是:一种基于多智能体强化学习的协同驾驶信息传播方法,包括以下步骤:
[0006]步骤1:构建多智能体分层注意力强化学习网络;
[0007]所述智能体,为协同驾驶中的车辆,记为在每个时间步t,每个智能体接收一个由智能体i的当前位置、移动方向和速度组成的本地观测状态o
i
,观测状态o
i
还包括前一时间步通信范围内的时隙占用信息;所有可能的观测状态构成观测状态空间在每个时间步t,每个可用的智能体i采取一个动作,该动作指示它是保持沉默还是选择一个时隙来发送信标,将智能体i的动作空间表示为给定观测状态o
i
,智能体i的策略π
i
指定一个概率π
i
(a
i
∣o
i
),由此获得每个动作给定时间步t观测值状态o
i,t
和智能体的动作a
i,t
,根据概率P(o
i,t+1
|o
i,t
,a
i,t
),当前观测状态o
i,t
转移到下一个观测状态o
i,t+1
;在每一个时间步t,每一个智能体的反馈都来自同队列的其他智能体,此类反馈已成功传输的信标数量的信息,采用已成功传输的信标数量作为直接奖励,记为r
i,t

[0008]每个智能体i均采用一个分层网络,所述分层网络由一个管理模块和一个工作模块组成;
[0009]所述管理模块,在与环境交互获得经验的阶段,每个时间步t,智能体i的观察o
i,t
被输入到多层感知器MLP中,多层感知器MLP为管理模块i输出一个中间状态表示x
i,t
,并送
入扩张长短期记忆人工神经网络dLSTM,dLSTM接受状态x
i,t
输入,然后输出目标g
i,t
,将c

1个先前目标g
i,t

c+1


,g
i,t
‑1与g
i,t
连接起来,并将这样连接的向量G
i,t
作为输出,向量G
i,t
与工作模块中的LSTM的输出值进行点积操作后获得值a
i,t
,并将a
i,t
传递给工作模块,接收即时奖励并将存入经验回放池中;在从经验回放池采样后对网络进行训练阶段,智能体利用GAT对各个智能体i传来的x
i,t
输入进行操作,为邻域中的不同节点指定不同的权重;并将获得的连接向量x
i,t
作为第一个GAT层的输入,以获得特征向量x

i,t
,再将x

i,t
输入第二个GAT层获得x

i,t
;将GAT的输出x
i,t
,x

i,t
和x

i,t
送入VNet,使用A2C算法对VNet进行更新;
[0010]所述管理模块采用扩张长短期记忆人工神经网络dLSTM作为actor,它保持一个数组(h
i,0
,h
i,1


,h
i,c
‑1)来存储给定扩张半径的c个历史隐藏状态;所述管理模块采用图形注意力网络GAT来指定每个相邻管理模块的影响权重;
[0011]所述工作模块,在与环境交互获得经验的阶段,每个时间步t,智能体i的观察o
i,t
被输入到多层感知器MLP中,多层感知器MLP为工作模块输出一个状态表示z
i,t
,z
i,t
和LSTM的前一个时间步t

1的隐藏状态h
i,t
‑1被馈送到LSTM,LSTM输出工作模块i的初步动作u
i,t
;工作模块的初步动作u
i,t
点乘连接的管理模块传来的目标G
i,t
,然后通过Softmax层计算结果,以获得智能体i的最终策略π
i,t
,智能体i根据策略π
i,t
采取行动a
i,t
,得到内在奖励和外部奖励r
i,t
,并将存入经验回放池中。在从经验回放池采样后对网络进行训练阶段,用其动作a
i,t
连接工作模块i的状态表示z
i,t
得到w
i,t
,传入各个智能体中的工作模块的GAT中,智能体利用GAT对各个智能体i传来的x
i,t
输入进行操作,为邻域中的不同节点指定不同的权重,将获得的连接向量w
i,t
作为第一个GAT层的输入,以获得特征向量w

i,t
,再将w

i,t
输入第二个GAT层获得w

i,t
;将GAT的输出w
i,t
,w

i,t
和w

i,t
送入QNet中,使用DDPG算法对QNet和LSTM进行更新,计算动作价值后输入LSTM中,对LSTM进行更新;
[0012]所述工作模块采用深度确定性策略梯度DDPG方法,采用行动价值网络QNet作为工作模块的critic,使用标准的长短期记忆人工神经网络LSTM作为工作模块的actor;
[0013]步骤2:采用多智能体分层注意力强化学习网络,进行协同驾驶信息传播。
[0014]本专利技术的系统所采用的技术方案是:一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多智能体强化学习的协同驾驶信息传播方法,其特征在于,包括以下步骤:步骤1:构建多智能体分层注意力强化学习网络;所述智能体,为协同驾驶中的车辆,记为在每个时间步t,每个智能体接收一个由智能体i的当前位置、移动方向和速度组成的本地观测状态o
i
,观测状态o
i
还包括前一时间步通信范围内的时隙占用信息;所有可能的观测状态构成观测状态空间在每个时间步t,每个可用的智能体i采取一个动作,该动作指示它是保持沉默还是选择一个时隙来发送信标,将智能体i的动作空间表示为给定观测状态o
i
,智能体i的策略π
i
指定一个概率π
i
(a
i
|o
i
),由此获得每个动作给定时间步t观测值状态o
i,t
和智能体的动作a
i,t
,根据概率P(o
i,t+1
|o
i,t
,a
i,t
),当前观测状态o
i,t
转移到下一个观测状态o
i,t+1
;在每一个时间步t,每一个智能体的反馈都来自同队列的其他智能体,此类反馈已成功传输的信标数量的信息,采用已成功传输的信标数量作为直接奖励,记为r
i,t
;每个智能体i均采用一个分层网络,所述分层网络由一个管理模块和一个工作模块组成;所述管理模块,在与环境交互获得经验的阶段,每个时间步t,智能体i的观察o
i,t
被输入到多层感知器MLP中,多层感知器MLP为管理模块i输出一个中间状态表示x
i,t
,并送入扩张长短期记忆人工神经网络dLSTM,dLSTM接受状态x
i,t
输入,然后输出目标g
i,t
,将c

1个先前目标g
i,t

c+1


,g
i,t
‑1与g
i,t
连接起来,并将这样连接的向量G
i,t
作为输出,向量G
i,t
与工作模块中的LSTM的输出值进行点积操作后获得值a
i,t
,并将a
i,t
传递给工作模块,接收即时奖励并将存入经验回放池中;在从经验回放池采样后对网络进行训练阶段,智能体利用GAT对各个智能体i传来的x
i,t
输入进行操作,为邻域中的不同节点指定不同的权重;并将获得的连接向量x
i,t
作为第一个GAT层的输入,以获得特征向量x

i,t
,再将x

i,t
输入第二个GAT层获得x

i,t
;将GAT的输出x
i,t
,x

i,t
和x

i,t
送入VNet,使用A2C算法对VNet进行更新;所述管理模块采用扩张长短期记忆人工神经网络dLSTM作为actor,它保持一个数组(h
i,0
,h
i,1


,h
i,c
‑1)来存储给定扩张半径的c个历史隐藏状态;所述管理模块采用图形注意力网络GAT来指定每个相邻管理模块的影响权重;所述工作模块,在与环境交互获得经验的阶段,每个时间步t,智能体i的观察o
i,t
被输入到多层感知器MLP中,多层感知器MLP为工作模块输出一个状态表示z
i,t
,z
i,t
和LSTM的前一个时间步t

1的隐藏状态h
i,t
‑1被馈送到LSTM,LSTM输出工作模块i的初步动作u
i,t
;工作模块的初步动作u
i,t
点乘连接的管理模块传来的目标G
i,t
,然后通过Softmax层计算结果,以获得智能体i的最终策略π
i,t
,智能体i根据策略π
i,t
采取行动a
i,t
,得到内在奖励和外部奖励t
i,t
,并将存入经验回放池中;在从经验回放池采样后对网络进行训练阶段,用其动作a
i,t
连接工作模块i的状态表示z
i,t
得到w
i,t
,传入各个智能体中的工作模块的GAT中,智能体利用GAT对各个智能体i传来的x
i,t
输入进行操作,为邻域中的不同节点指定不同的权重,将获得的连接向量w
i,t
作为第一个GAT层的输入,以获得特征向量w

i,t
,再将w

i,t
输入第二个GAT层获得w

i,t
;将GAT的输出w
i,t
,w

i,t
和w

i,t
送入QNet中,使用DDPG算法对QNet和LSTM进行更新,计算动作价值后输入LSTM中,对LSTM进行更新;
所述工作模块采用深度确定性策略梯度DDPG方法,采用行动价值网络QNet作为工作模块的critic,使用标准的长短期记忆人工神经网络LSTM作为工作模块的actor;步骤2:采用多智能体分层注意力强化学习网络,进行协同驾驶信息传播。2.根据权利要求1所述的基于多智能体强化学习的协同驾驶信息传播方法,其特征在于:采用集中训练和分散执行的训练方式训练所述多智能体分层注意力强化学习网络,每一次训练都会由训练环境生成数据并放入经验回放池和然后从经验回放池和中联合采样,对工作模块和管理模块进行训练,更新VNet、QNet、工作模块的actor以及管理模块的actor;所述训练环境,采用一个S公里的双向高速公路路段,每个方向有M个车道,在这个路段上,交通流由若干个队列车辆和单个车辆组成,其中,S、M为预设值;此外,单个车辆以100km/h至120km/h的随机速度初始化,且它们的位置服从泊松分布;一辆协同驾驶的车辆利用其多智能体分层注意力强化学习网络输出的时隙以10Hz的固定频率在CCH上发送信标。3.根据权利要求2所述的基于多智能体强化学习的协同驾驶信息传播方法,其特征在于,采用集中训练和分散执行的训练方式训练所述多智能体分层注意力强化学习网络,具体包括以下子步骤:步骤1.1初始化每个智能体i的参数φ
i
,θ
i
,和为每个卷积层初始化每个关注头l的参数其中,φ
i
表示管理模块i的VNet的学习参数,θ
i
表示管理模块i的actor网络的学习参数,表示工作模块i的QNet的学习参数,表示工作模块i的actor网络的参数,编码矩阵是注意模块中的参数矩阵,作用是将输入特征向量f
i
投影到查询、关键字和值表示中;步骤1.2:设置训练回合次数为1...,K;步骤1.3:设置时间步1....,T;步骤1.4:时间步是t,回合episode总步长是T,每个智能体从训练环境接收一个观测状态o
i,t
,给定智能体的观测状态o
i,t
,管理模块计算状态表示x
i,t
,并得出目标g
i,t
;根据生成的目标g
i,t
,管理模块根据生成的g
i,t
,计算内在奖励并将这个奖励传递给工作模块;工作模块根据观测状态o
i,t
计算状态z
i,t
,并根据策略π
i,t
输出生成动作a
i,t
;智能体采取动作a
i,t
并获得奖励r
i,t
;步骤1.5:在每个时间步t,管理模块i接收即时奖励其中,γ表示折损因子,角标m代表这个奖励是管理模块i接收即时奖励,区别与其他的奖励;在所有智能体接收到此类即时奖励后,将元组存储到经验回放池中;在每个时间步t,将存储在经验回放池中;其中,分别代表管理模块中的状态表示x
i,t
、目标g
i,t
、邻接矩阵和即时奖励的集合;分别表示从环境中获得的状态表示z
i,t
、动作a
i,t
,邻接矩阵和外部奖励r
i,t
以及从管理模块中获得的内部奖励的集合;
步骤1.6:回转执行步骤1.4,直到训练步长为T;步骤1.7:参数更新;从经验回放池和中联合采样一个批次,管理模块使用两个GAT层计算特征向量x

i,t
和x

i,t
,x

i,t
和x

i,t
分别表示管理模块中的两个GAT层的输出值;接着工作模块将其动作a
i,t
连接每个工作模块i的状态表示z
i,t
,并采用这样的连接向量w
i,t
作为第一个GAT层的输入;工作模块将连接的向量w
i,t
送到GAT层,并分别通过以下两个式子获得特征向量w

i,t
...

【专利技术属性】
技术研发人员:刘冰艺程传奇韩玮祯熊盛武
申请(专利权)人:武汉理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1