一种任务推送方法及装置与流程

文档序号:16788933发布日期:2019-02-01 19:32阅读:150来源:国知局
一种任务推送方法及装置与流程

本发明实施例涉及互联网和物流运输技术领域,尤其涉及一种任务推送方法及装置。



背景技术:

在物流领域中,例如货运城配市场上,经常需要为客户的订单任务(在本发明中又可称为标书)找到合适的司机,这一过程俗称“撮合”,即撮合客户和司机,以使客户的订单得以尽快的、顺利的完成配送。货运市场上的撮合方式除了派单(即直接把订单任务指派给某司机)的方式外,另一种常见的方式是抢单方式。抢单是指平台系统通过客户的订单信息计算出一批或者多批合适的司机,一次或者多次把该标书推送给这些司机,司机之间遵守的是先抢到先得的原则。

在现有的抢单技术中,其主要方法是根据司机信息和订单任务信息,计算出一个得分,这个得分用来评价司机和订单任务的匹配度。有了这个得分后,便可筛选出一定数量的合适司机,从而实现任务分派及司机抢单。

然而,发明人在实现本发明的过程中发现,现有的抢单技术都是根据司机的基本信息(如司机位置、车型等)和订单任务信息进行匹配,未考虑时间因素,但现实中却会遇到一类情况:很多用车场景都是同一内容的订单任务短时间内需要大量的司机,即同一客户在相邻较近的时间内下发相同的订单任务,例如同一个任务要招m个司机,该客户在10点5分、10点6分等时间先后共发出了m个相同的标书。如果按照现有技术,因为是相同的订单任务,所以系统计算出的合适的司机也是相同的一批(假设是n个司机),而又因为发布订单任务的时间彼此较为接近,在前的订单任务尚未有司机抢单或者尚未完成,所以就会造成同一批司机n个人实际上在同时抢m个订单的局面,平均起来就相当于一个订单只有n/m个司机在抢,这样相对于原系统设计中的一个订单任务应分派给n个司机去抢,每个订单所分派给的司机的平均数量实际在变少,最终造成订单任务分派的效率和成功率都下降。此外,在上面那种场景下,一个司机会连续收到多个相同的订单任务,即使他对该订单任务不感兴趣。短时间内相同订单任务多次重复推送对司机无任何意义,反而还会对司机造成打扰,影响了司机的工作效率。



技术实现要素:

本发明实施例提供一种任务推送方法及装置,以解决任务分派的效率和成功率在特定情况下都存在下降的问题。

根据本发明实施例的第一方面,提供一种任务推送方法,所述方法包括:

获取第一任务和第二任务,其中所述第一任务是新发布的任务,所述第二任务是上一个已发布的与所述第一任务相同的任务;

如果第一时间间隔满足预设时间条件,则执行以下步骤,其中所述第一时间间隔为所述第一任务与所述第二任务的发布时间间隔:

根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数;

根据第二时间间隔获取所述候选任务执行者的第二匹配分数,其中所述第二时间间隔为时间戳与当前时间的时间间隔,所述时间戳为所述候选任务执行者最近一次收到与所述第一任务相同的任务的时间;

根据所述第一匹配分数和所述第二匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

可选的,所述候选任务执行者为司机,所述第一任务为运送任务。

可选的,所述预设时间条件包括:

所述第一时间间隔大于或等于预设时长。

可选的,所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数,包括:

根据公式

获取候选任务执行者i与所述第一任务的第一匹配分数score(di),其中:di为候选任务执行者i,si,f为候选任务执行者i与所述第一任务在第f个匹配维度上的匹配值,wf为所述第f个匹配维度的权重,n为匹配维度的个数。

可选的,所述匹配维度包括以下一个或多个维度:

仓库位置,候选任务执行者的行业配送经验,候选任务执行者的活跃度,候选任务执行者对客户的熟悉度。

可选的,所述根据第二时间间隔获取所述候选任务执行者的第二匹配分数,包括:

将所述第二时间间隔的时长值转换为与所述时长值正相关的数值并作为所述第二匹配分数;

若所述候选任务执行者之前从未收到过与所述第一任务相同的任务,则将所述第二匹配分数设为预设分值。

