基于机器学习的遗传算法交通优化

部署运行你感兴趣的模型镜像

使用机器学习的增强型遗传算法进行交通控制优化

摘要

交通控制优化是全球各地交通中心面临的一项具有挑战性的任务,大多数现有方法仅专注于为正常(周期性)交通条件开发自适应方法。当发生严重事件时,尤其是在大量车道或整个交叉口受到影响的情况下,优化控制方案仍然是一个尚未解决的问题。本文提出了一种新的方法论,用于在非周期性交通事件条件下优化信号控制的城市交叉口的交通信号配时。为了快速且可靠地做出决策,我们将快速运行的机器学习(ML)算法与可靠的遗传算法(GA)相结合,构建了一个统一的优化框架。首先,我们采用典型的遗传算法,将相位时长作为决策变量,以网络中的总行程时间为目标函数,并对交叉、变异和适应度计算进行精细调整,获得最优参数。其次,我们训练多个回归模型来预测所研究交通网络中的总行程时间,并选择性能最佳的模型进行进一步超参数调优。最后,我们提出一种新的BGA‐ML算法,将遗传算法与表现最佳的回归模型——极端梯度决策树(XGBT)结合到一个统一的优化框架中。通过两个实验(一个为合成数据,另一个来自真实的城域交通网络)生成对比与结果,表明新提出的BGA‐ML算法比原始遗传算法快得多,在事故条件下使用时可将近总行程时间减少一半。

关键词 —交通信号优化,遗传算法,机器学习,交通事件控制方案,非周期性拥堵,机器学习

一、引言

TRAFFIC 事件管理由于对安全和交通控制操作的影响,对于所有交通机构都起着重要作用。为了应对随机发生的事件,各个交通管理中心(TMCs)制定了政策和响应计划策略,以尽量缩短清除时间。交通信息与控制系统是确保即时响应时间的关键组件,因为它们是集中式的,能够轻松地将事件警报发送至交通管理中心(TMCs)。

许多交通管理中心(TMCs)在发生紧急情况或事故时通常采用的响应计划是激活一系列可变信息标志、关闭车道并强制转向,而受影响交叉口的信号灯组则缺乏自适应控制方法。大多数情况下,这一过程是手动的,需要等待事件被清除后才能重新启动自适应控制方案。

交通拥堵通常分为两种类型:由于日常出行模式重复而产生的周期性拥堵(RC),以及由事故、故障等意外事件引起的非周期性拥堵(NRC)[1]–[3]。最棘手的事件可能在城市中的随机位置、不同时段发生,且从不重复[1]。由于这些非周期性事件在时间和空间上的随机性,对事故条件下的网络优化进行建模和处理是一项重大挑战。

据我们所知,由于交通状况的高度可变性和事件的不确定性,目前针对严重事故条件下交通信号控制优化的研究尚不多见。

本研究旨在解决这一问题,重点在于建立一种新的交通管理解决方案,以缓解非周期性交通事故的影响,该方案结合了遗传算法(GA)和机器学习(ML)模型,相较于传统方法具有快速收敛和高准确性的优势。本文扩展了[4]中提出的工作,提出了一种名为BGA‐ML(基于机器学习的增强型遗传算法)的双层新算法,并将其作为工具用于改善交通事故响应并优化事故期间的交通信号控制方案。该方法应用于澳大利亚悉尼市的一个案例研究交通网络和一个实际网络。通过提出并比较多种情景,展示了该方法的优势。

总体而言,本文的主要方法包含以下所述的步骤,而贡献总结和优势在第二节‐D中提供:我们首先提出了一种新的交通信号控制优化方法,该方法利用遗传算法与机器学习模型的协同作用,旨在最小化受事件影响的城市网络中的总行程时间;该方法考虑了周边区域的交通状况,对受干扰影响的多个交叉口进行优化,并结合交通仿真以获取交通运行结果;其次,我们使用机器学习模型来替代交通仿真建模,并直接预测总行程时间使用所有先前模拟的历史交通记录;研究结果表明,极端梯度决策树(XGBT)的表现优于其他回归模型,如梯度提升决策树(GBDT)、随机森林(RF)和线性回归(LR);在优化框架内,我们嵌入了交通事故导致的通行能力下降以及驾驶员路线偏离;第三,我们展示了在受影响的事件道路网络中部署常规遗传算法(GA)(最初在我们的研究[4]中提出)进行信号优化前后,行程时间的显著减少;最后,我们观察到新提出的BGA‐ML具有较低的计算时间,该方法采用一种新的集成方法,利用机器学习来加速优化过程。这主要是因为我们用机器学习模型替代了仿真模型,以估计遗传算法生成的每个新交通信号方案的适应度值。其核心思想是利用所有先前的仿真情景/运行结果进行学习,从而在无需重新执行多次仿真运行的情况下选择最佳的交通信号方案。

本文的结构如下:第二节介绍了文献综述,重点回顾了迄今为止将遗传算法(GA)与机器学习建模(ML modelling)方法应用于交通信号控制的现有方法,并讨论了本文的贡献;第三节介绍了本文的方法论,包括定义、优化过程以及基础遗传算法建模,并提出了新的增强型BGA‐ML方法;第四节讨论了案例研究、网络与优化构建以及BGA‐ML方法的超参数调优,第五节通过多种情景展示了结果;第六节阐述了研究结果,第七节在澳大利亚悉尼的真实城市路网上对结果进行了再次验证。最后,本文以结论和若干附录部分结束,提供了更多信息。

II. 文献综述

A. 基于遗传算法的交通信号控制建模

当前的交通信号控制模型主要针对网络中周期性拥堵(日常重复出行模式)进行了优化,但并未对非周期性交通事件引发的拥堵进行优化或调整。严重的交通事故可能显著影响整个网络的运行性能,因此不容忽视。发表于[5]的一篇全面综述介绍了针对干线道路和高速公路的交通控制建模方法。在这篇综述中,引入了“存储‐转发模型”,通过在无离散变量的情况下实现交通流过程的数学描述,从而简化基于模型的优化方法;同时采用交通响应城市控制(TUC)策略来计算实时网络信号配时[6]。里奇[7]将多个基于知识的实时专家系统(KBES)引入先进交通管理系统(ATM),以便在发生非周期性拥堵时为控制中心工作人员提供决策建议。当时,人工智能(AI)与ATM系统的协作尚处于初步阶段。非常具有开创性,并为后续研究指明了一个良好的方向。如今,借助最新的机器学习技术和更先进的大数据处理手段,这一概念设计得以实现。

在各种模型中,遗传算法(GA)是一种流行的交通信号控制优化方法,最初由戈德伯格和霍兰德于1988年提出,并随后应用于交通信号配时优化。2004年,塞伊兰和贝尔将随机用户均衡用于建模不同信号配时下的驾驶员路径选择,同时采用遗传算法(GA)进行优化。研究还得出结论:相比以往的启发式算法,遗传算法(GA)更简单且更高效。类似地,文献[11]中的作者采用了周期长度、信号配时和相位差等多种优化参数,建立了干线道路的协调控制系统,并在优化模型中以等待队列的最小总延误为目标函数;同时,他们利用最小生成树聚类思想改进了遗传算法(GA),取得了更好的效果。遗传算法(GA)也已成功应用于多目标控制计划优化[12]和[13]。其他研究还探讨了通过优化信号配时方案来分析交叉口服务水平(LOS)的各种方法[14];其中应用了遗传算法(GA)和差分进化(DE),在解的质量方面,遗传算法(GA)表现显著优于差分进化(DE)。

近年来,由于计算能力的可用性增强,遗传算法(GA)与交通仿真开始结合,以优化网络中所有交叉口的相位差、绿信比和周期时间[15]。然而,在关键运行时段完成优化所需的延误时间方面仍存在差距,且难以满足交通中心所需的所有标准。其他文献已将遗传算法(GA)与中观交通仿真器相结合,基于从中观模型获得的适应度值来寻找近优交通信号方案(见[16])。

总体而言,文献中的大多数应用均为离线模式,实现最优交通信号控制需要较长时间,且在研究更高效、快速响应以应对非周期性交通事件方面仍存在空白。这正是我们方法的主要动机,该方法论试图通过结合遗传算法(GA)和机器学习模型,充分利用遗传算法的可靠性以及机器学习模型的快速预测时间来解决这些问题。

