!!! 有需要的小伙伴可以通过文章末尾名片咨询我哦!!!
💕💕作者:优创学社
💕💕个人简介:本人在读博士研究生,拥有多年程序开发经验,辅导过上万人毕业设计,支持各类专业;如果需要论文、毕设辅导,程序定制可以联系作者
💕💕各类成品java系统 。javaweb,ssh,ssm,springboot等等项目框架,源码丰富,欢迎咨询交流。学习资料、程序开发、技术解答、代码讲解、源码部署,需要请看文末联系方式。
摘要:随着交通需求量的增加,城市道路拥挤现象越来越严重,所造成的直接或间接的经济损失是不可估量的。由于计算机科学的快速发展,城市智能交通信息平台积累了大量的交通数据。本次论文主要针对城市快速路的交通状况,并以南昌市快速路为例,结合数据挖掘技术,利用关联规则挖掘分析影响交通状况的原因和用随机森林进行一个交通状况预测,为交通部门提供决策支持,缓解交通问题。
关键词:数据挖掘,交通状况,关联规则,随机森林
目录
1.1研究背景........................................................... 4
1.2 研究的目的及意义.................................................. 5
2.1 数据来源.......................................................... 5
2.2 随机森林部分数据处理.............................................. 6
2.2.1数据清洗..................................................... 6
2.2.2数据离散化................................................... 6
2.2.3数据数值化................................................... 7
2.3 关联规则部分数据处理.............................................. 8
3.1 Apriori算法介绍................................................... 8
3.2 Apriori算法基本概念............................................... 9
3.3 随机森林算法介绍.................................................. 9
3.4 随机森林算法基本概念............................................. 10
4.1 关联规则Apriori研究思路......................................... 11
4.2 随机森林算法研究思路............................................. 11
5.1 关联规则Apriori代码实现......................................... 12
5.2 随机森林代码实现................................................. 15
6.1 关联规则Apriori对比实验分析..................................... 17
6.1.1 最小置信度不同取值结果对比.................................. 17
6.1.2 固定因素与变化因素对比...................................... 17
6.2 随机森林结果分析................................................. 18
7.1 时代背景......................................................... 20
7.2 社会影响......................................................... 21
7.3 社会意义......................................................... 21
8.1 XXX总结.......................................................... 22
8.2 XXX总结.......................................................... 23
8.3 XXX总结.......................................................... 23
第1章 绪论
1.1研究背景
20世纪六七十年代世界各国经济发展进入了高速增长时期,汽车数量急剧增加。城市交通系统正经历着前所未有的演变历程,城市交通的状态常常处于不确定无序的状态。在周期性常发交通拥堵状态的基础上,短期突发的交通拥堵状况也主键趋于常态化。同时,交通拥堵持续的时间逐渐增长,波及的范围也逐渐变广。
城市交通拥堵带来的危害也是非常严重的。据有关统计数据表明,美国每年因为交通拥堵造成的经济损失高达1000亿美元,英国约200亿英镑,欧洲数千亿欧元。我国因为交通拥堵导致每年GDP损失高达5%-8%,其中有15个城市每天的经济损失量高达10亿元,北京市每年因为交通拥堵造成的经济损失高达146亿元。除此之外,据环保部研究,交通拥堵状况下,车辆的污染物排放量是正常行驶状况下的5-10倍,交通拥堵的加剧导致各个城市每日二氧化碳的排放量增加,对居民的生活环境造成了严重的影响,例如大气污染、温室效应等。严重的交通拥堵影响了广大居民的出行时间,使得出行成本急剧增加,对居民的工作、学习都造成了严重的影响。
交通拥堵是世界各大中城市所面临的共同问题,由于交通信息供给不足和管理措施不利,使得现有的交通设施不能发挥应有的能力,造成了交通秩序混乱和交通效率低下,给整个社会发展带来了巨大的阻碍。过去传统的解决交通拥堵的办法是拓宽现有道路或建设新的道路。但随着建设征地及道路施工等费用的不断增长,采用这种传统方法解决交通拥挤的难度越来越大。另外分配道路通行能力虽然可以缓解交通拥挤,但是它存在着经济效率差,影响出行者时间上的公平性等特点,是一项指标不治本的方法。
数据挖掘是计算机科学的一个分支,使用数据挖掘方法,可以分析和处理庞大的数据库。由于计算机科学的进步发展以及利用现代化的硬件技术进行采集数据,导致在很多领域产生了大量的数据需要收集和处理。在过去的十年中,交通管理领域成为了一个产生无限多数据的科学新领域。利用数据挖掘技术对已有的交通状况数据进行挖掘,可以找到影响交通状况的潜在原因。关联规则挖掘技术是近年来数据挖掘中的一个活跃的领域,对大量无序的数据进行关联规则挖掘,可以发现很多属性之间的有趣关联。提供给交通管理者很多有用信息,帮助他们制定决策和采取措施。同时也可以利用数据挖掘技术对交通数据记录进行分类,可以帮助我们预测未来事件和决策制定。数据挖掘技术经过研究人员的长期研究,各项技术均已成熟,并且已经成功应用到了我们生活的各个方面。将数据挖掘技术引入到交通管理中来已是社会发展的必然趋势。
1.2 研究的目的及意义
对交通状况原因进行分析,主要运用计算机技术,将已有的数据和资料进行整理分析,以对交通事故现状有总体了解,并找到隐藏在背后的交通状况影响因素,以及各因素之间的相互关系,从而掌握交通状况的内置规律。对以后减少交通拥堵具有重大意义和影响。同时,利用随机森林可以预测未来新事件,为交通管理者提供决策支持,对我国交通的综合治理起着至关重要的作用。本文的研究意义主要有以下几个方面:
(1)分析影响交通状况的原因,帮助我们重点管理和制定决策。
(2)对交通状况进行预测,缓解目前严重的交通拥堵状况,为交通管理者提供决策支持,制定出更加合理的管理方法。
第2章 数据分析研究思路简介
2.1 数据来源
使用的数据来源于百度地图开放平台,平台拥有七大基础地图服务开放能力:定位、地图、导航、轨迹、路况、路线规划、搜索,并开放给开发者。我们通过python代码爬取百度地图API提供的交通态势和天气实时信息。我们的研究对象主要是以南昌市十二月的道路交通状况为研究对象。由于不具有高级权限,因此不能通过经纬度进行精确的天气查询。所以我们按照南昌市的六区三县若干条主干道或车流量较大的道路进行分析处理,每天在多个时段采集道路的交通状况和天气信息。
我们在百度地图中爬取的交通态势数据包括路况语义化描述、道路名称、路况整体评价,其中百度地图将路况整体评价分为4个等级:畅通、缓行、拥堵、严重拥堵,天气信息包括实时天气、时间、星期以及温度。
属性名称 | 属性值 |
天气weather 时间段peak 星期week 特殊路况special_condition 温度temperature | 晴、多云、阴、雨、雪、霾 早高峰、普通时段、晚高峰 是、否 有、无 温和、温凉、凉、微寒 |
2.2 随机森林部分数据处理
2.2.1数据清洗
在选取的道路中有一些道路是比较偏僻的或道路状况良好,这样的道路不论是在恶劣的天气又或者是在高峰时段都不会发生拥堵,它产生的数据也会让实验出现很大的偏差,因此我们需要删除这样的道路。在这里我们是将整个数据集导入数据库中,使用数据库语言来进行筛选并删除。除此之外,在进一步的实验后我们发现了一些采集的字段是不必要的,这样的数据也需要清洗掉。
图1
图2
2.2.2数据离散化
通过以上步骤得到的数据还是没法使用的,为了进一步贴合我们使用的分析算法的特性,我们还需要将数据进行离散化。从上表可知也就是将温度进行离散化。我们将温度分为四个阶段:微寒、凉、温凉、温和,它们代表的温度范围分别是微寒(0~5℃)、凉(5~10℃)、温凉(10~13℃)、温和(13~16℃),这个温度划分是以百度百科为依据。得到的数据如下:
图3
2.2.3数据数值化
由于随机森林的实现代码较少,大多使用的已经集成好的函数模块,因此为了更加方便的运行代码,而不出现文字无法解析的错误,我们进一步将数据进行了数值化。最后数据集如下:
图4
数值代表的含义如下:
(1)tra_status:1(畅通)、2(缓行)、3(拥堵)、4(严重拥堵);
(2)peak:0(普通时段)、1(早高峰)、2(晚高峰);
(3)weather:0(阴)、1(多云)、2(晴)、3(雨)、4(雪)、5(霾);
(4)temp:0(微寒)、1(凉)、2(温凉)、3(温和);
(5)weekend:0(否)、1(是);
(6)special_condition:0(正常)、1(特殊);
2.3 关联规则部分数据处理
关联规则使用于挖掘庞大、复杂的数据集,从中发现一些潜在的、有用的、有价值的信息。很显然,随机森林部分的数据元素太少,不利于更加全面的分析影响交通状况的因素。因此,我们又从百度地图中查找每条道路的周边环境,整合环境因素,得到的数据如图所示:
图5
第3章 数据分析方法介绍
3.1 Apriori算法介绍
Apriori算法是种挖掘关联规则的频繁项集算法,一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索 (k+1) 项集。首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做 L1,然后利用 L1找频繁2项集的集合L2,L2 找L3,如此下去,直到不能再找到任何频繁k项集。最后再在所有的频繁集中找出强规则,即产生用户感兴趣的关联规则。其中,Apriori算法具有这样一条性质:任一频繁项集的所有非空子集也必须是频繁的。因为假如 P(I)小于最小支持度阈值,当有元素 A 添加到 I 中时,结果项集(A∩I)不可能比I出现次数更多。因此A∩I也不是频繁的。如今,Apriori算法也已经被广泛的应用到商业、网络安全等各个领域。Apriori算法采用了逐层搜索的迭代的方法,算法简单明了,没有复杂的理论推导,也易于实现。但其有一些难以克服的缺点:
a.对数据库的扫描次数过多。
b.Apriori算法会产生大量的中间项集。
c.采用唯一支持度。
d.算法的适应面窄。
代码实现
5.1 关联规则Apriori代码实现
- 扫描数据集:
图6
- 从数据集中生成候选项集,对每个候选项进行支持度计数得到1项集C1:
图7
- 通过频繁K-1项集创建候选k项集,其中还需要判断一个频繁候选k项集是否满足apriori属性,若满足则加入候选k项集:
图8
- 进行apriori属性判断,即一个频繁项集的子集也是频繁项集:
图9
- 对候选k-1项集的每个项进行计数,然后根据最小支持度从C(k-1)中删除不满足的项,从而获得频繁k项集Lk:
图10
- 生成所有频繁项集:
图11
- 从频繁项集中获得强关联规则,对于每个频繁项集freq_set,产生freq_set的所有非空子集(这些非空子集一定是频繁项集);如果support[freq_set]/support[freq_set-sub_set]≥min_conf(最小置信度阈值),则输出(freq_set-sub_set)=>sub_set:
图12
图12
5.2 随机森林代码实现
以下为本项目中使用随机森林算法建模、预测以及生成决策树可视化的Python代码实现
图13
更多项目:
另有10000+份项目源码,项目有java(包含springboot,ssm,jsp等),小程序,python,php,net等语言项目。项目均包含完整前后端源码,可正常运行!
!!! 有需要的小伙伴可以点击下方链接咨询我哦!!!