STMARL:用于合作交通灯控制的时空多智能体强化学习方法

《STMARL: A Spatio-Temporal Multi-Agent Reinforcement Learning Approach for Cooperative Traffic Light Control》,这是中国科学技术大学发表在交通顶级期刊IEEE Transactions on Mobile Computing 2020上的一篇文章。

Abstract

智能交通灯控制系统的发展是实现智能交通管理的必要条件。虽然在以一种单独的方式来优化单个交通信号灯的使用做了一些努力,相关的研究很大程度上忽略多了路口交通灯的工作在空间上是相互影响的,以及当前交通灯控制对历史交通灯状态的时间依赖性的事实。因此,本文提出了一种新颖的时空多智能体强化学习(STMARL)框架,以有效捕捉多个相关交通灯的时空依赖性,并以一种合作的方式控制这些交通信号灯。首先根据交通灯之间的空间结构构造交通灯邻接图;然后,通过循环神经网络结构将历史交通流量状态与当前交通状态相结合。此外,基于时间依赖性交通信息,本文设计了一个基于图神经网络的模型来表示多个交通灯之间的关系,每个交通灯会通过DQN算法来进行分布式决策。最后,在合成数据和真实数据上的实验结果已经验证了本文的STMARL框架的有效性,这也提供了对多路口交通灯影响机制的深刻理解

Motivation

虽然现有的交通灯控制技术表现良好,但大多数都局限于独立的十字路口而没有合作机制。事实上,在现实生活中,对交通灯的控制必然会影响交通状况,进而导致相邻路口的连锁反应。显然,在建模过程中不能忽视多个交叉口之间的相互影响。为此,基于多智能体强化学习的解决方案已经设计出来,进一步改善了交通灯控制的性能。然而,这些方法可能仍然面临一些挑战。首先,动作空间的维数随着智能体数量的增加呈指数增长,这导致了极大的复杂性。其次,分布式模型虽然可以缓解维度爆炸的问题,但难以制定多个交通灯之间的协调。显然,在描述多路口之间的相关性时,作者认识到,基于道路网络的空间邻接性,它们可以近似地表示为图结构,如图1所示。由于交通灯之间的道路连接类型不同,图形结构可能会有很大的不同。与图1中的信息流类似,可以将当前交叉口的交通量自然地划分给相邻的交叉口,从而导致多个交通灯之间的空间影响。因此,在联合控制多个交通灯以优化大规模交通状况时,对多个交通灯之间的合作结构进行建模至关重要。此外,当移动到相邻的十字路口时,交通流动花费的时间较短,这进一步导致多个交通灯之间的时间依赖性。因此,关键问题是如何建模多个交叉口之间的时空影响,以实现智能交通灯控制。为此,作者提出了一个时空多智能体强化学习(STMARL)框架,用于多路口交通灯控制。
在这里插入图片描述

Model

如论文图4所示,展示了提出的框架STMARL的构成,该体系结构由三个模块组成:节点初始化模块,递归神经网络变体,节点更新模块。节点初始化模块用来获得初始节点的表示。递归神经网络变体用于总结隐藏状态下历史交通信息,学习时间依赖性。节点更新模块用于更新每个红绿灯的状态。接下来对于每个模块都进行详细的介绍。
在这里插入图片描述
节点初始化模块:在本模块中,第k条边收集到的观测交通信息为 e k e_k ek e k e_k ek的计算公式为在这里插入图片描述
,为了保留边到节点表示,我们使用独热码表示边的位置。例如,假设有四个汇入的边连接到一个智能体,这四个边特征的独热码表示可以是[e0,0,0,0],[0, e1,0,0],[0,0, e2,0],[0,0,0, e3]。。然后,为了将原始输入转换为可嵌入的观测向量,每条边应用不同类型的边编码器对采集到的信息进行编码。观测到的边的信息ek按照公式
在这里插入图片描述
进行更新。为了处理现实世界的异构信息,降低边编码器对于不同边缘类型的参数个数,边编码器第一层使用单独的参数对不同维度的输入进行编码,其他层的参数共享。具体来说,本文使用带RELU激活函数的双层多层感知器(MLP)。更新边的信息后,作者根据公式在这里插入图片描述
边的信息聚合到接收节点, r e c k rec_k reck是第k条边的接收节点。然后节点的初始化用 v i , t e v_{i,t}^e vi,te 和被观测节点在t时刻的特征的连接 v i , t v_{i,t} vi,t来表示。 本文用 G t i n G_t^{in} Gtin表示具有初始节点值的图,其中节点的观测信息为 V = { v i , t i n } i = 1 ∣ V ∣ V={\{v_{i,t}^{in}\}}_{i=1}^{|V|} V={vi,tin}i=1V
节点更新模块:本文引入节点更新模块对这些智能体之间的交互关系进行建模。本研究利用注意机制,利用空间结构信息,进行智能体之间的关系推理。具体来说,在关系推理步骤d,输入节点包括初始化节点向量 v i t i n v_{it}^{in} vitin和在前一个关系推理步骤d-1节点向量 v i , t d − 1 v_{i,t}^{d-1} vi,td1,输入节点由公式在这里插入图片描述