B. 使用机器学习进行交通信号控制建模

机器学习建模,特别是强化学习(RL)和Q学习,通常通过考虑网络(或子网络)的当前状态,并尝试不同的动作及其相关奖励,来调整实时自适应控制代理[17]。由于在真实世界中无法尝试所有动作,因此使用仿真模型来试验不同的响应动作。早期的仿真模型相当简单,因为当时可用的个人计算机计算能力并不强大[18]–[20],例如元胞自动机模型[21]。到了2000年,交通仿真软件变得更加复杂和真实,并提供了用于二次开发的应用程序编程接口;因此,大多数研究利用交通仿真器作为训练机器学习模型的基础,并开始更加关注机器学习框架的结构,包括状态空间、动作空间和奖励定义。在状态空间方面,大多数研究人员使用来自交叉口上游路段的排队车辆数([22],[23])。这种设置将忽略由交通事故引起的下游交通拥堵。动作空间通常被定义为每个信号灯的所有可能的相位([22]–[26])。奖励定义通常被定义为延误时间([22],[24])和排队长度([23],[25],[26])。

2014年和2016年,构建了两篇关于传统强化学习在交通控制研究中的综述[27],[28]。2015年,首次引入深度强化学习用于交通信号控制优化(见[29]),并在2016年由Van der Pol 等进一步改进(见[30]),同时考虑了小型网络中多个交叉口的协调。2017年,通过深度策略梯度训练了一种交通信号控制策略,并假设多个交叉口可由同一智能体控制,将其应用于大型交通网络[31],[32]。结果表明,基于策略的强化学习在交通信号控制方面具有良好的应用前景。

C. 遗传算法与机器学习集成用于交通优化

尽管以往的研究工作主要集中在改进遗传算法或机器学习框架以用于各种交通控制方法,但一些研究提出了集成方法,且大多侧重于遗传算法或机器学习方法之一。

[33]的作者使用遗传算法(GA)进行特征选择,并采用支持向量机来检测交通网络异常。遗传算法与支持向量机在网络入侵检测系统(NIDS)中被依次应用。尽管支持向量机是用于异常检测的良好机器学习模型,但其潜力有限,且无法适应各种数据流。在本文中,我们选择并研究了多种机器学习模型,通过相互比较其测试性能,以选择最合适的模型。

[34]中的作者使用遗传算法(GA)来增强各种机器学习回归模型的特征选择和参数优化,其目标是估算软件工作量。该研究更侧重于利用遗传算法改进机器学习,而不是相反。我们的主要目标是在使用遗传算法(GA)优化交通时,减少计算时间并减小种群规模。

[35]的作者探讨了归纳式机器学习如何引导进化算法的进化过程。决策树被用来识别优秀个体和较差个体的潜在特征。本文比较了概率模型构建遗传算法(PMBGA)、分布估计算法(EDAs)、基于种群的增量学习算法(PBIL)、一些单变量边缘分布算法(UMDA)、紧凑型遗传算法(cGA)以及贝叶斯优化算法(BOA)。尽管该研究与本文提出的当前方法非常相似,我们使用交通仿真建模来生成所有个体的种群,从中学习相位时长模式,而不使用预定义的种群。

[36]中的作者使用机器学习来替代发动机设计问题中的仿真。其目的是通过测试各种机器学习模型来减少总体计算时间。尽管该方法与我们的方法非常相似,但我们所解决问题的复杂性源于交通网络中的高度随机行为,这需要大量训练数据;这意味着可以应用的信号控制方案几乎有无限组合。

文献中的其他各种研究要么关注机器学习优化,要么关注遗传算法调参,或单独关注仿真建模;然而,据我们所知,目前尚未有研究提出将交通仿真建模、遗传算法优化和机器学习调参相结合用于交通拥堵管理。总之,我们的主要贡献在于跨学科领域的交叉边界,通过将强大的数据科学方法与交通建模和优化技术相结合。总体而言,其主要优势不仅在于提升交通仿真建模的计算时间速度,还能减少个体搜索空间以及优劣候选者的区分过程,从而避免在运行和分析交通仿真建模输出时浪费大量时间和资源。

D. 贡献总结

本文的研究贡献主要从以下三个角度展开:

从遗传算法视角来看,使用我们的集成方法可以在进化过程中通过预测每个个体(基于先前的交通仿真运行)的适应度值,实现显著的计算时间节省和高度加速。这不仅避免了运行不必要的交通仿真模型(这些模型可能被证明效率不足),还提前筛选出表现最佳的个体(在本例中为相位时长),这些个体此前已产生更优的结果。

从机器学习视角来看,现有文献中的主要研究空白在于,大多数机器学习模型旨在训练智能体根据交叉口各个方向的车辆情况在正常交通状况下控制交通信号灯。目前尚无研究探讨在交通事故条件下应用机器学习方法进行交通信号控制优化。我们的模型考虑了交通信号的协调,以在事件地点周围重新规划车辆路线。总而言之,以往使用机器学习的交通信号控制方法几乎未讨论解决交通事故引起的突然通行能力下降问题的能力。在所有情况下,机器学习模型都被用于实时决策,而这些决策在可靠性和适用性方面可能难以评估。本文中,机器学习建模用于性能(适应度值)预测,而非直接做出决策。我们使用多种机器学习模型处理在所有已知交通条件下包括交通信号变化以及发生通行能力下降时的交通状态时间序列数据报告的事故。最后,我们准确地预测了网络在未来近期的性能。

从遗传算法与机器学习集成的角度来看,据我们所知,目前文献中尚无研究将该框架用于交通信号优化,更不用说结合微观层面的交通仿真建模。交通的动态特性在干扰条件下尤其难以优化。我们的观点是,通过学习以往事故条件下的经验,我们可以更高效地优化和调整交通,而无需广泛测试无限的相位时长,或仅仅使用有限的可能性子集。

第三部分. 方法论

A. 问题表述

创建交通事件响应有四个不同的步骤:事件识别、确认、响应和清除。本文主要关注在事件已被交通管理中心确认并报告后,对交通管理与控制进行建模。所提出的模型应用于响应和清除阶段。为了简化案例研究,我们假设事件已被提前检测和确认,并且事件清除的持续时间已被预测。此外,事件的严重程度也被报告,用以指示受影响的车道数量。

最后但同样重要的是,事件受影响区域是根据以往的研究确定的。最近,Pan et al.[37]基于历史数据,利用先进传感器研究了交通事故的时空影响,并提出了道路网络中事件影响区域及延误发生预测。受影响区域通常包含所有因该事件而出现拥堵的周边网络,且一般与事故发生地点的时间相关。

我们试图解决的问题是如何优化事件地点周围的交通控制方案,以最小化事件对车辆总行程时间的影响。因此,我们使用预先确定的受影响区域内的道路网络,并将问题表述如下:

给定一个已确定受事故影响的道路网络,我们定义如下:
A是网络中路段的集合,W是网络的起讫点对集合,Rw是起讫点之间的路径集合 pair w ∈ W
da是路段 a ∈ A 上的排队延误,
f w va是链路 a ∈ A 上的链路流量,λa 是“链接绿信比”,由路段末端的交通信号灯决定(定义将在下一节中讨论)。
ta(va, λa) 是链路a ∈ A上的行程时间,表示为链路流量va和“链接绿信比” λ a 的函数。
Sa 是链路 a ∈ A 的容量,
如果连接OD对w的路径r使用了链路a,则σ awr为1,否则为 0。
Dw是OD对w ∈ W之间的需求,

目标是最小化网络的总行程时间。目标函数如下:
$$ \text{minimize} \sum_{a \in A} \int_{0}^{v_a} t_a(v_a, \lambda_a) dx $$
Subject to
$$ \sum_{w \in W} \sum_{r \in R_w} f_{rw} \sigma_{awr} = v_a, a \in A $$
$$ \sum_{r \in R_w} f_{rw} = D_w, w \in W $$
$$ v_a \leq \lambda_a S_a, a \in A $$
$$ f_{wr} \geq 0, r \in R_w, w \in W $$

公式2表示路径流量(f w r)与链路流量(va)之间的关系。公式3表示路径流量与OD需求之间的流量守恒关系。公式4表明链路流量受限于出口容量,该容量取决于链路容量和链接绿信比。公式5表明链路流量必须不小于零。关于将行程时间选择为目标函数的解释,请参见附录D。

