真实面经题目 · 原创解析
订单粒度和人车粒度做派单召回有什么区别?
这题考派单系统的召回建模粒度:订单粒度从订单找候选司机,人车粒度从司机或人车状态找候选订单,差异体现在实时性、容量约束和全局匹配效率。
真实面经题目 · 原创解析
这题考派单系统的召回建模粒度:订单粒度从订单找候选司机,人车粒度从司机或人车状态找候选订单,差异体现在实时性、容量约束和全局匹配效率。
订单粒度召回是以每个订单为中心,找附近、可达、符合服务约束的候选司机,再进入排序或匹配。这种方式直观、延迟低,适合单订单快速响应,但容易只做局部最优。人车粒度召回是以司机或司机车辆状态为中心,维护其可服务的订单集合或区域供需关系,再做双边匹配,更容易考虑司机空驶、接驾距离、未来供需和容量约束,但系统复杂度更高。面试回答要强调两者不是谁替代谁,真实派单通常会结合时空索引、规则过滤、候选召回、排序打分和全局匹配优化。
订单来了以后,以订单起点、终点、时间和服务要求为条件,在附近司机池中召回候选司机。优点是链路直接、响应快、容易解释,缺点是每个订单局部决策,可能造成司机资源竞争和全局效率损失。
人车粒度关注司机、车辆和当前状态,例如位置、接驾能力、服务类型、在线时长和未来路线。它可以从司机视角召回可接订单,适合做供需平衡、司机体验和全局匹配。
订单粒度更关注这个订单有没有足够候选司机;人车粒度更关注一个司机同时面对哪些订单以及是否会被过度竞争。两者都要考虑距离、ETA、服务类型、取消风险和规则约束。
如果每个订单独立选最近司机,可能让后续订单无车可派,或者让司机整体空驶增加。人车粒度和批量匹配能纳入全局目标,例如总接驾时长、成交率、司机利用率和公平性。
实际系统通常用网格、GeoHash 或空间索引快速召回,再用模型排序候选对,最后用规则或匹配算法做分配。高峰期、低峰期、稀疏区域和密集区域的召回策略也可能不同。
它只看当前订单的候选司机,可能抢占更适合其他订单的司机,导致整体接驾时间或成交率变差。
常见特征包括距离、ETA、司机状态、服务类型、历史接单率、取消率、区域供需、订单等待时间和规则约束。
可以用时空索引、半径分层、候选上限、规则过滤和动态扩圈,在召回率和延迟之间平衡。
看成交率、平均接驾时长、乘客等待、司机空驶、取消率、供需满足率和不同区域切片指标。