周 斌 ,吴晓东 ,马东方 ,邱红桐
(1.浙江大学海洋学院,浙江 舟山 316021;2.鹏城实验室,广东 深圳 518000;3.公安部交通管理科学技术研究所,江苏 无锡 214151)
交通拥堵已成为影响城市环境和制约经济发展的严重瓶颈。随着信息检测技术和智能优化技术的不断发展,交通研究逐渐向智能化转变,衍生了智能交通系统(ITS)。ITS的主要目标是为出行者提供安全、高效和可靠的交通系统,提高居民出行品质。信号控制是ITS的重要组成部分,愈发受到研究者关注。按其控制策略,交通信号控制方法可分为定时控制、感应控制、半驱动控制、绿波控制、区域静态控制和区域动态控制等。一个完善的城市区域交通信号协调控制系统应及时响应交通需求,在线优化配时方案,实现“适应性”特征,如代表性的SCOOT[1]和 SCATS[2]等系统。然而,这些系统主要依靠线圈检测的断面数据推演离散化节点的状态趋势,进而驱动优化算法输出执行方案;这种优化策略无法把控交通流的宏观特性,致使控制效果欠佳。同时,城市交通系统具有很强的时变性、非线性、模糊性和不确定性,采用以多类理想假设为前提的传统数学模型很难有效保障系统性能。
近年来,随着新型传感器的大规模部署,融合多视角和跨领域的各式交通传感器数据引发了一系列互补性的创新和专用技术积累,为研究者和管理者提供了更加清晰地描述城市交通的动态信息,ITS的应用环境正由少量、贫乏、少维度的模型驱动时代向海量、丰富、多维度的大数据时代转变[3]。海量多源交通大数据对交通流的态势推演提供了新的机遇,利用循环神经网络、图网络、注意力机制网络等可以充分挖掘网络交通流的时空关联模式,对于控制策略的选择和方案优化均起到了极大的正向作用。
同时,云端计算能力的提升使得利用机器学习技术直接从观测数据中学习信号优化决策已成为可能,无需对模型做出任何假设;诸多研究者尝试将模糊逻辑、神经网络、进化算法和强化学习等人工智能方法应用于信号优化[4]。然而,典型的监督学习并不适用于信号优化决策,其原因在于信号控制系统应遵循预定义的优化规则和方案,且信号方案的优化变量是连续变量,可行方案组合无法穷尽,致使没有足够的训练数据区分信号优化策略的优劣。相反,实际应用中可以先采取行动而后改变信号方案,逐渐从结果中学习状态和方案的关系。这种基于试错的策略即为强化学习(RL)的核心思想[5]。从控制论的角度来看,RL可根据控制效果的反馈信息自主学习并优化策略知识,是一种真正的闭环反馈控制。本质上,RL系统首先根据当前环境生成并执行不同策略(如信号控制方案等),而后根据环境反馈学习并调整优化策略;上述过程也揭示了传统模型类优化方法与RL方法之间显著差异,即:在传统信号控制中,优化模型是静态的;在RL中,模型是在真实环境中通过反复试验动态学习的。
传统的RL方法由于其基本范式为表格或简单线性函数,存在状态空间小、仅适用于离散动作空间等问题。因此当面向输入包含图像、视频等高维度数据的复杂真实场景时,其任务往往具有较大的状态空间和连续的动作空间,传统的RL很难进行处理。而深度强化学习(DRL)是深度学习(DL)与强化学习的结合[6],将状态和动作当做神经网络的输入、输出值,利用深度学习的强表征能力完成原始数据到动作的端对端映射。
DRL技术近几年得到了迅猛发展,并促生了学术界和工业界对融合DRL技术以改善信号控制的兴趣。本文首先全面回顾DRL方法在交通信号控制中的研究和应用,讨论基于DRL的交通信号控制前沿方法及优缺点,为进一步研究该领域的新技术和新方法提供一定的思路参考。
为阐述RL在交通信号控制的应用,本文首先简要介绍RL的相关基本概念,而后介绍交通信号控制如何适应RL设置。
RL是独立于监督学习和无监督学习的一类特殊学习模式,三者的主要范式如图1所示。RL受行为心理学启发,主要关注智能体如何在环境中采取不同的行动,以最大限度的提高累积奖励[7]。
图1 机器学习分类图
RL的整个系统架构主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)和奖励(Reward)组成。智能体执行某动作后,环境会转换至一个新的状态,并根据状态的变化给出上一动作的奖励值(正奖励或者负奖励),其交互过程如图2所示。其中,智能体根据环境信息构建状态的过程如下:
式中Ht代表从初始时刻到当前时刻t为止,由每个时刻对环境的观察On、智能体的行动An、环境反馈的奖励Rt的所组成的序列;St代表时刻t的状态函数,由Ht决定。
随后,智能体根据新的状态和环境反馈奖励,按照一定的策略执行新的动作。其中奖励根据下式不断累计直到终止条件,即为累计回报:
式中Gt代表累计回报,Rt+n代表从当前时刻t开始计算,第n个时刻的奖励值,γ为折扣因子,用于表示当前奖励对未来长期累积回报的重要性。
上述过程为智能体和环境通过状态、动作和奖励进行交互的方式,如图2所示。通常,单智能体RL问题会被建模为马尔可夫决策过程(MDP)<S,A,P,R,γ>,其中S,A,P,R,γ分别是状态表示集、动作集、状态转移函数、奖励函数和折扣因子。π是当前智能体在状态s下采取动作a的策略,表示智能体在当前状态下采取各个动作的方案:
图2 RL交互示意图
式中P为状态转移函数,即在t时刻的状态St下采取动作At后通过式(4)转移到状态St+1的概率。
智能体的最终目标是寻找一个最佳的策略方案,使得累计回报最大化,策略可以通过如下状态值函数式更新:
式中V(s)为状态s下的值函数。
智能体状态值函数迭代遵循贝尔曼方程,可以通过下式进行简化:
简化后为:
式(7)中的Pπ和Rπ可以根据下式进一步进行展开:
展开后为:
进一步明确了状态值函数与当前状态与动作之间的关系。
RL的优化目的是寻求最优策略使得累积期望回报最大。以Q-learning[8]为代表的传统RL方法利用表格或简单线性函数的方式来估计状态-动作值函数,适用于状态空间有限的情况。而实际的交通场景复杂多变,很容易导致状态空间或动作空间剧增,产生“维数灾难”,致使表格或简单线性函数的方式估计状态-动作值函数存在很大的局限性。为解决这一问题,很多研究在强化学习中引入深度学习(DL),利用复杂、非线性、带参数的深度神经网络来逼近强化学习中的状态-动作值函数,抽取高维数据的抽象特征,以实现降维。这种将深度学习与强化学习联合起来的方式称为深度强化学习(DRL),其中的典型代表为谷歌旗下DeepMind公司提出的深度Q网络(DQN)[9]。DRL很好地结合了DL的感知能力和强化学习的决策能力,且根据其最优策略的获得方法可将DRL分为三类:值函数(Valuebased)、策略梯度(Policy Gradient)和值函数与策略梯度相结合的演员-评论家算法(Actor-Critic)。后面提及的关于交通结合RL的算法,如无特殊说明,均是基于DRL网络。
在上述DRL基本概念的框架下,本节将重点解释DRL与信号控制相结合的原理。在信号控制中,环境是道路上的交通状况,智能体用于控制交通信号灯。在任意时刻t,环境向智能体发送当前时刻的状态st,状态st包含当前时刻的交通环境描述(如信号相位、车辆等待时间、车辆队列长度、车辆位置等,通常忽略行人、非机动车辆等因素对交通的影响)。智能体将根据当前时刻的状态st和当前优化策略确定动作at;动作at将在环境中执行,生成一个即时奖励rt,其中奖励可根据路口交通状况和优化目标进行不同的定义:
式中Gt为从当前时刻一直到终止时刻的累计回报,即期望收益;rt+i为从当前时刻往后第i个时刻的奖励值。
并通过不断优化策略使式(11)中定义的期望收益最大化,进而使得路口的拥堵最小化,其流程如图3所示。
图3 RL交通信号控制流程图
此外,能否实现对解空间的全面搜索以及对自身经验的充分利用,是决定DRL能否取得最大累计回报的关键因素,在DRL中也被称为探索和利用的平衡问题,主要由RL的决策机制决定。目前常用的决策机制有ε贪婪法和玻尔兹曼探索法。
在DRL框架下,信号控制存在如下三方面主要影响因素:
➢状态设计:交通状态用以描述道路上的状况,其指标选择应充分反映当前的交通环境。
➢奖励设计:由于DRL的目标是最大化累积回报,根据式(1)的定义可知,奖励的选择决定了信号控制的倾向性,如通行效率最大、停车次数最少等。
➢动作方案设计:不同的动作方案也会对交通信号控制策略性能产生影响。如果智能体的动作被定义为“要改变到哪个相位”,则相位相序将被定义为自适应模式。
在最近的研究中,信号控制的状态特征包括等待时间、队列长度、车辆数量和当前交通信号阶段等要素,而随着新型传感器的逐步普及和卷积神经网络(CNN)[10]的快速发展,道路上的车辆位置图像也被作为状态特征之一。典型的奖励定义是队列长度、等待时间和延迟时间等几个分量的加权线性组合。而对于动作方案的设计则主要围绕相位的切换和相位持续时长展开。后续我们将从状态设计、奖励设计和动作方案设计三个方面进行详细说明。
2.2.1 状态设计
在任意时刻t,智能体接收一些环境信息的定量描述来构造状态空间,这些定量指标包括:
■队列长度。即车道上的等待车辆总数。目前不同的研究者对于车辆的“等待”状态存在差异化定义。其中 Bakker等[11]、Kuyer等[12]将速度为 0 的车辆视为等待车辆,而Wei等[13]则将车速小于0.1 m/s的车辆视为等待车辆。
■ 等待时间。定义为车辆处于“等待”状态的时间长度。不同研究者对于等待时间的开始时刻也有不同的定义。Wei等[13]、van等[14]认为等待时间是从车辆上一次移动的最后一个时间戳开始到下一次移动的第一个时间戳结束,而 Bry 等[15]、Wiering等[16]则将车辆进入路网作为起始节点,累计叠加车辆在整个网络上等待时间。
■延误时间。通常被定义为实际行程时间与预期行驶时间(可用距离除以限速表示)的差值[13]。
■路网承载车辆数。通常被定义为车道上排队车辆与行驶车辆之和[17-18]。
■行程速度。速度用来衡量车辆行驶状况时受预先定义的速度限值影响很大。由于不同的车道具有差异化限速,大部分研究多采用比例的方式表征速度,即车辆实际速度与路段限速的比值[19-20]。
■相位与相位持续时间。相位信息通常通过预定义的相位索引来表示,并将其集成至状态空间[14];相位持续时间定义为当前相位从开始到当前时刻的持续时间[15]。
■拥堵情况。一些研究将车道的拥塞情况融入状态空间,提升对拥堵特征的有效学习[21-22]。车道拥堵可以定义为拥堵指标(0表示不拥堵,1表示拥堵)或者量化的拥堵程度。
除了基于特征的值向量之外,近年来RL驱动的信号控制算法呈现出愈发复杂的状态空间趋势,典型代表是用图像作为状态的元素之一,期望更加全面的描述交通状况,通常用类似图像的状态格式进行表示[13-14,23],称为离散流量状态编码(DTSE)。Mousavi等[23]、Garg等[24]认为原始 RGB 图像也可作为一种状态表示方法,遵循与原始DQN[9]相同的处理方法。此外,也有研究基于交叉口的动态图像提取车辆的位置、速度及混合加速度等信息,并结合信号相位组合形成多样化状态图像[24-27]。
如此高维的学习通常需要大量的训练样本,意味着训练智能体需要很长的时间。然而,高维数据下的智能体很难从状态表示中提取有用信息,过长时间的学习不一定带来性能提升。
2.2.2 奖励设计
深度强化学习中的回报为一标量值,是速度、延误等交通数参数的加权值。从区域整体角度考虑,所有车辆的行驶时间最小化通常被选做信号控制的优化目标,但却很难直接作为奖励参数,其原因如下:1.车辆的行驶时间不仅受信号影响,还受其他因素的制约,如车辆的自由流速度等。2.当信号控制器无法感知车辆目的地信息时,优化网络中所有车辆的行驶时间将变得异常困难。为此,奖励函数通常被定义为排队长度[13,28-29]、等待时长[13,30]、累积延误[31]、速度[19]、车辆等待数[14]、通行量[17,32]、相位变化频数[14]、事故发生数[13-14]和背压系数[33]等部分或全部因素的调和加权值。
2.2.3 动作方案设计
强化学习算法在接收状态信息后从所有可能的动作方案中选取一个最佳动作并加以执行;采取的动作对强化学习的性能和效果有着决定性影响。依据相位相序切换机制的不同,最常见的动作优化策略可分为自适应式和固定顺序式两类。前者依据状态变化从所有可能的动作方案中挑选最佳动作[34-36],后者先将相位相序按照一定结构进行排序,然后将优化问题转化为当前绿灯否切换至下一相位的决策问题[14,16-17]。
此外,亦有学者以周期时长为基本优化单位,在固定周期时长的前提下,同步优化单周期内所有相位阶段的持续时间[18-19]。为减少交通状态随机扰动带来方案的短时剧烈波动,可首先从历史方案数据库中筛选动作的候选持续时间,进而通过环境、方案与回报的学习建立状态与候选方案的匹配关系。
深度神经网络是DRL网络中的重要组成部分,本小节对其进行归纳总结。多层感知器,即标准的全连接神经网络模型[37],是经典的数据挖掘工具。由于交通控制的状态空间包含图像信息,因此需要采用包含核滤波器的多层感知器即卷积神经网络(CNN)[10];CNN一般由卷积层,汇聚层和全连接层组成,具有局部区域连接、权值共享、降采样的结构特点。然而,信号控制问题中的状态空间维度很高,且图像复杂,许多学者从均衡效率和功能的角度进行了大量探索[38]。
交通流量及信号方案均为时序数据,本身有很强的时间关联性,将递归神经网络RNN融入基于DRL的信号控制中可以更好的挖掘信号方案之间的时序变化特征[39-41],减少因交通状态随机短时急剧波动而带来信号方案的失稳性[42-43]。此外,自动编码器可以在低维子空间中智能学习高维输入数据的编码,并通过解码重建输入,自动清除输入数据上的噪声干扰,提高信号方案的鲁棒性[44-45]。推荐对深度神经网络感兴趣的读者阅读Alom等[46]的研究成果。
本节将重点介绍验证信号控制策略性能的实验设置:仿真软件和仿真环境。
2.4.1 仿真软件
信号控制策略的部署和测试成本高,劳动强度大。因此,在实地测试之前,利用交通仿真软件模拟潜在应用效果是一种有效的替代方案。信号控制的模拟往往涉及大量异构场景,需要考虑车辆环境中一些特定的移动模型,包括车辆跟驰模型、换道模型和路径选择模型等。由于移动模型对仿真结果的影响很大,因此这些模型参数的设置必须尽可能接近真实情况。最早用于DRL的交通仿真软件是基于Java开发的Green Light District(GLD)模拟器[47],可以很好地满足车辆导航与信号控制的协同学习等需求。为适应未来自动驾驶的迫切需求,德克萨斯大学奥斯汀分校开发了用于车辆混行情况下的The AutonomousIntersectionManagement(AIM)软件[15];该软件支持车辆导航、加速和减速等行为,并包含车辆尺寸在内的微观细节。目前最为流行的开源仿真软件为Simulation Urban Mobility(SUMO)[48];该软件使用Python与环境进行交互,并允许用户通过流量控制接口库,模拟不同的交通对象,包括小汽车、公交车和行人,其仿真环境示例如图4所示。同时,SUMO还允许从OpenStreetMap中导入真实的道路网络,可在网络的任意位置设置驶入驶离模块。SUMO还支持其他高级计算框架,包括C++、JAVA等,可以快速适配各种应用场景。在SUMO 的基础上,CityFlow[49]针对大规模城市交通场景的MARL做了更好的适配,能够多线程模拟城市级别的交通网络运行,大幅提升了仿真速率。其他还有一些仿真软件如 AIMSUN[50]、Paramics[51]和VISSIM[52]等也可以支撑DRL下的信号控制优化。
图4 SUMO交通仿真模拟图
交通系统是个复杂的动态系统,且基于DRL的信号控制策略需要不断与环境交互并实时作出决策,因此面向DRL的交通仿真软件应当具备以下的条件:(1)可以结合二维或三维模型,真实且直观地完成对于真实道路网络的精细化模拟。(2)拥有软件开发环境或编程接口,允许用户通过C、C++、JAVA、Python等编程语言调用或控制对应的交通对象,为信号机等智能交通设备等在环运行提供可能性。(3)具有良好的数据处理和图表可视化能力,并提供并行运算功能,满足大规模城市路网模拟需求。
2.4.2 仿真环境
仿真环境主要包括两个层面,一是路网拓扑结构,二是适配于生成路网的交通流数据集。
路网拓扑结构可表示为有向图,其中节点代表交叉口,边代表道路。大部分软件采用文本格式的数据来描述诸如节点、路段等路网信息,也有如VISSIM、SUMO等少数软件支持图形输入界面。路网节点的规模一般支持几十个到上百个之间。但由于现实道路所要考虑的因素非常复杂,如车道位置、形状和限速等,目前大部分研究均使用简化版的人工模拟路网[19,53];部分使用真实路网的研究也会忽略如行人过街等过于复杂的因素[13,33]。因此,目前的软件仿真与实地验证还存在着不小差距。
在流量设置方面,对于车辆的配置有两种普遍的方法:一种是基于输入的交通流和转向比例,该方法的车辆按照交通流的需求随机分布在路网。另一种是基于OD和路径选择,车辆在OD之间被分配了固定的路径。但上述两种方案缺少对动态路径选择行为的考虑,尤其缺乏突发事件下出行者对路径选择行为的描述,致使仿真软件很难真实再现实际交通流运行。
在仿真环境运行过程中,目前的主要软件均支持动画演示输出和数据库格式输出,并可在运行过程中通过信息接口实时获取所需的交通信息,如行驶速度、行驶时间、拥堵情况、道路排队长度、车辆冲突次数、尾气排放量等。在将获取的交通信息进行数据标准化处理的基础上,根据DRL的优化目标进行相应的状态和奖励设计。
尽管研究者对基于DRL的交通信号优化产生了极大的兴趣并做出了很多努力,且到目前为止也取得了卓有成效的研究成果,但仍有许多重大挑战和亟待解决的技术问题。
目前基于DRL的信号控制技术均基于仿真软件,对一些安全性要素进行了简化处理。例如在回报函数中,事故等安全要素通常定义为一个很大的负值,但这种定义无法避免事故;同时,过大的负回报会导致学习模型无限倾向于局部方案,降低方案实施效果。因此,如何将风险管理引入到目前的DRL体系中,使得DRL在物理环境中具有可接受的安全性是未来研究的一个重要方向。
不同的路网和交通流量条件往往会对最终的实验结果带来巨大的差异,然而目前在基于DRL的信号控制领域缺乏被行业广泛认可的标准环境和公开数据集。同时,目前许多基于DRL的方法缺乏与韦伯斯特、背压等传统的交通控制方法[54]的比较,在一定程度上减弱了基于DRL的方法可信度。因此,如何构建一个标准的公开仿真平台是未来研究的一个重要方向,该平台需要满足在路网层面接近真实交通物理环境,仿真交通流情况其数据集满足城市交通流变化规律,同时提供包含传统交通控制和基于DRL的信号控制的基准方法。
现有研究普遍将奖励定义为多个因素的线性加权组合,存在如下两点问题:一是这些分布式的奖励要素在交通流理论中并没有直接联系,不能保证最大限度的奖励等同于网络运行效率最大化;二是调整这些要素的权重系数相当棘手,且交通流运行结果对这些参数高度敏感。虽然所有奖励因素都与路网状态及交通流运行态势有关,但不同的加权组合会产生显著性差异的结果。不幸的是,目前还没有精确选择这些权重基准的方法或者策略。
状态特征的细节优化如同奖励设计一样,非常显著的影响方案结果。在目前基于DRL的信号控制中,对状态的数据格式没有统一的规范,高度依赖于设备的原始输出,带来很大的数据处理工作,尤其是图像类等高维数据的处理工作。因此,研究者需要关注不同硬件系统(如摄像机、环路检测器、微波传感器等)的数据形式,在数据部分可测和噪声数据影响下设计状态空间的表达方法。
同时,由于交通状态特征高度依赖于传感器、控制器等硬件的功能集成,如何及时识别偶发性设备故障、容忍某些部件故障、保障系统的鲁棒性和稳定性是另一个关键问题。
随着自动驾驶与网联车技术的不断发展,车车之间的通信被引入智能交通系统。在此背景下需要针对信号灯、自动驾驶车辆等多个平台采用统一的管理和自适应控制策略,探索更加高效的车辆和信号灯协同模式;未来的交通控制可能会呈现如图5所示的复杂趋势。
图5 RL交通信号控制流程图
本文概述了基于深度强化学习的交通信号控制技术,剖析了存在的主要问题及挑战。首先以一些成熟的信号控制技术为引入,简要介绍了强化学习的相关基本概念及深度强化学习技术。此外,以交通信号控制为需求牵引,探讨了信号控制下的深度强化学习状态空间、回报函数、动作空间等智能体单元的设计过程以及仿真实验流程。最后,简要讨论了基于深度强化学习的交通信号控制方法所面临的一些主要问题与挑战。希望本文可为信号控制领域的研究人员和技术人员提供一定的参考。