B. 链接绿信比的定义

本文中,“链接绿信比”(λa)的定义与Yang和 Yagar[38],研究中的定义相同,即在信号交叉口为某条链路(链路a)分配的绿灯时间。而对于Smith和Van Vuren[39],而言,绿灯时间分为:相位绿灯时间和链路绿灯时间。相位被定义为交叉口中一组最大兼容的进口道。因此,相位绿灯时间是指在信号交叉口的一个周期内某一相位的绿灯时间。链路绿灯时间则是在信号交叉口的一个周期内,所有相关相位为某条链路所分配的绿灯时间之和。

设 j k为交叉口j处第kth相位的绿灯时间所占比例,因此可将 j k称为“相位绿信比”。交叉口各相位绿灯时间的分配决定了进入该交叉口各链接的绿灯时间,因此对于每条链接a,“链接绿信比”(λa)是所有包含链接a通行方向的相位在交叉口j处的相位绿信比(j k)之和,即:
$$ \lambda_a = \sum_{\text{phases } S_j^k \text{ contain link } a} _j^k $$
明确地说,对于每个交叉口 j,相位绿信比 j k 在 k 上的总和将为 1:
$$ \sum_k _j^k = 1. $$

C. 假设

本文中,我们假设OD需求在分析的持续时间内是预先定义且固定的。我们使用交通分配模型来获取路段交通流量依赖于链路成本函数和起讫点需求。因此,我们可以得到确定的链路流在量公。式7中,我们假设周期损失时间已包含在交叉口的每个绿灯时间内,因此未使用符号来表示周期损失时间。

此外,我们假设每个相位的黄灯时间被视为绿灯时间的一部分。综上所述,本文中的 λa指的是“链接绿信比”,而非“相位绿信比”。另外,在所研究的道路网络中,所有路段的链接行程时间函数(或成本函数)是固定的,仅取决于链路流量和“链接绿信比”。因此,我们试图为每个路段优化的唯一参数是“链接绿信比” λa。

对于网络中的交通信号,我们假设周期的每个相位为固定的交通流提供绿灯。周期长度和周期内的相位顺序是固定的,只有每个相位的持续时间可以调整。所有信号交叉口各相位的持续时间实际上是该优化问题的决策变量。

在第一个示例网络中,所有道路都有两条车道,我们模拟在一个位置发生影响其中一条车道的事件。我们假设所有类似的事故对网络中的任何双车道路段的影响都相同。

第二个网络遵循实际车道配置,将在第七节中提供。

D. 优化过程

将“链接绿信比”引入我们的问题中,由于“链接绿信比”与公式6和7中的“相位绿信比”之间存在直接关系,从而形成了一个交通信号配时的优化问题。现在,该优化问题可转化为对道路网络中交通信号配时的优化。

1) 数据输入:

需要将网络的规格作为输入,其内容包括以下方面•:起讫点配置:包含起点和终点的位置,
•起讫点需求表:包含每对起点和终点之间的出行,
•网络配置:包含关于路段、节点、速度限制、道路容量等的全部信息。•链接详细表:包含链接自由流行程时间、链接速度限制、链接容量以及车道数量,•交通信号配置:信号化节点索引、相位数量、周期时间、信号配时、相位绿信比以及每个相位获得绿灯的链接。

2) 优化步骤:

我们通过以下步骤解决优化过程:
(1) 我们将起讫点配置、起讫点需求、网络配置、链接详细表和交通信号配置导入交通仿真模型;
(2) 我们为网络中的所有节点生成所有可能的固定交通信号方案。在本文中,每个交通信号方案中唯一的变量是相位时长,这意味着相位顺序和周期长度是固定的。例如,一个网络包含n个信号交叉口。其中一个交叉口(交叉口#i)有4个相位,则我们使用相位时长([pi1,pi2,pi3,pi4])用于表示该交叉口,网络交通信号方案记为[[p11,p12,p13, p14],[p21, p22, p23, p24],…,[pn1,pn2,pn3,pn4]]。生成固定交通信号方案的完整描述见第三节‐E部分(题为“遗传算法建模”)中的“初始化”模块。
(3) 对于每个交通信号控制方案,我们使用交通信号配置和交通信号配时方案来更新“链接绿信比”。更新“链接绿信比”的方法是使用公式6。简而言之,“链接绿信比”计算方式为:在每个周期时间内,某链接获得的总绿灯时间除以周期长度;
(4) 针对每个交通信号控制方案,我们运行网络的 Aimsun微观仿真模型以获取总行程时间(定义见公式1);有关如何构建交通仿真的更详细信息将在第四节中描述;
(5)我们检查所有交通信号控制方案的总行程时间,并得到最小的总行程时间及对应的最优交通信号控制方案;
(6) 我们输出最优交通信号控制方案。

E. 遗传算法建模

在本研究中,我们采用标准的遗传算法[40] 进行交通信号控制优化,并根据我们的网络需求和报告的交通事故情况进行调整。接下来,我们将详细介绍为成功部署该模型以优化交通控制方案所遵循的参数和步骤。

  • Fitness function :为了将我们的问题适应遗传算法,采用公式1中的目标函数作为适应度函数。由于我们希望最小化公式(1),因此使用公式1的倒数作为适应度函数,并在遗传算法中进行最大化。适应度值如公式(8)所示。
    $$ \text{Fitness} = -\sum_{a \in A} \int_{0}^{v_a} t_a(v_a, \lambda_a) dx $$

  • 决策变量 :决策变量是网络内所有信号交叉口的相位时长组成的向量。为了优化目标函数(公式1),我们需要将决策变量编码为遗传算法中的染色体。编码过程如下所示:
    决策变量 (数组的数组)
    =[[p11, p12, p13, p14],[p21, p22, p23, p24],…,
    [pn1, pn2, pn3, pn4]]
    Chromosomeψ(array)
    =[p11,p12,p13,p14,p21,p22,p23,p24,…,pn1,pn2,pn3,pn4]
    其中puv表示交叉口u的相位v的相位时长,n为信号交叉口的总数。我们观察到,遗传算法中的染色体与决策变量相同,只是分组较少。

  • 用于交通信号优化的遗传算法结构如图1所示 ,包含“检查停止”、“锦标赛”等各种模块,“交叉”和“变异”这些模块也已针对我们的应用进行了调整。以下是对这些模块的详细描述:

    1. 准备输入数据 :在遗传算法中,需要确定若干参数,以实现快速收敛和较短的计算时间。我们首先使用当前交通状况和交通信号配时,同时还需设定种群规模、最大代数、交叉概率和变异概率。
    2. 初始化 :使用数据集中的随机染色体初始化遗传算法种群。据观察,对所有可能的相位组合在高相位间隔范围内分布的所有可能交通信号控制方案进行采样,计算量非常大。例如,考虑一个具有4个相位的信号交叉口,每个相位的持续时间在最小3秒到最大90秒之间,且必须为整数。这意味着共有(90 − 3+ 1) 4= 59, 969,536种可能的交通控制方案。仅针对一个交叉口,要测试所有相位组合以找到最优解所需的计算时间可能会非常长交叉口,更不用说具有各种节点和复杂连接的更复杂的道路网络了。

      因此,我们从相位组合的总体可行空间中随机且均匀地采样每一代的个体数量,具体如下:将周期长度固定为90秒,每个信号灯的相位数量固定为4,并确定每个交通信号方案中的相位顺序。同时,我们将每个相位的持续时间范围设定在[0, 90]之间。允许某个相位的时间为0秒,这意味着该相位可以被跳过。

      对于每个交叉口,我们首先通过在[0, 90]秒的范围内随机选择一个整数来生成相位1的持续时间(p1)。然后通过在[0, 90 −p1]范围内随机选择一个整数来生成相位2的持续时间(p2)。接着通过在[0, 90 − p1 − P2]范围内随机选择一个整数来生成相位3的持续时间(p3)。最后,我们计算相位4的持续时间(p4),其值为 90 −p1 −p2 −p3。
      3. 适应度函数计算 :对于每个个体,我们通过解码染色体得到相位时长,并更新交通信号配时来计算适应度函数对染色体进行操作,并运行网络的静态用户均衡微观仿真模型。我们使用Aimsun作为仿真工具来生成适应度函数。在该函数中,首先调用Aimsun交通仿真模型将预设的OD需求分配到网络中,然后运行微观随机路径选择模型,以获取网络中记录的总行程时间。最后,我们使用总出行时间的倒数作为适应度值。
      4. “达到最大迭代次数了吗?” :该模块检查是否已达到最大代数;如果没有,则继续执行以下步骤。
      5. “锦标赛” :该模块用于从上一代中选择两个父代,为生成下一代做准备。在此模块中,我们从种群中随机选择两条染色体,然后在这两条染色体之间进行锦标赛,并比较它们的适应度函数值。适应度函数值较高的染色体将赢得此次锦标赛,我们将获胜者保留为父代之一。
      6. “交叉” :通过“锦标赛”模块选择两条染色体,并在预设的概率(称为交叉概率)下进行交叉。对于每个子代,随机选择一个介于(0,1)范围内的浮点数作为其固有索引xinherentis ,然后根据公式9计算该子代的染色体。
      $$ \text{Child} = \text{Father} \times x_{\text{inherent}} + \text{Mother} \times (1 - x_{\text{inherent}}) $$
      7. “变异” :变异函数以预设的概率(称为变异概率)改变子代中的染色体。在此应用中,变异函数仅在一个交叉口内的相位之间进行变异,目的是保持每个交叉口的周期时间不变。例如,一个子代的染色体为:
      [p11,p12,p13,p14,p21,p22,p23,p24,. . . , pn1, pn2, pn3, pn4]
      然后随机选择:a) 一个交叉口 u;b) 该交叉口的两个相位 v 和 w;以及 c) 范围在 (0, puv) 内的变化量(Var)。
      相位 v 和 w 的新的相位时长计算如下:p uv=puv −Var, puw=puw+ Var。该子代其余相位的相位时长保持不变。
      8. “遗传算法优化” :我们通过返回步骤2继续到下一代,直到满足停止条件(在本例中,已达到超调优的最大代数)。

