一种基于手机通信大数据的道路拥堵监测方法与流程

文档序号:20083541发布日期:2020-03-13 05:56阅读:243来源:国知局
一种基于手机通信大数据的道路拥堵监测方法与流程
本发明涉及道路交通拥堵监测领域,更具体地,涉及一种基于手机通信大数据的道路拥堵监测方法。
背景技术
:城市道路交通提供人们工作、生活、文化娱乐活动的出行,担负着市内各区域客流和物流的通达、城市对市外交通的连接流转。随着社会经济的快速发展和人民生活水平的不断提高,城市道路越修越宽,但是同时机动车保有量和城市聚集的人口也越来越多,交通出行需求日益增长,道路交通越来越堵,道路交通拥堵不仅会给人们的日常生活与工作带来很多不便,同时还会制约经济的增长、加速城市环境的恶化,给人们带来很多的困扰。当前,交管部门对道路的拥堵监测主要依靠人工巡检、定点设备监测等方式来进行,这些方式存在成本较高、覆盖的道路范围有限、以被动式监测为主、自动化、智能化水平较低、数据的记录和历史分析困难等缺陷。现有的人工巡检方式,只能监测到巡检当时所巡检路段的交通运行情况,做不到全天候全路段的完整巡检,人工巡检的数据难以记录和保存,人工成本较高,效率较低;而现有的定点设备监测的方式,也只能监测到定点设备附近路段的交通情况,是一种被动式监测,信息存在不完整,没有实现自动化、智能化主动监测,监测大范围道路的运行情况,需要很多的设备投入以及施工人力投入,不可避免还涉及异厂家设备及不同系统之间的协调问题,另外,视频数据的处理和保存还要求更多资金和技术的投入。技术实现要素:本发明提供一种基于手机通信大数据的道路拥堵监测方法,克服现有交通拥堵监测技术的不足,提高交通拥堵监测的准确性与可靠性,降低监测的成本和实现难度。为解决上述技术问题,本发明的技术方案如下:一种基于手机通信大数据的道路拥堵监测方法,包括以下步骤:s1:手机实时通信数据处理,获取用户5分钟位置快照图;s2:构建路网模型,将蜂窝通信基站与道路进行映射,得到基站路点匹配表;s3:用户路径轨迹拟合与计算路段速度;s4:道路拥堵可视化,对道路拥堵监测。通过将道路两旁朝向道路覆盖的蜂窝基站映射拟合到道路上,车上手机用户随着车辆的移动发生位置的变化,与当前服务的蜂窝基站及相邻蜂窝基站发生信令交互,通过采集片区乃至全网的蜂窝基站通信数据,利用大数据建模、分析和挖掘技术,可以计算得到道路各路段的交通路况变化。优选地,步骤s1包括以下步骤:s1.1:生成5分钟基础快照表:读取:分地市从kafka读取7类xdr数据;合并:将所有topic合并成一个javapairdstream;分区:按接口名分区maptopair;过滤:保留7类xdr接口;精简xdr:从7xdr接口中抽取必要字段,去掉xdr数据中多余字段;去重:根据号码关联、按时间排序,同一个号码选取时间最新的记录;写入:以msisdn为key写入redis,并过滤号码为空的记录;得到用户实时位置的5分钟基础快照表,并存在redis中;s1.2:生成用户快照号码key文件:读取:从redis中读取s1.1生成的5分钟基础快照表;生成快照号码文件:通过shell脚本提取用户的msisdn,生成快照号码key文件,将快照号码key文件上传至hdfs指定目录;得到用户快照号码key文件;s1.3:生成5分钟位置快照表:读取:从hdfs指定目录读取s1.2生成的快照号码key文件;遍历:遍历号码,从redis中读取s1.1生成的5分钟基础快照表;获取快照号码的精简xdr,获取用户的小区位置信息;读取msisdn号段表、imsi号段表,回填号码归属地;根据1小时存活机制,更新、回填、删除用户位置;生成5分钟位置快照表,按地市、年、月、日分区写入hdfs,得到最终的用户5分钟位置快照表。上述处理过程采用kafka+hadoop+redis+sparkstreaming实时流技术进行数据消费和处理,保证了移动终端与蜂窝网络的通信大数据可以得到实时处理,结合用户周期性位置更新定时器(54分钟),引入了用户位置快照1小时存活机制,保障了用户手机定位数据的连续性和完整性,数据消费不限于2g、3g和4g,还可以包含即将到来的5g,接口数据也不仅限于s1-mme口信令、a口与iu-cs口的主叫通话(moc)信令与被叫通话(mtc)信令、a口和iu-cs口的移动性管理(mm)信令与切换(ho)信令、a口和iu-cs接口的短信发送(mosms)与短信接收(mtsms)信令,处理的时间粒度也非固定只能5分钟,可以根据大数据集群的资源、算力和业务要求进行调整,例如缩小调整至4分钟粒度、2分钟粒度进行处理。经过上述系列处理后,每个用户在每个五分钟粒度都会得到一个以用户手机号码msisdn为主键、以基站扇区cgi和时间等字段为标记的实时位置快照,从而得到全量用户的五分钟位置快照。优选地,所述7类xdr数据包括s1-mme口信令、a口与iu-cs口的主叫通话信令与被叫通话信令、a口和iu-cs口的移动性管理信令与切换信令、a口和iu-cs接口的短信发送与短信接收信令。优选地,步骤s2中路网模型的构建包括以下步骤:通过openstreetmap数据,获取包括路点起点、路点终点、路段所在道路的级别、路段的长度、路段所在道路的名字、路段所在道路是否为双行道、路段编号、路点编号、路点经度、路点维度的信息;通过将道路数字化为各路点,通过路点串联成路段、从而道路信息化成可以在计算机图形图像学以及可以在计算机系统中被存储、识别和使用的数字化路点、路段数据。使用openstreetmap数据,实现对道路的精确建模和数字化、信息化表示及应用。优选地,步骤s2中将蜂窝通信基站与道路进行映射,得到基站路点匹配表,包括以下步骤:s2.1:根据分析目标,筛选道路级别及具体需要分析的道路和路点信息;s2.2:根据基站维表中蜂窝基站的经纬度及路网地理信息,确定道路两旁沿线的蜂窝覆盖基站序列;s2.3:基于kdtree算法距离最短原则,寻找基站扇区扇面覆盖范围内距离基站最近的道路路点,作为基站扇区映射在道路上的位置,将每个基站扇区与最近路点的一一对应信息表进行存储,并在后续需要用到基站扇区最近路点时,对存储的信息表进行索引,以此构建基站路点匹配表。优选地,步骤s2中将蜂窝通信基站与道路进行映射,得到基站路点匹配表,还包括:s2.4:依次遍历基站路点匹配表,若基站所对应的路点,称为分析路点,位于双行道路,则寻找距离分析路点最近且处于同一道路的n个路点,称为候选路点;利用astar路径搜索算法,依次搜索分析路点与这n个候选路点的路径距离,路径距离表示车辆从双行道的一边某个点经过红绿灯调头行驶到对面对称点的实际移动距离,并计算分析路点与这n个候选路点的欧式距离,欧式距离表示双行道这一边某个点与对面对称点的直线距离;a-star算法,是一种在静态网络中求解最短路径的搜索方法。在搜索路径的过程中,该算法会评估邻近的每个节点的距离代价,即前向距离代价和后向距离代价,然后从所有待搜索的节点中选取代价最小(即距离最短)的节点进行搜索,不断循环,直至找到终点。分别一一计算分析路点与候选路点之间的路径距离与欧式距离的比值,若比值大于2,则可认为该路点处于相反方向,反之则认为处于相同方向,取相反方向路点中距离分析路点最近的路点作为反向路点,作为基站拟合在道路上的反向位置。使用了kdtree算法和astar算法进行路网模型创建,将蜂窝基站扇区与道路路点进行匹配映射,设计反向路点与基站扇区映射,充分考虑了双行道的实际情况。优选地,本发明所采集道路沿途蜂窝基站的通信信令数据中,包含了相当部分的沿途居民或低速步行用户,需要在用户轨迹拟合及道路车流速度计算前对这部分长时间静止或占用基站扇区不变的用户进行清洗,步骤s3中路径轨迹拟合包括以下步骤:s3.1:用户位置快照序列梳理:对5分钟位置快照表数据按用户标识、时间排序;去重:对排序后的5分钟位置快照表,若用户存在连续的cgi覆盖数据,剔除重复的cgi数据,保留第一条cgi位置数据;对去重后的5分钟位置快照表,提取用户前后相邻两个时间粒度的cgi接续记录,生成用户位置序列表;s3.2:静止及轨迹异常用户清洗:对5分钟位置快照表,确定每个用户的cgi变化时间序列,利用该数据序列对每个用户筛选并剔除掉静止用户,使用向量化筛选方法进行筛选;s3.3:路点匹配及路径搜索:筛选掉静止用户后,将剩余用户的cgi时间序列数据与步骤2所建立的基站路点匹配表,匹配得到路点时间序列数据;将用户位置序列表与基站路点匹配表进行匹配,获取基站对应的路点信息,对于用户位置序列表中的每种接续情况,利用astar算法进行路径搜索:step1:若两基站对应的第一个路点相同,则忽略这种切换情况,否则进入下一步;step2:对两基站间,利用astar算法对最多4种情况的首尾路点进行路径搜索,取路径长度最短的作为拟合路径;step3:根据拟合的路径,生成用户路径信息表。优选地,步骤s3.2中的向量筛选法具体为:定义点a某个用户运动的起点基站,d是某个用户运动的终点基站,该用户运动过程中依次经过若干中间基站,记录用户cgi的数据,向量ad表示该用户主体运动方向,依次计算以起点a为顶点、射线ad为角的一条边、起点a到中间基站点x组成的射线ax为另外一条边所组成的角xad的角度,用角xad的大小来判定用户是否偏离主体运动方向,即:(1)若角xad小于135度,则判定为用户没有偏离主体运动方向,保留该cgi记录;(2)若角xad大于等于135度,则判定为用户偏离主体运动方向,删除该cgi记录。向量化筛选的作用有3个,一是可以在一定程度上去除掉产生乒乓效应的用户路点;二是可以对长时间停留在一个位置的静止用户进行识别,该用户大概率上是道路周边的静止用户(例如,道路沿线居民区、写字楼、小卖部里面的室内人员,并不是道路上车辆交通的参与者);三是可以剔除短暂出现在路面,然后串入小街小巷,轨迹不是正常按道路行进的交通参与者(例如电动车、自行车骑行用户),剔除掉这部分噪音用户路点数据。采用astar算法和向量化筛选方法对用户移动路径进行拟合,在道路速度的计算分析中剔除了长时间静止用户和轨迹异常用户,避免了噪音用户对道路速度的计算影响。优选地,步骤s3中路段速度计算具体为:筛选出相同时间段内经过同一路段的用户,根据步骤step3的用户路径信息表,先计算每个用户的速度,进而得到此时间段内该路段的平均车流速度,即路段速度,取经过路段所有速度的平均值,得到该路段速度。优选地,步骤s4包括以下步骤:取非节假日的一周完整数据,将经过道路各路段的所有速度,由小到大排序,取其中的三分之二分位数作为畅通时的通过速度,定义交通指数为道路畅通时速度与路段速度的比值;根据交通指数判断道路拥堵情况,拥堵情况判断如下:交通指数大于1.8,表示严重拥塞,用红色表示;交通指数大于1.5且小于等于1.8,表示中度拥塞,用橙色表示;交通指数大于1.2且小于等于1.5,表示轻度拥塞,用黄色表示;交通指数小于1.2,表示畅通,用绿色表示;结合数字地图、gis技术,将道路的拥堵情况在前端页面进行展示,用不同的颜色代表道路拥堵情况,并可以历史查询和预测近期道路的拥堵情况。与现有技术相比,本发明技术方案的有益效果是:本发明实现了蜂窝基站与道路的拟合,基于手机通信大数据,根据kafka+hadoop+redis+sparkstreaming大数据实时流处理技术,实现对道路拥堵情况的全天候全路段监测,并辅以可视化界面进行展示和自动预警,还可以实现对历史情况的查询和分析,较传统的人工巡检或定点设备监测方式,成本和技术实现难度大大降低。附图说明图1为本发明的方法流程示意图。图2为实施例中astar算法示例示意图1。图3为实施例中astar算法示例示意图2。图4为向量化筛选法示意图。图5为用户路径拟合示意图。图6为用户路径拟合样例图。图7为道路拥堵监测示例图。具体实施方式附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。下面结合附图和实施例对本发明的技术方案做进一步的说明。实施例1本实施例提供一种基于手机通信大数据的道路拥堵监测方法,如图1,包括以下步骤:s1:手机实时通信数据处理,获取用户5分钟位置快照图;s2:构建路网模型,将蜂窝通信基站与道路进行映射,得到基站路点匹配表;s3:用户路径轨迹拟合与计算路段速度;s4:道路拥堵可视化,对道路拥堵监测。步骤s1包括以下步骤:s1.1:生成5分钟基础快照表:读取:分地市从kafka读取7类xdr数据;合并:将所有topic合并成一个javapairdstream;分区:按接口名分区maptopair;过滤:保留7类xdr接口;精简xdr:从7xdr接口中抽取必要字段,去掉xdr数据中多余字段;去重:根据号码关联、按时间排序,同一个号码选取时间最新的记录;写入:以msisdn为key写入redis,并过滤号码为空的记录;得到用户实时位置的5分钟基础快照表,并存在redis中;s1.2:生成用户快照号码key文件:读取:从redis中读取s1.1生成的5分钟基础快照表;生成快照号码文件:通过shell脚本提取用户的msisdn,生成快照号码key文件,将快照号码key文件上传至hdfs指定目录;得到用户快照号码key文件;s1.3:生成5分钟位置快照表:读取:从hdfs指定目录读取s1.2生成的快照号码key文件;遍历:遍历号码,从redis中读取s1.1生成的5分钟基础快照表;获取快照号码的精简xdr,获取用户的小区位置信息;读取msisdn号段表、imsi号段表,回填号码归属地;根据1小时存活机制,更新、回填、删除用户位置;生成5分钟位置快照表,按地市、年、月、日分区写入hdfs,得到最终的用户5分钟位置快照表。所述7类xdr数据包括s1-mme口信令、a口与iu-cs口的主叫通话信令与被叫通话信令、a口和iu-cs口的移动性管理信令与切换信令、a口和iu-cs接口的短信发送与短信接收信令。步骤s2中路网模型的构建包括以下步骤:通过openstreetmap数据,获取包括路点起点、路点终点、路段所在道路的级别、路段的长度、路段所在道路的名字、路段所在道路是否为双行道、路段编号、路点编号、路点经度、路点维度的信息,如表1、表2所示;通过将道路数字化为各路点,通过路点串联成路段、从而道路信息化成可以在计算机图形图像学以及可以在计算机系统中被存储、识别和使用的数字化路点、路段数据。表1字段名称说明实例b_osmid路点起点4620935168e_osmid路点终点1988660815highway路段所在道路的级别'tertiary'length路段的长度29.23093233640045name路段所在道路的名字'东莞庄路'oneway路段所在道路是否为双行道falseosmid路段编号331708617表2字段名称说明实例osmid路点编号4620935168lng路点经度(国际坐标系)113.3405553lat路点纬度(国际坐标系)23.1662036步骤s2中将蜂窝通信基站与道路进行映射,得到基站路点匹配表,包括以下步骤:s2.1:根据分析目标,筛选道路级别及具体需要分析的道路和路点信息;s2.2:根据基站维表中蜂窝基站的经纬度及路网地理信息,确定道路两旁沿线的蜂窝覆盖基站序列;s2.3:基于kdtree算法距离最短原则,寻找基站扇区扇面覆盖范围内距离基站最近的道路路点,作为基站扇区映射在道路上的位置,将每个基站扇区与最近路点的一一对应信息表进行存储,并在后续需要用到基站扇区最近路点时,对存储的信息表进行索引,以此构建基站路点匹配表,如表3所示。表3步骤s2中将蜂窝通信基站与道路进行映射,得到基站路点匹配表,还包括:s2.4:依次遍历基站路点匹配表,若基站所对应的路点,称为分析路点,位于双行道路,则寻找距离分析路点最近且处于同一道路的n个路点,称为候选路点;利用astar路径搜索算法,依次搜索分析路点与这n个候选路点的路径距离,路径距离表示车辆从双行道的一边某个点经过红绿灯调头行驶到对面对称点的实际移动距离,并计算分析路点与这n个候选路点的欧式距离,欧式距离表示双行道这一边某个点与对面对称点的直线距离;分别一一计算分析路点与候选路点之间的路径距离与欧式距离的比值,若比值大于2,则可认为该路点处于相反方向,反之则认为处于相同方向,取相反方向路点中距离分析路点最近的路点作为反向路点,作为基站拟合在道路上的反向位置。a-star算法,是一种在静态网络中求解最短路径的搜索方法。在搜索路径的过程中,该算法会评估邻近的每个节点的距离代价,即前向距离代价和后向距离代价,然后从所有待搜索的节点中选取代价最小(即距离最短)的节点进行搜索,不断循环,直至找到终点。公式:f(n)=g(n)+h(n)f(n)是从起点经由点n到达终点的距离估计;g(n)是从起点到路点n的实际距离;h(n)是从路点n到终点的距离估计;实现步骤如下:a1:初始化openlist和closelist;a2:将起点放入openlist中;a3:如果openlist不为空,则从openlist中选取优先级最高(距离最短)的节点n;a)如果节点n为终点,则从终点开始逐步追踪parent节点,一直到达起点,返回找的结果路径,算法结束;b)如果节点n不是终点,则将节点n从openlist中删除,并加入到closelist中;a4:遍历节点n所有的邻近节点,若邻近节点m在closelist中,则跳过,选取下一个邻近节点;若邻近节点不在openlist中,设节点n为节点m的parent,计算m的优先级,将节点m放入openlist中。a-star算法具体事例如图2、3所示,起点以最短路径到达终点。步骤s3中路径轨迹拟合包括以下步骤:s3.1:用户位置快照序列梳理:对5分钟位置快照表数据按用户标识、时间排序;去重:对排序后的5分钟位置快照表,若用户存在连续的cgi覆盖数据,剔除重复的cgi数据,保留第一条cgi位置数据;对去重后的5分钟位置快照表,提取用户前后相邻两个时间粒度的cgi接续记录,生成用户位置序列表,如表4和表5,表4为用户5分钟位置快照表,表5为用户位置序列表;表4msisdntimecgiuser12019/03/1509:00:00auser12019/03/1509:10:00buser12019/03/1509:15:00buser12019/03/1509:20:00cuser22019/03/1509:10:00auser22019/03/1509:15:00c表5msisdnlast_timelast_cginext_timenext_cgiuser12019/03/1509:00:00a2019/03/1509:10:00buser12019/03/1509:10:00b2019/03/1509:20:00cuser22019/03/1509:10:00a2019/03/1509:15:00cs3.2:静止及轨迹异常用户清洗:对5分钟位置快照表,确定每个用户的cgi变化时间序列,利用该数据序列对每个用户筛选并剔除掉静止用户,使用向量化筛选方法进行筛选;s3.3:路点匹配及路径搜索:筛选掉静止用户后,将剩余用户的cgi时间序列数据与步骤2所建立的基站路点匹配表,匹配得到路点时间序列数据;将用户位置序列表与基站路点匹配表进行匹配,获取基站对应的路点信息,对于用户位置序列表中的每种接续情况,利用astar算法进行路径搜索:step1:若两基站对应的第一个路点相同,则忽略这种切换情况,否则进入下一步;step2:对两基站间,利用astar算法对最多4种情况的首尾路点进行路径搜索,取路径长度最短的作为拟合路径,如图5;step3:根据拟合的路径,生成用户路径信息表。步骤s3.2中的向量筛选法具体为:定义点a某个用户运动的起点基站,d是某个用户运动的终点基站,该用户运动过程中依次经过若干中间基站,记录用户cgi的数据,向量ad表示该用户主体运动方向,依次计算以起点a为顶点、射线ad为角的一条边、起点a到中间基站点x组成的射线ax为另外一条边所组成的角xad的角度,用角xad的大小来判定用户是否偏离主体运动方向,如图4,即:(1)若角xad小于135度,则判定为用户没有偏离主体运动方向,保留该cgi记录;(2)若角xad大于等于135度,则判定为用户偏离主体运动方向,删除该cgi记录。步骤s3中路段速度计算具体为:筛选出相同时间段内经过同一路段的用户,根据步骤step3的用户路径信息表,先计算每个用户的速度,进而得到此时间段内该路段的平均车流速度,即路段速度,取经过路段所有速度的平均值,得到该路段速度。步骤s4包括以下步骤:取非节假日的一周完整数据,将经过道路各路段的所有速度,由小到大排序,取其中的三分之二分位数作为畅通时的通过速度,定义交通指数为道路畅通时速度与路段速度的比值;根据交通指数判断道路拥堵情况,拥堵情况判断如下:交通指数大于1.8,表示严重拥塞,用红色表示;交通指数大于1.5且小于等于1.8,表示中度拥塞,用橙色表示;交通指数大于1.2且小于等于1.5,表示轻度拥塞,用黄色表示;交通指数小于1.2,表示畅通,用绿色表示;结合数字地图、gis技术,将道路的拥堵情况在前端页面进行展示,用不同的颜色代表道路拥堵情况,并可以历史查询和预测近期道路的拥堵情况。在具体实施过程中,(1)在2019年4月12日09:00,实时采集并消费广州市2019年4月12日08:00-09:00这一个小时手机通信大数据,处理生成的用户五分钟实时位置快照,进而用于分析珠江新城片区的道路拥堵情况。(2)根据珠江新城片区的openstreetmap道路和路点数据、移动运营商蜂窝基站数据,利用kdtree算法、astar算法建立珠江新城片区的路网模型。(3)以珠江新城片区每个cgi为起点,先离线建立5分钟时间内每个cgi可能的运动轨迹,并保存下来,得到珠江新城片区用户运动路线库。(4)根据实时快照数据,得出每个运动用户的cgi变化序列。结合上一步的珠江新城片区用户运动路线库进行在线建模,利用向量化筛选、astar路径搜索算法,拟合用户每个五分钟的路径,得到用户的出行轨迹,最后再根据先后顺序把路径进行拼接,从而得到用户出行的完整路径,如图6。当珠江新城片区用户运动路线库中不存在需要索引的cgi变化序列对时,额外建立用户运动轨迹模型,并将模型结果更新到珠江新城片区用户运动路线库中,这样会逐渐扩充监测区域用户运动路线库,使得监测区域用户运动路线库更加完备。(5)归类经过相同路点的用户,分离出经过相同路段的用户群,进而计算得到路段的平均车流速度,最后进行拥堵判断和可视化展示,如图7。相同或相似的标号对应相同或相似的部件;附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1