计算。
神经网络变体模块:本文采用循环神经网络融合历史交通信息是处理部分可观测性(POMDP)的一种办法。我们使用LSTM对当前输入流量状态图 G t i n G_t^{in} Gtin和上次隐藏图 G t − 1 h i d G_{t-1}^{hid} Gt1hid中的节点进行处理。 G t − 1 h i d G_{t-1}^{hid} Gt1hid是带有节点 V = { v i , t h i d } i = 1 N V =\{ {v_{i,t}^{hid} }\}_{i=1}^N V={vi,thid}i=1N 的输出隐藏图。隐藏状态 v i , t h i d v_{i,t}^{hid} vi,thid通过下述公式计算:
在这里插入图片描述
其中 W f W_f Wf, W i W_i Wi, W C W_C WC, W o W_o Wo, b f b_f bf, b i b_i bi, b C b_C bC, b o b_o bo是权重矩阵的参数和偏差。 ⊙ \odot 表示元素的乘法,σ是sigmoid函数。上述更新过程可以简短表述为: v i , t h i d = L S T M ( v i , t i n , v i , t − 1 h i d ) v_{i,t}^{hid}=LSTM(v_{i,t}^{in},v_{i,t-1}^{hid}) vi,thid=LSTM(vi,tin,vi,t1hid) 。然后使用神经网络对节点进行更新。

实验部分