F. BGA-ML

本文提出的新增强型遗传算法采用了上一节所述的遗传算法结构,并并行添加了机器学习组件,如图2所示。该机器学习部分在离线状态下进行训练,当发生报告的事故时,将在线启动BGA‐ML过程。以下步骤描述了机器学习组件如何与遗传算法组件相互连接,以减少状态空间搜索,并基于先前训练的数据集预测最可能选择的相位时长。该方法的最大优势在于缩短了遗传算法的算法在创建初始和后续种群上所花费的时间,并从过去迭代中学习哪些是满足优化标准的最佳选择,而不是每次都从随机的新组合开始,这些组合需要进行多次密集的仿真运行。

1) 优化过程:

与遗传算法中先前的优化方法相比,此处机器学习模型将替代交通仿真;因此它将发挥与交通仿真相同的作用,即生成(更具体地说是预测)不同场景下的总行程时间。这有助于减少遗传算法生成每个新的相位组合时运行交通仿真所需的计算时间。

2) BGA-ML框架:

本文重点研究BGA‐ML框架在两个交通网络(一个合成网络和一个真实网络)中可能发生的交通事故的有限数据集上的概念验证。具体而言,我们使用遗传算法实验中不同仿真运行所生成的数据,其中仅引入选定的事件,并利用该事件导致的特定通行能力下降来训练机器学习模型。该事件的详细信息将在第四节中描述。该框架可以进一步扩展,并使用更大的数据集和随机交通中断进行训练。一种可行的方法是将大型网络划分为具有相似特征的小型子网络。其他解决方案可以是对具有相似宏观基本图(MFD)的道路路段进行聚类。因此,未来的研究需要考虑对具有相似特征的区域/路段/子网络进行聚类(这是我们未来希望实现的扩展方向)。

在收集了先前仿真运行的输出数据后,我们在 Python中将其处理并格式化为一个新的数据框,以构建用于训练机器学习模型所需的特征。此外,我们选择最重要的特征用于机器学习的训练与测试,具体细节见下一小节“特征生成”。最后,我们将不同的回归模型应用于训练数据集,并使用一组不同的性能指标对其进行验证,具体详见第三节‐F.5。通过对每个机器学习模型在不同参数变化下的性能进行多次测试,我们将确定适用于本问题的最优回归模型及其最佳超调参数。

3) 特征生成:

如前所述,我们在使用交通仿真运行原始遗传算法时记录输出数据,其中网络的某个路段发生交通事故,并将这些数据用作机器学习模型的训练数据集。保持训练数据集与遗传算法机制的一致性至关重要,以确保机器学习与遗传算法集成优化框架之间的兼容性。

机器学习模型通过使用以下特征来预测整个网络的行程时间:
- the traffic state of the network :在本文中,我们对事件进行了持续一小时的仿真,并输出了一小时时段内的总行程时间,因此我们记录了每个10分钟时间间隔的交通状态剖面。记录的关键特征包括:路段容量(考虑事件后发生的通行能力下降)、路段流量和路段速度。同样,我们在合成网络中记录每个路段在每个十分钟周期的这些特征。对于实际网络,我们每5分钟记录一次特征,以获得更高的数据粒度。总之,我们共收集了72个路段 × 3feature/link = 216features。
- 信号交叉口的交通信号方案 :这与遗传算法中的决策变量相同,即所有信号交叉口的相位时长向量。在此网络中,共有4个信号交叉口,每个交叉口有4个相位,因此我们记录了16个特征,代表交通信号方案。

总体而言,在创建特征矩阵后,我们共获得了232列和9743条数据记录,用于模型训练、验证和测试。

4) 回归模型:

为双层优化框架选择最合适的回归模型并非易事,在做出任何决定之前,我们使用了四种不同的回归模型,包括:梯度提升决策树(GBDT)、极端梯度提升决策树(XGBT)、随机森林(RF)和线性回归(LR)。

GBDT 是一种基于决策树(DT)[41]–[44] 的改进型机器学习技术。提升法可以解释为在适当的成本函数上的优化算法[45],而决策树是一种决策支持工具包含树状结构,已广泛用于分类或回归问题的各种预测方法中。在典型的决策树中,树内的每个节点代表一个决策过程,每个分支代表决策的结果,每个叶节点代表一个类别标签。从根到叶的路径表示分类规则或预测路径。

XGBT是通过在学习目标函数中引入正则化参数(以控制过拟合)而形成的GBDT的增强版本[46];它还引入了用于并行树学习的稀疏感知算法,并对多核处理提供了更好的支持(这使其在实时应用中非常具有吸引力)。直到最近,它们才开始获得更广泛的关注并被成功应用,例如用于事件持续时间分类或回归(见[47])。

随机森林是一种集成学习方法,在训练时构建大量决策树,并在分类中输出出现次数最多的类别,或在回归中输出各棵个体树的平均预测[48],[49]。

线性回归是一种用于建模因变量与一个或多个自变量之间关系的线性方法;本文将其作为更先进的机器学习模型预测结果验证的基线。

上述提到的机器学习模型已在各种条件下进行了测试,以比较和评估表现最好的模型。相关比较和结果在第 IV‐D节中进一步讨论,重点放在梯度提升决策树和 XGBT上,因为它们是表现最好的模型。

5) 性能指标:

为了比较每个回归模型的性能并评估其准确性和性能,我们考虑了多个性能指标,例如:平均绝对误差(MAE)、均方根误差(RMSE)、R 平方(R2)、平均绝对百分比误差(MAPE)。MAE 是衡量两个连续变量之间差异的指标,计算公式为:
$$ MAE= \frac{\sum_{i=1}^{n} |y_i - x_i|}{n} = \frac{\sum_{i=1}^{n} |e_i|}{n} $$
其中xi是预测值,yi是真实值,因此绝对误差为 |ei| = |yi −xi|。

RMSE 是一种估计量,用于衡量误差平方的平均值,其计算公式为:
$$ RMSE = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (x_i - y_i)^2} $$
其中平方误差为(xi − yi) 2。

R2 是指从自变量可预测的因变量中的方差比例。R2 通过结果总变异的比例,提供了一个衡量模型对观测结果复制效果好坏的指标。

平均绝对百分比误差是预测方法的预测准确性的一种度量,通常将准确性表示为百分比,如下所示:
$$ MAPE = \frac{100\%}{n} \

使用机器学习的增强型遗传算法进行交通控制优化