可选的,如果所述候选任务执行者最近一次收到且查看过与所述第一任务相同的任务,则将所述候选任务执行者最近一次查看与所述第一任务相同的任务的时间作为所述候选任务执行者的所述时间戳。

可选的,所述根据所述第一匹配分数和所述第二匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,包括:

根据以下公式

tscore(di)=score(di)+w×tscore(di)

分别计算每个候选任务执行者的总分tscore(di),其中di为候选任务执行者i,score(di)为候选任务执行者i的第一匹配分数,tscore(di)为候选任务执行者i的第二匹配分数,w为预设系数;

根据每个候选任务执行者的总分对各个候选任务执行者降序排列;

将总分排序在前的预设数量或预设比例的候选任务执行者作为所述匹配的候选任务执行者。

可选的,所述方法还包括:

在所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数之前:

根据所述第一任务的详细信息,从所有可选的任务执行者中筛选出符合所述详细信息条件的任务执行者以作为所述候选任务执行者。

可选的,所述方法还包括:

如果所述第一时间间隔不满足所述预设时间条件或者所述第二任务不存在,则执行以下步骤:

根据所述预设策略获取所述候选任务执行者与所述第一任务的第一匹配分数;

根据所述第一匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

根据本发明实施例的第二方面,提供一种任务推送装置,所述装置包括:

任务获取模块,用于获取第一任务和第二任务,其中所述第一任务是新发布的任务,所述第二任务是上一个已发布的与所述第一任务相同的任务;

时间判断模块,用于当第一时间间隔满足预设时间条件时,触发第一匹配分数获取模块、第二匹配分数获取模块及任务推送模块,其中所述第一时间间隔为所述第一任务与所述第二任务的发布时间间隔;

第一匹配分数获取模块,用于根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数;

第二匹配分数获取模块,用于根据第二时间间隔获取所述候选任务执行者的第二匹配分数,其中所述第二时间间隔为时间戳与当前时间的时间间隔,所述时间戳为所述候选任务执行者最近一次收到与所述第一任务相同的任务的时间;

任务推送模块,用于根据所述第一匹配分数和所述第二匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

可选的,所述候选任务执行者为司机,所述第一任务为运送任务。

可选的,所述预设时间条件包括:

所述第一时间间隔大于或等于预设时长。

可选的,所述第一匹配分数获取模块用于:

根据公式

获取候选任务执行者i与所述第一任务的第一匹配分数score(di),其中:di为候选任务执行者i,si,f为候选任务执行者i与所述第一任务在第f个匹配维度上的匹配值,wf为所述第f个匹配维度的权重,n为匹配维度的个数。

可选的,所述匹配维度包括以下一个或多个维度:

仓库位置,候选任务执行者的行业配送经验,候选任务执行者的活跃度,候选任务执行者对客户的熟悉度。

可选的,所述第二匹配分数获取模块用于:

将所述第二时间间隔的时长值转换为与所述时长值正相关的数值并作为所述第二匹配分数;若所述候选任务执行者之前从未收到过与所述第一任务相同的任务,则将所述第二匹配分数设为预设分值。

可选的,如果所述候选任务执行者最近一次收到且查看过与所述第一任务相同的任务,则将所述候选任务执行者最近一次查看与所述第一任务相同的任务的时间作为所述候选任务执行者的所述时间戳。

可选的,所述任务推送模块包括:

总分计算子模块,用于根据以下公式

tscore(di)=score(di)+w×tscore(di)

分别计算每个候选任务执行者的总分tscore(di),其中di为候选任务执行者i,score(di)为候选任务执行者i的第一匹配分数,tscore(di)为候选任务执行者i的第二匹配分数,w为预设系数;

排序子模块,用于根据每个候选任务执行者的总分对各个候选任务执行者降序排列,将总分排序在前的预设数量或预设比例的候选任务执行者作为所述匹配的候选任务执行者;

任务推送子模块,用于将所述第一任务推送给所述匹配的候选任务执行者。

可选的,所述装置还包括:

预选模块,用于在所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数之前,根据所述第一任务的详细信息,从所有可选的任务执行者中筛选出符合所述详细信息条件的任务执行者以作为所述候选任务执行者。

可选的,时间判断模块还用于,如果所述第一时间间隔不满足所述预设时间条件或者所述第二任务不存在,则触发第一匹配分数获取模块和任务推送模块;

