一种基于主成分分析交通信息的补偿方法
【技术领域】
[0001] 发明属于智能交通系统和数据挖掘技术领域,具体涉及一种基于主成分分析交通 信息的补偿方法。
【背景技术】
[0002] 智能交通系统(ITS)是一种旨在提供新颖高效的运输方式和交通管理模式的创新 应用,使用户能够更好地了解和创造安全、协调、智能的交通网络。现今在一些发展中国家 像中国,虽然大部分地区仍然是农村,但是却在迅速的进行着城市化和工业化。在这些地 区,迅速发展的基础设施建设同时也带来了涌入的人群。因而拥堵问题现已逐渐成为中国 城镇化带来的一大重要问题。尤其在北京、上海这样的大城市,拥堵问题尤为突出。而智能 交通系统能合理地分配车流,提前预测拥堵,从而能有效地解决拥堵问题,是解决城市拥堵 问题的有效办法。
[0003] 在成熟的智能交通系统中,通行时间的估计和预测是最重要的功能之一。当获得 精确的通行时间之后,旅行者就能决定自己的出发时间并提前规划自己的出行路线。当交 通网络中的每个出行者都能智能地规划自己的路线时,整个交通网络的通行性能也将得到 大大的提高。同时,可靠的通行时间预测也使得交通管理部门能够动态地制定和修改交通 管理政策,通过调节不同路口交通灯的时间等方法来管理城市交通,从而避免交通拥堵的 产生。另外作为大型复杂交通系统的参数之一,准确的通行时间同时也是评价交通管理方 法的有效性的重要标准。
[0004] 目前,在估计通行时间算法中最为广泛使用的浮动车数据却存在严重的时空缺失 情况,从而导致该数据无法被直接被用于估计通行时间。如何对缺失的交通信息进行估计 和补偿一直是进行准确的通行时间估计的前提和重要基础。
【发明内容】
[0005] 有鉴于此,本发明提出了一种基于主成分分析的交通信息补偿方法,该方法利用 交通信息矩阵中已有的数据和历史数据间的时间空间关系,并结合矩阵分解的相关方法, 对交通信息矩阵中缺失的元素进行估计,为后续的通行时间估计提供基础。
[0006] 实现本发明的技术方案如下:
[0007] -种基于主成分分析的交通信息补偿方法,具体过程为:
[0008] 步骤一,针对待获取交通信息的所有道路和所有时间段,获取各道路在各时间段 的交通信息,然后将所有交通信息组成测量矩阵M,随机生成矩阵L;
[0009] 步骤二,根据测量矩阵M计算矩阵
更新矩阵
其中inverse(P,Q) =P-1(^>1',人1、\2及人3为设定阈值;
[0010] 步骤三,计算代价函数(1)的值,若该值大于之前的历史最小值,则利用最小二乘 法估算L和R的最优值,否则,将最优的L和R值更新为当前的L和R值;
[0011] mini IB. X(LRt)-MI |Ρ+λι(| |Lf+| |Rf)+A2| | SX (LRt)I |Ρ+λ3| | (LRt) XT | |f (I)
[0012] 其中,S为空间限制矩阵,T为时间限制矩阵,I I I |F为矩阵的模,B为指示矩阵;
[0013] 步骤四,重复步骤二和步骤三直至达到设定的最大循环次数,然后将最优的L和R 相乘计算出交通信息矩阵X = LRt。
[0014] 进一步地,本发明所述测量矩阵M的获取过程为:
[0015] 步骤101,根据车辆上GPS数据,利用A*算法推断出车辆在一段旅程中所经过的所 有道路和起止时间,计算车辆在这段旅程中的平均速度;
[0016] 步骤102,将所有在时间段t通过道路r的旅程的加权平均速度作为时间段t内道路 r的交通信息,所述权值为旅程所通过道路r的长度与道路r的总长度的比值;
[0017] 步骤103,按照步骤102的方式,计算所有道路在各时间段的交通信息,然后将所有 交通信息组成测量矩阵M。
[0018] 进一步地,本发明所述步骤101的具体过程为:
[0019] 201,以车辆上GPS定位点为圆心,半径为45m的外接正方形作为该GPS定位点的误 差区域;
[0020] 202,从道路网络中选出所有符合条件的候选路段,所述符合条件的候选路段主要 包括三种情况:(a)路段的两个端点都在误差区域内,(b)路段只有一个端点在误差区域内, (c)路段的两个端点都不在误差区域内,但是路段与误差区域相交;
[0021] 203,以候选路段为中心,两侧各平行延伸20米得到矩形,将其记为该候选路段的 置信区域;
[0022] 204,当车辆上GPS定位点P仅出现在一条候选路段的置信区域内时,将该候选路段 作为匹配路段;否则,当之前GPS定位点在该候选路段的位置属性(在候选路段的哪一侧)发 生3次以上改变时,将该候选路段作为匹配路段;
[0023] 205,根据历史数据中相邻点之间的时间间隔的大小将GPS数据划分成独立的一个 个旅程;按照步骤201-204的方式为每个旅程的所有的GPS定位点确定其对应的匹配路段, 并在所述匹配路段上确定其对应的匹配点;最后利用A*算法,根据每个旅程所对应的匹配 点推断出每个旅程所经过的所有道路和起止时间,从而可以得到该旅程的平均速度。
[0024] 有益效果
[0025] (1)本发明在进行交通信息的补偿时考虑了相邻道路的交通信息之间的时空联 系,从而大大的提高了补偿的精度。
[0026] (2)本发明利用车辆跟踪来生成交通信息,而不是关注复杂的道路网络,大大降低 了运算量,避免了因道路网络规模的增大而造成的运算量的指数增加。
[0027] (3)本发明针对GPS定位信息存在误差的情况,对GPS定位信息进行匹配,将大量的 运算转换成比较运算,在提高定位精度的同时,大大地降低了运算时间,提高了运算效率。
【附图说明】
[0028]图1为本发明基于主成分分析的交通信息补偿方法的流程图;
[0029]图2为误差区域;
[0030]图3为与误差区域相交的三种情况;
[0031]图4为快速排斥实例;
[0032]图5为道路AB的置信区域;
【具体实施方式】
[0033]下面结合附图并举实例,对本发明进行详细描述。
[0034] 如图1所示,本发明提供一种基于主成分分析的交通信息补偿方法,具体过程为:
[0035] 步骤一,针对待获取交通信息的所有道路和所有时间段,获取各道路在各时间段 的交通信息,然后将所有交通信息组成测量矩阵M,随机生成矩阵L;
[0036] 步骤二,根据测量矩阵M计算矩阵
更新矩阵
其中inverse(P,Q) =PdQP1" A1J2 及 λ3 为设定阈值;
[0037] 步骤三,计算代价函数(1)的值,若该值大于之前的历史最小值,则利用最小二乘 法估算L和R的最优值,若该值小于之前的历史最小值,将最优的L和R值更新为当前的L和R 值;
[0039]其中,S为空间限制矩阵,S为η*η的矩阵,每一个元素 Slj代表道路i和道路j之间的 空间联系,η为需要获取交通信息的道路总数,T为时间限制矩阵,即以第1-3行的元素为单 元,沿着列向循环排布,I I I If为矩阵的模,B为指示矩阵,当测量矩阵M中的元素为空时,指 示矩阵B中对应的元素为0,否则指示矩阵B中对应的元素为1;
[0041] 步骤四,重复步骤二和步骤三直至达到设定的最大循环次数,然后将最优的I^PRt 相乘计算出交通信息矩阵X。
[0042] 由于测量矩阵M中可能存在数据丢失的情况(即某些位置上的元素为0),因此本发 明将交通信息矩阵X分解为X = LRt,接着利用矩阵秩和时空矩阵的限制进行优化,并利用迭 代最小二乘法求出问题的解,从而得出完整的交通信息矩阵,实现对交通信息矩阵中缺失 的元素的补偿,为交通通行提供基础。
[0043] 本发明较佳采用如下过程来获取交通信息组成测量矩阵M:
[0044] 步骤101,根据车辆上GPS数据,利用A*算法推断出车辆在一段旅程中所经过的所 有道路和起止时间,并计算车辆在这段旅程中的平均速度;
[0045] 步骤102,为了生成道路r在时间段t的交通信息(平均速度),所有在时间段t经过 道路r的旅程的平均速度都需要被考虑在内。另外,由于有一些旅程在时间段t内只经过了 道路r的一部分,则认为这些旅程的平均速度并不能完全反映道路r在时间段t的交通状况。 因此所有在时间段t通过道路r的旅程的加权平均速度被作为该时间段的道路r的交通信 息,所述权值为旅程所通过道路r的长度与道路r的总长度的比值;
[0046] 步骤103,按照步骤102的方式,计算所有道路在各时间段的交通信息,然后将所有 交通信息组成测量矩阵M。
[0047]由于GPS定位信息可能存在偏差,因此本发明利用计算几何的相关理论判断GPS坐 标点和候选道路的几何关系,并将GPS坐标点匹配到正确的道路上,以修正由于GPS误差而 造成的定位误差。具体过程为:
[0048] 201,以车辆上GPS定位点为圆心,半径为45m的外接正方形作为该GPS定位点的误 差区域,如图2所示;
[0049] 202,从道路网络中选出所有符合条件的候选路段,所述符合条件的候选路段主要 包括三种情况:(a)路段的两个端点都在误差区域内,(b)路段只有一个端点在误差区域内, (c)路段的两个端点都不在误差区域内,但是路段与误差区域相交;以上三种情况可通过计 算几何中的判断线段与多边形是否相交、点在直线哪一侧等算法来确定,如图3所示;
[0050] 203,以候选路段为中心,两侧各平
行延伸20米得到的矩形,将其记为该候选路段 的置信区域;
[0051] 204,当车辆上GPS定位点P仅出现在一条候选路段的置信区域内时,将该候选路段 作为匹配路段;否则,若出现车辆上GPS定位点P不在唯一的置信区域内的情况时,则需要结 合历史信息来进行确认;当之前GPS定位点在该候选路段的位置属性(在候选路段的哪一 侧)发生3次以上改变时,将该候选路段作为匹配路段。
[0052] 205,根据历史数据中相邻点之间的时间间隔的大小将GPS数据划分成独立的一个 个旅程,当相邻点之间的时间间隔大于设定阈值时,则表明车辆在该时间段内处于停止状 态,因此不将该时间间隔作为一个旅程;利用基于计算几何的地图匹配方法(即步骤201-204的方式)为每个旅程的所有的GPS定位点确定其对应的匹配路段,并在所述匹配路段上 确定其对应的匹配点;最后利用A*算法,根据每个旅程所对应的匹配点推断出每个旅程所 经过的所有道路和起止时间,从而可以得到该旅程的平均速度。
[0053] 实施例1:
[0054] (1)首先按照历史数据中相邻点之间的时间间隔将历史数据划分为一个个独立的 旅程。接着利用A*算法推断出该旅程所经过的所有道路和起止时间。因为浮动车上报位置 信息的频率相对较低,相邻两个定位点之间的路径通常具有多种可能性,因此需要使用A* 算法来推断出最优路径。通常,最优路径一般指的是通行时间最短的路径,而通行时间与该 路径的长度和所经过的交通灯的数量有关:长度越长和经过更多的交通灯会导致更长的通 行时间。但是这两个因素通常是互相矛盾的:越短的路径一般意味着更频繁的进行转向,从 而更容易遇上交通灯。因此所述算法使用A*这种启发式的路径规划算法来权衡这两种因素 的作用,找到最优的路径。接着在通过A*算法得到最优路径. .-rnk-eik之 后,该路径的平均速度可被计算为:
[0057] 其中cU是道路rik的长度,ts和te是该路径的起止时间。
[0058]最后,假设在时刻t有η条旅程经过道路k,且他们的平均速度分别为V1,V2. . .,vn, 则在时刻t道路k的平均速度可被计算为:
[0061] 通过以上过程可计算出所有道路在所有时刻的平均速度,则可以通过这些信息生 成交通信息矩阵,下面给出了一个交通信息矩阵的例子。
[0063] 其中,η为需要获取交通信息的道路总数,m为时间段的总数。
[0064] (2)首先结合主成分分析在矩阵分解中的应用将交通信息矩阵X分解为X = LRTJi 着利用矩阵秩和时空矩阵的限制得到如下的优化问题。
[0065] min| |B.*(LRT)-M| If+AK I |Lf+| |Rf)+A2| |S*(LRt)f+A3| I (LRT)*T| |f (6)
[0066] 最后利用迭代最小二乘法求出问题的解,从而得出完整的交通信息矩阵,完成对 交通信息的补偿。该算法首先随机初始化L,接着将最小二乘法得到的R的最优值赋给R,并 计算此时的优化函数值。如果此时的优化函数值优于之前的最优值,则保存此时的L和R;否 则直接进入下一次循环。最后重复上述过程直到达到最大循环次数,并输出最优的L和R,从 而补偿得到的交通信息矩阵X = LRT。
[0067] 为了避免GPS定位信息的误差,采用基于计算几何的地图匹配算法来获取相应的 匹配路段,一共分为三个步骤:误差区域的确定、候选路段的确定和匹配路段的确定。所述 的误差区域的确定是在得到GPS定位点P之后,构造一个以P为圆心,45m为半径的圆的外接 正方形作为误差区域,如图1所示。接着所述的候选路段的确定将所有与误差区域相交的路 段作为候选路段,这里的相交包括三种情况:(1)路段的两个端点均在误差区域内。(2)路段 有一个端点在误差区域内。(3)路段的两个端点均不在误差区域内,但是路段与误差区域相 交。这三种情况在图2中给出了具体的例子。情况1和情况2只需要分别判断两个端点是否在 误差区域的范围之内即可。而情况3需要用到计算几何中一个基本算法:判断线段是否与多 边形相交。而判断线段是否与多边形相交只需判断线段是否与多边形的某一条边相交即 可,故上述问题归结为判断两条线段是否相交。通常的做法是:首先根据线段还原出两条线 段所在直线的方程,然后联立方程组求出交点,最后再判断交点是否在线段区间上。因此常 规的代数方法非常繁琐,每次都要解方程组求交点,且计算量很大。所述的算法判断两条线 段是否相交包括以下两个步骤:快速排斥和跨立实验。图3给出了快速排斥的实例,假设以 P1P2为对角线的矩形为Ri,以Q1Q2为对角线的矩形为R2,如果这两个矩形没有交点,则对应的 两条线段P1P 2和Q1Q2也没有交点。跨立实验指的是判断一条线段的两个端点是否分别位于 另一条线段所在直线的两侧。故先需要使用计算几何相关算法来判断点在直线的哪一侧。 然而根据该算法中矢量积的几何意义,跨立实验只能说明线段两端点在另一线段所在直线 的两侧,而不能保证是在线段的两侧。因此,跨立实验只是证明两条线段相交的必要条件, 必须和快速排斥实验一起才能组成直线段相交的充分必要条件。所述的匹配道路的确定算 法在得到候选路段之后为每条候选道路建立置信区间,如图4所示。该置信区域是由两条与 该路段平行且分别距其50m的线段构成的长方形区域。在获得每条路段相应的置信区域后, 先判断定位点P是否在唯一的置信区域内。若是,直接将该置信区域所对应的路段R作为匹 配路段;否则计算候选路段集合中每一条路段的位置属性(定位点P在该路段的哪一侧),若 某一条路段R的位置属性已经改变了 3次,就将R作为匹配路段。
[0068]综上所述,以上仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡 在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保 护范围之内。
【主权项】
1. 一种基于主成分分析的交通信息补偿方法,其特征在于,具体过程为: 步骤一,针对待获取交通信息的所有道路和所有时间段,获取各道路在各时间段的交 通信息,然后将所有交通信息组成测量矩阵M,随机生成矩阵L; 步骤二,根据测量矩阵M计算矩阵更新矩阵,其中inverse(P,Q) =P-咖^人丨义及人:^设定阈值; 步骤三,计算代价函数(1)的值,若该值大于之前的历史最小值,则利用最小二乘法估 算L和R的最优值,否则,将最优的L和R值更新为当前的L和R值; min| |B. X(LRT)-M| |Ρ+λι(| |L| |f+| |R| |f)+A2| | SX (LRt)I |Ρ+λ3| | (LRt) XT| |f (I) 其中,S为空间限制矩阵,T为时间限制矩阵,I I I |F为矩阵的模,B为指示矩阵; 步骤四,重复步骤二和步骤三直至达到设定的最大循环次数,然后将最优的L和R相乘 计算出交通信息矩阵X = LRt。2. 根据权利要求1所述基于主成分分析的交通信息补偿方法,其特征在于,所述测量矩 阵M的获取过程为: 步骤101,根据车辆上GPS数据,利用A*算法推断出车辆在一段旅程中所经过的所有道 路和起止时间,计算车辆在这段旅程中的平均速度; 步骤102,将所有在时间段t通过道路r的旅程的加权平均速度作为时间段t内道路r的 交通信息,所述权值为旅程所通过道路r的长度与道路r的总长度的比值; 步骤103,按照步骤102的方式,计算所有道路在各时间段的交通信息,然后将所有交通 信息组成测量矩阵M。3. 根据权利要求1所述基于主成分分析的交通信息补偿方法,其特征在于,所述步骤 101的具体过程为: 201,以车辆上GPS定位点为圆心,半径为R的外接正方形作为该GPS定位点的误差区域; 202, 从道路网络中选出所有符合条件的候选路段,所述符合条件的候选路段主要包括 三种情况:(a)路段的两个端点都在误差区域内,(b)路段只有一个端点在误差区域内,(c) 路段的两个端点都不在误差区域内,但是路段与误差区域相交; 203, 以候选路段为中心,两侧各平行延L米得到矩形,将其记为该候选路段的置信区 域; 204, 当车辆上GPS定位点P仅出现在一条候选路段的置信区域内时,将该候选路段作为 匹配路段;否则,当之前GPS定位点在该候选路段的位置属性发生3次以上改变时,将该候选 路段作为匹配路段; 205, 根据历史数据中相邻点之间的时间间隔的大小将GPS数据划分成独立的一个个旅 程;按照步骤201-204的方式为每个旅程的所有的GPS定位点确定其对应的匹配路段,并在 所述匹配路段上确定其对应的匹配点;最后利用A*算法,根据每个旅程所对应的匹配点推 断出每个旅程所经过的所有道路和起止时间,进而计算出该旅程的平均速度。
【专利摘要】本发明提供一种基于主成分分析的交通信息补偿方法,具体过程为:步骤一,针对待获取交通信息的所有道路和所有时间段,获取各道路在各时间段的交通信息,然后将所有交通信息组成测量矩阵M,随机生成矩阵L;步骤二,根据测量矩阵M计算矩阵,更新矩阵,其中inverse(P,Q)=P-1QPT,λ1、λ2及λ3为设定阈值;步骤三,计算代价函数(1)的值,若该值大于之前的历史最小值,则利用最小二乘法估算L和R的最优值,否则,将最优的L和R值更新为当前的L和R值;步骤四,重复步骤二和步骤三直至达到设定的最大循环次数,然后将最优的L和R相乘计算出交通信息矩阵X。本发明所提得到的交通信息矩阵可为后续的通行时间估计提供基础。
【IPC分类】G08G1/01
【公开号】CN105489014
【申请号】CN201610020917
【发明人】王美玲, 杨强荣
【申请人】北京理工大学
【公开日】2016年4月13日
【申请日】2016年1月13日