摘要

交通控制优化是全球各地交通中心面临的一项具有挑战性的任务,大多数现有方法仅专注于为正常(周期性)交通条件开发自适应方法。当发生严重事件时,尤其是在大量车道或整个交叉口受到影响的情况下,优化控制方案仍然是一个尚未解决的问题。本文提出了一种新的方法论,用于在非周期性交通事件条件下优化信号控制的城市交叉口的交通信号配时。为了快速且可靠地做出决策,我们将快速运行的机器学习(ML)算法与可靠的遗传算法(GA)相结合,构建了一个统一的优化框架。首先,我们采用典型的遗传算法,将相位时长作为决策变量,以网络中的总行程时间为目标函数,并对交叉、变异和适应度计算进行精细调整,获得最优参数。其次,我们训练多个回归模型来预测所研究交通网络中的总行程时间,并选择性能最佳的模型进行进一步超参数调优。最后,我们提出一种新的BGA‐ML算法,将遗传算法与表现最佳的回归模型——极端梯度决策树(XGBT)结合到一个统一的优化框架中。通过两个实验(一个为合成数据,另一个来自真实的城域交通网络)生成对比与结果,表明新提出的BGA‐ML算法比原始遗传算法快得多,在事故条件下使用时可将近总行程时间减少一半。

关键词 —交通信号优化,遗传算法,机器学习,交通事件控制方案,非周期性拥堵,机器学习

一、引言

TRAFFIC 事件管理由于对安全和交通控制操作的影响,对于所有交通机构都起着重要作用。为了应对随机发生的事件,各个交通管理中心(TMCs)制定了政策和响应计划策略,以尽量缩短清除时间。交通信息与控制系统是确保即时响应时间的关键组件,因为它们是集中式的,能够轻松地将事件警报发送至交通管理中心(TMCs)。

许多交通管理中心(TMCs)在发生紧急情况或事故时通常采用的响应计划是激活一系列可变信息标志、关闭车道并强制转向,而受影响交叉口的信号灯组则缺乏自适应控制方法。大多数情况下,这一过程是手动的,需要等待事件被清除后才能重新启动自适应控制方案。

交通拥堵通常分为两种类型:由于日常出行模式重复而产生的周期性拥堵(RC),以及由事故、故障等意外事件引起的非周期性拥堵(NRC)[1]–[3]。最棘手的事件可能在城市中的随机位置、不同时段发生,且从不重复[1]。由于这些非周期性事件在时间和空间上的随机性,对事故条件下的网络优化进行建模和处理是一项重大挑战。

据我们所知,由于交通状况的高度可变性和事件的不确定性,目前针对严重事故条件下交通信号控制优化的研究尚不多见。

本研究旨在解决这一问题,重点在于建立一种新的交通管理解决方案,以缓解非周期性交通事故的影响,该方案结合了遗传算法(GA)和机器学习(ML)模型,相较于传统方法具有快速收敛和高准确性的优势。本文扩展了[4]中提出的工作,提出了一种名为BGA‐ML(基于机器学习的增强型遗传算法)的双层新算法,并将其作为工具用于改善交通事故响应并优化事故期间的交通信号控制方案。该方法应用于澳大利亚悉尼市的一个案例研究交通网络和一个实际网络。通过提出并比较多种情景,展示了该方法的优势。

总体而言,本文的主要方法包含以下所述的步骤,而贡献总结和优势在第二节‐D中提供:我们首先提出了一种新的交通信号控制优化方法,该方法利用遗传算法与机器学习模型的协同作用,旨在最小化受事件影响的城市网络中的总行程时间;该方法考虑了周边区域的交通状况,对受干扰影响的多个交叉口进行优化,并结合交通仿真以获取交通运行结果;其次,我们使用机器学习模型来替代交通仿真建模,并直接预测总行程时间使用所有先前模拟的历史交通记录;研究结果表明,极端梯度决策树(XGBT)的表现优于其他回归模型,如梯度提升决策树(GBDT)、随机森林(RF)和线性回归(LR);在优化框架内,我们嵌入了交通事故导致的通行能力下降以及驾驶员路线偏离;第三,我们展示了在受影响的事件道路网络中部署常规遗传算法(GA)(最初在我们的研究[4]中提出)进行信号优化前后,行程时间的显著减少;最后,我们观察到新提出的BGA‐ML具有较低的计算时间,该方法采用一种新的集成方法,利用机器学习来加速优化过程。这主要是因为我们用机器学习模型替代了仿真模型,以估计遗传算法生成的每个新交通信号方案的适应度值。其核心思想是利用所有先前的仿真情景/运行结果进行学习,从而在无需重新执行多次仿真运行的情况下选择最佳的交通信号方案。

本文的结构如下:第二节介绍了文献综述,重点回顾了迄今为止将遗传算法(GA)与机器学习建模(ML modelling)方法应用于交通信号控制的现有方法,并讨论了本文的贡献;第三节介绍了本文的方法论,包括定义、优化过程以及基础遗传算法建模,并提出了新的增强型BGA‐ML方法;第四节讨论了案例研究、网络与优化构建以及BGA‐ML方法的超参数调优,第五节通过多种情景展示了结果;第六节阐述了研究结果,第七节在澳大利亚悉尼的真实城市路网上对结果进行了再次验证。最后,本文以结论和若干附录部分结束,提供了更多信息。

II. 文献综述

A. 基于遗传算法的交通信号控制建模

当前的交通信号控制模型主要针对网络中周期性拥堵(日常重复出行模式)进行了优化,但并未对非周期性交通事件引发的拥堵进行优化或调整。严重的交通事故可能显著影响整个网络的运行性能,因此不容忽视。发表于[5]的一篇全面综述介绍了针对干线道路和高速公路的交通控制建模方法。在这篇综述中,引入了“存储‐转发模型”,通过在无离散变量的情况下实现交通流过程的数学描述,从而简化基于模型的优化方法;同时采用交通响应城市控制(TUC)策略来计算实时网络信号配时[6]。里奇[7]将多个基于知识的实时专家系统(KBES)引入先进交通管理系统(ATM),以便在发生非周期性拥堵时为控制中心工作人员提供决策建议。当时,人工智能(AI)与ATM系统的协作尚处于初步阶段。非常具有开创性,并为后续研究指明了一个良好的方向。如今,借助最新的机器学习技术和更先进的大数据处理手段,这一概念设计得以实现。

在各种模型中,遗传算法(GA)是一种流行的交通信号控制优化方法,最初由戈德伯格和霍兰德于1988年提出,并随后应用于交通信号配时优化。2004年,塞伊兰和贝尔将随机用户均衡用于建模不同信号配时下的驾驶员路径选择,同时采用遗传算法(GA)进行优化。研究还得出结论:相比以往的启发式算法,遗传算法(GA)更简单且更高效。类似地,文献[11]中的作者采用了周期长度、信号配时和相位差等多种优化参数,建立了干线道路的协调控制系统,并在优化模型中以等待队列的最小总延误为目标函数;同时,他们利用最小生成树聚类思想改进了遗传算法(GA),取得了更好的效果。遗传算法(GA)也已成功应用于多目标控制计划优化[12]和[13]。其他研究还探讨了通过优化信号配时方案来分析交叉口服务水平(LOS)的各种方法[14];其中应用了遗传算法(GA)和差分进化(DE),在解的质量方面,遗传算法(GA)表现显著优于差分进化(DE)。

近年来,由于计算能力的可用性增强,遗传算法(GA)与交通仿真开始结合,以优化网络中所有交叉口的相位差、绿信比和周期时间[15]。然而,在关键运行时段完成优化所需的延误时间方面仍存在差距,且难以满足交通中心所需的所有标准。其他文献已将遗传算法(GA)与中观交通仿真器相结合,基于从中观模型获得的适应度值来寻找近优交通信号方案(见[16])。

总体而言,文献中的大多数应用均为离线模式,实现最优交通信号控制需要较长时间,且在研究更高效、快速响应以应对非周期性交通事件方面仍存在空白。这正是我们方法的主要动机,该方法论试图通过结合遗传算法(GA)和机器学习模型,充分利用遗传算法的可靠性以及机器学习模型的快速预测时间来解决这些问题。

B. 使用机器学习进行交通信号控制建模