任务推送模块还用于,根据所述第一匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

本发明实施例提供的技术方案可以包括以下有益效果:

在本发明实施例中,为了撮合订单任务和候选任务执行者(以下以司机为例),设计了两个匹配分数共同确定订单任务和司机的匹配关系。当遇到相同的订单任务在短时间内需要大量司机等特定场景时,融合了时间信息的第二匹配分数被启用,即使第一匹配分数相同,第二匹配分数也可使司机的匹配得分出现差异,从而实现将同一任务在不同时刻推送至不同的司机,通过对司机的轮换挑选避免了司机范围的缩小,从整体上提升了订单任务分派的效率和成功率,同时也减少了因重复推送相同任务而对司机造成的打扰。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。此外,这些介绍并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明一示例性实施例示出的一种任务推送方法的流程图;

图2是根据本发明一示例性实施例示出的一种任务推送方法的流程图;

图3是根据本发明一示例性实施例示出的一种任务推送方法的流程图;

图4是根据本发明一示例性实施例示出的一种任务推送方法的流程图;

图5是根据本发明一示例性实施例示出的一种任务推送方法的流程图;

图6是根据本发明一示例性实施例示出的一种任务推送装置的示意图;

图7是根据本发明一示例性实施例示出的一种任务推送装置的示意图;

图8是根据本发明一示例性实施例示出的一种任务推送装置的示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

图1是根据本发明一示例性实施例示出的一种任务推送方法的流程图。该方法可用于服务器等设备。

参见图1所述,该方法可以包括以下步骤:

步骤s101,获取第一任务和第二任务,其中所述第一任务是新发布的任务,所述第二任务是上一个已发布的与所述第一任务相同的任务。

当客户或其他发布者发布了一个新任务即第一任务后,在现有技术中,会直接根据第一任务计算出与之匹配的候选任务执行者,而在本发明实施例中,还需考察上一个已发布过的与该第一任务相同的任务即所述第二任务。

在本实施例或本发明其他某些实施例中,所述候选任务执行者可以为司机,所述第一任务可以为运送任务,例如配送物品或运送乘客等任务。在本发明其他某些实施例中,候选任务执行者还可以是无人机等,第一任务还可以是其他任务,对此本实施例并不进行限制。

对于如何定义什么是相同的任务,本实施例也并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。以配送任务为例,如果两个任务的下单客户相同、运输路线相同、货物相同,那么就可以视为是相同的任务。

步骤s102,如果第一时间间隔满足预设时间条件,则执行以下s103~s105步骤,其中所述第一时间间隔为所述第一任务与所述第二任务的发布时间间隔。

如果第一时间间隔不满足所述预设时间条件或者第二任务不存在,则可以按照现有方式进行处理或按照本领域技术人员自定义方式进行处理,本发明实施例并不进行限制。

在本实施例或本发明其他某些实施例中,所述预设时间条件可以包括:

所述第一时间间隔大于或等于预设时长。

如果第一任务和第二任务的发布时间间隔较短,则代表出现了上文所提到的在短时间内下发相同订单任务的特定情形。对于预设时长的具体值,以及短时间的具体定义,本实施例并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。

作为示例,预设时长可以规定为12小时,或更短的时长。

步骤s103,根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数。

第一匹配分数可以视为一个基础分数或静态分数,是在不考虑时间因素时第一任务与候选任务执行者之间的匹配分数。可以根据现有技术进行计算,本领域技术人员也可以进行自定义计算,对此本发明实施例并不进行限制。

步骤s104,根据第二时间间隔获取所述候选任务执行者的第二匹配分数,其中所述第二时间间隔为时间戳与当前时间的时间间隔,所述时间戳为所述候选任务执行者最近一次收到与所述第一任务相同的任务的时间。

第二匹配分数可以视为一个调整分数或动态分数,其反应了时间因素对匹配总分的影响。

具体来讲,第二匹配分数与候选任务执行者最近一次收到与所述第一任务相同的任务的时间与当前时间的时间间隔正相关。换句话说,这个时间间隔即第二时间间隔越长,则该候选任务执行者所得的第二匹配分数也就越大。对与所谓正相关,可以是成正比,可以是指数关系等,对此本发明实施例并不进行限制。

