一种基于强化学习的匝道信号控制优化方法和系统
技术领域
本发明涉及交通控制及智能交通
技术领域
,特别是涉及一种基于强化学习的快速路上匝道信号控制优化方法和系统。背景技术
随着我国城市机动车保有量不断增加,快速路交通需求日益增加,因此在有限的道路条件和通行能力的限制下,需要通过优化管理与控制方法提高路网通行量。
入口匝道控制有非常大的作用:第一,可以减少整个快速道路系统内所有车辆的行程时间;第二,使交通流量均匀平滑;第三,消除或减少交汇中的冲突和事故。
现有技术具有如下缺点:已有的匝道控制方法主要面向高速公路,且存在交通模型构建、模型参数标定、依赖先验知识以及控制迟滞性等缺陷。
发明内容
本发明的目的是通过以下技术方案实现的。
第一方面提供了一种基于强化学习的匝道信号控制优化方法,包括:
匝道交叉口优化控制步骤,通过单点自适应控制检测道路上的实时交通流,上位机根据所述实时交通流选择匝道信号控制方案,建立SARSA信号控制模型;
模型参数标定步骤,获取车辆跟驰与换道模型,对所述车辆跟驰与换道模型的参数进行标定;
仿真步骤,根据预设的需求训练所述SARSA信号控制模型和标定参数后的车辆跟驰与换道模型,得到优化的匝道信号控制方案。
进一步地,所述建立SARSA信号控制模型,包括:
(1)回合设置:以每一信号周期为一步,以五个周期为一回合;
(2)行为空间建立:周期优化、绿信比优化;
(3)状态空间建立:选信号周期结束时的主线上游车辆数、匝道车辆数、主线下游占有率三个指标构成状态空间,对占有率做离散化处理;
(4)行为选择机制,取消贪婪的探索机制;
(5)奖赏函数:以一周期内路网中车辆平均运行速度为奖赏。
进一步地,利用粒子群算法和NGSIM数据集提供的数据对所述车辆跟驰与换道模型的参数进行标定。
进一步地,所述粒子群算法包括如下步骤:
初始化每个粒子的位置与速度;
计算各粒子适应度;
更新个体最优和群体最优;
更新各个粒子的速度和位置;
判断是否符合终止条件,如果是则结束,如果否则返回计算各粒子适应度的步骤。
进一步地,速度和位置的迭代公式为:
vi(t+1)=ω*vi(t)+c1*rand1()*(pbesti-xi(t))+c2*rand2()*(gbesti-xi(t))xi(t+1)=xi(t)+vi(t)
式中xi是粒子pi在时刻t的位置,vi是粒子pi位置变化速度,pbesti是第i个粒子迄今为止搜索到的最优位置;gbesti是整个粒子群迄今为止搜索到的最优位置;ω为惯性因子,c1和c2为学习因子,自身认知学习率rand1()和社会认知学习率rand2()。
进一步地,所述车辆跟驰与换道模型综合考虑驾驶者期望提速的动力和前方车辆阻碍形成的阻力。
进一步地,
其中,是指跟驰车加速度,S是t时刻的车头间距,S*是期望间距,S0是初始车头间距,v0是理想驾驶速度,σ是加速度指数,a是期望最大加速度,b是期望最大减速度,vn(t)是跟驰车t时刻的车速,Δvn(t)是跟驰车与前车t时刻的速度差,sn(t)是t时刻的车头间距。
第二方面提供了一种基于强化学习的匝道信号控制优化系统,包括:
匝道交叉口优化控制模块,通过单点自适应控制检测道路上的实时交通流,上位机根据所述实时交通流选择匝道信号控制方案,建立SARSA信号控制模型;
模型参数标定模块,获取车辆跟驰与换道模型,对所述车辆跟驰与换道模型的参数进行标定;
仿真模块,根据预设的需求训练所述SARSA信号控制模型和标定参数后的车辆跟驰与换道模型,得到优化的匝道信号控制方案。
第三方面提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述基于强化学习的匝道信号控制优化方法的步骤。
第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被一个或多个处理器执行时,实现如第一方面所述基于强化学习的匝道信号控制优化方法的步骤。
本发明的优点在于:通过设计基于强化学习的快速路上匝道信号控制优化方法,并基于交通仿真的匝道控制方法验证及效果评价,使用SUMO仿真验证效果,为以后的理论研究和工程应用提供新的思路和方法。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施方式的一种基于强化学习的快速路上匝道信号控制优化方法流程图;
图2示出了根据本发明实施方式的粒子群算法的流程图;
图3为一个实施例中基于强化学习的匝道信号控制优化系统的结构框图;
图4示出了本申请一实施例所提供的一种电子设备的结构示意图;
图5示出了本申请一实施例所提供的一种存储介质的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
术语解释:
SUMO(Simulation of Urban Mobility)是免费、开源的交通系统仿真软件,可以实现交通流的微观控制,即具体到道路上每一辆车的运行路线都可以单独规划。SUMO是一个微观的、连续的道路交通仿真软件,主要由德国宇航中心开发。该软件始于2000年,其作为一个开源、微观道路交通仿真而开发的主要目的是给交通研究组织提供一个实现和评估自己算法的工具。
SARSA算法是一种使用时序差分求解强化学习控制问题的方法,属于时序差分的在线控制算法,由S,A,R,S,A几个字母组成的。而S,A,R分别代表状态(State),动作(Action),奖励(Reward)。
车辆跟驰(Car Following,CF)行为是最基本的微观驾驶行为,描述了在限制超车的单行道上行驶车队中相邻两车之间的相互作用。跟驰模型是运用动力学的方法来研究前导车(Leading Vehicle,LV)运动状态变化所引起跟驰车(Following Vehicle,FV)的相应行为,通过分析各车辆逐一跟驰的方式来理解单车道交通流特性,从而在驾驶人微观行为与交通宏观现象之间架起一座桥梁。
智能驾驶员模型(Intelligent Diver Model,IDM)。
本发明提出了一个基于强化学习的快速路上匝道信号控制优化方法,基本程序如附图1所示,包括以下步骤:
S1、匝道交叉口优化控制步骤。通过单点自适应控制检测道路上的实时交通流,上位机根据所述实时交通流选择匝道信号控制方案,建立SARSA信号控制模型。
本发明选用最为常见和易于被驾驶者接受的信号交通灯控制方式:单点自适应信号控制。单点自适应控制检测道路上的实时交通流,上传到上机位,由上机位选择最佳的交通控制方案,使得车速、延误、占有率等指标达到最优化。除此以外,自适应控制通过与强化学习结合之后可以在当前环境下自我训练,以应对交通流的不确定性。控制匝道的车辆汇入,并用SARSA强化学习方法实现信号控制。
其中SARSA信号控制模型建立包含以下步骤:
(1)回合设置:以每一信号周期为一步,以五个周期为一回合。
(2)行为空间建立:周期优化、绿信比优化。
(3)状态空间建立:选信号周期结束时的主线上游车辆数、匝道车辆数、主线下游占有率三个指标构成状态空间,对占有率做离散化处理。
(4)行为选择机制:目前所采用的SARSA为单步更新,总是随机选取某一状态下最大q值的动作。为避免出现较坏的情况,取消贪婪的探索机制。
(5)奖赏函数:以一周期内路网中车辆平均运行速度为奖赏。
S2、模型参数标定步骤。获取车辆跟驰与换道模型,对所述车辆跟驰与换道模型的参数进行标定。
所述模型参数标定步骤主要是对IDM跟驰模型的参数进行标定。IDM模型综合考虑驾驶者期望提速的“动力”和前方车辆阻碍形成的“阻力”提出下列两个公式:
其中,是指跟驰车加速度,S是t时刻的车头间距,S*是期望间距,S0是初始车头间距,v0是理想驾驶速度,σ是加速度指数,a是期望最大加速度,b是期望最大减速度,vn(t)是跟驰车t时刻的车速,Δvn(t)是跟驰车与前车t时刻的速度差,sn(t)是t时刻的车头间距。
利用粒子群算法和NGSIM数据集提供的数据对IDM模型进行参数标定。粒子群算法的流程如附图2所示,包括如下步骤:
初始化每个粒子的位置与速度;
计算各粒子适应度;
更新个体最优和群体最优;
更新各个粒子的速度和位置;
判断是否符合终止条件,如果是则结束,如果否则返回计算各粒子适应度的步骤。
速度和位置的迭代公式为:
vi(t+1)=ω*vi(t)+c1*rand1()*(pbesti-xi(t))+c2*rand2()*(gbesti-xi(t))xi(t+1)=xi(t)+vi(t)
式中xi是粒子pi在时刻t的位置,vi是粒子pi位置变化速度,pbesti是第i个粒子迄今为止搜索到的最优位置;gbesti是整个粒子群迄今为止搜索到的最优位置。ω叫做惯性因子,c1和c2被称为学习因子,rand()在式中有两个,分别为自身认知学习率rand1()和社会认知学习率rand2()。
通过粒子群算法对IDM模型进行参数标定得到各个参数的值以备仿真阶段利用。
S3、仿真步骤。根据预设的需求训练所述SARSA信号控制模型和标定参数后的车辆跟驰与换道模型,得到优化的匝道信号控制方案。
所述仿真步骤是在得到自适应控制策略和参数标定后利用SUMO仿真软件进行仿真。仿真环境生成一定的需求进行长时间的训练,并对比分析上匝道交叉口分别在无控制状态下和采用训练后的信号控制状态下的仿真表现,以此来验证模型的优劣性。
具体实施步骤:
S1、单点适应控制优化具体控制过程如下:
(1)初始信号周期为40s,黄灯固定为3s,绿灯15s。
(2)信号周期优化方案[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],单位:s
(3)绿信比优化方案[20%,25%,30%,35%,40%,45%,50%,55%,60%]。
信号周期优化方案与绿信比优化方案共22种一同构成信号灯优化方案。其中黄灯时间固定为3s,绿灯时间最短为10s。
建立sarsa模型具体步骤如下:
(1)回合设置:以每一信号周期为一步,以五个周期为一回合。
(2)行为空间建立:周期优化、绿信比优化共22个方案。
(3)状态空间建立:选信号周期结束时的主线上游车辆数、匝道车辆数、主线下游占有率三个指标构成状态空间,对占有率做离散化处理。为简化表示,代码如下:
o=[m*1000 for m in range(31)] #主线上游车辆数*1000
w=[n*10 for n in range(31)] #匝道车辆数*10
v=[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1]#主线下游150m处占有率。
(4)行为选择机制:目前所采用的SARSA为单步更新,总是随机选取某一状态下最大q值的动作。为避免出现较坏的情况,取消贪婪的探索机制。
(5)奖赏函数:以一周期内路网中车辆平均运行速度为奖赏。
S2、对IDM模型进行参数标定,具体步骤为:
(1)通过NGSIM数据集,使用粒子群算法筛选和处理获得车辆数据如附图2所示。
(2)算法相关参数设定。
ω叫做惯性因子,其值较大时,全局寻优能力强,局部寻优能力弱,综合考虑,本发明中参数取值0.8。
c1和c2被称为学习因子,本发明中取值c1=c2=2
rand()在式中有两个,分别为自身认知学习率和社会认知学习率,其值为介于(0,1)之间的随机数。本发明中都取值0.5.
(3)参数标定,得到结果:
mingap,accel,decel,tau,delta=[1.96 0.99 3.20 0.98 3.51]
S3、仿真对比步骤:
(1)在SUMO中搭建仿真环境,以西环快速路-劳动路上匝道为仿真环境生成一定的需求进行长时间的训练。
(2)分别定义主线车流和上匝道车流,通过概率(Probability)参数调整需求辆。
(3)经过长达320000s的仿真时间的训练后,得到训练结果在与训练时相同的仿真环境和需求下进行测试。
通过仿真对比得到结果发现相比于无控制的交叉口,经过训练后的信号控制下主线车流拥挤减少,以此证明模型的可行性。
如图3所示,在一个实施例中,提供了一种基于强化学习的匝道信号控制优化系统,该基于强化学习的匝道信号控制优化系统可以包括:
匝道交叉口优化控制模块411,通过单点自适应控制检测道路上的实时交通流,上位机根据所述实时交通流选择匝道信号控制方案,建立SARSA信号控制模型;
模型参数标定模块412,获取车辆跟驰与换道模型,对所述车辆跟驰与换道模型的参数进行标定;
仿真模块413,根据预设的需求训练所述SARSA信号控制模型和标定参数后的车辆跟驰与换道模型,得到优化的匝道信号控制方案。
本申请实施方式还提供一种与前述实施方式所提供的基于强化学习的匝道信号控制优化方法对应的电子设备,以执行上基于强化学习的匝道信号控制优化方法。本申请实施例不做限定。
请参考图4,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图4所示,所述电子设备2包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的基于强化学习的匝道信号控制优化方法。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述基于强化学习的匝道信号控制优化方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的基于强化学习的匝道信号控制优化方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的基于强化学习的匝道信号控制优化方法对应的计算机可读存储介质,请参考图5,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的基于强化学习的匝道信号控制优化方法。
如图5所示,存储器中可以存储有文本增强程序;处理器执行存储器中存储的文本增强程序时实现的步骤。
可选地,在其他的实施例中,文本增强程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器中,并由一个或多个处理器(本实施例为处理器)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述文本增强程序在电子装置中的执行过程。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的基于强化学习的匝道信号控制优化方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建装置中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种采用间歇式车道的交叉口信号控制方法