发明内容
本申请的主要目的为提供一种长距离拼车的接送规划方法、装置、设备及介质,旨在解决现有技术的长距离拼车按照预约的出发时间接乘客严重浪费了乘客和司机的时间,送乘客时因特殊原因和部分乘客的不合理要求导致没有先送近距离的乘客,降低了乘客的满意度的技术问题。
为了实现上述发明目的,本申请提出一种长距离拼车的接送规划方法,所述方法包括:
获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;
根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;
根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;
根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;
获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长;
将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长;
当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
进一步的,所述获取目标司机端发送的添加乘客请求的步骤,包括:
获取乘客端发送的拼车请求,所述拼车请求携带有所述新增乘客预约出发时间范围数据、所述新增乘客出发地址和所述新增乘客目的地址;
获取预设距离数据;
根据所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行匹配,得到候选司机数据;
根据所述拼车请求携带的所述新增乘客预约出发时间范围数据从所述候选司机数据中进行匹配,得到待接单司机数据;
根据所述待接单司机数据,确定待接单司机端;
根据所述拼车请求携带的所述新增乘客预约出发时间范围数据、所述新增乘客出发地址和所述新增乘客目的地址,确定推荐新增乘客数据;
将所述推荐新增乘客数据发送给所述待接单司机端;
获取所述待接单司机端根据所述推荐新增乘客数据发送的所述添加乘客请求。
进一步的,所述根据所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行匹配,得到候选司机数据的步骤,包括:
根据所述拼车请求携带的所述新增乘客出发地址、所述预设距离数据从所述司机库中进行匹配,得到待确定目的地司机数据;
从所述待确定目的地司机数据中获取无订单的司机数据,将所述无订单的司机数据作为所述候选司机数据;
从所述目的地司机数据中获取有订单的司机数据,得到待确定方向司机数据;
根据所述拼车请求携带的所述新增乘客目的地址从所述待确定方向司机数据中进行匹配,得到所述候选司机数据。
进一步的,所述根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据的步骤,包括:
采用动态规划算法根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到所述目标司机出发时间范围数据、所述目标乘客出发时间范围数据和所述目标接客路线数据;
根据所述目标司机出发时间范围数据、所述目标乘客出发时间范围数据和所述目标接客路线数据,确定所述目标接客数据。
进一步的,所述根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据的步骤,包括:
采用动态规划算法根据所述目标接客数据、所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到所述目标乘客到达时间范围数据和所述目标送客路线数据;
根据所述目标乘客到达时间范围数据和所述目标送客路线数据,确定所述目标送客数据。
进一步的,所述当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒的步骤之后,包括:
分别将所述目标送客数据中每个乘客的所述目标乘客出发时间范围数据的最早时间减去所述当前时间,得到多个目标当前距离出发时长;
获取预设出发前提提醒时长;
分别将每个所述目标当前距离出发时长与所述预设出发前提提醒时长进行对比;
当存在所述目标当前距离出发时长小于所述预设出发前提提醒时长时,获取出发前提醒信息,根据所述出发前提醒信息对乘客进行出发提醒。
进一步的,所述当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒的步骤之后,还包括:
获取乘客实际上车时间数据和司机实际到达时间数据;
根据所述乘客实际上车时间数据、所述司机实际到达时间数据和所述目标接客数据计算每个乘客的迟到时长,得到多个目标迟到时长;
获取扣分阈值和加分阈值;
分别将每个所述目标迟到时长与所述扣分阈值进行对比;
当存在所述目标迟到时长大于所述扣分阈值时,获取预设扣除分值、所述目标迟到时长对应的乘客信用分,将所述目标迟到时长对应的乘客信用分与所述预设扣除分值进行相减计算,得到目标乘客信用分;
分别将每个所述目标迟到时长与所述加分阈值进行对比;
当存在所述目标迟到时长小于所述加分阈值时,获取预设加分阈值、所述目标迟到时长对应的乘客信用分,将所述目标迟到时长对应的乘客信用分与所述预设加分阈值进行相加计算,得到所述目标乘客信用分。
本申请还提出了一种长距离拼车的接送规划装置,所述装置包括:
添加乘客请求获取模块,用于获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;
历史数据获取模块,用于根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;
目标接客数据确定模块,用于根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;
目标送客数据确定模块,用于根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;
提醒信号确定模块,用于获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长,将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长,当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
本申请还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请的长距离拼车的接送规划方法、装置、设备及介质,通过根据司机出发时间范围数据、司机出发地址、新增乘客预约出发时间范围数据、新增乘客出发地址、历史乘客预约出发时间范围数据和历史乘客出发地址进行最短接客时长计算,得到目标接客数据,目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据,实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;根据新增乘客出发地址、新增乘客目的地址、历史乘客出发地址和历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,目标送客数据包括:目标乘客到达时间范围数据和目标送客路线数据,实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了解决现有技术的长距离拼车按照预约的出发时间接乘客严重浪费了乘客和司机的时间,送乘客时因特殊原因和部分乘客的不合理要求导致没有先送近距离的乘客,降低了乘客的满意度的技术问题,本申请提出了一种长距离拼车的接送规划方法,所述方法应用于人工智能技术领域。所述长距离拼车的接送规划方法通过重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;以及通过重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
参照图1,本申请实施例中提供一种长距离拼车的接送规划方法,所述方法包括:
S1:获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;
S2:根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;
S3:根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;
S4:根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;
S5:获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长;
S6:将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长;
S7:当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
本实施例通过根据司机出发时间范围数据、司机出发地址、新增乘客预约出发时间范围数据、新增乘客出发地址、历史乘客预约出发时间范围数据和历史乘客出发地址进行最短接客时长计算,得到目标接客数据,目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据,实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;根据新增乘客出发地址、新增乘客目的地址、历史乘客出发地址和历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,目标送客数据包括:目标乘客到达时间范围数据和目标送客路线数据,实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
对于S1,添加乘客请求,是指司机通过司机端发送的添加乘客进入拼车的请求。添加乘客进入拼车,意味着该司机通过司机端接收了乘客的拼车订单。
目标司机端是任意一个司机端。司机端包括但不限于:移动客户端、电脑客户端、电脑网页端。
新增乘客预约出发时间范围数据,是指新增的乘客的预约出发时间范围数据。预约出发时间范围数据是时间范围数据。比如,预约出发时间范围数据是9:00-10:00,在此举例不做具体限定。
新增乘客出发地址,是指新增的乘客的出发地址数据。
新增乘客目的地址,是指新增的乘客的目的地址数据。
对于S2,根据所述添加乘客请求,获取所述目标司机端的司机端标识,根据所述目标司机端的司机端标识从数据库中获取司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址,将获取的数据作为所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址。
司机端标识可以是司机端名称、司机端ID等唯一标识一个司机端的标识。
对于S3,最短接客时长是从所述司机出发地址到接上所有乘客所需的时长为最短值。可以理解的是,目标司机出发时间范围数据位于所述司机出发时间范围数据的范围内,新增乘客的目标乘客出发时间范围数据是位于所述新增乘客预约出发时间范围数据的范围内,历史乘客的目标乘客出发时间范围数据是位于所述历史乘客预约出发时间范围数据的范围内。从而实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间。
目标司机出发时间范围数据,也就是重新规划后的司机出发时间范围数据。
目标乘客出发时间范围数据,也就是重新规划后的乘客出发时间范围数据。
目标接客路线数据,也就是重新规划后的接客路线数据。接客路线数据包括:接客路线图、接客地点。
对于S4,最短乘客乘坐时长是指所有乘客乘坐车的时长的总和最短。通过最短乘客乘坐时长实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
目标乘客到达时间范围数据,也就是重新规划后的乘客到达时间范围数据。目标乘客到达时间范围数据包括:乘客标识、到达时间范围,每个乘客标识对应一个到达时间范围。
目标送客路线数据,也就是重新规划后的送客路线数据。送客路线数据包括:送客路线图、送客地点。
对于S5,可以从数据库中获取预设提醒时长。
可以获取实现本申请的长距离拼车的接送规划方法的程序所在服务器的实时时间作为当前时间。
当前乘客数量,是指当前已经接单的乘客数量。可以理解的是,乘客数量是指占用座位的数量。
可以从数据库中获取预设乘客数量,也可以是司机通过司机端输入的预设乘客数量。
预设乘客数量,是指最大载客数量。
对于S6,从所述目标乘客出发时间范围数据中找出最早时间,将找出的最早时间作为最早接客时间;将最早接客时间减去当前时间,得到当前距离出发时长。
对于S7,当所述当前乘客数量等于所述预设乘客数量时意味着没有多余的座位提供给新乘客,当所述当前距离出发时长小于所述预设提醒时长时意味着需要提醒乘客和司机准备出行计划的时间。
当所述当前乘客数量小于所述预设乘客数量,或者,所述当前距离出发时长大于或等于所述预设提醒时长时,意味着不能再接收新的乘客,并且需要提醒提醒乘客和司机准备出行计划的时间。
司机提醒信号携带有司机提醒信息,所述司机提醒信息包括:目标司机出发时间范围数据、目标乘客出发时间范围数据、目标乘客到达时间范围数据。
所述根据所述司机提醒信号对司机进行出发提醒的步骤,包括:将所述司机提醒信息发送给目标司机端,将所述司机提醒信息通过短信发送给预设司机手机号码。
乘客提醒信号携带有乘客提醒信息,所述乘客提醒信息包括:目标乘客出发时间范围数据、乘客出发地址、乘客目的地址、目标乘客到达时间范围数据。每个所述乘客提醒信息中包括的是一个乘客的目标乘客出发时间范围数据、乘客出发地址、乘客目的地址和目标乘客到达时间范围数据。
所述根据所述乘客提醒信号对乘客进行出发提醒的步骤,包括:将所述乘客提醒信号携带的所述乘客提醒信息发送给乘客端,并且,将所述乘客提醒信息通过短信发送给预设乘客手机号码。
可选的,当所述当前乘客数量小于所述预设乘客数量,并且,所述当前距离出发时长大于或等于所述预设提醒时长时,重复执行所述获取目标司机端发送的添加乘客请求的步骤直至所述当前乘客数量等于所述预设乘客数量或者所述当前距离出发时长小于所述预设提醒时长。
在一个实施例中,上述获取目标司机端发送的添加乘客请求的步骤,包括:
S11:获取乘客端发送的拼车请求,所述拼车请求携带有所述新增乘客预约出发时间范围数据、所述新增乘客出发地址和所述新增乘客目的地址;
S12:获取预设距离数据;
S13:根据所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行匹配,得到候选司机数据;
S14:根据所述拼车请求携带的所述新增乘客预约出发时间范围数据从所述候选司机数据中进行匹配,得到待接单司机数据;
S15:根据所述待接单司机数据,确定待接单司机端;
S16:根据所述拼车请求携带的所述新增乘客预约出发时间范围数据、所述新增乘客出发地址和所述新增乘客目的地址,确定推荐新增乘客数据;
S17:将所述推荐新增乘客数据发送给所述待接单司机端;
S18:获取所述待接单司机端根据所述推荐新增乘客数据发送的所述添加乘客请求。
本实施例实现了根据乘客端发送的拼车请求匹配待接单司机端,在待接单司机端接收订单后触发添加乘客请求,从而实现了快速响应拼车请求。
对于S11,乘客在乘客端填写预约出发时间范围数据、出发地址、目的地址,填写完成提交触发拼车请求。将乘客在乘客端填写的预约出发时间范围数据作为所述新增乘客预约出发时间范围数据,将乘客在乘客端填写的出发地址作为所述新增乘客出发地址,将乘客在乘客端填写的目的地址作为所述新增乘客目的地址。
乘客端包括但不限于:移动客户端、电脑客户端、电脑网页端。
对于S12,从数据库中获取预设距离数据。
预设距离数据是一个具体数值。
优选的,所述获取预设距离数据的步骤,包括:
S121:根据所述拼车请求获取所述拼车请求对应的乘客信用分;
S122:根据所述拼车请求对应的乘客信用分,确定预设等待响应时长;
获取信用分等待时长表,将所述拼车请求对应的乘客信用分在所述信用分等待时长表中进行匹配,将在信用分等待时长表中匹配到的时长作为预设等待响应时长。
S123:根据所述预设等待响应时长,获取所述预设距离数据。
从接收所述拼车请求开始等待所述预设等待响应时长后,再获取所述预设距离数据。
通过乘客信用分确定预设等待响应时长,实现了根据乘客信用分进行分级服务,有利于鼓励乘客保留良好的乘客信用分,从而有利于提高乘客保持守时的习惯,避免司机和其他乘客长时间等待。
对于S13,将所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行候选司机匹配,在司机库中找到符合条件的候选司机,将找到的候选司机放入一个集合,得到候选司机数据。候选司机匹配的规则包括:司机出发地址与新增乘客出发地址之间的距离小于预设距离数据。
对于S14,将所述拼车请求携带的所述新增乘客预约出发时间范围数据与所述候选司机数据中进行待接单司机匹配,将找到的司机放入一个集合,得到待接单司机数据。待接单司机匹配的规则包括:所述新增乘客预约出发时间范围数据与司机出发时间范围数据之间的时长在预设推荐时长内。也就是说,待接单司机数据中待接单司机的数量可以为一个,也可以为多个,还可以为零个。
对于S15,从所述待接单司机数据获取待接单司机的司机标识,根据所述待接单司机的司机标识确定待接单司机的司机端标识,将待接单司机的司机端标识对应的司机端作为待接单司机端。
对于S16,将所述拼车请求携带的所述新增乘客预约出发时间范围数据、所述新增乘客出发地址和所述新增乘客目的地址组合成一条数据,将该数据作为推荐新增乘客数据。
对于S17,将所述推荐新增乘客数据发送给所有所述待接单司机端。
对于S18,当待接单司机想接下推荐新增乘客数据对应的订单时,通过待接单司机端根据所述推荐新增乘客数据触发所述添加乘客请求,此时该待接单司机端也就是目标司机端。
在一个实施例中,上述根据所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行匹配,得到候选司机数据的步骤,包括:
S131:根据所述拼车请求携带的所述新增乘客出发地址、所述预设距离数据从所述司机库中进行匹配,得到待确定目的地司机数据;
S132:从所述待确定目的地司机数据中获取无订单的司机数据,将所述无订单的司机数据作为所述候选司机数据;
S133:从所述目的地司机数据中获取有订单的司机数据,得到待确定方向司机数据;
S134:根据所述拼车请求携带的所述新增乘客目的地址从所述待确定方向司机数据中进行匹配,得到所述候选司机数据。
本实施例实现了根据所述拼车请求携带的所述新增乘客出发地址、所述新增乘客目的地址、所述预设距离数据从司机库中进行匹配,得到候选司机数据,从而确定待接单司机数据进行推荐提供了数据基础。
对于S131,将所述拼车请求携带的所述新增乘客出发地址、所述预设距离数据在所述司机库中进行匹配,将所述司机库中司机出发地址与新增乘客出发地址之间的距离小于预设距离数据的司机作为待确定目的地司机,将所述待确定目的地司机放在一个集合中,得到待确定目的地司机数据。
司机库包括但不限便于:司机标识、司机端标识、司机出发时间范围数据、司机出发地址。司机出发时间范围数据是个时间范围数据。比如,司机出发时间范围数据是9:00-10:00,在此举例不做具体限定。
对于S132,无订单的司机数据,也就是该司机目前还没有接受订单,此时该司机没有行驶方向,可以直接将该司机作为所述候选司机数据。
对于S133,有订单的司机数据,也就是该司机目前已经接受订单,此时该司机有行驶方向,需要将该司机数据作为待确定方向司机数据。
对于S134,根据所述拼车请求携带的所述新增乘客目的地址从所述待确定方向司机数据中进行匹配,也就是从所述待确定方向司机数据中找出出行方向一致的司机数据,将找出的司机数据作为所述候选司机数据。从而避免司机无接单影响接送乘客的效率,提高了司机的满意度,提高了乘客的满意度。
出行方向一致的司机数据包括:所述拼车请求携带的所述新增乘客出发地址和所述新增乘客目的地址之间的连线与司机数据的行驶路线方向一致。
在一个实施例中,上述根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据的步骤,包括:
S31:采用动态规划算法根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到所述目标司机出发时间范围数据、所述目标乘客出发时间范围数据和所述目标接客路线数据;
S32:根据所述目标司机出发时间范围数据、所述目标乘客出发时间范围数据和所述目标接客路线数据,确定所述目标接客数据。
本实施例采用动态规划算法进行最短接客时长计算,从而实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间。
对于S31,以所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址为决策条件,以最短接客时长为决策目标,求解接客决策过程的最优解,从接客决策过程的最优解中找出司机出发时间范围数据作为所述目标司机出发时间范围数据,从接客决策过程的最优解中找出乘客出发时间范围数据作为所述目标乘客出发时间范围数据,从接客决策过程的最优解中找出接客路线数据作为所述目标接客路线数据。
对于S32,将所述目标司机出发时间范围数据、所述目标乘客出发时间范围数据和所述目标接客路线数据作为所述目标接客数据。
可以理解的是,所述目标接客数据还可以包括其他数据,比如,目标乘客预计出发时间,在此不做具体限定。
在一个实施例中,上述根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据的步骤,包括:
S41:采用动态规划算法根据所述目标接客数据、所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到所述目标乘客到达时间范围数据和所述目标送客路线数据;
S42:根据所述目标乘客到达时间范围数据和所述目标送客路线数据,确定所述目标送客数据。
本实施例采用动态规划算法进行最短乘客乘坐时长计算,从而实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
对于S41,以所述目标接客数据、所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址为决策条件,以最短乘客乘坐时长为决策目标,求解送客决策过程的最优解,从送客决策过程的最优解中找出乘客到达时间范围数据作为所述目标乘客到达时间范围数据,从送客决策过程的最优解中找出送客路线数据作为所述目标送客路线数据。
对于S42,将所述目标乘客到达时间范围数据和所述目标送客路线数据作为所述目标送客数据。
在一个实施例中,上述当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒的步骤之后,包括:
S811:分别将所述目标送客数据中每个乘客的所述目标乘客出发时间范围数据的最早时间减去所述当前时间,得到多个目标当前距离出发时长;
S812:获取预设出发前提提醒时长;
S813:分别将每个所述目标当前距离出发时长与所述预设出发前提提醒时长进行对比;
S814:当存在所述目标当前距离出发时长小于所述预设出发前提提醒时长时,获取出发前提醒信息,根据所述出发前提醒信息对乘客进行出发提醒。
本实施例实现了所有乘客都按预设出发前提提醒时长提前提醒,有利于乘客做合适的出行准备,提高了乘客的满意度。
对于S811,所述目标送客数据中提取出每个乘客的所述目标乘客出发时间范围数据,每个乘客的所述目标乘客出发时间范围数据的最早时间(也就是时间范围数据的下限值)减去当前时间,得到目标当前距离出发时长。也就是说,每个乘客对应一个目标当前距离出发时长。
对于S812,可以从数据库中获取预设出发前提提醒时长。
对于S814,当存在所述目标当前距离出发时长小于所述预设出发前提提醒时长时,意味着所述目标当前距离出发时长对应的乘客需要尽快赶到上车地点以避免影响其他乘客的行程,从数据库中获取出发前提醒信息,将所述出发前提醒信息发送给所述目标当前距离出发时长对应的乘客端以对乘客进行提醒。
优选的,还可以将所述出发前提醒信息通过手机短信发送给所述目标当前距离出发时长对应的乘客以对乘客进行提醒。
在一个实施例中,上述当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒的步骤之后,还包括:
S821:获取乘客实际上车时间数据和司机实际到达时间数据;
S822:根据所述乘客实际上车时间数据、所述司机实际到达时间数据和所述目标接客数据计算每个乘客的迟到时长,得到多个目标迟到时长;
S823:获取扣分阈值和加分阈值;
S824:分别将每个所述目标迟到时长与所述扣分阈值进行对比;
S825:当存在所述目标迟到时长大于所述扣分阈值时,获取预设扣除分值、所述目标迟到时长对应的乘客信用分,将所述目标迟到时长对应的乘客信用分与所述预设扣除分值进行相减计算,得到所述目标迟到时长对应的目标乘客信用分;
S826:分别将每个所述目标迟到时长与所述加分阈值进行对比;
S827:当存在所述目标迟到时长小于所述加分阈值时,获取预设加分阈值、所述目标迟到时长对应的乘客信用分,将所述目标迟到时长对应的乘客信用分与所述预设加分阈值进行相加计算,得到所述目标迟到时长对应的所述目标乘客信用分。
本实施例实现了根据实际上车时间数据和所述目标接客数据调整目标乘客信用分,从而有利于提高乘客保持守时的习惯,避免司机和其他乘客长时间等待。
对于S821,从数据库中获取乘客实际上车时间数据。
乘客实际上车时间数据,是指此次行程的所有乘客的实际上车时间数据。
对于S822,从所述司机实际到达时间数据中获取待调整信用分的乘客的司机实际到达时间,从所述目标接客数据中获取待调整信用分的乘客的规划出发时间范围数据,从所述乘客实际上车时间数据中获取待调整信用分的乘客的实际上车时间;当待调整信用分的乘客的司机实际到达时间晚于待调整信用分的乘客的规划出发时间范围数据的最晚时间时确定所述目标迟到时长为0,否则将待调整信用分的乘客的实际上车时间减去待调整信用分的乘客的规划出发时间范围数据的最晚时间得到目标迟到时长。
对于S823,从数据库中获取扣分阈值和加分阈值。
对于S825,当存在所述目标迟到时长大于所述扣分阈值时,意味着迟到时长超过允许范围,从数据库获取预设扣除分值、所述目标迟到时长对应的乘客信用分;将所述目标迟到时长对应的乘客信用分与所述预设扣除分值进行相减计算,将相减计算的结果作为目标乘客信用分。
对于S827,当存在所述目标迟到时长小于所述加分阈值时,意味着乘客提前到达,从数据库中获取预设加分阈值、所述目标迟到时长对应的乘客信用分;将所述目标迟到时长对应的乘客信用分与所述预设加分阈值进行相加计算,将相加结果作为所述目标乘客信用分。
在一个实施例中,所述当存在所述目标迟到时长小于所述加分阈值时,获取预设加分阈值、所述目标迟到时长对应的乘客信用分,将所述目标迟到时长对应的乘客信用分与所述预设加分阈值进行相加计算,得到所述目标乘客信用分的步骤之后,还包括:
S911:获取所述乘客端发送的押金退款请求;
S912:根据所述押金退款请求获取所述押金退款请求对应的乘客信用分和押金金额;
S913:根据所述押金退款请求对应的乘客信用分,确定目标押金退款比例;
S914:将所述目标押金退款比例与所述押金退款请求对应的所述押金金额进行相乘计算,得到所述押金退款请求对应的目标退款金额。
本实施例实现了根据乘客信用分确定押金退款比例,从而有利于提高乘客保持守时的习惯,避免司机和其他乘客长时间等待。
对于S911,押金退款请求,是指退还订单押金的请求。
对于S912,根据所述押金退款请求,从数据库中获取所述押金退款请求对应的乘客信用分和押金金额。
对于S913,获取信用分押金退款比例表,将所述押金退款请求对应的乘客信用分在所述信用分押金退款比例表中进行查找,将在所述信用分押金退款比例表中查找到的押金退款比例作为目标押金退款比例。
对于S914,将所述目标押金退款比例与所述押金金额进行相乘计算,将相乘结果作为押金退款请求对应的目标退款金额。
在一个实施例中,所述当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒的步骤之后,还包括:
S921:根据所述目标接客数据分别获取每个乘客的乘客信用分,得到多个待判定超时乘客信用分;
S922:获取预设超时信用分;
S923:分别将每个所述待判定超时乘客信用分与所述预设超时信用分进行对比;
S924:当存在所述待判定超时乘客信用分小于所述预设超时信用分时,根据所述待判定超时乘客信用分对应的乘客,得到多个需要提前付款乘客;
S925:分别向每个所述需要提前付款乘客对应的乘客端发送付款信号;
S926:获取预设提前付款时长;
S927:当在所述预设提前付款时长内获取所述需要提前付款乘客对应的付款信号失败时,根据所述需要提前付款乘客生成取消拼车信号,根据所述取消拼车信号对所述需要提前付款乘客进行取消拼车。
本实施例根据乘客信用分确定超时乘客,对超时乘客需要在乘车前预付款项,从而有利于提高乘客保持守时的习惯,避免司机和其他乘客长时间等待。
对应S921,从数据库中获取所述目标接客数据对应的每个乘客的乘客信用分,将每个乘客的乘客信用分作为一个待判定超时乘客信用分。
对应S922,从数据库中获取预设超时信用分。
对应S924,当存在所述待判定超时乘客信用分小于所述预设超时信用分时,意味着所述待判定超时乘客信用分的乘客经常超时,此时将该乘客确定为需要提前付款乘客。
对应S926,从数据库中获取预设提前付款时长。
对应S927,当存在所述需要提前付款乘客未在所述预设提前付款时长内付款时,根据所述需要提前付款乘客生成取消拼车信号,根据取消拼车信号对未付款的所述需要提前付款乘客进行取消拼车处理。
参照图2,本申请还提出了一种长距离拼车的接送规划装置,所述装置包括:
添加乘客请求获取模块100,用于获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;
历史数据获取模块200,用于根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;
目标接客数据确定模块300,用于根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;
目标送客数据确定模块400,用于根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;
提醒信号确定模块500,用于获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长,将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长,当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
本实施例通过根据司机出发时间范围数据、司机出发地址、新增乘客预约出发时间范围数据、新增乘客出发地址、历史乘客预约出发时间范围数据和历史乘客出发地址进行最短接客时长计算,得到目标接客数据,目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据,实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;根据新增乘客出发地址、新增乘客目的地址、历史乘客出发地址和历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,目标送客数据包括:目标乘客到达时间范围数据和目标送客路线数据,实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于储存长距离拼车的接送规划方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种长距离拼车的接送规划方法。所述长距离拼车的接送规划方法,包括:获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长;将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长;当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
本实施例通过根据司机出发时间范围数据、司机出发地址、新增乘客预约出发时间范围数据、新增乘客出发地址、历史乘客预约出发时间范围数据和历史乘客出发地址进行最短接客时长计算,得到目标接客数据,目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据,实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;根据新增乘客出发地址、新增乘客目的地址、历史乘客出发地址和历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,目标送客数据包括:目标乘客到达时间范围数据和目标送客路线数据,实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种长距离拼车的接送规划方法,包括步骤:获取目标司机端发送的添加乘客请求,所述添加乘客请求携带有新增乘客预约出发时间范围数据、新增乘客出发地址、新增乘客目的地址;根据所述添加乘客请求,获取所述目标司机端对应的司机出发时间范围数据、司机出发地址、历史乘客预约出发时间范围数据、历史乘客出发地址和历史乘客目的地址;根据所述司机出发时间范围数据、所述司机出发地址、所述新增乘客预约出发时间范围数据、所述新增乘客出发地址、所述历史乘客预约出发时间范围数据和所述历史乘客出发地址进行最短接客时长计算,得到目标接客数据,所述目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据;根据所述新增乘客出发地址、所述新增乘客目的地址、所述历史乘客出发地址和所述历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,所述目标送客数据包括:目标乘客到达时间范围数据和所述目标送客路线数据;获取当前时间、当前乘客数量、预设乘客数量和预设提醒时长;将所述目标乘客出发时间范围数据的最早时间与所述当前时间进行相减计算,得到当前距离出发时长;当所述当前乘客数量等于所述预设乘客数量,或者,所述当前距离出发时长小于所述预设提醒时长时,根据所述目标接客数据和所述目标送客数据,生成司机提醒信号和乘客提醒信号,根据所述司机提醒信号对司机进行出发提醒,根据所述乘客提醒信号对乘客进行出发提醒。
上述执行的长距离拼车的接送规划方法,通过根据司机出发时间范围数据、司机出发地址、新增乘客预约出发时间范围数据、新增乘客出发地址、历史乘客预约出发时间范围数据和历史乘客出发地址进行最短接客时长计算,得到目标接客数据,目标接客数据包括:目标司机出发时间范围数据、目标乘客出发时间范围数据和目标接客路线数据,实现了重新规划确定接客时间和接客路线,减少了乘客和司机的等待时间;根据新增乘客出发地址、新增乘客目的地址、历史乘客出发地址和历史乘客目的地址进行最短乘客乘坐时长计算,得到目标送客数据,目标送客数据包括:目标乘客到达时间范围数据和目标送客路线数据,实现了重新规划确定送客顺序,从而合理送客,降低了乘客由于没有被先送的不畅快感,提高了乘客的满意度。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。