首先简单描述一下Apriori算法:Apriori算法分为频繁项集的产生和规则的产生。

Apriori算法频繁项集的产生:

令ck为候选k-项集的集合,而Fk为频繁k-项集的集合.

1.首先通过单遍扫描数据集,确定每个项的支持度。一旦完成这一步,就可以得到所有频繁1-项集的集合F1

2.接下来,该算法将使用上一次迭代的发现的频繁(k-1)-项集,产生新的候选k-项集。候选的产生使用apriori-gen函数实现。

3.为了对候选项的支持度的计算,需要再扫描一遍数据集。使用子集函数确定包含在每一个事务t中的ck中的所有候选k-项集。

4.候选项的支持度计数后,算法将删除支持度计数小于minsup的所有候选项集

5.在没有新的频繁项集产生的时候,即Fk为空时,算法结束。

目前,针对行程时间最短的动态路径导航算法已是很多,可以把他们大致分为三类。

第一类是根据路段的不同时间段,提出基于分时段的路径导航算法。该类算法在路网更新后,以车辆当前所在的路段的下游结点为起点,重新进行规划。但其所分时段由于跨越时间太长,当发生交通事故、交通阻塞是不能及时在导航算法中的到体现,从而使得到的导航路径缺乏实时性。

第二类是实时路径导航,就是将实时的交通数据反馈回来然后进行路径的选择。这类导航算法由于具有随意性,所有很难选择整体的最优路径,相反,还可能花费更长的时间。

第三类将路网看成时间的依赖网络,利用SPTDN算法采用多步预测数据进行路径导航。但是,目前多步预测导航由于步数有限,且预测的步数越多,精度越低。

在这里,基于hadoop中MapReduce的Apriori算法的改进

Mapreduce技术结合HDFS的存储情况,在Map阶段将实验交通数据样本划分成n个数据模块分布在hadoop节点上,每个节点扫描各自节点上的数据块,产生自己的频繁项集。在Reduce阶段将所有的局部频繁项集合起来,产生全局候选频繁k-项集。将每个候选频繁项集的置信度、支持度与定义的两项进行对比,筛选出有效的候选频繁项集,并排序输出,产生关联规则。

在交通车流量分析中,与之相关联的数据为点位编号、经过时间、行驶方向;在车辆超速分析中,与之相关的数据信息为点位编号、行驶方向、车辆速度。通过多车流量分析,来分析某个车道的拥挤情况;对超速数据分析,确定某车道车辆超速情况。

利用Apriori算法对交通路况的研究的更多相关文章

  1. 关联规则—频繁项集Apriori算法

    频繁模式和对应的关联或相关规则在一定程度上刻画了属性条件与类标号之间的有趣联系,因此将关联规则挖掘用于分类也会产生比较好的效果.关联规则就是在给定训练项集上频繁出现的项集与项集之间的一种紧密的联系.其 ...

  2. #研发解决方案#基于Apriori算法的Nginx+Lua+ELK异常流量拦截方案

    郑昀 基于杨海波的设计文档 创建于2015/8/13 最后更新于2015/8/25 关键词:异常流量.rate limiting.Nginx.Apriori.频繁项集.先验算法.Lua.ELK 本文档 ...

  3. Apriori算法例子

    1 Apriori介绍 Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集.首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做L1,然 ...

  4. Apriori算法在购物篮分析中的运用

    购物篮分析是一个很经典的数据挖掘案例,运用到了Apriori算法.下面从网上下载的一超市某月份的数据库,利用Apriori算法进行管理分析.例子使用Python+MongoDB 处理过程1 数据建模( ...

  5. 基于Apriori算法的Nginx+Lua+ELK异常流量拦截方案 郑昀 基于杨海波的设计文档(转)

    郑昀 基于杨海波的设计文档 创建于2015/8/13 最后更新于2015/8/25 关键词:异常流量.rate limiting.Nginx.Apriori.频繁项集.先验算法.Lua.ELK 本文档 ...

  6. Apriori算法第二篇----详细分析和代码实现

    1 Apriori介绍 Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集.首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做L1,然 ...

  7. 玩转大数据:深入浅出大数据挖掘技术(Apriori算法、Tanagra工具、决策树)

    一.本课程是怎么样的一门课程(全面介绍) 1.1.课程的背景           “大数据”作为时下最火热的IT行业的词汇,随之而来的数据仓库.数据分析.数据挖掘等等围绕大数据的商业价值的利用逐渐成为 ...

  8. Apriori算法原理总结

    Apriori算法是常用的用于挖掘出数据关联规则的算法,它用来找出数据值中频繁出现的数据集合,找出这些集合的模式有助于我们做一些决策.比如在常见的超市购物数据集,或者电商的网购数据集中,如果我们找到了 ...

  9. 【机器学习实战】第11章 使用 Apriori 算法进行关联分析

    第 11 章 使用 Apriori 算法进行关联分析 关联分析 关联分析是一种在大规模数据集中寻找有趣关系的任务. 这些关系可以有两种形式: 频繁项集(frequent item sets): 经常出 ...

随机推荐

  1. 四则运算(2)之软件单元测试:Right-BICEP

    一.Right-BICEP主要测试以下几方面的问题: Right-结果是否正确? B-是否所有的边界条件都是正确的? I-能查一下反向关联吗? C-能用其他手段交叉检查一下结果吗? E-你是否可以强制 ...

  2. 程序调试手段之gdb, vxworks shell

    调试一个程序主要用到的功能: 启动程序 设置函数断点 设置数据断点 单步执行 查看内存值 修改内存值 linux下的gdb,和vxworks下的shell 虽然使用方式和调试命令略有不同,但是都能满足 ...

  3. 互联网产品设计常用文档类型-BRD、MRD、PRD、FSD (

    BRD Business Requirements Document,商业需求文档.这是产品声明周期中最早的问的文档,再早就应该是脑中的构思了,其内容涉及市场分析,销售策略,盈利预测等,通常是和老大们 ...

  4. 【Binary Tree Level Order Traversal】cpp

    题目: Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to ri ...

  5. html5之canvas练习

    代码地址:github.com/peng666/blogs 在线地址:http://peng666.github.io/blogs/

  6. poj 1273 Drainage Ditches 最大流入门题

    题目链接:http://poj.org/problem?id=1273 Every time it rains on Farmer John's fields, a pond forms over B ...

  7. Leetcode#146 LRU Cache

    原题地址 以前Leetcode的测试数据比较弱,单纯用链表做也能过,现在就不行了,大数据会超时.通常大家都是用map+双向链表做的. 我曾经尝试用C++的list容器来写,后来发现map没法保存lis ...

  8. confusing uv

    in a projection u from letf to right is 0---1 in another proj u is the same but when i output u in r ...

  9. 2-Highcharts 3D图之3D柱状图带可调试倾斜角度

    <!DOCTYPE> <html lang='en'> <head> <title>2-Highcharts 3D图之3D柱状图带可调试倾斜角度< ...

  10. date format 精辟讲解

    link: http://stackoverflow.com/questions/19533933/nsdateformatter-how-to-convert-wed-23-oct-2013-045 ...