一种交叉口信号配时控制优化的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种交叉口信号配时控制优化的方法和装置。
背景技术
随着城市化进程的不断推进,以及汽车保有量的不断上升,交通拥堵已成为困扰各大城市的一大通病。除了因为路网中车流量过大造成的拥堵以外,交叉口信号灯不合理的配时也会造成额外路口通过时间延迟,导致不必要拥堵的产生。
现有技术中,一些交叉口的信号配时采用定时控制机制,即交叉口的交通信号控制机按预设的几个配时方案运行,在某一时间段内采用某一个固定的配时方案,其中,信号配时为交叉口各方向红、黄、绿灯时间的配比。这种控制机制因为在任意时间段内使用静态的配时方案,所以无法对在时间上具有高度可变性的道路交通流进行优化调控。另一方面,制定一套信号配时方案也需要针对每一个交叉口进行交通调查与信息收集,非常耗费人力、物力,从而导致用传统交通工程的方法难以对全城大量的交通信号灯做短时段精细化的信号配时优化。
目前交通信号控制优化方法主要包括:传统交通工程领域信号控制优化方法和基于交通仿真模拟器和强化学习的信号控制优化方法。其中,传统交通工程领域的信号控制优化方法主要依赖大量实践中统计的工程经验,通过实地收集或假设一系列交通参数(例如交叉口几何结构,车辆、行人通行速度与时间,各方向车流量、绿信比等),使用经验公式计算优化的信号灯配时方案。基于交通仿真模拟器和强化学习的信号控制优化方法,是使用传统微观交通仿真模拟器以及强化学习的方法对信号控制进行模拟优化。传统微观交通仿真模拟器主要基于交通流理论中的跟驰模型(car-following model),对车辆的行驶行为,以及相邻车辆间的跟驰行为进行仿真模拟。微观交通仿真模拟器主要用于模拟不同交通流、信号灯配时参数下的交叉口交通状况,模拟生成的数据被用在强化学习算法之中,通过反复的迭代以寻找最优的信号灯配时策略。
发明内容
有鉴于此,本发明实施例提供一种交叉口信号配时控制优化的方法和装置,能够基于网络模型和状态-动作-奖励样本集训练得到交通状态模拟器,并且基于该交通模拟器和强化学习,训练得到信号配时控制模型。解决了现有技术中由于收集或假设多个交通参数,导致模拟出的数据与实际交通状况脱节失准的问题,并且提高了普适性和灵活性。
为实现上述目的,根据本发明实施例的一个方面,提供了一种交叉口信号配时控制优化的方法。
本发明实施例的交叉口信号配时控制优化的方法包括:获取状态-动作-奖励样本集,所述状态-动作-奖励样本集包括至少一个交叉口的状态-动作-奖励子样本集;基于神经网络和所述状态-动作-奖励样本集,训练得到交通状态模拟器;基于强化学习和所述状态-动作-奖励样本集、交通状态模拟器,训练得到信号配时控制模型。
可选地,基于神经网络和所述状态-动作-奖励样本集,训练得到交通状态模拟器的步骤包括:对于每个交叉口的状态-动作-奖励子样本集,基于神经网络对其进行训练,以得到单交叉口交通状态模拟器;根据所述单交叉口交通状态模拟器和所述状态-动作-奖励样本集,训练得到多交叉口交通状态模拟器。
可选地,获取状态-动作-奖励样本集的步骤包括:通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的交通数据;所述交通数据至少包括以下一种:车辆的平均通行速度、所述平均通行速度的标准差和路段车流量;获取每个交叉口的环境数据;所述环境数据至少包括以下一种:几何结构、相邻路段数量、相邻路段长度、车道数量、道路等级和周边兴趣点分布;根据所述时间步获取每个交叉口的信号配时方案;定义奖励函数,并根据所述交通数据和环境数据、信号配时方案、奖励函数确定状态-动作-奖励样本集。
可选地,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的交通数据的步骤包括:通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的初始交通数据;通过协同张量分解对所述初始交通数据进行处理,以得到缺失路段的交通数据,所述缺失路段的交通数据和初始交通数据构成每个路段的交通数据。
可选地,在基于神经网络和所述状态-动作-奖励样本集,训练得到交通状态模拟器之前,还包括:确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量以及前一时间步的隐变量;输出端为下一时间步的状态变量和当前时间步的隐变量;隐藏层为至少一层全连接神经网络层。
可选地,在基于神经网络和所述状态-动作-奖励样本集,训练得到交通状态模拟器之前,还包括:确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量;输出端为下一时间步的状态变量;隐藏层通过至少一层全连接神经网络层对所述当前时间步的状态变量、动作变量进行初步特征提取,以及通过至少一层递归神经网络层对所述初步特征进行处理,并将所述至少一层递归神经网络层的输出值输入中间网络层,所述中间网络层由至少一层全连接神经网络层构成;将所述中间网络层的输出值进行拆分,并将拆分的结果通过至少一层全连接神经网络层和至少一层递归神经网络层处理。
为实现上述目的,根据本发明实施例的另一个方面,提供了一种交叉口信号配时控制优化的装置。
本发明实施例的交叉口信号配时控制优化的装置包括:样本获取模块,用于获取状态-动作-奖励样本集,所述状态-动作-奖励样本集包括至少一个交叉口的状态-动作-奖励子样本集;
第一训练模块,用于基于神经网络和所述状态-动作-奖励样本集,训练得到交通状态模拟器;
第二训练模块,用于基于强化学习和所述状态-动作-奖励样本集、交通状态模拟器,训练得到信号配时控制模型。
可选地,第一训练模块,还用于对于每个交叉口的状态-动作-奖励子样本集,基于神经网络对其进行训练,以得到单交叉口交通状态模拟器;根据所述单交叉口交通状态模拟器和所述状态-动作-奖励样本集,训练得到多交叉口交通状态模拟器。
可选地,样本获取模块还用于,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的交通数据;所述交通数据至少包括以下一种:车辆的平均通行速度、所述平均通行速度的标准差和路段车流量;获取每个交叉口的环境数据;所述环境数据至少包括以下一种:几何结构、相邻路段数量、相邻路段长度、车道数量、道路等级和周边兴趣点分布;根据所述时间步获取每个交叉口的信号配时方案;定义奖励函数,并根据所述交通数据和环境数据、信号配时方案、奖励函数确定状态-动作-奖励样本集。
可选地,所述样本获取模块还用于,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的初始交通数据;通过协同张量分解对所述初始交通数据进行处理,以得到缺失路段的交通数据,所述缺失路段的交通数据和初始交通数据构成每个路段的交通数据。
可选地,所述第一训练模块还用于,确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量以及前一时间步的隐变量;输出端为下一时间步的状态变量和当前时间步的隐变量;隐藏层为至少一层全连接神经网络层。
可选地,所述第一训练模块还用于,确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量;输出端为下一时间步的状态变量;隐藏层通过至少一层全连接神经网络层对所述当前时间步的状态变量、动作变量进行初步特征提取,以及通过至少一层递归神经网络层对所述初步特征进行处理,并将所述至少一层递归神经网络层的输出值输入中间网络层,所述中间网络层由至少一层全连接神经网络层构成;将所述中间网络层的输出值进行拆分,并将拆分的结果通过至少一层全连接神经网络层和至少一层递归神经网络层处理。
为实现上述目的,根据本发明实施例的再一个方面,提供了一种交叉口信号配时控制优化的电子设备。
本发明实施例的交叉口信号配时控制优化的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一项的交叉口信号配时控制优化的方法。
为实现上述目的,根据本发明实施例的再一个方面,提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上述任一项的交叉口信号配时控制优化的方法。
上述发明中的一个实施例具有如下优点或有益效果:基于多个交叉口的样本数据以及网络模型,训练得到交通状态模拟器,该交通状态模拟器不需要搜集精细化的交通参数数据以及假设参数指标。并且,该交通状态模拟器是基于大量真实的样本数据和神经网络训练得到的,该样本数据为多个交叉口的历史行驶数据和信号配时方案数据,则其模拟出的数据更能贴近真实行驶行为。基于该交通模拟器和强化学习,训练得到的信号配时控制模型具有更强的普适性。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的交叉口信号配时控制优化的方法的主要流程的示意图;
图2基于协同张量分解的交通状态填补模型的示意图;
图3是根据本发明实施例的单交叉口交通状态模拟器采用的深度递归神经网络结构示意图;
图4是根据本发明实施例的单交叉口交通状态模拟器结构示意图;
图5是根据本发明实施例的多交叉口交通状态模拟器结构示意图;
图6是根据本发明实施例的交叉口信号配时控制优化的方法的示意图;
图7是根据本发明实施例交叉口信号配时控制优化的装置的主要模块的示意图;
图8是本发明实施例可以应用于其中的示例性系统架构图;
图9是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的交叉口信号配时控制优化的方法的主要流程的示意图,如图1所示,本发明实施例的交叉口信号配时控制优化的方法主要包括:
步骤S101:获取状态-动作-奖励样本集,状态-动作-奖励样本集包括至少一个交叉口的状态-动作-奖励子样本集。在该步骤中,挖掘城市中海量的车辆轨迹、交叉口信号配时等动态数据,以及兴趣点POI(Point of Interest)、路网等静态数据,提取城市大量交叉口及与之相连路段的静态特征以及历史交通状态动态变化信息,以此生成一个大规模的交通状态(state)-动作(action)-奖励(reward)样本集。其中,兴趣点是电子地图上的某个地标、景点,用以标示出该地所代表的政府部门、商业机构、旅游景点、名胜古迹、交通设施等处所。具体的,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算路网中每个路段在每一时间步的交通数据,交通数据至少包括以下一种:车辆的平均通行速度、所述平均通行速度的标准差和路段车流量。获取每个交叉口的环境数据,环境数据至少包括以下一种:几何结构、相邻路段数量、相邻路段长度、车道数量、道路等级(城市道路等级分快速路、主干路、次干路、支路四级)和周边兴趣点分布。其中,该几何结构是指该交叉口的结构形状,相邻路段数量是指该交叉口具有几个路段(例如丁字路口有三个相邻路段,十字路口有四个相邻路段),车道数量是指该相邻路段具有的车道总数量。并且,根据时间步获取每个交叉口的信号配时方案,即获取每个交叉口在每一时间步的信号配时方案。定义奖励函数,并根据交通数据和环境数据、信号配时方案、奖励函数确定状态-动作-奖励样本集。
获取的环境数据为路段、交叉口的静态特征,用于充分描述交叉口的静态环境信息,作为强化学习模型中交叉口状态变量的一部分。具体地,获取每个路段的交通数据是从城市中大量交叉口中提取的配时方案特征,包括各交叉口在各时间段的配时周期时长,各方向左转绿灯时长,左转直行绿灯时长以及直行绿灯时长在周期时长中的占比,以及各交叉口之间的相位差。因为受到实际车辆轨迹及其他交通数据采样频率的影响,对于交通数据的提取(例如路段平均速度等)通常只能做到2-5分钟,通常会达到或超过通常信号周期的时长,因此需要将整个信号配时方案整体作为动作变量。其中,信号周期是红、绿、黄信号显示一个循环所用的时间。相位差是多个红绿灯协调联动控制中的一个参数,它分为相对相位差和绝对相位差。相对相位差是指在各交叉口的周期时间均相同的联动信号系统中,相邻两交叉口同相位的绿灯起始时间之差。在联动信号系统中选定一个标准路口,规定该路口的相位差为零,其它路口相对于标准路口的相位差称为绝对相位差。
获取的交通数据包括每一时间步(例如2-5分钟)每个路段的交通状态,例如路段平均速度、平均通行速度的标准差、路段车流量等。可从城市海量车辆轨迹中提取路网中每一条路每一时间步的路段平均速度、以及平均通行速度的标准差。当其他交通传感器数据可用时(例如车牌识别摄像头、线圈式车辆检测器数据),其他交通数据(例如交通流量,路段排队长度)等也可作为交通状态变量输入。
通过轨迹提取交通数据的过程,主要包括:通过地图匹配算法将车辆轨迹中的GPS坐标点匹配到路网的各路段上;对有轨迹覆盖的路段,计算车辆通过该路段的通行速度。其中,如果同一路段在给定时间步内同时有多条车辆轨迹,则用所有车的通行速度,计算这一时间步内该路段的平均速度及速度的标准差。因为车辆轨迹数据的稀疏性,直接通过轨迹数据获取路网中所有路段在任意时间步内的平均速度以及速度标准差是不可能的,所以在获取每个路段的初始交通数据的过程中,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的初始交通数据。并且,通过协同张量分解(collaborative tensor decomposition)对初始交通数据进行处理,以得到缺失路段的交通数据,该缺失路段的交通数据和初始交通数据构成每个路段的交通数据。通过使用基于协同张量分解的交通状态填补模型估计轨迹缺失路段的交通数据,实现对全路网速度的估计及特征提取。
图2基于协同张量分解的交通状态填补模型的示意图。如图2所示,该模型由一个张量以及两个协同矩阵X,Y构成。其中张量代表细粒度的路网交通状态,其中每一个数据点分别对应路网中的每一条路(r1,r2...,rN)在tj至tk时间步内的各路段动态交通特征u1,...,uM(例如路段平均速度,速度标准差,流量等)。张量由两部分组成:和分别对应由近期数据填充的动态交通特征,以及由长期历史平均值填充的对应时刻的动态交通特征。由于轨迹等数据的稀疏性,提取路网动态交通特征的过程中将不可避免的产生大量数据缺失路段,因此张量只能被部分填充,尤其是的部分。对缺失路段动态交通特征的估计可通过张量分解的方法解决,即根据张量中已填充的数值,将其重建为塔克分解(Tucker decomposition)后的新张量并用新张量中的对应项进行填充。该新张量为一个核心张量与三个子矩阵R,U,T的乘积。为了增加估计的准确度,两个相关矩阵X,Y也被引入进行协同分解。X=[Xh||Xr]T代表粗粒度的交通状态矩阵。构造X首先将整个路网分割成L个大的区域(g1,g2...,gL),并且根据轨迹数据分别统计各区域粗粒度的交通状态(例如各区域车辆数,平均时速等)。X同样被分成Xr、Xh两个部分,同样对应由近期数据以及历史平均值填充的tj至tk时间步内的粗粒度交通状态。Y为路网中每条路的静态特征(f1,...,fN)矩阵。综合以上构造,缺失路段的交通状态信息估计可通过最小化如下目标函数完成:
其中||·||为L2范数(norm),λ1,λ2,λ3为正则化参数,可根据实际情况进行调节。其中,λ1,λ2,λ3需根据具体的数据以及时间步的长度确定,λ1,λ2的值在为0-1之间,用于衡量X,Y分解的准确度在整个优化目标中占的权重,λ3主要是对各个变量进行正则化约束,防止过拟合的发生。
通过上述的交叉口特征提取方法,城市中大量交叉口及与之相连路段的静态特征以及历史交通状态动态变化信息可从海量的车辆轨迹、交叉口信号灯配时、兴趣点和路网等数据中挖掘得到,以此生成一个大规模的交通状态-动作-奖励样本集。其中,路段、交叉口的静态特征以及动态交通状态特征将合并作为强化学习中的状态(State)数据S;与每个交叉口每个时间步对应的配时方案作为动作(Action)数据A;与时间步t及其相应的状态、动作变量st,at对应的奖励(Reward)rt可有多种定义方式。例如:
m为与交叉口相连的所有路段的数目,为路段l在时间步t的路段平均速度及自由流速度(free-flow speed)。自由流速度为在交通量很小,且未收到交叉口信号灯影响的条件下,车辆通过城市干道的路段平均速度。该指数在交叉口完全没有排队拥堵的情况下趋于1.0,在严重拥堵的情况下趋于0。当其他交通状态数据,例如路口排队长度、交通流量可用时,奖励rt也可相应作出更改并引入这些交通状态数据,以更好的描述交叉口交通状态变好或变差的趋势。
在信号优化的问题上,reward的定义非常多样,其定义不限于本发明实施例的几种方式。除上述方式以外,还可以使用平均排队长度的相反数:
ql为交叉口道路l上的排队长度。如果只限制整个交叉口几个方向上的最大排队长度,可使用最大排队长度的相反数作为reward:
rt=max{ql,l=1,2,...,m}
如果有流量数据,且希望让交叉口通过的流量最大,可使用交叉口各个方向通过的总流量:
Ql为交叉口道路l上的车流量。
另外当速度以及排队长度或者流量数据都可用时,也可使用如下的组合指标,例如组合速度和流量指标:
λ1,λ2是相应指标的权重。
步骤S102:基于神经网络和状态-动作-奖励样本集,训练得到交通状态模拟器。
由于深度强化学习算法对于训练数据的需求量非常大,因此需要很大的状态-动作-奖励样本集,在实际数据处理和收集上将造成很大的挑战。深度强化学习(Deepreinforcement learning)是强化学习方法的一个分支,使用深度神经网络来逼近拟合强化学习算法中所用到的复杂非线性函数。另一方面,从实际数据中得到的状态-动作-奖励样本集并不能保证包含所有可能的交叉口交通状态及配时方案。因此本发明实施例首先使用状态-动作-奖励样本集训练基于深度神经网络的交叉路口交通状态模拟器,随后用训练好的交通状态模拟器配合状态-动作-奖励样本集中的真实数据共同训练强化学习算法,进而可以大大降低对于状态-动作-奖励样本集的数据量需求,同时也可以用交通状态模拟器充分探索信号控制优化问题中的状态及动作空间,弥补状态-动作-奖励样本集中历史数据的不足。与传统交通仿真模拟器不同,本发明实施例的交叉口交通状态模拟器直接利用深度神经网络由海量真实交叉口数据训练得到,具有对现实环境符合度高,并灵活适用于不同信号交叉口的优点。
现有技术中,将神经网络应用于信号灯控制主要是用于深度强化学习中的价值网络(value network)或者在使用Q-learning(一种强化学习算法)用于构造Q-network。这类使用神经网络的方法本身还是需要一个传统的交通状态模拟器(例如基于跟驰模型的模拟器)来描述不同动作、状态下的信号控制影响。基于跟驰模型的交通状态模拟器需要对每个路口的情况进行分别建模,不具有泛化到多个路口的能力。而且如果使用基于跟驰模型的路口模拟器,也需要给定或假设很多详细的路口交通参数,否则无法实现。本发明实施例与现有技术的方法不同,本发明实施例的交叉口交通状态的模拟本身是基于大数据和定制化的深度神经网络。另外在利用强化学习优化配时的过程中,也用到了深度神经网络。例如使用DDPG算法时,会用到两个深度神经网络actor network和critic network共同进行优化。
图3是根据本发明实施例的单交叉口交通状态模拟器采用的深度递归神经网络结构示意图,如图3,单交叉口交通状态模拟器采用深度递归神经网络(RNN)结构,并引入ITM(Intersection traffic modeling)RNN模块,用于对交叉口各方向连接路段的交通状态变化以及信号配时影响进行建模。递归神经网络RNN(Recurrent Neural Networks)是一种具有反馈结构的神经网络,其输入不但与当前输入和网络的权值有关,而且也与之前网络的输入有关。此结构特点使得RNN适合处理与时序数据相关的任务,如文本、语音、视频等。该交通状态模拟器在每一时间步t内以该时刻的状态变量st(t时间步的动态交通状态以及路段、交叉口静态特征)以及动作变量at(t时间步的信号配时),以及一个与前一时间步状态相关的隐变量ht-1为输入,输出下一时间段的动态交通状态特征和与当前状态相关的隐变量ht。
ITM RNN模块可采用多种设计方案,不限于本发明实施例限定的技术方案。其中,最简单的设计方案就是由多个全连接(fully connected,FC)层构成的简单深度神经网络,输入端为st,at,ht-1变量,输出端为及ht变量。为了更精准的刻画信号交叉口的交通过程,也可使用更复杂且高度定制化的ITM RNN模块。图4展示了一种有代表性的十字交叉口ITM RNN模块设计。该模块将不同方向路段t时间步的交通状态及路段特征,以及对应方向的信号配时特征分别处理:首先各方向输入数据(st,at)通过一层或者多层全连接神经网络层(FC)进行初步特征提取,之后通过一层或多层递归神经网络层(可使用LSTM(longshort-term memory)层或GRU(Gated recurrent unit)层),用以充分考虑各方向交通流状态前后时间步之间的相关性。各方向递归神经网络的输出值将被整合并输入中间网络层(由一层或者多层全连接神经网络层(FC)构成)中进行进一步的处理,以考虑各方向交通流之间的影响。中间网络层的输出值则会再次被分拆成四部分(对应交叉口的四个方向),在经过一层或者多层全连接神经网络层(FC)以及一层或多层递归神经网络层(LSTM或GRU)之后,输出各方向下一时间步的动态交通状态变量
单交叉口的交通状态模拟器可通过状态-动作-奖励样本集内海量交叉口的状态及动作数据训练得到。一旦单交叉口交通状态模拟器经过训练达到精度要求,可用于构造多交叉口交通状态模拟器,进而用来进行多交叉口信号控制的协同优化。图5是根据本发明实施例的多交叉口交通状态模拟器结构示意图,如图5所示,其由四个已经训练好的单交叉口交通状态模拟器构成。图中E-S-W-N代表东、南、西、北四个方向,in/out代表进出交叉口路段。图中外围的动态交通状态特征将作为多交叉口交通状态模拟器新的外部环境状态输入;内部路段的各动态交通状态将由各单交叉口交通状态模拟器估计,当不同交叉口交通状态模拟器的对同一路段交通状态估计值产生冲突时,将被两个估计值的均值取代。由于多交叉交通状态模拟器由已经训练好的单交叉口交通状态模拟器构成,因此训练只需状态-动作-奖励样本集中相对少量的多交叉口状态、动作数据,以及各交叉口之间的相位差数据。这样可以大大降低对于多交叉口交通状态模拟器训练数据量的需求。
步骤S103:基于强化学习和状态-动作-奖励样本集、交通状态模拟器,训练得到信号配时控制模型。强化学习(Reinforcement learning)是机器学习中的一个领域,强调如何基于环境状态,而选择最优的动作策略,以取得最大化的预期收益。强化学习任务对应了四元组E={S,A,R,P}。其中S代表状态(state)空间,每个状态s∈S是系统感知到的环境的描述;系统能采取的动作(action)构成动作空间A;若某个动作a∈A作用在当前状态x上,则潜在的转移函数P(transition probability)将使得环境从当前状态按某种概率转移到另一个状态;在转移到另一个状态的同时,环境会根据潜在的奖励(reward)函数R反馈给系统一个奖励。
由于本发明实施例信号控制优化中使用了大量实际数据,且动作变量(信号配时特征)为连续变量,因此需要使用基于连续动作变量的离线(off-policy)深度强化学习算法,例如DDPG(Deep deterministic policy gradient)算法等。在强化学习训练过程中,状态-动作-奖励样本集将作为初始训练集,从中不断采样提取状态、动作、奖励数据(st,at,rt)用以训练强化学习算法中的深度神经网络。并且,交叉口交通状态模拟器将在强化学习算法的指导下探索相应的状态、动作空间,模拟生成的数据也会被加入进训练集中,用于之后强化学习的训练迭代。当强化学习模型训练完成后,给定单一交叉口或多交叉口状态特征st,强化学习模型将给出对应的最优单交叉口或多交叉口信号配时控制方案。
图6是根据本发明实施例的交叉口信号配时控制优化的方法的示意图。如图6所示,可通过挖掘城市中海量的车辆轨迹、交叉口信号灯配时等动态交通数据,以及兴趣点(POI)、路网等静态数据,提取城市大量交叉口及与之相连路段的静态特征以及历史交通状态动态变化信息,以此生成一个大规模的交通状态-动作-奖励样本集。基于深度强化学习和收集的历史状态-动作-奖励样本集训练,以得到基于深度神经网络的单交叉口交通状态模拟器。该模拟器不同于传统基于跟驰模型的交通仿真模拟器,其为一个从当前交叉口交通状态变量st,动作变量at(配时方案)到下一交通状态st+1的高度非线性的函数映射(st,at)→st+1,通过深度神经网络实现。当单交叉口交通状态模拟器模型训练完成之后,可以将多个已训练好的单交叉口交通状态模拟器组合在一起,使用状态-动作-奖励样本集中的多交叉口数据重新训练多交叉口交通状态模拟器,以减少训练数据量需求。最终,状态-动作-奖励样本集中的真实历史数据以及从深度神经网络的交通状态模拟器中得到的模拟数据将共同用于深度强化学习模型的训练,以得到最终的单交叉口、多交叉口信号控制优化方案。
其中,可直接通过一个交叉口的历史状态-动作-奖励样本集数据训练神经网络,以得到单交叉口模拟器。并且,基于该单交叉口模拟器和一个交叉口的历史状态-动作-奖励样本集数据,通过深度强化学习算法,最终得到单交叉口信号配时模型。则,通过该单交叉口信号配时模型和某个单交叉口的状态数据,得到该单交叉口信号控制优化方案。在另一实施例中,可通过一个以上交叉口的历史状态-动作-奖励样本集数据训练神经网络,直接得到多交叉口模拟器。基于该多交叉口模拟器和一个以上交叉口的历史状态-动作-奖励样本集数据,通过深度强化学习算法,最终得到多交叉口信号配时模型。则,通过该多交叉口信号配时模型和某几个单交叉口的状态数据,得到该几个交叉口信号控制优化方案。在训练多交叉口模拟器时,也可通过单个交叉口的历史状态-动作-奖励样本集数据训练神经网络,先得到一个以上单交叉口模拟器,通过该一个以上单交叉口模拟器训练得到多交叉口模拟器。该方式大大降低了对于状态-动作-奖励样本集大数据量的需求,同时也可以用交通状态模拟器充分探索信号控制优化问题中的状态及动作空间,弥补状态-动作-奖励数据集中历史数据的不足。
基于本发明实施例的交叉口信号配时控制优化的方法,在获取交叉口的状态特征数据之后,通过本发明实施例的交通状态模拟器对交叉口的状态特征数据进行仿真模拟,以得到交通状态模拟数据;根据交通状态模拟数据以及信号配时控制模型,确定出交叉口的信号配时方案。通过基于神经网络的交通状态模拟器对交叉口的交通状态进行模拟,对交叉口交通状态变化刻画可信度高。并且,根据大量不同交叉口的数据进行训练,则训练出的交通状态模拟器可适用于不同交叉口,可用于城市中大量交叉口的信号调优,无需对每个信号交叉单独仿真建模,具有灵活性,普适性。该交通状态模拟器所输入的信息可通过挖掘城市车辆轨迹、现有信号配时、兴趣点、路网数据获得,无需收集或假设高度精细化的交叉口交通参数,不仅较少了人力物力,还提高了模拟数据的准确性。
图7是根据本发明实施例交叉口信号配时控制优化的装置的主要模块的示意图,如图7所示,本发明实施例交叉口信号配时控制优化700包括样本获取模块701、第一训练模块702和第二训练模块703。
样本获取模块701用于,获取状态-动作-奖励样本集,状态-动作-奖励样本集包括至少一个交叉口的状态-动作-奖励子样本集。样本获取模块还用于,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的交通数据;交通数据至少包括以下一种:车辆的平均通行速度、平均通行速度的标准差和路段车流量。以及,获取每个交叉口的环境数据;环境数据至少包括以下一种:几何结构、相邻路段数量、相邻路段长度、车道数量、道路等级和周边兴趣点分布。根据时间步获取每个交叉口的信号配时方案,并且,基于获取的交通数据、环境数据和信号配时方案,定义奖励函数,并根据交通数据和环境数据、信号配时方案、奖励函数确定状态-动作-奖励样本集。样本获取模块还用于,通过地图匹配算法,将获取的车辆轨迹数据分别映射到路网的相应路段中,并计算所述路网中每个路段在每一时间步的初始交通数据;通过协同张量分解对初始交通数据进行处理,以得到缺失路段的交通数据,缺失路段的交通数据和初始交通数据构成每个路段的交通数据。
第一训练模块702用于,基于神经网络和状态-动作-奖励样本集,训练得到交通状态模拟器。第一训练模块,还用于对于每个交叉口的状态-动作-奖励子样本集,基于神经网络对其进行训练,以得到单交叉口交通状态模拟器;根据单交叉口交通状态模拟器和状态-动作-奖励样本集,训练得到多交叉口交通状态模拟器。第一训练模块还用于,确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量以及前一时间步的隐变量;输出端为下一时间步的状态变量和当前时间步的隐变量;隐藏层为至少一层全连接神经网络层。第一训练模块还用于,确定交通状态模拟器的结构为递归神经网络结构;其中,输入端为当前时间步的状态变量、动作变量;输出端为下一时间步的状态变量;隐藏层通过至少一层全连接神经网络层对当前时间步的状态变量、动作变量进行初步特征提取,以及通过至少一层递归神经网络层对初步特征进行处理,并将至少一层递归神经网络层的输出值输入中间网络层,中间网络层由至少一层全连接神经网络层构成;将中间网络层的输出值进行拆分,并将拆分的结果通过至少一层全连接神经网络层和至少一层递归神经网络层处理。
第二训练模块703用于,基于强化学习和状态-动作-奖励样本集、交通状态模拟器,训练得到信号配时控制模型。
根据本发明实施例,可通过挖掘城市中海量的车辆轨迹、交叉口信号灯配时等动态交通数据,以及兴趣点(POI)、路网等静态数据,提取城市大量交叉口及与之相连路段的静态特征以及历史交通状态动态变化信息,以此生成一个大规模的交通状态(state)-动作(action)-奖励(reward)样本集。基于深度强化学习和收集的历史状态-动作-奖励样本集训练,以得到基于深度神经网络的单交叉口交通状态模拟器。该模拟器不同于传统基于跟驰模型的交通仿真模拟器,其为一个从当前交叉口交通状态变量st,动作变量at(配时方案)到下一交通状态st+1的高度非线性的函数映射(st,at)→st+1,通过深度神经网络实现。当单交叉口交通状态模拟器模型训练完成之后,可以将多个已训练好的单交叉口交通状态模拟器组合在一起,使用状态-动作-奖励样本集中的多交叉口数据重新训练多交叉口交通状态模拟器,以减少训练数据量需求。最终,状态-动作-奖励样本集中的真实历史数据以及从深度神经网络的交通状态模拟器中得到的模拟数据将共同用于深度强化学习模型的训练,以得到最终的单交叉口、多交叉口信号控制优化方案。在获取交叉口的状态特征数据之后,通过本发明实施例的交通状态模拟器对交叉口的状态特征数据进行仿真模拟,以得到交通状态模拟数据;根据交通状态模拟数据以及信号配时控制模型,确定出交叉口的信号配时方案。通过基于神经网络的交通状态模拟器对交叉口的交通状态进行模拟,对交叉口交通状态变化刻画可信度高。并且,根据大量不同交叉口的数据进行训练,则训练出的交通状态模拟器可适用于不同交叉口,可用于城市中大量交叉口的信号调优,无需对每个信号交叉单独仿真建模,具有灵活性,普适性。该交通状态模拟器所输入的信息可通过挖掘城市车辆轨迹、现有信号配时、兴趣点、路网数据获得,无需收集或假设高度精细化的交叉口交通参数,不仅较少了人力物力,还提高了模拟数据的准确性。
图8示出了可以应用本发明实施例的交叉口信号配时控制优化的方法或交叉口信号配时控制优化的装置的示例性系统架构800。
如图8所示,系统架构800可以包括终端设备801、802、803,网络804和服务器805。网络804用以在终端设备801、802、803和服务器805之间提供通信链路的介质。网络804可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备801、802、803通过网络804与服务器805交互,以接收或发送消息等。终端设备801、802、803上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备801、802、803可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器805可以是提供各种服务的服务器,例如对用户利用终端设备801、802、803所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果反馈给终端设备。
需要说明的是,本发明实施例所提供的交叉口信号配时控制优化的方法一般由服务器805执行,相应地,交叉口信号配时控制优化的装置一般设置于服务器805中。
应该理解,图8中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图9,其示出了适于用来实现本发明实施例的终端设备的计算机系统900的结构示意图。图9示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,计算机系统900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括样本获取模块、第一训练模块和第二训练模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,样本获取模块还可以被描述为“获取状态-动作-奖励样本集的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取状态-动作-奖励样本集,状态-动作-奖励样本集包括至少一个交叉口的状态-动作-奖励子样本集;基于神经网络和状态-动作-奖励样本集,训练得到交通状态模拟器;基于强化学习和状态-动作-奖励样本集、交通状态模拟器,训练得到信号配时控制模型。
根据本发明实施例,基于多个交叉口的样本数据以及网络模型,训练得到交通状态模拟器,该交通状态模拟器不需要搜集精细化的交通参数数据以及假设参数指标。并且,该交通状态模拟器是基于大量真实的样本数据和神经网络训练得到的,该样本数据为多个交叉口的历史行驶数据和信号配时方案数据,则其模拟出的数据更能贴近真实行驶行为。基于该交通模拟器和强化学习,训练得到的信号配时控制模型具有更强的普适性。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。