其原理是,如果一个候选任务执行者最近一次收到该任务距当前已经很长时间了,则在排序时应将该候选任务执行者排在前面,反之,如果一个候选任务执行者最近刚收到过该任务,则新的相同任务发布后,排序时应将该候选任务执行者排在后面,从而使得即使是相同的任务,通过排序筛选出的候选任务执行者也是有差异的。特别的,如果某个候选任务执行者在第一任务发布之前未曾收到过相同的任务,则此时可将该候选任务执行者的第二匹配分数设为预设分值,例如一个足够大的值。

此外需要指出的是,候选任务执行者最近一次收到的与第一任务相同的任务可能就是第二任务,也可能是比第二任务更早的相同任务。

另外容易理解的是,本发明实施例对获取第一匹配分数和第二匹配分数的步骤的先后顺序并不进行限制。

步骤s105,根据所述第一匹配分数和所述第二匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

对于如何根据所述第一匹配分数和所述第二匹配分数计算各个所述候选任务执行者的匹配总分,本发明实施例并不进行限制,例如可以将二者进行简单相加,或者进行加权相加,又或者可以将二者相乘,等等。本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。

下面再通过简单举例加以说明:

假设有a、b、c、d、e、f共6个司机,当一个任务a1发布时,由于之前没有发布过相同的任务,所以这些司机的第二匹配分数都相同,对这些司机排序时只看第一匹配分数即可,假设a、b排序在前,则任务a1便推送给a、b。很快第二个相同任务a2发布,此时a、b因为都被推送过a1,而c、d、e、f从未收到过,所以在为a2寻找合适司机时,c、d、e、f应排在a、b之前,假设c、d的第一匹配分数更高,排在最前面,所以被选中推送a2。接下来很快第三个相同任务a3也发布了,司机排序变成e、f、a、b、c、d,所以a3推送给e、f,从而实现了同样的任务但推送给的司机群体产生差异的目的。

在本发明实施例中,为了撮合订单任务和候选任务执行者(以下以司机为例),设计了两个匹配分数共同确定任务订单和司机的匹配关系。当遇到相同的订单任务在短时间内需要大量司机等特定场景时,融合了时间信息的第二匹配分数被启用,即使第一匹配分数相同,第二匹配分数也可使司机的匹配得分出现差异,从而实现将同一任务在不同时刻推送至不同的司机,通过对司机的轮换挑选避免了司机范围的缩小,从整体上提升了订单任务分派的效率和成功率,同时也减少了因重复推送相同任务而对司机形成的打扰。

在本实施例或本发明其他某些实施例中,所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数,可以包括:

根据公式

获取候选任务执行者i与所述第一任务的第一匹配分数score(di),其中:di为候选任务执行者i,si,f为候选任务执行者i与所述第一任务在第f个匹配维度上的匹配值,wf为所述第f个匹配维度的权重,n为匹配维度的个数。

作为示例,所述匹配维度可以包括以下一个或多个维度:

仓库位置、候选任务执行者的行业配送经验、候选任务执行者的活跃度、候选任务执行者对客户的熟悉度。

可以根据上述公式计算出任务与司机在仓库位置等4个维度上的综合匹配分值即第一匹配分数。举例来讲,如果司机住址与仓库距离不超过20公里,则仓库位置这一维度上的匹配值为1,否则为0;若司机完成过该客户所在行业的订单,则行业配送经验的匹配值为1,否则为0;若司机近7天在平台查询过相似任务,则司机活跃度的匹配值为1,否则为0;若司机为该客户服务过2次以上,则对客户的熟悉度的匹配值为1,否则为0。这4个维度的权重值则可以自行定义、设计,本发明实施例并不进行限制。

在本实施例或本发明其他某些实施例中,所述根据第二时间间隔获取所述候选任务执行者的第二匹配分数,可以包括:

将所述第二时间间隔的时长值转换为与所述时长值正相关的数值并作为所述第二匹配分数;

若所述候选任务执行者之前从未收到过与所述第一任务相同的任务,则将所述第二匹配分数设为预设分值。

所谓正相关即第二时间间隔的时长值越长,则该候选任务执行者所得的第二匹配分数也就越大。所述正相关可以是成正比,也可以是指数关系等,对此本发明实施例并不进行限制。

