【OD矩阵】《城市公交IC卡·数据分析方法及应用》利用公交运营时间和乘客刷卡时间特征识别上车点

《城市公交IC卡·数据分析方法及应用》 陈学武、李海波、候贤耀著

《城市公交IC卡·数据分析方法及应用》——上车点识别·笔记

一般情况下,IC卡是没有记录上车点的信息,需要结合其他数据对IC卡处理

通常情况下,使用时间特征对数据匹配

公交运营时间和乘客刷卡时间特征

公交车辆运营一趟的的总时间:
T = t a n − t a l = ∑ i = 1 k − 1 ( T s k − T r k ) T = t_{an}-t_{al} = \sum_{i=1}^{k-1}(T_{sk}-T_{rk}) T=tantal=i=1k1(TskTrk)
总时间 = 运行时间+停靠时间

公交车辆到达第k个站点的时间:
t a k = t a 1 + ∑ i = 1 k − 1 ( T s i − T r i ) t_{ak} = t_{a1}+\sum_{i= 1}^{k-1}(T_{si} - T_{ri}) tak=ta1+i=1k1(TsiTri)
到达第k个站点的时间 = 起始时间 +此站前的总时间

车辆离开第K个站点的时间:
t s k = t a 1 + ∑ i = 1 k − 1 ( T s i − T r i ) + T s k t_{sk} = t_{a1}+\sum_{i= 1}^{k-1}(T_{si} - T_{ri})+T_{sk} tsk=ta1+i=1k1(TsiTri)+Tsk
离开第K个站点的时间 = 到达时间+停靠时间

综上,车辆在第K歌站点停留时间区间为:
[ t a k , t l k ] = [ t a 1 + ∑ i = 1 k − 1 ( T s i − T r i ) , t a 1 + ∑ i = 1 k − 1 ( T s i − T r i ) + T s k ] [t_{ak},t_{lk}] = [t_{a1}+\sum_{i= 1}^{k-1}(T_{si} - T_{ri}) , t_{a1}+\sum_{i= 1}^{k-1}(T_{si} - T_{ri})+T_{sk}] [tak,tlk]=[ta1+i=1k1(TsiTri),ta1+i=1k1(TsiTri)+Tsk]

其中:

k ——站点号

t a 1 t_{a1} ta1 —— 起点发车时间

t l 1 t_{l1} tl1 —— 起点离开时间

t a k t_{ak} tak —— 到达第k个站点的时间

t l k t_{lk} tlk —— 离开第k个站点的时间

T s 1 T_{s1} Ts1—— 起点站发车时间与离开时间间隔

T r 1 T_{r1} Tr1 —— 起点发车时间(第一站)到下一站的运行时间

T s k T_{sk} Tsk —— 车辆在第k个站点的停留时间

T r k T_{rk} Trk —— 车辆离开第k个站到达下一个站的运行时间

仅仅依赖公交调度表结合线路平均运营速度对算到站时间的可靠性不高,还需要结合上乘客的刷卡数据

乘客刷卡时间特征

在乘客较多或者存在行动不方便的乘客时,会出现公交启动离站后才刷卡的情况,也就意味着刷卡存在一个刷卡时间区间。

乘客的刷卡行为呈现一种明显的集中性和有序性,可以使用聚类方法将同意站点乘坐同一车次的刷卡记录聚合成一组,以达到聚类数据的刷卡时间与公交车辆到达时间的良好匹配关系

考虑到公交线路的周期性以及一个车次中不会每站都有人上车,所以可以将一周的时间集中在一起聚类分析

上车点识别

聚类分析

聚类分析方法主要依据数据客体之间的相似性和相异性,将这种关系看成一种距离上的远近的一种度量。将距离近的归类为同一种类,距离远的归结为另一类

主要方法分为 层次聚类非层次聚类,如:k-means、BIRCH、DBSCAN等方法

由于不是每一个站点都会有人上车,所以聚类只能聚合出有刷卡数据的站点数据

对于这类问题有以下解决办法:

  • 在公交IC卡数据聚类的基础上,利用公交调度数据推算公交车辆到站时间,利用公交IC卡时间与公交车辆到站时间匹配识别上车点。
  • 依据换乘行为,将识别出来的换成站点作为控制站点来推断其他上车站点

基于公交调度数据的算法

公交IC卡数据聚类

对于一辆公交车,乘客上车客流具有很强的时间群集特性,即刷卡时间也具有时间群集特征。可以通过对刷卡数据的聚类分析,以时间长短作为相似性依据

对刷卡时间进行聚类的分类数量不确定,只有采用层次聚类方法:

  1. 提取所有记录,将每个记录看成一类,初始数量设为K
  2. 计算相邻类的刷卡时间最短间隔设为距离 D p q D_{pq} Dpq,将距离最小的几类合并
  3. 重复步骤2,知道min( D i j D_{ij} Dij)> T u T_u Tu,即相邻两类的最小距离中的最小值大于该线路相邻两站点之间最短的刷卡间隔 (两个最小值比较)

聚类之后,将各组分类号建字段存储到刷卡数据表中