机器学习建模,特别是强化学习(RL)和Q学习,通常通过考虑网络(或子网络)的当前状态,并尝试不同的动作及其相关奖励,来调整实时自适应控制代理[17]。由于在真实世界中无法尝试所有动作,因此使用仿真模型来试验不同的响应动作。早期的仿真模型相当简单,因为当时可用的个人计算机计算能力并不强大[18]–[20],例如元胞自动机模型[21]。到了2000年,交通仿真软件变得更加复杂和真实,并提供了用于二次开发的应用程序编程接口;因此,大多数研究利用交通仿真器作为训练机器学习模型的基础,并开始更加关注机器学习框架的结构,包括状态空间、动作空间和奖励定义。在状态空间方面,大多数研究人员使用来自交叉口上游路段的排队车辆数([22],[23])。这种设置将忽略由交通事故引起的下游交通拥堵。动作空间通常被定义为每个信号灯的所有可能的相位([22]–[26])。奖励定义通常被定义为延误时间([22],[24])和排队长度([23],[25],[26])。

2014年和2016年,构建了两篇关于传统强化学习在交通控制研究中的综述[27],[28]。2015年,首次引入深度强化学习用于交通信号控制优化(见[29]),并在2016年由Van der Pol 等进一步改进(见[30]),同时考虑了小型网络中多个交叉口的协调。2017年,通过深度策略梯度训练了一种交通信号控制策略,并假设多个交叉口可由同一智能体控制,将其应用于大型交通网络[31],[32]。结果表明,基于策略的强化学习在交通信号控制方面具有良好的应用前景。

C. 遗传算法与机器学习集成用于交通优化

尽管以往的研究工作主要集中在改进遗传算法或机器学习框架以用于各种交通控制方法,但一些研究提出了集成方法,且大多侧重于遗传算法或机器学习方法之一。

[33]的作者使用遗传算法(GA)进行特征选择,并采用支持向量机来检测交通网络异常。遗传算法与支持向量机在网络入侵检测系统(NIDS)中被依次应用。尽管支持向量机是用于异常检测的良好机器学习模型,但其潜力有限,且无法适应各种数据流。在本文中,我们选择并研究了多种机器学习模型,通过相互比较其测试性能,以选择最合适的模型。

[34]中的作者使用遗传算法(GA)来增强各种机器学习回归模型的特征选择和参数优化,其目标是估算软件工作量。该研究更侧重于利用遗传算法改进机器学习,而不是相反。我们的主要目标是在使用遗传算法(GA)优化交通时,减少计算时间并减小种群规模。

[35]的作者探讨了归纳式机器学习如何引导进化算法的进化过程。决策树被用来识别优秀个体和较差个体的潜在特征。本文比较了概率模型构建遗传算法(PMBGA)、分布估计算法(EDAs)、基于种群的增量学习算法(PBIL)、一些单变量边缘分布算法(UMDA)、紧凑型遗传算法(cGA)以及贝叶斯优化算法(BOA)。尽管该研究与本文提出的当前方法非常相似,我们使用交通仿真建模来生成所有个体的种群,从中学习相位时长模式,而不使用预定义的种群。

[36]中的作者使用机器学习来替代发动机设计问题中的仿真。其目的是通过测试各种机器学习模型来减少总体计算时间。尽管该方法与我们的方法非常相似,但我们所解决问题的复杂性源于交通网络中的高度随机行为,这需要大量训练数据;这意味着可以应用的信号控制方案几乎有无限组合。

文献中的其他各种研究要么关注机器学习优化,要么关注遗传算法调参,或单独关注仿真建模;然而,据我们所知,目前尚未有研究提出将交通仿真建模、遗传算法优化和机器学习调参相结合用于交通拥堵管理。总之,我们的主要贡献在于跨学科领域的交叉边界,通过将强大的数据科学方法与交通建模和优化技术相结合。总体而言,其主要优势不仅在于提升交通仿真建模的计算时间速度,还能减少个体搜索空间以及优劣候选者的区分过程,从而避免在运行和分析交通仿真建模输出时浪费大量时间和资源。

D. 贡献总结

本文的研究贡献主要从以下三个角度展开:

从遗传算法视角来看,使用我们的集成方法可以在进化过程中通过预测每个个体(基于先前的交通仿真运行)的适应度值,实现显著的计算时间节省和高度加速。这不仅避免了运行不必要的交通仿真模型(这些模型可能被证明效率不足),还提前筛选出表现最佳的个体(在本例中为相位时长),这些个体此前已产生更优的结果。

从机器学习视角来看,现有文献中的主要研究空白在于,大多数机器学习模型旨在训练智能体根据交叉口各个方向的车辆情况在正常交通状况下控制交通信号灯。目前尚无研究探讨在交通事故条件下应用机器学习方法进行交通信号控制优化。我们的模型考虑了交通信号的协调,以在事件地点周围重新规划车辆路线。总而言之,以往使用机器学习的交通信号控制方法几乎未讨论解决交通事故引起的突然通行能力下降问题的能力。在所有情况下,机器学习模型都被用于实时决策,而这些决策在可靠性和适用性方面可能难以评估。本文中,机器学习建模用于性能(适应度值)预测,而非直接做出决策。我们使用多种机器学习模型处理在所有已知交通条件下包括交通信号变化以及发生通行能力下降时的交通状态时间序列数据报告的事故。最后,我们准确地预测了网络在未来近期的性能。

从遗传算法与机器学习集成的角度来看,据我们所知,目前文献中尚无研究将该框架用于交通信号优化,更不用说结合微观层面的交通仿真建模。交通的动态特性在干扰条件下尤其难以优化。我们的观点是,通过学习以往事故条件下的经验,我们可以更高效地优化和调整交通,而无需广泛测试无限的相位时长,或仅仅使用有限的可能性子集。

第三部分. 方法论

A. 问题表述

创建交通事件响应有四个不同的步骤:事件识别、确认、响应和清除。本文主要关注在事件已被交通管理中心确认并报告后,对交通管理与控制进行建模。所提出的模型应用于响应和清除阶段。为了简化案例研究,我们假设事件已被提前检测和确认,并且事件清除的持续时间已被预测。此外,事件的严重程度也被报告,用以指示受影响的车道数量。

最后但同样重要的是,事件受影响区域是根据以往的研究确定的。最近,Pan et al.[37]基于历史数据,利用先进传感器研究了交通事故的时空影响,并提出了道路网络中事件影响区域及延误发生预测。受影响区域通常包含所有因该事件而出现拥堵的周边网络,且一般与事故发生地点的时间相关。

我们试图解决的问题是如何优化事件地点周围的交通控制方案,以最小化事件对车辆总行程时间的影响。因此,我们使用预先确定的受影响区域内的道路网络,并将问题表述如下:

给定一个已确定受事故影响的道路网络,我们定义如下:
A是网络中路段的集合,W是网络的起讫点对集合,Rw是起讫点之间的路径集合 pair w ∈ W
da是路段 a ∈ A 上的排队延误,
f w va是链路 a ∈ A 上的链路流量,λa 是“链接绿信比”,由路段末端的交通信号灯决定(定义将在下一节中讨论)。
ta(va, λa) 是链路a ∈ A上的行程时间,表示为链路流量va和“链接绿信比” λ a 的函数。
Sa 是链路 a ∈ A 的容量,
如果连接OD对w的路径r使用了链路a,则σ awr为1,否则为 0。
Dw是OD对w ∈ W之间的需求,

目标是最小化网络的总行程时间。目标函数如下:
$$ \text{minimize} \sum_{a \in A} \int_{0}^{v_a} t_a(v_a, \lambda_a) dx $$
Subject to
$$ \sum_{w \in W} \sum_{r \in R_w} f_{rw} \sigma_{awr} = v_a, a \in A $$
$$ \sum_{r \in R_w} f_{rw} = D_w, w \in W $$
$$ v_a \leq \lambda_a S_a, a \in A $$
$$ f_{wr} \geq 0, r \in R_w, w \in W $$

公式2表示路径流量(f w r)与链路流量(va)之间的关系。公式3表示路径流量与OD需求之间的流量守恒关系。公式4表明链路流量受限于出口容量,该容量取决于链路容量和链接绿信比。公式5表明链路流量必须不小于零。关于将行程时间选择为目标函数的解释,请参见附录D。

B. 链接绿信比的定义

