基于深度学习的道路短期交通状态时空序列预测
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 道路短期交通状态时空序列预测

1.3.1 问题描述

本质上,用一句话概括道路交通时空序列预测问题的定义,即基于过去一系列时段观测到的历史交通状态时空数据序列,采用某种预测模型,预测未来若干时段内的道路交通状态时空数据序列。

因此,这就决定了针对道路交通时空序列预测问题的研究,核心是找到能够有效根据历史交通观测数据序列预测未来数据序列的预测模型。数学上形式化的表达该问题为

式中,为需要寻找的预测函数。在本书中,它代表一个深度神经网络的模型;分别表示历史观测的交通状态时空数据序列和预测的未来时空交通状态数据序列。而未来时空交通数据序列的真实观测值(Ground Truth)一般在本书中表示为

因此,根据式(1-1),短期交通状态预测问题可以进一步表述为:基于历史交通状态时空观测数据,寻找一个“好的”函数,从而能够在给定历史时段交通状态数据输入的情况下,对未来做出“好的”预测。这里的预测“好坏”本质上是对预测函数的性能评价,可以包括均方根误差(Root Mean Square Error,RMSE)、平均绝对误差(Mean Absolute Error,MAE)和平均绝对误差百分比(Mean Absolute Percentage Error,MAPE)等多种定义形式。在这个意义上,短期交通状态预测研究的历史,可以看作采用不同预测函数对观测数据进行拟合的发展史。早期是时间序列类模型(如ARIMA),然后是各种滤波类模型(如卡尔曼滤波、粒子滤波),再后来发展到传统机器学习模型(如K近邻、SVR),直到现今的深度学习类模型。在基于深度学习进行短期交通状态预测的研究中,被寻找的预测函数是一个深度的神经网络,具有很强的拟合和泛化(预测)能力,相对于传统机器学习模型和时间序列模型而言,能够更好地描述交通状态中蕴含的复杂时空相关性。深度神经网络的拟合能力显著增强,在机器学习领域面临着过拟合的风险,但大规模的交通状态时空数据又使这种风险极大地降低,因此,在交通状态预测领域中,深度学习与交通大数据的结合也是当前时代发展的必然。

1.3.2 核心挑战

对未来短期内交通时空状态进行预测,首先要回答的问题是:研究区域内未来的交通状态与已知的什么因素有关?只有知道了与什么已知因素有关,下一步才是如何建立预测模型的问题。

当前,短期交通状态预测的研究的普遍内在假定为:在观测区域内,任何一个位置单元(网格区域、路段或其他观测空间单元)未来的交通状态都可以基于其自身历史的交通状态数据,以及与其具有空间相关性的其他位置单元的历史交通状态数据而预测得到。

在时间的维度上,位置单元未来的交通状态与其自身历史的交通状态是相关的,这被称为时间相关性(Temporal Dependency),以往熟知的时间序列分析理论(如ARIMA、GARCH等)的根本假设都是基于这种时间相关性。这种相关性十分直觉,一个位置单元未来的交通状态是由其过去的交通状态演变而来的,存在相关性是情理之中的事情。

在空间的维度上,位置单元未来的交通状态与其周边位置单元历史的交通状态是相关的,这被称为空间相关性(Spatial Dependency)。由于路网是连通的,即使是网格化处理后的路网,不同的网格单元之间也是有道路连接的,自然就会有交通流量的相互传播,那么,不同的位置单元之间由于交通流量的相互传播,必然使它们之间的交通状态存在高度的相关性。

这种时间相关性和空间相关性并不是相互独立的两个维度,而往往是融合在一起的时空相关性,这是由道路交通的特点决定的。例如,t时段上游路段的交通流,刚好在t+1时段抵达下游路段,那么下游路段t+1时段的交通状态是和t时段上游路段的交通状态相关的。

因此,寻找预测函数的过程,也就是试图对这种时空相关性进行建模的过程,如果建立的模型能够有效地捕获这种时空相关性,那么自然其预测性能就会较好。因此,短期交通状态预测研究的本质就是对这种时空相关性的建模(或称为捕获)。

然而,交通时空状态预测中的这种时空相关性是十分复杂的,这种复杂性表现在多个方面,主要为时空相关性中存在的非线性、动态性、异质性、多尺度性等。

(1)非线性(nonlinearity)。道路网上的交通流是由自主的人,在不确定的环境下(异常事件、不确定的需求等),驾驶的车辆发生运动所构成的集合现象。交通流在路网,尤其是在城市路网中的传播是高度非线性的,这就导致了不同位置单元之间,以及同一位置单元不同时段之间的交通状态相关性也是高度非线性的。由于非线性激活函数的存在,深度神经网络本质上恰好是一个高度非线性的函数,拟合能力非常强大,这也是现在深度神经网络被普遍用于短期交通状态预测的重要原因之一。

