基于网约车OD数据的城市出行热点区域识别及预测方法研究
2020-09-10李伟
李伟
摘 要:城市出行热点区域的识别对于提高政府对城市出行特征认识,优化设施选址,改造老旧城区等有着重要意义。同时,随着互联网的发展,网约车数量快速增长,其背后的数据挖掘在城市规划,为政府提高决策数据支撑方面发挥着越来越重要的作用。本文基于2017年5月1日—2017年10月31日海口市每日的滴滴订单数据,使用密度聚类(Dbscan)算法识别网约车出行热点区域,并同时结合长短时记忆网络(LSTM)算法对网约车出行热点区域的出行需求进行了合理的识别与预测。其结果显示海口市早高峰存在8个出行热点区域,午高峰存在6个出行热点区域,晚高峰存在10个出行热点区域。结果显示海口市城区早高峰的平均预测误差为29.2%,午高峰预测的平均误差为24.8%,晚高峰预测的平均误差为22.8%,准确性良好。
关键词:密度聚类;长短时记忆网络;热点区域识别;需求预测
中图分类号:U491.1 文献标识码:A
0 引言
城市出行热点区域是指相对城市其他区域具有更多居民活动的区域,意味着该区域具有更高出行需求与更高的交通流量。通过对城市出行热点区域的识别,能够为城市公共设施布置,商铺选址,土地价值评估,公交线网调整等提供数据依据与支撑。随着网约车普及,网约车在居民城市出行方式占比逐渐增加,网约车数据具有时间跨度长,空间范围广,实时性高的特点,为识别城市出行热点区域提供新方向。
既有研究在载客热点区域研究方面,2018年,程智源[1]提出了基于LCSS时空相似性度量方法,对交通热点区域进行了进一步的提取,并同时提出了基于子轨迹权值分析的热点路径提取算法,最后使用成都市的出租车数据对成都市出租车的热点区域与热点路径进行识别;2018年,王明[2]在传统基于DBSCAN的热点区域识别的基础上,增加了出租车的形式距离因素,进一步提高了在城市中使用出租车数据挖掘热点区域的精度;2018年,郑林江[3]针对现有热点区域识别计算效率低的问题,提出了DBGScan算法,并在重庆市进行了实地应用。
在载客需求预测研究方面,2018年,余涛[4]在采用小波分析法对原始交通流数据进行去噪分析的基础上,提出了一种将支持向量机与BP神经网络进行组合的算法,最后通过足有加权规则对该预测算法进行了进一步的优化;2019年,蒲斌等[5]使用实际数据将ARIMA乘积季节模型,BP神经网络模型和RBF神经网络模型进行对比,最后得出结论,相较于ARIMA乘积季节模和RBF神经网络模型,BP神经网络模型具有更高的精度。
综上所述,在研究数据上,现有文献多利用出租车数据进行出行热点区域识别与需求预测,但根据交通运输部在2020年9月24日的例行发布会上最新数据显示:在36个中心城市中,已有18个城市的合规网约车数量超过了出租车,并仍在快速发展中。在研究方法上,关于出行热点区域的识别,现有文献多使用k-means,凝聚层次聚类,密度聚类等聚类算法,关于需求预测方面,现有文献多使用BP神经网络,支持向量机等预测方法,但在预测方法方面,现有预测方法不足以考虑到出行热点区域的出行需求在时间上具有一定的关联性。因此,本文以城市出行热点区域识别为研究目标,并基于滴滴网约车数据,并分别使用密度聚类(Dbscan)与长短时记忆网络(LSTM)进行网约车出行热点区域識别与需求预测。
1 基于机器学习的网约车出行热点区域识别及需求预测
1.1 基于密度聚类(Dbscan)的网约车出行热点区域识别
在固定时间内,网约车出行热点区域具有在特定区域内,居民出行密集程度高的特点。而密度聚类(Dbscan)算法能在特定数据空间内,以密度为特征搜索符合条件的区域,并同时识别出密度较小的噪声区域,与K-means,层次聚类等聚类算法相比,Dbscan具有无需指定聚类数量,并且能够发现任意形状的簇的优点。因此,关于网约车出行热点区域识别,使用Dbscan算法能够有效避免噪声的影响,并提高识别精度。
本文使用的Dbscan算法,其核心思想是通过将紧密相连的样本划为一类,从而得到了一个聚类类别(出行热点区域),然后将所有各组紧密相连的样本划为各个不同的类别,最终得到所有聚类类别结果(出行热点区域)。其具体算法步骤如下:
(1)输入所有网约车订单的起点位置与时间数据,任意选择一个位置点为标定点,若样本点与标定点的空间距离小于等于Eps,时间距离小于等于,且满足条件的样本点数大于一定数量,则该标定点为核心点。反复计算,直到从样本点中循环计算出所有核心点。
(2)REPEAT:
从订单起点数据中随机选择一个位置点。
IF选择的位置点是核心点。
THEN搜索该核心点一定时间、空间范围的所有位置点,将满足条件的位置点与核心点合并为同一簇。
ELSE选择的位置点为非核心点,结束循环,搜索下一个位置点。
UNIIL所有位置点都完成遍历,生成热点区域簇。
(3)REPEAT:
从热点区域簇中随机选择一个簇。
IF非核心位置点在选择簇中为支点的一定时空范围内。
THEN将非核心位置点写入密度可达簇,循环。
UNTIL每个非核心位置点都被遍历过,生成密度可达簇。
(4)REPEAT:
在密度可达簇中随机选择一个簇。
IF任意密度可达簇与选择密度可达簇存在相同位置点。
THEN将两密度可达簇合并为同一个密度相连簇,循环。
UNTIL每个密度可达簇都完成遍历。
(5)输出热点区域集合。
1.2 基于长短时记忆网络(LSTM)的网约车出行热点区域需求预测
由于网约车出行热点区域的需求预测受时刻与节日影响较大,并且相邻日期的需求存在一定黏性。而长短时记忆网络(LSTM)算法,在循环神经网络(RNN)的基础上,利用3个sigmoid层,并借助记忆单元,对之前所有序列输入有选择的进行保留,从而实现对数据的预测。因此,本文拟采用LSTM算法,充分考虑历史相同时刻的数据相似性,进行出行热点区域需求预测。
LSTM是一种特殊的RNN变体,具有与RNN类似的内部结构。RNN在普通BP神经网络的基础上,增加了横向传输,通过增加一个横向隐藏层状态,将上一个神经元的值传递至现有神经单元,从而为神经网络增加了记忆功能。但RNN在训练过程中无法捕捉长周期影响,而LSTM“记忆单元”的门控结构,使用两个隐藏层状态控制信息的取舍、输入、更新、输出,因此具备长时间的记忆功能。其原理如下:
2 研究数据
本研究基础数据为2017年5月1日—2017年10月31日海口市城区的每日滴滴订单数据,该数据来源于滴滴出行“盖亚”数据开放计划。数据主要字段内容包括订单ID,订单类型(1包车,4拼车,0普通乘车),乘车人数(拼车场景,乘客选择的乘车人数),出发时间,出行时长(分钟),起点经度,起点纬度,终点经度,终点纬度。为更好进行后续算法调试,本部分将原始订单数据进行去重与缺失数据删除预处理。预处理过程中删除重复数据或缺失数据共计3,214,911条,最终剩余数据10,979,450条,平均每日产生订单数59,671单。
3 结果与讨论
3.1 参数设置
在聚类算法的参数确定过程中,通过输入不同的Eps与Eps内的最小样本点数量,并同时对海口市高铁东站的实际识别结果进行分析,最终计算出,Eps为400 m,最小样本点数量为70时,识别效果较为理想。在长短时记忆网络(LSTM)训练过程中,若一个神经元参数波动较大,则模型整体拟合会偏向该神经元,故而在每批次训练过程中,随机抛弃一定比例的神经元,可以有效减少过拟合现象。LSTM网络结构参数设置参照文献[6],将第一层LSTM输出维度设置为20,第二层LSTM输出维度设置为40,迭代次数设置为1 000,抛弃比例设置为0.5。
3.2 基于密度聚类(Dbscan)的网约车出行热点区域识别
考虑到高峰时刻是居民出行的热点时刻,同时在此时间段内的居民出行频率最高,因此,首先对海口市城区5月1日-5月31日的订单数据进行提取,然后针对早高峰(7:00 am—9:00 am),午高峰(11:30 am—13:30 pm),晚高峰(17:00 am—19:00 am)时刻分别进行基于密度聚类(Dbscan)的网约车出行热点区域识别,最后针对所有5月识别出的所有出行热点区域进行统计。
统计结果如图 1所示,早高峰的出行热点区域如图 1(a)所示,共有8个出行热点区域;午高峰的出行热点区域如图 1(b)所示,共有6个出行热点区域;晚高峰的出行热点区域如图 1(c)所示,共有10个出行热点区域。其中早中晚共有的出行热点区域主要分布于海秀快速路北侧与丘海大道东侧的居民区,万绿园西南侧的商务与住宅区,以人民公园和核心的中央居住区,南海大道与龙昆南路交汇处,海口东站附近,因此海口市出行热点区域主要集中于大型枢纽站,主干路交汇处的住宅区与公园附近的住宅区三大区域。同时针对海口市5月份的出行热点区域识别结果进行分析可以发现,海口市的早高峰出行热点区域呈现多区域爆发,其主要原因是早高峰上班人群较为分散,城市流动人口较多;当午高峰来临时,出行热点区域明显减少,主要是由于城市午高峰多以饮食与购物为主,因此出行较少;当晚高峰来临时,出行热点区域急剧增多与扩大,主要是由于晚高峰的客流以回家为主,同时伴随着大量夜间活动,因此晚高峰的出行热点区域更多,且范围更广。
3.3 基于长短时记忆网络(LSTM)的网约车出行热点区域需求预测
考慮到本部分的数据量较为庞大,为缩短运算时间,本研究针对网络出行热点区域进行菱形处理。其主要处理思路是首先提取海口市城区5月份每一个出行热点区域的上下左右顶点,形成菱形区域;然后对每一天在该区域的出行进行统计;最后以2017年5月1日—2017年9月18日的数据为训练集,9月19日-9月30日的数据为测试集,进行长短时记忆网络(LSTM)预测,并将预测结果与观测值作比较计算误差,以时间作为横轴,误差作为纵轴,以每天各个出行热点区域的误差绘制箱型图,误差结果如图 2所示。从图 2(a)与图 2(b)中可以看出,在海口市早高峰与午高峰期间,9月19日至9月30日每天的各个出行热点区域平均预测误差均保持在50%以下。但在晚高峰,如图 2(c)所示,每天的各个出行热点区域平均预测误差较大,9月28日已超过50%,达到30倍左右,如图 2(d)所示。其主要原因是晚高峰的出行更多,出行热点区域分布面积更广,分布形状的规则性更差,因此采用菱形区域统计会存在一定误差。
4 结论
本文基于2017年5月1日—2017年10月31日海口市每日的滴滴订单数据,使用密度聚类(Dbscan)算法识别网约车出行热点区域,并同时结合长短时记忆网络(LSTM)算法对网约车出行热点区域的出行需求进行了合理的预测。出行热点区域识别结果显示海口市早高峰存在8个出行热点区域,午高峰存在6个出行热点区域,晚高峰存在10个出行热点区域。同时早高峰的平均预测误差为29. 2%,午高峰预测的平均误差为24. 8%,晚高峰预测的平均误差为22.8%,准确性良好。相关部门可以根据识别的出行热点区域和需求预测进行相应的派车服务以及完善公交运营网路。在下一步,如何将需求预测数据与公交规划模型相结合值得进一步探讨。
参考文献:
[1]程智源.基于轨迹聚类的交通热点分析[D].电子科技大学,2018.
[2]王明.基于出租车GPS数据的载客热点可视化的研究与应用[D].中北大学,2018.
[3]郑林江,赵欣,蒋朝辉,等.基于出租车轨迹数据的城市热点出行区域挖掘[J].计算机应用与软件,2018,35(01):1-8.
[4]余涛.基于SVM和BP神经网络的短时交通流预测与实现[D].南京邮电大学,2018.
[5]蒲斌,李浩,卢晨阳,等.基于神经网络的海量GPS数据交通流量预测[J].云南大学学报(自然科学版),2019,41(01):53-60.
[6]马聪,李锋,张建华,等.基于LSTM神经网络的肉牛动态称重算法研究[J].黑龙江畜牧兽医,2020(20):60-63+157-158.