写在前面
确定方向第一篇论文,记录写来,否则后面看的多的话,不记住不总结效果会特别差
1 摘要
做了什么:为出租车司机和乘客进行双向推荐
对于出租车司机:进行一个位置,以及到达这些位置的路线推荐
对于乘客:推荐一个位置(在可以到达的距离之内)
怎么做:从历史轨迹学习乘客的出行模式,司机的上下车行为。把这个用概率表示的知识输入模型进行推荐
简介
- 出租车轨迹能学习到两方面的知识,乘客的移动模式(何时何地乘客上下车),出租车的载客行为(去哪怎么找可以收益最大化且快速)
- 贡献
提出了一个停车点检测算法
出租车推荐考虑到了时变排队时长(time-varing quene length)时间,乘客推荐考虑到了等待时间
分成了工作日,休息日,以及天气情况
2 Overview
定义
road segment:带方向的有向边 r.dir 方向 r.s r.e起点终点 r.level 线路等级
route:一串连通的road segment,
R:r1->r2->…->rn,对于两个相邻的road segment,上一个终点是下一个的起点
State: 出租车状态 占用(occupied)巡航(cruising)停车(parked)
trajectory: 一系列的轨迹点p,每个点有p.t 时间 p.lat 经度 p.lon 纬度 p.r 轨迹点在那个路段上(经过地图匹配) p.s 上面提到的状态
trip:仅有一个状态的子轨迹
动机
- 出租车司机收入有高低
- 不同收入level的司机在每个时间段的占用率不一样
- 巡航时间和收入的相关系数并不高
框架
离线阶段 :
- 停车点检车
- 将轨迹分割成trip
- IVMM 地图匹配到路网上
- 基于概率模型学习统计数据
- 解决数据稀疏问题,不对单个road segment做概率检查,用聚类
3 停车点检测
候选停车点
- 检查p1 dist(p1,p2)>极限值
- 检查p2 dist(p2,p3)<极限值 dist(p2,p4)<极限值 dist(p2,p5)>极限值 比较p2,p4之间的时间跨度,大于极限值 (p2,p3,p4)候选
- 检查p3 依次类推
- 最后得到候选停车点(p2,p3,p4,p5)
过滤
目的: 并不是所有的候选点都是停车点,也有可能是交通jam引起的,选特征,将由于寻客引起的停车行为,和其他特殊情况引起的停车行为分开
特征:
- 时空特征
minimun bounding ratio
如图所示,MBRr(由路段行为的bounding box)/MBRc(由轨迹点形成的bounding box)
average distance
候选点到路段的距离不一样
center distance
中心点到路段的距离
duration 在停留点的持续时间
lastspeed:脱离这个parking place的速度,如果是载客了起步会很快
- POI特征parking place周围的POI点,形成了一个POI向量
vi表示属于i类的
tf-idf 去检测 - 协同过滤特征
历史的停留数据,协同过滤
parking place 聚类
大概意思可能是说 我们的抽样点是有限的,事实上你在这里检测到的停车点 和那里的 是属于一次的寻客产生的停车点,可以归为一类
4 模型描述
像摘要里面的说的,给定当前位置Lc和当前时间L0,出租车推荐一个parking place以及到停车点的路线,乘客推荐步行能到的路段。根据第六节的策略
4.1 taxi recommend
标准
- [risk ] 采取动作之后的载客可能性
- [cost 1] 采取了动作要等多久才能载客
- [cost 2] 如果在路线上没载客到了停车点P,车的队列长度是多少
- [benefit ] 成功载客下一个乘客的路线有多远
4.1.1 载客可能性
S表示成功载客 Si表示在第i个路段载客 Sn+1表示在停车点载客
t0表示但当前时间,ti表示出租车到路段i的时间
pi表示一个未载客的课在路段ri,时间T0+ti的时间载客的概率
p*表示出租车在T0+tn的时间到达停车点p等待(0,tmax]的时间载客的概率
如何计算Pj
事件Si发生的概率
事件S发生的概率
注意到某个路段的概率并不是一成不边的(2.am的概率和5.pm的概率会完全不一样),假设输入的事件为t,我们假设[t-▲t,t+▲t]的时间内某条路段载客概率不变
partition and group方法计算某条路段的载客概率
一天分为K个unit 每个unit的长度是 tao(打不出来)
统计每个 fai k (不会打)有多少俩出租车在这里载客
这就是你输入一个时间t,我用[t-▲t,t+▲t]去代替他的概率,在离线的时候已经把fai k算好了,你只需要计算k等于多少
上面是在这个路段r上状态从 巡航到占据(成功载客)的数量,下面是这个时间段所有在路段r寻客出租车的数量
用这个公式可以计算Pj
如何计算P*
也是一样的道理 可以计算P*
后面的时间,队列长度,下个距离就不一一介绍了太累了懒得写
4.2 乘客推荐
4.2.1 不想写了 …做ppt吧
5 路段聚类
由于前文中road segment的结果过稀疏,不利于统计学习,所以我们需要对road segment的结果进行聚类,将稀疏的数据聚类,这里作者所用的方法是Bisected clustering,其本质是多次的2-means clustering,我们将聚类后的结果road segment clustering 代替前面的road segment,用于统计学习,计算公式中相应的变量也随之替换
6 在线推荐
思路:
1、根据出租车当前的位置和时间,找到附附近可能的parking place(P)
2、对每个P计算成功概率,以及各种期望
3、对这些值进行综合排序
4、设定一些阈值,用于筛选最合适的P
cost or benifit fun:
Most profitable
Fastest
Highest probability
Shortest queue
2、passenger recommender:
cost or benifit fun:
Probability of finding a vacant taxi
Average waiting time