(2)动态性(dynamism)。交通状态的时间相关性和空间相关性,往往都随时间呈现出高度的动态性。这种动态性往往并不是相关联的“量”随着时间的改变而造成的,而是关联的“模式”随着时间改变而造成的。例如,对于一个功能为居住小区的特定位置单元,早高峰期间,其人流流出量(outflow)大致呈现上升的趋势;晚高峰期间,其流出量大致呈现下降的趋势,这在本质上就要求在不同时段范围内,基于历史流量预测未来流量的模型(历史与未来的关联模式)具有动态性。相反,如果采用不具有动态性的关联模式的预测模型,那么很难对不同时段都精准地做出预测。此外,对于不同位置单元之间的空间相关性而言,其同样是动态的,一天中不同时段内,两个位置单元之间的关联程度和方式也不尽相同,例如,一个住宅区(记为A)和一个商业区(记为B)之间,早高峰期间人们更多选择从A到B的出行,晚高峰期间人们更多选择从B到A的出行,这就决定了二者之间空间关联模式是随着时间而发生变化的,为了更精准地捕获二者之间的空间相关性带来的影响,需要更好地考虑这种动态性。

(3)异质性(heterogeneity)。在空间上,不同的位置单元不能简单将其考虑为同质的,而在建模的过程中施加相同的交通状态时间、空间相关性捕获模式。例如,一个位置单元的功能不同(如居民区和商业区),它所呈现的交通状态之间的时空相关模式就不同。居民区早高峰以出流为主,入流较少;而商业区的情况则正好相反。此外,不同位置单元,由于地理位置不同,其与周边位置单元之间的关联结构不同(路网连通程度、平均出行时间等),它们之间的空间关联模式也具有很强的异质性,即同样是考虑周边位置单元对中心位置单元的交通状态影响,不同中心位置单元之间具有明显的不同。在建模过程中,对这种异质性的捕获和恰当描述,是提高预测准确性的重要影响因素。

(4)多尺度性(Multi-Scale)。短期交通状态预测中,时间维度的相关性和空间维度的相关性都是多尺度的。在时间维度上,与未来时段交通状态相关的历史交通状态包含了同一天中与之相邻的若干历史时段(时段尺度)、每一历史天中与之相同的时段(天尺度)、每一历史周中与之相同的时段(周尺度)、每一历史月中与之相同的时段(月尺度)等;在空间维度上,一般会根据城市交通出行方式的发达程度确定不同的空间相关性捕获范围,如全局市域范围、大范围、中范围、小范围等。具体在实现方法上,在时间维度上的多尺度相关性,通常是基于多尺度的历史数据输入,然后在模型中进行融合得到综合表征,进一步对未来时段的交通状态做出预测;在空间维度上,则可以利用不同的卷积核大小,限定卷积操作的范围,从而实现不同尺度空间相关性的捕获。

1.3.3 问题分类

1. 网格化数据和拓扑化数据

数据是预测的基础。为了建立道路交通时空序列预测模型,预测未来的道路交通时空数据序列,需要以历史的道路交通时空数据序列作为输入。与道路交通相关的时空观测数据简单地可以列举如下:

(1)出租车GPS数据。

(2)共享单车实时定位数据。

(3)地铁站刷卡数据。

(4)交通检测器实时观测数据。

(5)手机信令数据。

当然,以上并非是道路交通领域可以观测到的全部时空数据,而仅是一些有代表性的数据。

按照可以观测到的时空数据组织方式的不同,通常大致可以分为2类:网格化道路交通时空序列观测数据(Grid-Based Data)和拓扑化道路交通时空序列观测数据(Graph-Based Data)。

1)网格化道路交通时空序列观测数据

这种方式首先将整体交通观测区域(如整个城市)从横向和纵向两个方向切分为等大小的网格,然后以每个网格单元(cell)为基本单位对时空交通观测数据进行组织(见图1-1)。

图1-1 网格化道路交通观测区域划分示例