本文中,“链接绿信比”(λa)的定义与Yang和 Yagar[38],研究中的定义相同,即在信号交叉口为某条链路(链路a)分配的绿灯时间。而对于Smith和Van Vuren[39],而言,绿灯时间分为:相位绿灯时间和链路绿灯时间。相位被定义为交叉口中一组最大兼容的进口道。因此,相位绿灯时间是指在信号交叉口的一个周期内某一相位的绿灯时间。链路绿灯时间则是在信号交叉口的一个周期内,所有相关相位为某条链路所分配的绿灯时间之和。

设 j k为交叉口j处第kth相位的绿灯时间所占比例,因此可将 j k称为“相位绿信比”。交叉口各相位绿灯时间的分配决定了进入该交叉口各链接的绿灯时间,因此对于每条链接a,“链接绿信比”(λa)是所有包含链接a通行方向的相位在交叉口j处的相位绿信比(j k)之和,即:
$$ \lambda_a = \sum_{\text{phases } S_j^k \text{ contain link } a} _j^k $$
明确地说,对于每个交叉口 j,相位绿信比 j k 在 k 上的总和将为 1:
$$ \sum_k _j^k = 1. $$

C. 假设

本文中,我们假设OD需求在分析的持续时间内是预先定义且固定的。我们使用交通分配模型来获取路段交通流量依赖于链路成本函数和起讫点需求。因此,我们可以得到确定的链路流在量公。式7中,我们假设周期损失时间已包含在交叉口的每个绿灯时间内,因此未使用符号来表示周期损失时间。

此外,我们假设每个相位的黄灯时间被视为绿灯时间的一部分。综上所述,本文中的 λa指的是“链接绿信比”,而非“相位绿信比”。另外,在所研究的道路网络中,所有路段的链接行程时间函数(或成本函数)是固定的,仅取决于链路流量和“链接绿信比”。因此,我们试图为每个路段优化的唯一参数是“链接绿信比” λa。

对于网络中的交通信号,我们假设周期的每个相位为固定的交通流提供绿灯。周期长度和周期内的相位顺序是固定的,只有每个相位的持续时间可以调整。所有信号交叉口各相位的持续时间实际上是该优化问题的决策变量。

在第一个示例网络中,所有道路都有两条车道,我们模拟在一个位置发生影响其中一条车道的事件。我们假设所有类似的事故对网络中的任何双车道路段的影响都相同。

第二个网络遵循实际车道配置,将在第七节中提供。

D. 优化过程

将“链接绿信比”引入我们的问题中,由于“链接绿信比”与公式6和7中的“相位绿信比”之间存在直接关系,从而形成了一个交通信号配时的优化问题。现在,该优化问题可转化为对道路网络中交通信号配时的优化。

1) 数据输入:

需要将网络的规格作为输入,其内容包括以下方面•:起讫点配置:包含起点和终点的位置,
•起讫点需求表:包含每对起点和终点之间的出行,
•网络配置:包含关于路段、节点、速度限制、道路容量等的全部信息。•链接详细表:包含链接自由流行程时间、链接速度限制、链接容量以及车道数量,•交通信号配置:信号化节点索引、相位数量、周期时间、信号配时、相位绿信比以及每个相位获得绿灯的链接。

2) 优化步骤:

我们通过以下步骤解决优化过程:
(1) 我们将起讫点配置、起讫点需求、网络配置、链接详细表和交通信号配置导入交通仿真模型;
(2) 我们为网络中的所有节点生成所有可能的固定交通信号方案。在本文中,每个交通信号方案中唯一的变量是相位时长,这意味着相位顺序和周期长度是固定的。例如,一个网络包含n个信号交叉口。其中一个交叉口(交叉口#i)有4个相位,则我们使用相位时长([pi1,pi2,pi3,pi4])用于表示该交叉口,网络交通信号方案记为[[p11,p12,p13, p14],[p21, p22, p23, p24],…,[pn1,pn2,pn3,pn4]]。生成固定交通信号方案的完整描述见第三节‐E部分(题为“遗传算法建模”)中的“初始化”模块。
(3) 对于每个交通信号控制方案,我们使用交通信号配置和交通信号配时方案来更新“链接绿信比”。更新“链接绿信比”的方法是使用公式6。简而言之,“链接绿信比”计算方式为:在每个周期时间内,某链接获得的总绿灯时间除以周期长度;
(4) 针对每个交通信号控制方案,我们运行网络的 Aimsun微观仿真模型以获取总行程时间(定义见公式1);有关如何构建交通仿真的更详细信息将在第四节中描述;
(5)我们检查所有交通信号控制方案的总行程时间,并得到最小的总行程时间及对应的最优交通信号控制方案;
(6) 我们输出最优交通信号控制方案。

E. 遗传算法建模

在本研究中,我们采用标准的遗传算法[40] 进行交通信号控制优化,并根据我们的网络需求和报告的交通事故情况进行调整。接下来,我们将详细介绍为成功部署该模型以优化交通控制方案所遵循的参数和步骤。

  • Fitness function :为了将我们的问题适应遗传算法,采用公式1中的目标函数作为适应度函数。由于我们希望最小化公式(1),因此使用公式1的倒数作为适应度函数,并在遗传算法中进行最大化。适应度值如公式(8)所示。
    $$ \text{Fitness} = -\sum_{a \in A} \int_{0}^{v_a} t_a(v_a, \lambda_a) dx $$

  • 决策变量 :决策变量是网络内所有信号交叉口的相位时长组成的向量。为了优化目标函数(公式1),我们需要将决策变量编码为遗传算法中的染色体。编码过程如下所示:
    决策变量 (数组的数组)
    =[[p11, p12, p13, p14],[p21, p22, p23, p24],…,
    [pn1, pn2, pn3, pn4]]
    Chromosomeψ(array)
    =[p11,p12,p13,p14,p21,p22,p23,p24,…,pn1,pn2,pn3,pn4]
    其中puv表示交叉口u的相位v的相位时长,n为信号交叉口的总数。我们观察到,遗传算法中的染色体与决策变量相同,只是分组较少。

  • 用于交通信号优化的遗传算法结构如图1所示 ,包含“检查停止”、“锦标赛”等各种模块,“交叉”和“变异”这些模块也已针对我们的应用进行了调整。以下是对这些模块的详细描述:

    1. 准备输入数据 :在遗传算法中,需要确定若干参数,以实现快速收敛和较短的计算时间。我们首先使用当前交通状况和交通信号配时,同时还需设定种群规模、最大代数、交叉概率和变异概率。
    2. 初始化 :使用数据集中的随机染色体初始化遗传算法种群。据观察,对所有可能的相位组合在高相位间隔范围内分布的所有可能交通信号控制方案进行采样,计算量非常大。例如,考虑一个具有4个相位的信号交叉口,每个相位的持续时间在最小3秒到最大90秒之间,且必须为整数。这意味着共有(90 − 3+ 1) 4= 59, 969,536种可能的交通控制方案。仅针对一个交叉口,要测试所有相位组合以找到最优解所需的计算时间可能会非常长交叉口,更不用说具有各种节点和复杂连接的更复杂的道路网络了。

      因此,我们从相位组合的总体可行空间中随机且均匀地采样每一代的个体数量,具体如下:将周期长度固定为90秒,每个信号灯的相位数量固定为4,并确定每个交通信号方案中的相位顺序。同时,我们将每个相位的持续时间范围设定在[0, 90]之间。允许某个相位的时间为0秒,这意味着该相位可以被跳过。

      对于每个交叉口,我们首先通过在[0, 90]秒的范围内随机选择一个整数来生成相位1的持续时间(p1)。然后通过在[0, 90 −p1]范围内随机选择一个整数来生成相位2的持续时间(p2)。接着通过在[0, 90 − p1 − P2]范围内随机选择一个整数来生成相位3的持续时间(p3)。最后,我们计算相位4的持续时间(p4),其值为 90 −p1 −p2 −p3。
      3. 适应度函数计算 :对于每个个体,我们通过解码染色体得到相位时长,并更新交通信号配时来计算适应度函数对染色体进行操作,并运行网络的静态用户均衡微观仿真模型。我们使用Aimsun作为仿真工具来生成适应度函数。在该函数中,首先调用Aimsun交通仿真模型将预设的OD需求分配到网络中,然后运行微观随机路径选择模型,以获取网络中记录的总行程时间。最后,我们使用总出行时间的倒数作为适应度值。
      4. “达到最大迭代次数了吗?” :该模块检查是否已达到最大代数;如果没有,则继续执行以下步骤。
      5. “锦标赛” :该模块用于从上一代中选择两个父代,为生成下一代做准备。在此模块中,我们从种群中随机选择两条染色体,然后在这两条染色体之间进行锦标赛,并比较它们的适应度函数值。适应度函数值较高的染色体将赢得此次锦标赛,我们将获胜者保留为父代之一。
      6. “交叉” :通过“锦标赛”模块选择两条染色体,并在预设的概率(称为交叉概率)下进行交叉。对于每个子代,随机选择一个介于(0,1)范围内的浮点数作为其固有索引xinherentis ,然后根据公式9计算该子代的染色体。
      $$ \text{Child} = \text{Father} \times x_{\text{inherent}} + \text{Mother} \times (1 - x_{\text{inherent}}) $$
      7. “变异” :变异函数以预设的概率(称为变异概率)改变子代中的染色体。在此应用中,变异函数仅在一个交叉口内的相位之间进行变异,目的是保持每个交叉口的周期时间不变。例如,一个子代的染色体为:
      [p11,p12,p13,p14,p21,p22,p23,p24,. . . , pn1, pn2, pn3, pn4]
      然后随机选择:a) 一个交叉口 u;b) 该交叉口的两个相位 v 和 w;以及 c) 范围在 (0, puv) 内的变化量(Var)。
      相位 v 和 w 的新的相位时长计算如下:p uv=puv −Var, puw=puw+ Var。该子代其余相位的相位时长保持不变。
      8. “遗传算法优化” :我们通过返回步骤2继续到下一代,直到满足停止条件(在本例中,已达到超调优的最大代数)。