此外,还可以对最近一次收到相同任务的候选任务执行者进行更精细的划分:

如果所述候选任务执行者最近一次收到且查看过与所述第一任务相同的任务,则将所述候选任务执行者最近一次查看与所述第一任务相同的任务的时间作为所述候选任务执行者的所述时间戳。

这是因为,如果候选任务执行者查看了收到的任务但未采取抢单的行动,则代表其对该任务不感兴趣,可用其查看的时间代替收到的时间,由于查看的时间在收到的时间之后,所以当再次发布相同任务时,该候选任务执行者的第二匹配分数就会变的更小,从而使其排名变得靠后,更加不会被优先推送该任务。

参见图2所示,在本实施例或本发明其他某些实施例中,所述根据所述第一匹配分数和所述第二匹配分数从各个所述候选任务执行者中筛选出匹配的候选任务执行者,可以包括如下步骤:

步骤s201,根据以下公式

tscore(di)=score(di)+w×tscore(di)

分别计算每个候选任务执行者的总分tscore(di),其中di为候选任务执行者i,score(di)为候选任务执行者i的第一匹配分数,tscore(di)为候选任务执行者i的第二匹配分数,w为预设系数。

对于w的具体值,本发明实施例并不进行限制。通常为了使第二匹配分数tscore(di)能到达到对总分tscore(di)起主导作用的目的,w的值一般较大,从而使当遇到上述特殊场景时能够改变原有的排序,大大提高第二匹配分数高的司机的优先级(也即调整到司机排序时靠前的位置)。在其他一些场景下,例如第一匹配分数的值设计的比较小,而第二匹配分数的值设计的比较大,则w也可以为1等。

步骤s202,根据每个候选任务执行者的总分对各个候选任务执行者降序排列。

步骤s203,将总分排序在前的预设数量或预设比例的候选任务执行者作为所述匹配的候选任务执行者。

例如可以选择top10或top5%作为匹配的候选任务执行者。

另外,参见图3所示,在本实施例或本发明其他某些实施例中,在所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数之前,所述方法还可以包括以下预处理步骤:

步骤s301,根据所述第一任务的详细信息,从所有可选的任务执行者中筛选出符合所述详细信息条件的任务执行者以作为所述候选任务执行者。

所有可选的任务执行者都可作为候选任务执行者,不过为了提高匹配效率,可以先对所有可选的任务执行者进行初步筛选。例如,任务的详细信息可以包括仓库位置、配送区域、配送点数、货物类型、搬运重量、任务里程、任务工作时长、是否要求司机具备行业配送经验及是否需要司机自带工人等信息,通过使用这些信息对所有可选的司机进行过滤,可以筛选出初步合格的司机作为候选司机,便于提高匹配效率。

此外,参见图4所示,在本实施例或本发明其他某些实施例中,所述方法还可以包括:

步骤s401,如果所述第一时间间隔不满足所述预设时间条件或者所述第二任务不存在,则执行以下步骤:

步骤s402,根据所述预设策略获取所述候选任务执行者与所述第一任务的第一匹配分数;

步骤s403,根据所述第一匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

换句话说,当所述第一时间间隔不满足所述预设时间条件或者所述第二任务不存在时,则只使用第一匹配分数对候选任务执行者进行排名。

在本发明实施例中,为了撮合订单任务和候选任务执行者(以下以司机为例),设计了两个匹配分数共同确定任务订单和司机的匹配关系。当遇到相同的订单任务在短时间内需要大量司机等特定场景时,融合了时间信息的第二匹配分数被启用,即使第一匹配分数相同,第二匹配分数也可使司机的匹配得分出现差异,从而实现将同一任务在不同时刻推送至不同的司机,通过对司机的轮换挑选避免了司机范围的缩小,从整体上提升了订单任务分派的效率和成功率,同时也减少了因重复推送相同任务而对司机形成的打扰。

下面再结合具体场景对本发明方案作进一步描述。

图5是根据本发明一示例性实施例示出的一种任务推送方法的流程图。

参照图5,具体步骤如下:

a)任务模块创建一个抢单任务,其任务标书中包含任务详细信息。例如任务详细信息可以包括仓库位置、配送区域、配送点数、货物类型、搬运重量、任务里程、任务工作时长、是否要求司机具备行业配送经验及是否需要司机自带工人,等等。