以城市出租车GPS定位数据为例,每辆车每隔一定时间间隔(如1分钟)会产生一个定位数据(一般被描述为一个多元组,分别表示定位时刻、所在位置的经度、纬度、车速等),按照时间顺序将这些定位点连接起来则构成了该辆车的行驶轨迹(trajectory)。将城市划分为一系列等大的网格之后,可以依据所有出租车的GPS定位轨迹数据,统计单位时段内(如5分钟、15分钟等)每个网格单元的出租车流入量(该时段内进入该网格单元的轨迹数)、流出量(该时段内驶出该网格单元的轨迹数)、区域平均行驶速度(该时段内该网格单元内所有轨迹的平均速度)等数据,进一步可以基于这些统计出来的历史网格化观测数据预测未来的网格化数据,进而服务于出租车最优巡客引导、运力调度等决策服务。

每个网格单元所统计的流入量、流出量、区域平均行驶速度等描述交通状态的指标在本书中称为交通特征(Traffic Features)或交通观测(Traffic Observations),它们从不同维度描述了每个网格单元在某个时段内的交通状态。

假定一个特定的观测区域被划分为I×J个等大小的网格单元(令N=I×J),每个网格单元所观测交通特征数为F,连续观测了T个时间间隔,那么观测得到的网格化时空交通序列数据被表示为张量(tensor)。其中,T时刻的网格化交通观测数据。其可视化的表示如图1-2所示。

图1-2 网格化道路交通时空序列观测数据的可视化示例

2)拓扑化道路交通时空序列观测数据

道路网络天然是由节点和弧段构成的有向拓扑图。一般直觉理解的情况下,弧段表示的是路段,而节点就是路段之间的连接处(如交叉口)。当然,也可以从另一个角度来看待道路网络这个拓扑图,也就是将路段视为节点,而路段之间的连接作为弧段。布设在道路网络不同位置的交通观测站(如路段上安装的感应线圈、微波测速等)都可以作为观测节点,而经由道路网络所构建的这些观测节点之间的连通就可以作为弧段,这样共同组织起来的时空观测数据就被称为拓扑化道路交通时空观测数据,拓扑化道路交通观测站网络如图1-3所示。

图1-3 拓扑化道路交通观测站网络:(a)路网拓扑图;(b)交通状态检测器拓扑图

以路段上设置的综合交通观测站为例,能够检测每隔一定时段(如5分钟、15分钟等)内该观测站点处的交通流量(flow)、速度(speed)、时间占有率(occupancy)等交通特征。

假定某个观测区域内一共有N个观测站,连续观测时段数为T,每个时段内,每个站点观测的交通特征数目为F,那么观测得到的拓扑化道路交通时空序列数据被表示为张量。其中,T时刻的拓扑化交通观测数据。其可视化表示如图1-4所示。

图1-4 拓扑化道路交通时空序列观测数据的可视化示例

需要注意的是,网格化和拓扑化的道路交通时空序列观测数据,在时间的维度上,可以视为一种数据流,本书中,有时为了叙述方便,将任意时刻t的交通特征也称为时刻t的交通状态切片。

总结一下,无论是网格化道路交通时空观测数据,还是拓扑化道路交通时空观测数据,在时间的维度上都是由一系列的交通状态切片所组成的;在空间的维度上,都是由一系列的地理位置单元所组成的(网格化和拓扑化的区别在于,前者的基本位置单元为网格单元,后者的基本位置单元为拓扑图中的节点);在特征的维度上,都由一系列交通状态的观测指标所构成(流量、速度、密度等)。

2. 整合外部信息和不整合外部信息

位置单元未来的交通状态固然直接与它自身及其周边位置单元的历史交通状态相关联,但不可否认的是,一些外部信息同样对其造成了重要影响。如以下外部信息。

(1)待预测时段的时间特性(如它所在的天是否是周末、节假日等)。

(2)历史时段和待预测时段的天气特征(如风速、温度、降雨量等)。

(3)特殊的交通事件(如交通拥堵等)。

显然,为了更好地对未来交通状态做出预测,需要进一步整合这些相关的重要的外部信息,由此,式(1-1)所描述的一般性短期交通状态预测问题需要扩展为

式中,E为与预测相关的历史和未来时段内的外部相关信息。

3. 单体预测和集体预测

对于未来时段的交通状态预测可以是针对每个单独的位置单元建立单体预测模型,从而进行个体级别的预测;也可以建立集体预测模型,在集体层面一次性地预测所有位置单元未来的交通状态。

(1)单体预测模型

(2)集体预测模型

式中,i∈[1,N]为任意位置单元。

4. 单步预测和多步预测

交通状态预测可以只预测当前时段的下一个时段,也可以预测当前时段后的若干个时段,前者称为单步预测,后者称为多步预测。

(1)单步预测

(2)多步预测

式中,表示历史的交通状态序列;表示预测的未来多步交通状态序列。