F. BGA-ML

本文提出的新增强型遗传算法采用了上一节所述的遗传算法结构,并并行添加了机器学习组件,如图2所示。该机器学习部分在离线状态下进行训练,当发生报告的事故时,将在线启动BGA‐ML过程。以下步骤描述了机器学习组件如何与遗传算法组件相互连接,以减少状态空间搜索,并基于先前训练的数据集预测最可能选择的相位时长。该方法的最大优势在于缩短了遗传算法的算法在创建初始和后续种群上所花费的时间,并从过去迭代中学习哪些是满足优化标准的最佳选择,而不是每次都从随机的新组合开始,这些组合需要进行多次密集的仿真运行。

1) 优化过程:

与遗传算法中先前的优化方法相比,此处机器学习模型将替代交通仿真;因此它将发挥与交通仿真相同的作用,即生成(更具体地说是预测)不同场景下的总行程时间。这有助于减少遗传算法生成每个新的相位组合时运行交通仿真所需的计算时间。

2) BGA-ML框架:

本文重点研究BGA‐ML框架在两个交通网络(一个合成网络和一个真实网络)中可能发生的交通事故的有限数据集上的概念验证。具体而言,我们使用遗传算法实验中不同仿真运行所生成的数据,其中仅引入选定的事件,并利用该事件导致的特定通行能力下降来训练机器学习模型。该事件的详细信息将在第四节中描述。该框架可以进一步扩展,并使用更大的数据集和随机交通中断进行训练。一种可行的方法是将大型网络划分为具有相似特征的小型子网络。其他解决方案可以是对具有相似宏观基本图(MFD)的道路路段进行聚类。因此,未来的研究需要考虑对具有相似特征的区域/路段/子网络进行聚类(这是我们未来希望实现的扩展方向)。

在收集了先前仿真运行的输出数据后,我们在 Python中将其处理并格式化为一个新的数据框,以构建用于训练机器学习模型所需的特征。此外,我们选择最重要的特征用于机器学习的训练与测试,具体细节见下一小节“特征生成”。最后,我们将不同的回归模型应用于训练数据集,并使用一组不同的性能指标对其进行验证,具体详见第三节‐F.5。通过对每个机器学习模型在不同参数变化下的性能进行多次测试,我们将确定适用于本问题的最优回归模型及其最佳超调参数。

3) 特征生成:

如前所述,我们在使用交通仿真运行原始遗传算法时记录输出数据,其中网络的某个路段发生交通事故,并将这些数据用作机器学习模型的训练数据集。保持训练数据集与遗传算法机制的一致性至关重要,以确保机器学习与遗传算法集成优化框架之间的兼容性。

机器学习模型通过使用以下特征来预测整个网络的行程时间:
- the traffic state of the network :在本文中,我们对事件进行了持续一小时的仿真,并输出了一小时时段内的总行程时间,因此我们记录了每个10分钟时间间隔的交通状态剖面。记录的关键特征包括:路段容量(考虑事件后发生的通行能力下降)、路段流量和路段速度。同样,我们在合成网络中记录每个路段在每个十分钟周期的这些特征。对于实际网络,我们每5分钟记录一次特征,以获得更高的数据粒度。总之,我们共收集了72个路段 × 3feature/link = 216features。
- 信号交叉口的交通信号方案 :这与遗传算法中的决策变量相同,即所有信号交叉口的相位时长向量。在此网络中,共有4个信号交叉口,每个交叉口有4个相位,因此我们记录了16个特征,代表交通信号方案。

总体而言,在创建特征矩阵后,我们共获得了232列和9743条数据记录,用于模型训练、验证和测试。

4) 回归模型:

为双层优化框架选择最合适的回归模型并非易事,在做出任何决定之前,我们使用了四种不同的回归模型,包括:梯度提升决策树(GBDT)、极端梯度提升决策树(XGBT)、随机森林(RF)和线性回归(LR)。

GBDT 是一种基于决策树(DT)[41]–[44] 的改进型机器学习技术。提升法可以解释为在适当的成本函数上的优化算法[45],而决策树是一种决策支持工具包含树状结构,已广泛用于分类或回归问题的各种预测方法中。在典型的决策树中,树内的每个节点代表一个决策过程,每个分支代表决策的结果,每个叶节点代表一个类别标签。从根到叶的路径表示分类规则或预测路径。

XGBT是通过在学习目标函数中引入正则化参数(以控制过拟合)而形成的GBDT的增强版本[46];它还引入了用于并行树学习的稀疏感知算法,并对多核处理提供了更好的支持(这使其在实时应用中非常具有吸引力)。直到最近,它们才开始获得更广泛的关注并被成功应用,例如用于事件持续时间分类或回归(见[47])。

随机森林是一种集成学习方法,在训练时构建大量决策树,并在分类中输出出现次数最多的类别,或在回归中输出各棵个体树的平均预测[48],[49]。

线性回归是一种用于建模因变量与一个或多个自变量之间关系的线性方法;本文将其作为更先进的机器学习模型预测结果验证的基线。

上述提到的机器学习模型已在各种条件下进行了测试,以比较和评估表现最好的模型。相关比较和结果在第 IV‐D节中进一步讨论,重点放在梯度提升决策树和 XGBT上,因为它们是表现最好的模型。

5) 性能指标:

为了比较每个回归模型的性能并评估其准确性和性能,我们考虑了多个性能指标,例如:平均绝对误差(MAE)、均方根误差(RMSE)、R 平方(R2)、平均绝对百分比误差(MAPE)。MAE 是衡量两个连续变量之间差异的指标,计算公式为:
$$ MAE= \frac{\sum_{i=1}^{n} |y_i - x_i|}{n} = \frac{\sum_{i=1}^{n} |e_i|}{n} $$
其中xi是预测值,yi是真实值,因此绝对误差为 |ei| = |yi −xi|。

RMSE 是一种估计量,用于衡量误差平方的平均值,其计算公式为:
$$ RMSE = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (x_i - y_i)^2} $$
其中平方误差为(xi − yi) 2。

R2 是指从自变量可预测的因变量中的方差比例。R2 通过结果总变异的比例,提供了一个衡量模型对观测结果复制效果好坏的指标。

平均绝对百分比误差是预测方法的预测准确性的一种度量,通常将准确性表示为百分比,如下所示:
$$ MAPE = \frac{100\%}{n} \

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

【无人机】基于改进粒子群算法的无人机路径规划研究[和遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其与遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性和寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度和全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础和优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型和改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究与改进中。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值