b)根据任务所属的客户及线路等信息,综合历史情况,决定是否启用时间轮播排序,即,对比新订单与历史订单间的任务相似性及新旧订单发布时间的间隔来判断是否采用时间轮播排序策略。本实施例中所称的“时间轮播排序”即上文中对司机进行排序时用到了第二匹配分数tscore的排序方式。若客户在12小时以内连续发布配送线路和货物类型等任务信息相同的订单,则需采用时间轮播排序策略以降低司机在当天收到同样订单的概率。

c)如果启用轮播排序,则启用第二匹配分数tscore,通过第二匹配分数提高一些司机的优先级(即将其排序在前),从而保证一定时间内类似任务不重复推送同一司机。

d)查询引擎基于每个无任务司机的总分tscore值进行降序排列后,筛选出一批高分值的司机并返回给调用方。调用方根据下派规则将该任务下派到对应的司机,完成一批推送。

e)保存给司机下派任务的时间信息和司机查看任务的时间信息到队列。若司机di查看了所推送的任务tj,则计算tscore时以司机di查看tj的时间替换司机di收到tj的时间,以便区分司机未能发现订单和司机拒绝订单两种情形,从而降低司机错过合适订单的概率。

f)根据给司机下派任务的时间信息和司机查看任务的时间信息,实时计算司机与该任务的匹配总分,将该总分存入到查询引擎中,作为司机对该客户线路的轮播分数。由于轮播分数可实时变化,达到了同任务不同时刻招司机时,推送到不同司机的效果。

g)可重复调用上述b~f步骤,直至找到司机或者下发的司机数量到达阈值或无新司机下派时停止。

在本发明实施例中,为了撮合订单任务和候选任务执行者(以下以司机为例),设计了两个匹配分数共同确定任务订单和司机的匹配关系。当遇到相同的订单任务在短时间内需要大量司机等特定场景时,融合了时间信息的第二匹配分数被启用,即使第一匹配分数相同,第二匹配分数也可使司机的匹配得分出现差异,从而实现将同一任务在不同时刻推送至不同的司机,通过对司机的轮换挑选避免了司机范围的缩小,从整体上提升了订单任务分派的效率和成功率,同时也减少了因重复推送相同任务而对司机形成的打扰。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

图6是根据本发明一示例性实施例示出的一种任务推送装置的示意图。

参见图6所示,该装置可以包括:

任务获取模块601,用于获取第一任务和第二任务,其中所述第一任务是新发布的任务,所述第二任务是上一个已发布的与所述第一任务相同的任务。

在本实施例或本发明其他某些实施例中,所述候选任务执行者可以为司机,所述第一任务可以为运送任务。在本发明其他某些实施例中,候选任务执行者还可以是无人机等,第一任务还可以是其他任务,对此本实施例并不进行限制。

对于如何定义什么是相同的任务,本实施例也并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。以配送任务为例,如果两个任务的下单客户相同、运输路线相同、货物相同,那么就可以视为是相同的任务。

时间判断模块602,用于当第一时间间隔满足预设时间条件时,触发第一匹配分数获取模块、第二匹配分数获取模块及任务推送模块,其中所述第一时间间隔为所述第一任务与所述第二任务的发布时间间隔。

如果第一时间间隔不满足所述预设时间条件或者第二任务不存在,则可以按照现有方式进行处理或按照本领域技术人员自定义方式进行处理,本发明实施例并不进行限制。

在本实施例或本发明其他某些实施例中,所述预设时间条件可以包括:

所述第一时间间隔大于或等于预设时长。

如果第一任务和第二任务的发布时间间隔较短,则代表出现了上文所提到的在短时间内下发相同订单任务的特定情形。对于预设时长的具体值,以及短时间的具体定义,本实施例并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。

第一匹配分数获取模块603,用于根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数。

第一匹配分数可以视为一个基础分数或静态分数,是在不考虑时间因素时第一任务与候选任务执行者之间的匹配分数。可以根据现有技术进行计算,本领域技术人员也可以进行自定义计算,对此本发明实施例并不进行限制。

第二匹配分数获取模块604,用于根据第二时间间隔获取所述候选任务执行者的第二匹配分数,其中所述第二时间间隔为时间戳与当前时间的时间间隔,所述时间戳为所述候选任务执行者最近一次收到与所述第一任务相同的任务的时间。