**数据集:**本文采取的实验数据分为两种实验数据,一种是人工生成的数据集,一种是真实世界的数据集。人工生成的数据集有从西向东和从南到北的单向的6X6网格路网和双向的6X6的网格路网。真实世界数据集包括一小时的中国杭州市的交通流量,路网形状是4X4的网格状。此外,用于实验的真实数据还包括2018年11月6日到11月12日中国合肥的交通数据,本文采用合肥1小时高峰期的交通流量。
参数设置:本实验的参数设置如表4所示,为了避免频繁的相位转换,每个智能体的动作最少持续10s,时间依赖间隔在{3,5,10,15,20}中选择,ε在前10轮种线性衰减,激活函数在{RELU,ELU,tanh}集合种选择,多层感知机的数目在{1,2}种选择。本实验采用学习率为0.001的Adam算法进行训练。参数设置如表4所示。
在这里插入图片描述
对比算法:本实验的对比算法分为两类,一类是和其他算法做对比,一类是和本文所提出算法的变体做对比。本实验的评价指标是车辆的平均旅行时间,从表6可以看出,和其他算法做对比,在本文所使用的数据集中,STMARL的算法均优于其对比算法。与其他算法相比,当交通方式由合成向真实转变时,STMARL与其他算法之间的性能差距更大。这一现象证明了STMARL算法的适应性很强。在这里插入图片描述
消蚀实验:本实验采用STMARL的不同变体来和STMARL做对比,包括STMRAL-ST,STMARL-S,STMARL-T。这些算法的详细介绍如下:
STMARL-ST:它是基本的独立DQN方法,在代理之间共享参数。具体来说,第一个编码器层被分离来处理异构的输入信息,其他层的参数被共享。
STMARL-T:它不学习时间依赖性,只包含空间结构信息,用于迭代关系推理。
STMARL-S:它只学习时间依赖性来整合历史交通信息,而不整合空间结构依赖性。
从表7可以看出,STMARL的表现优于所有它的变体算法,在大部分数据集中,结合空间结构依赖比结合时间依赖能够更多的提高算法性能。
在这里插入图片描述
图5显示了这些模型变体在不同数据集上的训练曲线。可以看出,引入空间结构相关性极大地提高了收敛速度,时间依赖性将进一步加速收敛并提高性能。这些定量结果清楚地说明了学习空间结构信息和时间依赖性对多路口交通灯控制的性能提升。在这里插入图片描述
时间依赖间隔∆t的影响:从图6(a)我们可以看出不同的时间间隔对于STMARL性能的影响,实验结果表明一个相对中等的时间间隔对于学习时间独立性比较合适。从图6(b)中我们可以看出在不同规模的路网下,STMARL的训练时间随着∆t的增加几乎呈线性增长。
在这里插入图片描述
隐藏层规模的影响
:从图9我们可以看出不同隐藏层的STMARL算法的性能是不同的,当隐藏层的大小为64时,STMARL算法的性能最好。在这里插入图片描述
STMARL方法的公平性:从表8中可以看出,STAMRL的车辆旅行时间标准差是最小的,也就是各个车辆的等待时间差距是最小的,这显示了STMARL算法的公平性。

在这里插入图片描述
定性研究:

  • **对注意力权重的解释:**本文分析了智能体学习到的注意力权重,并以智能体2为例。图7 ©(d)显示了在周二和周六智能体从流入路口的四个边的学习到的注意力权重。我们也在图7 (a)(b)中显示了相应边内到达车辆的平均数量。由图7可以分析注意权值与相应边的动态车辆数量保持同步。在图7©中,和其他三个方向相比,智能体对南北方向的关注权重是最大的,对应于最大车辆到达数。从图7(d)可以发现类似的情况。因此,更大的注意权重使交通灯智能体2更关心下游交通状况,因为下游的车辆可能会流入智能体2。因此,智能体2受到了智能体 1决策的影响。因此,边方向的注意权值越大,说明这两个智能体之间的协调就越有必要。
    在这里插入图片描述
  • 绿波合作:当一系列交通灯相互协调,使交通在一个主要方向上的几个十字路口连续流动时,就会出现绿波。因此,它可以用来测试多个红绿灯学习的协调机制。图8中的 ( a ) ( b ) ( c ) (a)(b)(c) (a)(b)(c)显示了本文提出模型的交通灯相位的动态性,图8中的 ( d ) ( e ) ( f ) (d)(e)(f) (d)(e)(f)显示了从南到北进入的车辆的数目,这说明了绿波现象的出现。从图8 ( a ) ( b ) ( c ) (a)(b)(c) (a)(b)(c)可以看出,在这三个时间段内,存在一个绿波,也就是绿色的箭头,四个智能体协调各自的交通献给(当前南北方向的绿色相位),允许驶近的车辆快速行驶。图8$ (d) (e) (f)$表明,绿波大大加快了交通流量通过减少接近一个十字路口的最大车辆数。这也显示了车辆数目的峰值从十字路口1到十字路口2沿着绿波方向变化,这表明交通流的快速移动。因此,绿波证明了STMARL模型可以在整体水平上学习协调策略来减少交通拥堵。
    在这里插入图片描述

核心思想:本文提出了一种新的多智能体强化学习框架,该框架将具有注意力机制的图神经网络和递归神经网络结合起来进行迭代关系推理和时空相性建模,利用图结构更好地建模交通灯之间的合作机制,提高交通灯控制的性能。

感兴趣的话可以参考原文:https://ieeexplore.ieee.org/document/9240060

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值