计算 各组刷卡数据的 中间值最大刷卡间隔 并存储 以备和车辆停靠时间匹配,确定上车点

中间值:组内各组刷卡时间的算数平均数(个人看法:取中位数研究)

最大时间间隔:组中最后一次和第一次之间的时间间隔

车辆停靠时刻推算

这里定义公交停靠时刻 为车辆停靠在停靠站 停靠的中间时刻 即:
t k = t a k + ( t l k + t a k ) 2 = t l ( k − 1 ) + T r ( k − 1 ) + T s k 2 , k > = 2. t_k = t_{ak} + \frac{(t_{lk}+t_{ak})}{2} \\= t_{l(k-1)} + T_{r(k-1)}+\frac{T_{sk}}{2},k>=2. tk=tak+2(tlk+tak)=tl(k1)+Tr(k1)+2Tsk,k>=2.
可以从公交调度信息表中提取出车辆起点发车时刻t_l1终点站到站时刻t_an

推算公交车辆离开各站点的时刻:

t l k = t l ( k − 1 ) + T r ( k − 1 ) + T s k 离 开 时 刻 = 上 一 站 离 开 时 刻 + 上 一 段 路 上 运 行 时 间 + 此 站 的 停 靠 时 间 = [ t l ( k − 2 ) + T r ( k − 2 ) + T s ( k − 1 ) ] + T r ( k − 1 ) + T s k 通 过 递 归 , 递 推 到 t l 1 = t l 1 + ∑ i = 1 k − 1 T r i + ∑ i = 2 k T s i 整 理 后 得 到 上 面 的 公 式 t_{lk} = t_{l(k-1)}+T_{r(k-1)}+T_{sk}\\ 离开时刻 = 上一站离开时刻+上一段路上运行时间+此站的停靠时间\\ \qquad\\\qquad\\ =[t_{l(k-2)}+T_{r(k-2)}+T_{s(k-1)}]+T_{r(k-1)}+T_{sk}\\ 通过递归,递推到t_{l1}\\ \qquad\\\qquad\\ = t_{l1}+\sum_{i = 1}^{k-1}T_{ri}+\sum_{i=2}^{k}T_{si}\\ 整理后得到上面的公式 tlk=tl(k1)+Tr(k1)+Tsk=++=[tl(k2)+Tr(k2)+Ts(k1)]+Tr(k1)+Tsktl1=tl1+i=1k1Tri+i=2kTsi

对于首末站,近似的认为到站时间和出站时间相等

停靠时间 T s k T_{sk} Tsk注意到的刷卡数据聚类后计算得到的各组的刷卡时间间隔Δk表示)数据可以近似表示为 站点停靠时间,其他没有刷卡数据的站点其停靠时间可以根据 调查近似值

站点间运行时间 T s k T_{sk} Tsk站间距离/平均运行速度的值,单位s,计算公式:
T r k = l k ( k + 1 ) V ‾ V ‾ = l t a n − t l n − ∑ i = 2 n − 1 T s i 即 : T r k = l k ( k + 1 ) ∗ ( t a n − t l n − ∑ i = 2 n − 1 T s i ) l T_{rk} = \frac{l_{k(k+1)}}{\overline{V}}\\ \qquad\\\qquad\\ \overline{V} = \frac{l}{t_{an}-t_{ln}-\sum_{i = 2}^{n-1}T_{si}}\\ \qquad\\\qquad\\ 即:T_{rk} = \frac{l_{k(k+1)}*(t_{an}-t_{ln}-\sum_{i = 2}^{n-1}T_{si})}{l}\\ Trk=Vlk(k+1)V=tantlni=2n1TsilTrk=llk(k+1)(tantlni=2n1Tsi)

刷卡时间与停靠时间匹配

通过聚类分析和停靠时刻推算得到个各类中公交刷卡时间的“中间值 t m t_m tm公交车辆在各站点的“停靠时刻 t k t_k tk