第二匹配分数可以视为一个调整分数或动态分数,其反应了时间因素对匹配总分的影响。具体来讲,第二匹配分数与候选任务执行者最近一次收到与所述第一任务相同的任务的时间与当前时间的时间间隔正相关。换句话说,这个时间间隔即第二时间间隔越长,则该候选任务执行者所得的第二匹配分数也就越大。对与所谓正相关,可以是成正比,可以是指数关系等,对此本发明实施例并不进行限制。

任务推送模块605,用于根据所述第一匹配分数和所述第二匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

对于如何根据所述第一匹配分数和所述第二匹配分数计算各个所述候选任务执行者的匹配总分,本发明实施例并不进行限制,例如可以将二者进行简单相加,或者进行加权相加,又或者可以将二者相乘,等等。本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。

在本实施例或本发明其他某些实施例中,所述第一匹配分数获取模块用于:

根据公式

获取候选任务执行者i与所述第一任务的第一匹配分数score(di),其中:di为候选任务执行者i,si,f为候选任务执行者i与所述第一任务在第f个匹配维度上的匹配值,wf为所述第f个匹配维度的权重,n为匹配维度的个数。

在本实施例或本发明其他某些实施例中,所述匹配维度包括以下一个或多个维度:

仓库位置,候选任务执行者的行业配送经验,候选任务执行者的活跃度,候选任务执行者对客户的熟悉度。

在本实施例或本发明其他某些实施例中,所述第二匹配分数获取模块用于:

将所述第二时间间隔的时长值转换为与所述时长值正相关的数值并作为所述第二匹配分数;若所述候选任务执行者之前从未收到过与所述第一任务相同的任务,则将所述第二匹配分数设为预设分值。

在本实施例或本发明其他某些实施例中,如果所述候选任务执行者最近一次收到且查看过与所述第一任务相同的任务,则将所述候选任务执行者最近一次查看与所述第一任务相同的任务的时间作为所述候选任务执行者的所述时间戳。

参见图7所示,在本实施例或本发明其他某些实施例中,所述任务推送模块可以包括:

总分计算子模块701,用于根据以下公式

tscore(di)=score(di)+w×tscore(di)

分别计算每个候选任务执行者的总分tscore(di),其中di为候选任务执行者i,score(di)为候选任务执行者i的第一匹配分数,tscore(di)为候选任务执行者i的第二匹配分数,w为预设系数;

排序子模块702,用于根据每个候选任务执行者的总分对各个候选任务执行者降序排列,将总分排序在前的预设数量或预设比例的候选任务执行者作为所述匹配的候选任务执行者;

任务推送子模块703,用于将所述第一任务推送给所述匹配的候选任务执行者。

参见图8所示,在本实施例或本发明其他某些实施例中,所述装置还可以包括:

预选模块801,用于在所述根据预设策略获取候选任务执行者与所述第一任务的第一匹配分数之前,根据所述第一任务的详细信息,从所有可选的任务执行者中筛选出符合所述详细信息条件的任务执行者以作为所述候选任务执行者。

在本实施例或本发明其他某些实施例中,时间判断模块还用于,如果所述第一时间间隔不满足所述预设时间条件或者所述第二任务不存在,则触发第一匹配分数获取模块和任务推送模块;

任务推送模块还用于,根据所述第一匹配分数,从各个所述候选任务执行者中筛选出匹配的候选任务执行者,以及,将所述第一任务推送给所述匹配的候选任务执行者。

关于上述实施例中的装置,其中各个模块、子模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

在本发明实施例中,为了撮合订单任务和候选任务执行者(以下以司机为例),设计了两个匹配分数共同确定任务订单和司机的匹配关系。当遇到相同的订单任务在短时间内需要大量司机等特定场景时,融合了时间信息的第二匹配分数被启用,即使第一匹配分数相同,第二匹配分数也可使司机的匹配得分出现差异,从而实现将同一任务在不同时刻推送至不同的司机,通过对司机的轮换挑选避免了司机范围的缩小,从整体上提升了订单任务分派的效率和成功率,同时也减少了因重复推送相同任务而对司机形成的打扰。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由所附的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1