平衡主线和匝道交通运行的强化学习型匝道控制研究
2023-06-02章立辉余宏鑫熊满初胡文琴王亦兵
章立辉,余宏鑫,熊满初,胡文琴,王亦兵
(1. 浙江大学 建筑工程学院 智能交通研究所,浙江 杭州 310058;2. 浙江大学 建筑设计研究院有限公司,浙江 杭州 310014;3. 浙江大学 平衡建筑研究中心,浙江 杭州 310014)
0 引 言
为解决高速公路拥堵问题,J.A.WATTLE-WORTH[1]提出了高速公路匝道控制算法;G.GOMES等[2]研究表明匝道控制可有效缓解高速公路拥堵提高通行效率;D.P.MASHER等[3]提出基于需求-容量差的开环控制算法,以下游流量最大化为目标,通过计算匝道上下游的需求容量差来调节匝道入流;M.PAPAGEORGIOU等[4]提出了经典的闭环控制模型ALINEA,通过反馈控制将主线下游车道占有率控制在期望值附近;WANG Yibing等[5]将比例积分微分控制中的积分项引入ALINEA模型中,提出的PI-ALINEA模型能够更好地应对由于下游瓶颈导致的拥堵;贺敬凯等[6]建立了基于BP神经网络的入口匝道控制器,仿真实验发现神经网络可有效地应用于入口匝道控制;赵明等[7]提出基于迭代学习的入口匝道控制方法,通过数学分析和仿真实验,证明其在匝道受限条件下仍能保持较好的控制效果;CHEN Jiming等[8]根据收集的8.9亿条匝道车辆纪录构建了动态拥堵阈值,设计了自适应匝道控制方法;CI Yusheng等[9]引进基于小波神经网络的交通流量预测模型来预测短时交通需求,提高了匝道控制效果;C.JACOB等[10]将强化学习(reinforcement learning, RL)引入匝道控制;王兴举等[11]提出了不完全信息条件下的强化学习型高速公路匝道控制方法,实验比较了不同合流交通量下的控制效果,发现在交通量较大的情况下控制效果非常明显;M.DAVARYNEJAD等[12]提出了基于标准Q学习的、考虑匝道排队长度限制的强化学习匝道控制模型,并证明该模型在长时间合流拥堵的交通场景下有较好的控制效果;K.RAZAEE等[13]采用kNN-TD算法,通过实际交通需求场景的验证,发现kNN-TD算法可显著提高匝道控制模型的学习效率,能够解决更加复杂的大规模匝道控制问题;LU Chao等[14]提出了满足匝道排队长度限制的强化学习型匝道控制一般框架,探讨了固定交通需求下不同匝道排队长度限制对匝道控制效果的影响;冉润东[15]利用深度强化学习动态调整ALINEA模型中的控制参数,形成了同时考虑了合流区域通行效率和匝道排队长度的DDPG-ALINEA模型,并在实际交通需求场景下进行了验证;戴昇宏等[16]以视频图像为输入,提出了基于图像卷积神经网络的匝道控制深度强化学习模型,在长时间合流拥堵的场景下开展实验,发现该模型提升了瓶颈疏散效率;ZHOU Yue等[17]针对匝道下游远距离处存在交通流瓶颈问题,提出了基于Q-learning的匝道控制方法,实验发现该方法可以减小合流区车流密度的波动;韩靖[18]提出了基于SARSA算法的单匝道控制模型,并将其扩展至多匝道的协调控制,同时引入匝道负荷系数以优化匝道排队长度。
综上,一方面,强化学习型匝道控制模型训练过程中交通需求输入固定,训练场景单一,这样训练得到的模型的鲁棒性可能存在不足;另一方面,匝道控制方法对匝道排队长度考虑不充分,在对匝道排队长度进行限制时,或将匝道排队长度设置为惩罚项,或对匝道最大排队长度进行限制,设置较简单,不能随交通流的变化而动态调整。
笔者提出了一种平衡主线和匝道交通运行的强化学习匝道控制(deep reinforcement learning-based adaptive ramp metering, DRLARM)模型。首先,考虑交通流的动态变化以训练更为鲁棒的自适应匝道控制模型,且在奖励函数中考虑匝道排队长度以平衡主线和匝道的交通运行;然后,采用多种评价指标,包括车辆平均行程时间A、车道占有率o、匝道排队长度W以及匝道损失时间比P等,对比分析了无控制及DRLARM、ALINEA和PI-ALINEA模型控制的控制效果,验证了DRLARM模型的有效性。
1 问题描述
图1为匝道控制系统构成。图中,Du为上游交通需求;Dr为匝道交通需求;qd为下游流量。在主线设置了检测器1、检测器2、检测器3,以检测交通流参数,包括车道占有率o和车速v;在匝道设置了排队检测器,以检测匝道排队车辆数w。控制单元接收到检测器的数据后,根据采用的匝道控制模型,计算出下一控制时段匝道信号灯的具体配时方案。
图1 匝道控制系统构成Fig. 1 Configurations of ramp metering system
2 深度强化学习框架搭建
强化学习作为解决序列决策问题的重要方法,赋予智能体自监督学习能力,能够自主与环境进行交互,通过获得的奖励不断修正策略[19]。深度学习通常由多层非线性运算单元组合而成,从大量训练数据中学习抽象的特征表示,以发现数据的分布式特征[20]。而深度强化学习通过整合深度学习和强化学习的力量,为顺序决策提供了一个通用和灵活的框架,可用于解决交通控制和规划问题[21]。笔者基于深度强化学习中的竞争结构深度双Q网络(Dueling-DDQN)提出了DRLARM模型。
2.1 基于竞争结构的深度双Q网络
Dueling-DDQN是强化学习Q-learning算法和深度学习结合后的改进算法。当需要处理的问题较为复杂、状态动作空间维度较大时,Q-learning算法往往会严重受限。因此,引入了DQN算法[22]来克服这一缺点。DQN算法利用一个深度学习网络,得到Q值的近似值,为强化学习应用复杂工程环境提供可能[23]。但是,DQN算法也有不足,例如:过估计,即如果对Q值的高估不均匀,便会导致采取错误的最优策略[24]。为解决这一问题,H.van HASSELT等[25]提出了深度双Q网络(DDQN)算法,其结构如图2。
图2 DDQN算法框架Fig. 2 Framework of DDQN algorithm
交通控制问题可能存在许多具有相似价值的决策动作,此时难以比较Q值大小,从而影响算法稳定性。WANG Ziyu等[26]提出以竞争网络结构Dueling-(DQN)为主要网络结构,将输出Q值的Q值函数分解为状态价值函数和动作优势函数,即
Q(st,at)=Vs(st)+Va(st,at)
(1)
式中:Q(st,at)为当前状态动作下的Q值函数;Vs(st)为当前状态下状态价值函数;Va(st,at)为当前状态动作下的动作优势函数。
在相同状态下,估计智能体采取不同动作时产生Q值,状态价值函数Vs(st)不受动作影响,而动作优势函数Va(st,at)在不同动作下会发生改变,这有助于提高模型的稳定性。基于竞争结构的深度双Q网络便是将DDQN和Dueling-DQN两种算法结合,同时具有两者的优势。
对于匝道控制问题,在模型训练过程中,训练环境可能长时间处于相似的交通状态,导致采集的样本分布不均衡,使Q值过估计;同时,匝道控制的效果受到交通环境和控制措施的共同影响。因此,笔者将基于竞争结构的深度双Q网络运用于解决匝道控制问题。
2.2 深度强化学习智能体设计
2.2.1 状态选择
状态变量用于反映环境的变化。选择车道占有率o、车速v、匝道排队车辆数w作为基本状态变量,即[o1,v1,o2,v2,o3,v3,w],其中,下标1、2、3表示数据来自图1中检测器1、检测器2、检测器3。如果智能体仅根据流密速参数采用相同的动作或者控制参数,则可能产生截然相反的控制效果,即拥堵加剧时,车道占有率将不断增大,此时应该延长匝道信号的红灯时间以利于主线交通;拥堵逐渐消散时,应缩短匝道信号的红灯时间让更多的匝道排队车辆通行。因此,引入车道占有率变化,即[o1-o1′,o3-o3′]来表示变化趋势,其中o1′、o3′分别为上一控制周期检测器1、检测器3测得的车道占有率。如图3中i点,当拥堵越发严重时,曲线往ic方向发展;当拥堵逐渐消散时,曲线往iuc方向发展。可见,流密速参数相同,交通状态改变趋势却可能不同。最终,确定状态空间为[o1,v1,o2,v2,o3,v3,w,o1-o1′,o3-o3′]。
图3 交通状态示意Fig. 3 Schematic diagram of traffic state
2.2.2 动作选择
通过改变匝道信号配时来调节匝道交通流的入匝率。控制信号灯时长一般有3种形式:“一车一绿灯”“多车一绿灯”及“全信号周期”[27]。为了减少大车队换道对主线交通的负面影响,笔者采用“一车一绿灯”的信号灯控制形式,即固定绿灯时长为2 s(一辆车通过所需时长),改变红灯时长来调节进入主线的车辆数。红灯时长从集合{0,1,2,3,5,8,18}(单位:s)中选择,由于绿灯时长2 s固定,由此可知,允许最大入匝流量分别为{1 800,1 350,1 000,800,600,400,200}(单位:veh/h)。
2.2.3 奖励函数设置
在自适应匝道控制模型中,考虑动态调整排队长度限制以控制匝道车辆的损失时间。首先,引入匝道损失时间比P来评价匝道排队限制措施的优劣:
(2)
式中:tr为匝道车辆损失时间,s;tt为所有车辆总损失时间,s。
实现匝道排队限制自适应调整的目的是,在交通流条件变化时兼顾主线和匝道的损失时间,使匝道损失时间比值保持相对稳定。
当道路拥堵时,总行程时间最小化的目标可转换为使主线的车道占有率接近期望占有率[28],即min(ob-oc)2,其中,oc为期望车道占有率,ob为主线瓶颈位置的车道占有率,即检测器2测得的车道占有率o2(ob=o2)。所以,设第k个周期与总体通行效率相关的奖励Re(k)为
Re(k)=-(ob,k-oc)2
(3)
式中:ob,k为第k个周期主线瓶颈位置的车道占有率,%。
第k个控制周期内所有车辆总损失时间tt,k可由式(4)得到[29]:
tt,k=T[T(Du,k+Dr,k-qd,k)+Nk-1]
(4)
式中:T为控制周期时长,T=20 s;Du, k、Dr, k分别为第k个周期内上游、匝道的交通需求,veh/h;qd,k为第k个周期内下游流出流量,veh/h;Nk-1为第k-1个周期系统内的总车辆数,veh。
因此,第k个周期内所有车辆总损失时间可写为
tt,k=T[T(Du, k+Dr, k) +Nk-1] -T2qd,k
(5)
根据流量守恒定律,下游流出流量即检测器2所测主线通过流量,由Greenshields模型可得:
(6)
式中:α为比例系数;vf为自由流车速,km/h;ob, k为第k个周期主线瓶颈位置的车道占有率,%。
联立式(5)、式(6)可得:
(7)
式(7)中,除ob, k之外其他参数在第k个周期均为定值,因此tt, k可以看作关于ob, k的一元二次函数。
第k个周期内匝道车辆损失时间tr,k可以通过第k个周期内匝道排队车辆数wk获得,即
tr,k=Twk
(8)
联立式(7)、式(8),第k个周期内匝道车辆损失时间比Pk为
(9)
由式(9)可见,Pk与wk、1/ob,k2正相关。考虑到交通流畅通时,1/ob, k2值可能会非常大,因此,在强化学习奖励函数中增加第k个周期的排队惩罚项Rc(k):
(10)
式中:β为惩罚权重系数。
在主线拥堵时,惩罚项倾向于增加匝道排队长度限制,优先保障主线运行;在主线不拥堵时,保持匝道排队长度限制不变(oc固定),从而不会导致匝道排队惩罚过大。在交通拥堵变化情况下,智能体会及时调整匝道排队长度。
结合式(3)、式(10),最终第k个周期奖励函数R(k)如式(11):
R(k)=Re(k)+Rc(k)=-(ob,k-oc)2-
(11)
3 自适应控制模型训练和结果分析
3.1 DRLARM模型训练过程
3.1.1 仿真设计和参数设置
采用微观仿真来训练匝道控制模型,以期更真实地反应交通流运行。微观仿真平台选用SUMO。选取杭州绕城高速三墩互通段搭建仿真路网,主线为2车道,合流区长度约200 m,道路线形如图4。
图4 仿真路网道路线形Fig. 4 Simulated road network road alignment
SUMO中车辆的跟驰模型为Krauss模型,使用默认参数;换道模型为LC2013模型,由于原参数较为保守,为表达合流区车辆的换道冲突,修改了部分换道参数,修改后得到道路通行能力约为4 900 veh/h,期望车道占有率为15%。关键的深度强化学习算法参数和车辆驾驶行为参数设置见表1。
表1 强化学习算法参数和车辆驾驶行为参数
3.1.2 两阶段训练
笔者将DRLARM模型的训练过程分为2个阶段:
第1阶段为单一场景训练阶段,在某一固定交通流场景下训练出一套基本的强化学习控制模型。场景又分为下游有瓶颈时段和下游无瓶颈时段,主要通过改变下游最高限速vd来实现,当vd=100 km/h时,表示下游无瓶颈;当vd=30 km/h时,表示下游有瓶颈。第1阶段训练,设置训练轮数E= 300轮(每一训练轮数即为一次完整仿真,包含300个仿真动作步长)。图5为第1阶段训练输入交通需求D及模型总奖励R值曲线。可见,单一场景训练收敛较快,大约在E= 50轮,经历约1.5万步后基本实现收敛,此后总奖励一直处于震荡状态。
图5 第1阶段输入交通需求及总奖励曲线Fig. 5 Traffic demand and total reward curve input during the first period
第2阶段为多场景训练阶段,设计多种不同的交通流场景,不同训练轮数E加载不同的交通流场景开展循环训练。第2阶段训练时,保持下游无瓶颈和下游有瓶颈2种情况,笔者构造了短时轻拥堵、长时轻拥堵、短时重拥堵及长时重拥堵共4种训练场景。4种训练场景高峰拥堵时长t′peak、下游无瓶颈时高峰总需求Dpeak1、下游有瓶颈时高峰总需求Dpeak2见表2。第2阶段训练设置训练轮数E=1 000轮。
表2 第2阶段4种训练场景交通需求参数
不同交通需求对匝道控制下车辆平均行程时间影响不同,依次循环输入4种训练场景,第2阶段各训练场景下的车辆平均行程时间A的变化情况如图6。由图6可见:
图6 第2阶段4种训练场景的车辆平均行程时间曲线Fig. 6 Average travel time curves under 4 kinds of training scenarios during the second period
1)随着训练轮数E的增加,4种训练场景车辆平均行程时间的平均值曲线震荡逐渐减小,有明显收敛趋势,但收敛速度较慢,在E≈ 800轮时,即24万步后基本收敛。
2)车辆平均行程时间收敛速度,以训练场景2、训练场景4下降较为明显,训练场景3下降有限,而训练场景1前后几乎没有变化,原因可能是,第2阶段训练的训练场景1与第1阶段训练的单一训练场景相差不大,模型在该场景下已达到最佳性能。
3.2 不同匝道控制模型比较
为了验证笔者提出的DRLARM模型的有效性,选择了4种控制模型进行对比。
第1、2种模型为经典匝道控制模型——ALINEA模型、PI-ALINEA模型,通过闭环控制,利用反馈得到的占有率误差来动态调整匝道的流量。模型匝道流出量见式(12)、式(13):
ALINEA模型:
qr,k=qr,k-1+Kr(oc-ob,k)
(12)
PI-ALINEA模型:
qr,k=qr,k-1+Kr(oc-ob,k)-Kc(ob,k-1-ob,k)
(13)
式中:qr, k为第k个周期匝道流出量,veh/h;Kr和Kc为控制参数,根据经验设置Kr= 4 km·lane/h,Kc= 20 km·lane/h。
第3种模型——RL1模型,其框架与笔者提出的DRLARM模型相同,只是改变了奖励函数,为R=-(ob-oc)2-βw,即匝道排队限制不会随着交通状态的改变而改变。
第4种模型——RL2模型,其与DRLARM模型的不同在于RL2模型采用单一固定的交通流场景进行深度强化学习训练,用以验证DRLARM模型的鲁棒性。
表3为笔者提出的DRLARM模型,以及第3、4种模型的功能设置的区别汇总。
表3 3个强化学习模型区别
表4 不同测试场景下的交通需求输入
3.3 效率指标分析
3.3.1 车辆平均行程时间A
5种控制模型及无控方案NC在不同测试场景下获得的车辆平均行程时间A仿真结果如图7。由图7可见:
图7 不同测试场景下车辆平均行程时间变化Fig. 7 Variations of average travel time under different test scenarios
1)总体来说,测试场景19~场景36的平均行程时间A要明显高于测试场景1~场景18的,即下游存在瓶颈造成的交通延误比交通需求超过道路通行能力(下游无瓶颈)产生的交通延误更严重。
2)在所有测试场景下,几种模型控制及无控制下车辆平均行程时间A由小到大排序为:ADRLARM 3)无论何种模型控制,当总需求D不变时,上游交通需求Du占比越大,车辆平均行程时间A越小。究其原因,上游交通需求越大则匝道需求越少,匝道控制模型更倾向于减少赋予匝道的通行时间,这样就减少了对主线车辆通行的影响。由于主线交通量明显大于匝道交通量,受益车辆显著大于受损车辆,因此,整体运行效率得到提高。 表5 各模型下平均行程时间的平均值 3.3.2 主线车道占有率o 图8分别为下游无瓶颈(选择测试场景14)和下游有瓶颈场景(选择测试场景32)下无控、ALINEA模型和DRLARM模型实施后,车道占有率o的时空变化。图8中纵坐标y=0点为合流点位置,y为“+”代表合流点下游,为“-”代表合流点上游。图中自上而下分别为无控、ALINEA模型控制和DRLARM模型控制。 图8 下游有/无瓶颈下车道占有率时空变化Fig. 8 Temporal and spatial variations of lane occupancy ratio with and without bottlenecks downstream 由图8可见: 1)无控制措施时,无论下游有无瓶颈,主线均出现了严重拥堵,拥堵发生在合流区,持续时间约t≈5 000 s。比较而言,当下游存在瓶颈时,主线拥挤更严重。 2)ALINEA、DRLARM模型均极大地缓解了主线拥堵,控制实施后车道占有率明显降低。 3)无论下游是否存在交通瓶颈,ALINEA模型总是将车道占有率保持在临界占有率附近,而DRLARM模型由于额外考虑匝道排队的限制,车道占有率可能长期保持略高于期望占有率。 4)下游无瓶颈场景,ALINEA模型控制时,主线出现连续短时排队的情况;下游有瓶颈场景,ALINEA模型控制时,下游交通瓶颈处拥堵缓解效果不如DRLARM模型。 综上,与ALINEA模型相比,DRLARM模型既提高了总体通行效率,又减少了主线交通流的波动。 3.4.1 匝道排队长度W 图9为不同模型控制及无控制下,36种测试场景中的匝道排队长度W(仿真时间内匝道排队车辆数w的平均值)。 图9 不同测试场景下匝道排队长度Fig. 9 Average ramp queuing lengths under different test scenarios 由图9可见: 1)测试场景19~测试场景36的匝道排队长度W小于测试场景1~测试场景18的,原因是前者的交通需求相对较小。 2)所有测试场景下,各种控制模型的匝道排队长度W由大到小的排序为:WALINEA>WPI-ALINEA>WDRLARM>WRL2>WRL1>WNC,说明DRLARM模型相比于ALINEA和PI-ALINEA模型,能有效降低匝道排队长度。 3)若降低路段车辆平均行程时间A,则路段平均行程时间的匝道控制策略伴随着匝道排队长度W的上升而下降,表明匝道排队长度W和路段平均行程时间A之间呈负相关。 表6 各模型控制下匝道排队长度平均值 图10为下游无瓶颈场景〔图8(a)〕下,ALINEA、DRLARM模型仿真得到的匝道排队车辆数w的变化曲线。 图10 下游无瓶颈下匝道排队车辆数曲线Fig. 10 Curve of the number of vehicles queuing on the ramp without bottleneck downstream 由图10可见:DRLARM模型的匝道排队车辆数峰值wpeak比ALINEA模型的低。在拥堵形成阶段,由于考虑了交通状态的变化趋势,DRLARM模型较早开始抑制入匝流量,从而减少了对主线的负面影响,所以,DRLARM模型控制下匝道排队车辆数早期增长较快;在拥堵消散阶段,DRLARM模型控制下匝道排队车辆数较早下降,从而,匝道车辆可以较快疏散。 3.4.2 匝道损失时间比P 图11为下游无瓶颈场景,不同需求分布下(随机选择测试场景1~测试场景18),DRLARM、ALINEA和RL1模型分别经过50次仿真得到的匝道损失时间比P。 图11 不同交通需求下匝道损失时间比Fig. 11 Ramp loss time radio under different traffic scenarios 由图11可见: 1)3种模型的匝道损失时间比P的排序为:PALINEA>PDRLARM>PRL1,这与各模型控制下匝道车辆平均排队长度的变化相吻合。 2)在不同交通需求分布下,ALINEA、RL1、DRLARM模型控制的匝道损失时间比P变化幅度分别为0.129、0.128、0.048,DRLARM模型的最小,表明DRLARM模型控制下匝道损失时间比相对很稳定,鲁棒性较强。 综上,笔者提出的DRLARM模型能够随着交通状态的变化动态平衡匝道损失时间和主线损失时间,不会过多牺牲匝道车辆或主线车辆,确保路权公平性,也使得匝道损失波动较小。 针对现有高速公路匝道控制方法存在的鲁棒性不足和匝道排队失衡问题,结合Dueling-DDQN深度强化学习算法,开发了一种鲁棒自适应匝道控制模型DRLARM;通过对主线和匝道交通流的分析,构造了同时考虑主线交通和匝道排队的奖励函数,其兼顾通行效率和路权公平性;采用两阶段训练方法,得到了鲁棒自适应控制模型;首次提出用匝道损失时间比来衡量控制方法的路权公平性;选取平均行程时间、车道占有率、匝道平均排队长度和匝道损失时间比作为评价指标,将DRLARM模型与无控、ALINEA模型、PI-ALINEA模型进行仿真比较。研究得到以下主要结论: 1)DRLARM、ALINEA和PI-ALINEA模型中,DRLARM模型的车辆平均行程时间最低,表明DRLARM模型提升通行效率的效果最好。 2)DRLARM模型可有效平衡匝道车流和主线车流的损失时间,提高路权公平性。 3)采用混合多场景开展模型训练可有效提高DRLARM模型的鲁棒性。3.4 匝道指标分析
4 结 论