作品编号:C1960(特等奖)
作品名称:摩拜单车时空大数据挖掘分析与辅助系统
作者单位:武汉大学测绘学院
小组成员:黄舒哲,白璐斌,赵昊,李超
指导老师:李英冰
一、需求分析
随着共享经济的发展,共享单车早已成为城市居民日常生活中不可或缺的一种交通工具,每天都有各种颜色的单车在街上流动,摩拜单车创始较早,占领大量的共享单车市场,该系统希望使用每天摩拜单车的位置数据进行时空大数据的挖掘分析,希望可以从中得到城市热点区域,分析用户行为,给予商家指导建议,并且辅助城市规划决策,为智慧城市的建设增加一些参考信息。
为了解决摩拜单车使用中真是存在的问题,我们首先进行了一个需求调查,即从百度贴吧,知乎,豆瓣上爬去评论并辅助问卷调查,对得到的评论和反馈进行整理,统计关键词频率得到如下词云图。
图1-1 词云图
从词云图中我们可以看到主要存在一下一些问题:
1.用车难:主要表现为单车的投放无法满足清晨用户的需求、单车使用率低,城市存在大量无法使用的僵尸车等。
2.单车导航问题:根据反馈,主要集中在骑行过程中频繁停下看手机不方便且不安全。
3.自行车道:城市自行车道的建设尚不是非常完善。
4.共享单车数据挖掘:研究人员或是商家无法直接从海量的单车数据中提取出有用的信息。
为了解决这些问题,我们以Web端、移动端以及软硬件结合的方式,最终搭建了该系统。
二、总体设计
2.1 系统总体架构
该系统包括四个层面,数据层和应用支撑层主要实现服务器功能,业务逻辑层主要实现web前端功能,表现层主要实现用户交互。数据获取主要使用Python编写爬虫从摩拜的微信小程序接口获取数据,提取并存储所需要的信息;数据处理主要包括数据清洗,聚类分析,
格网分析等;后台用Django搭建,可以对用户提交的请求做出响应;前端主要调用了Arcgis for JS,高德地图API,HighCharts等接口进行数据可视化等操作,最后还配合了微信小程序端。方便用户使用。同时还针对我们发现的的单车导航问题需求开发了APP和相应的硬件模块,实现震动提示用户导航。
图2-1 系统总体结构
2.2 系统功能设计
(1)Web端
Web端功能主要分为三大模块:
①区域综合分析:
区域流入流出热力图:能够查询任一区域任一时刻共享单车的流入流出热力图,并能够以二维、三维以及时间段进行动态的展示;
区域单车流向图:该模块对单车流入流出地点进行聚类分析后,得出各聚类点之间的流入流出量,并将其以点线的方式展现在图层之上。
单车流动轨迹分析:提供任一时刻根据单车的ID号进行轨迹查询。
②单点区域分析:
单点实时车辆分布爬取:能对地图上任一点进行共享单车分布实时爬取;
单点区域流入流出分析:可以实现对用户点击的任意一个点以及选择的时间范围内单车的流入和流出量的可视化;
单点热度分析:综合爬取到的美团商家数据,通过公式计算出一个点在一天四个时段(早上、中午、下午、晚上)的热度指数,并以雷达图的形式画出来,便于直观的判断出一个地方在一天中的热度系数
③决策辅助:
僵尸车分析与回收:使用爬取到的第一天7点和最后一天22点单车分布数据,对其进行ID的匹配,之后对其经纬度进行比较,判断是否为僵尸车,并提供所处位置的全景图。
自行车道规划建议:结合武汉市道路周围一定范围内的单车数量,对道路进行不同等级的颜色渲染,越红代表建设自行车道需求更高。
夜间车辆调度建议:该模块通过后台设计算法得出来的点,显示出一个区域适合夜间调度车辆的地点,使得摩拜单车能够更加便利广大市民。
美团商家热度分析:该模块结合单车流入流出量与美团商家分布数据,在后台通过相关公式聚类出一个区域内热度的分布,可以为美团商家选址提供一定的决策辅助方案。
单点监测辅助分析:用户可以对感兴趣的点进行监测,提交点的经纬度,监测日期和ID等信息,服务器获取后可以对该点进行数据爬取和整理。
(2)APP与硬件端
该部分系统采用了软硬件结合的方式。软件方面为Android端的APP(VibNavi),硬件端为Arduino单片机、蓝牙模块以及震动模块。
在本系统中,导航APP在导航过程中提示左转相关指令时,输出“0”信号,通过手机端蓝牙发送给与之连接的Arduino端蓝牙;在导航过程中提示右转相关指令时,输出“1”信号,通过手机端蓝牙发送给与之连接的Arduino端蓝牙。在单片机收到“0”信号时,将左震动器置为高电平从而产生震动;在收到“1”信号时,将右震动器置为高电平从而产生震动。如此下来,能够实现在导航过程中提示转弯时,使得对应方向的震动模块产生震动的功能,骑行人能够因此获得对应的骑行方向指示。
2.3 数据库设计
数据库主要采用MySQL。存储结构如下:
三、作品亮点
3.1. 从数据获取到数据整理,后台基本自主运行
3.1.1 开启脚本后,爬虫每天可以整点爬取数据,并分析流动情况,整理格网数据,聚类数据进行存储,在响应请求时进行调用。
3.1.2 单点监测功能,对用户提交的信息进行保存,之后每天定时运行的脚本进行监测,自动获取数据,整理数据,最终生成数据报告。
3.2.多源数据融合,发现内在联系
3.2.1 在分析城市热点时,将美团商家数据和摩拜单车数据结合起来,发现其内在联系,更加合理的对城市热度进行分析。
3.2.2 在进行单点监测时,结合POI数据作为参考。
3.2.3 从时空角度出发,产品实现了一天到晚各个时段的分析及时段间的分析,同时使用多种形式反映时空变化,如动态热度图,单车轨迹图。
3.3. 从实际问题出发,软硬件结合,多平台结合
3.3.1 根据共享单车单车实际使用中的问题,实现管理,规划,研究一体化平台,为单车调度,城市规划,商家指导提出了可靠建议。
3.3.2 发现使用传统方式进行单车导航不太方便时,灵活的融入硬件设施,使用震动给予用户提示,配合App使用,解决了单车的导航问题。
3.3.3 系统主要使用WebGIS技术,使其在PC端和移动端都可以灵活地使用,同时配合微信小程序,可以更加方便的在移动端查看信息。