通过t_m和t_k之间的距离 Δmk ,当Δmk = min( | t m − t k t_m - t_k tmtk | ) 时,所取 t k t_k tk 对应的停靠站点认为时 t m t_m tm 所对应的刷卡记录的刷卡站点,即上车站点

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
浅谈IC卡数据分析 ⽂章⽬录 1.简单介绍 Mifare S50 简称M1,⾼频最常见的卡,每张卡独⼀⽆⽆⼆UID 号,可存储修改数据(学⽣卡,饭卡,公交卡,门禁卡)----国内⼤部分卡都是此卡 Mifare UltraLight 简称M0,⾼频低成本卡,出⼚固化UID,可存储修改数据(地铁卡,公交卡)—谁碰谁死 Mifare UID(Chinese magic card) 简称UID 卡,⾼频M1 卡的变异版本,可修改UID,国外叫做中国魔术卡,可以⽤来完整克隆M1 S50 的数据 ----某宝上有售,⽤来做空 ⽩卡,复制体!! CUID、FUID、SUID ------各种神奇的空⽩卡 EM4XX 简称ID 卡,低频常⽤固化ID 卡,出⼚固化ID,只能读不能写(低成本门禁卡,⼩区门禁卡,停车场门禁卡) T5577 简称可修改ID 卡,低频可⽤来克隆ID 卡,出⼚为空卡,内有扇区也可存数据,个别扇区可设置密码。----可以理解为ID空⽩卡 复制体 HID Prox II 简称HID,低频美国常⽤的低频卡,可擦写,不与其他卡通⽤ ----厚卡,常见于签到卡 CPU卡 这个好像没有统⼀标准,⾥⾯是个FPGA,然后⽤的软核,⾥⾯⾃定义加密程序,还有有的声称是双CPU双位加密,充值⽤接触式,使⽤⽤ ⾮接触式,这个具体咋实现的就不清楚了-------很多省会城市的公交卡 、地铁卡⽤的是这种 ,还是谁碰谁死 2. IC卡详解 IC卡包括了ID卡,M1卡、CPU卡;ID卡指的是低频率的卡,读取的频率是不⼀样的。M1卡通常指的是恩智浦的S50芯⽚卡; CPU卡⽐ID 卡和M1卡容量多、具有⾃动运算功能、还有安全性强的卡。 1、ID卡   全称为⾝份识别卡(Identification Card),是⼀种不可写⼊的感应卡,含固定的编号.卡号在封卡前写⼊后不可再更改,绝对确 保卡号的唯⼀性和安全性.ID卡在弱电系统中⼀般作为门禁或停车场系统的使⽤者⾝份识别,因ID卡⽆密钥安全认证机制,且不能写卡, 现在⾏业内的基本共识是ID卡不适合做成⼀卡通,也不合适做消费系统。 2、 IC卡⼜称集成电路卡。   它是在⼤⼩和普通信⽤卡相同的塑料卡⽚上嵌置⼀个或多个集成电路构成的。集成电路芯⽚可以是存储器或向处理器。带有存储器 的IC卡⼜称为记忆卡或存储卡,带有微处理器的IC卡⼜称为智能卡或智慧卡。记忆卡可以存储⼤量信息;智能卡则不仅具有记忆能⼒, ⽽且还具有处理信息的功能。IC卡可以⼗分⽅便地存汽车费、电话费、地铁乘车费、⾷堂就餐费、公路付费以及购物旅游、贸易服务 等。 3、 M1卡   是指菲利浦下属⼦公司恩智浦出品的芯⽚缩写,⽬前都有国产芯⽚与其兼容,属于⾮接触式IC卡。M1卡,优是可读可写的多功 能卡,缺是:价格稍贵,感应距离短,适合⾮定额消费系统、停车场系统、门禁考勤系统等。 4、CPU卡   CPU卡芯⽚通俗地讲就是指芯⽚内含有⼀个微处理器,它的功能相当于⼀台微型计算机。⼈们经常使⽤的集成电路卡(IC卡)上的 ⾦属⽚就是CPU卡芯⽚。CPU卡可适⽤于⾦融、保险、交警、政府⾏业等多个领域,具有⽤户空间⼤、读取速度快、⽀持⼀卡多⽤等 特,并已经通过中国⼈民银⾏和国家商秘委的认证。CPU卡从外型上来说和普通IC卡,射频卡并⽆差异,但是性能上有巨⼤提升,安 全性和普通IC卡⽐,提⾼很多,通常CPU卡内含有随机数发⽣器,硬件DES,3DES加密算法等,配合操作系统即⽚上OS,也称COS,可 以达到⾦融级别的安全等级。 3.M1卡详解 M1卡分为16个扇区,每个扇区4块(块0~3),共64块。第0扇区的块0(即绝对地址0块)⽤于存放⼚商代码,已经固化,不可更改。 其他各扇区的块0、块1、块2为 数据块 ,⽤于存贮数据;块3为 控制块 ,存放密码A、存取控制、密码B,其结构如下: 4.常⽤读写设备介绍 此处不配图了 最流⾏的读卡器:ACR122 使⽤最多的读卡器,很流⾏,⼤抵是因为⽹络上流传了⾮常强⼤的GUI改卡读卡复制卡软件吧!某宝价格⼀百多,只能读取IC卡,不能 读ID卡。 易⽤性: 旗舰级读卡器:Proxmark3 国外的开源硬件,由FPGA驱动。性能⼗分强⼤,集嗅探、读取、克隆于⼀体,IC卡和ID卡通杀,可以插电脑可以接电源,当然其价格 也是⼗分的感⼈。 易⽤性: 最便宜的读卡器:PN532 PN532由NXP出品,是⼀款⾼度集成的载波的13.56MHz传输模块,基于80C51内核有40KROM、1KRAM。某宝价格为⼏⼗元, ⾮常便宜。只能⽤来读取IC卡,不能读取ID卡和CPU卡。 易⽤性: 全加密侦测神器:变⾊龙 变⾊龙是⼀款辅助解密设备,与常规的复制机不同的是,常规的复制机是在卡⽚上解密,变⾊龙是在刷卡机上侦测密码,变⾊龙本⾝没 有写卡的能⼒

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值