订单调度方法和装置与流程

文档序号:11231491阅读:661来源:国知局
订单调度方法和装置与流程

本发明涉及互联网技术领域,尤其涉及一种订单调度方法和装置。



背景技术:

随着互联网的发展,线上到线下(onlinetooffline,简称o2o)服务作为一种新型的服务模式,已经大大改变了人们的生活方式,比如购物方式,用户通过网上购物类应用,足不出户即可获取自己所需的物品。这些应用在便利用户的同时,也面临着订单配送问题,于是物流调度系统应运而生。物流调度系统的主要任务是将订单分配给合适的配送人员,使得订单尽快送达用户,同时尽量节省运力。

目前,当订单进入物流调度系统后,物流调度系统基于一定的调度策略将订单分配给某配送人员,由该配送人员完成该订单的配送,其中,调度策略比如包括:对相近时间进入物流调度系统的多个订单进行分组,将获得的各订单组基于一定的分配规则分配给合适的配送人员,等等。



技术实现要素:

目前的物流调度系统在进行订单调度时,往往是以一定时间间隔进行周期性的订单调度,比如每隔10分钟对当前10分钟内接收到的订单进行调度。而且,在进行订单调度时,往往是对属于同一配送区域内的多个订单进行统一调度,进一步地,为了节省运力,会结合一配送区域在当前调度周期内的运力压力对属于该配送区域的多个订单进行统一调度。

比如:以订单分组过程为例来说,可以根据当前的运力压力来控制订单相似度阈值和单量上限,从而在进行订单分组时,当两订单间的相似度达到该相似度阈值时,则将二者并为一组,直至达到订单组的单量上限。

上述方式虽然考虑了当前调度周期的运力压力来进行订单的调度,能够一定程度上提高配送效率,但是经发明人研究发现,实际应用中往往会出现这样的问题:

对于某个调度周期t1来说,根据该调度周期t1对应的运力压力可能需要设置一个较低的相似度阈值以及一个较高的单量上限。但是,实际上,可能接下来的一个或几个调度周期内物流调度系统接收到的订单数量大量减少,使得接下来的一个或几个调度周期内的运力压力降低。此时实际上,对于当前的调度周期t1来说,其实没有必要设置那么低的相似度阈值和那么高的单量上限,即没有必要划分出订单量特别多的订单组,也没有必要划分出那么少的订单组,让被分配至的配送人员承担那么重的负荷,使得订单的配送效率降低。其实此时,可以适当提高相似度阈值以及适当降低单量上限,以便产生更多的小单量订单组,由更多的配送人员更快地完成调度周期t1内多个订单的配送,提高配送效率。

综上,对于某配送区域,在进行当前调度周期内的订单的调度时,仅考虑当前调度周期对应的运力压力,不利于整体配送效率的提高。

有鉴于此,本发明实施例提供一种订单调度方法和装置,通过考虑运力压力的变化趋势来对当前调度周期内的订单进行调度,以提高配送效率。

第一方面,本发明实施例提供一种订单调度方法,包括:

确定一配送区域在当前调度周期内对应的运力压力;

获取所述当前调度周期对应的运力压力变化趋势;

根据所述运力压力变化趋势调整所述运力压力;

根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

可选地,所述根据所述运力压力变化趋势调整所述运力压力,包括:

若所述运力压力变化趋势表征运力压力变化幅度小于预设阈值,则维持所述运力压力不变;

若所述运力压力变化趋势表征运力压力升高幅度大于预设阈值,则以第一预设调整系数调高所述运力压力;

若所述运力压力变化趋势表征运力压力降低幅度大于预设阈值,则以第二预设调整系数调低所述运力压力。

可选地,所述根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度,包括:

根据所述调整后的运力压力确定分组参数;

根据所述分组参数对所述多个订单进行分组;

和/或,

所述根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度,包括:

根据所述调整后的运力压力确定并单参数;

根据所述并单参数对所述多个订单进行向配送人员的并单处理。

可选地,所述确定一配送区域在当前调度周期内对应的运力压力,包括:

获取所述配送区域在所述当前调度周期内对应的未完成订单数量和配送人员数量;

根据所述未完成订单数量和所述配送人员数量,确定所述运力压力。

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

确定所述配送区域在各调度周期分别对应的历史平均运力压力,所述历史平均运力压力对应于多天运力压力的平均值;

针对所述各调度周期中的第i个调度周期,结合所述第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定所述第i个调度周期对应的运力压力变化趋势。

第二方面,本发明实施例提供一种订单调度装置,包括:

第一确定模块,用于确定一配送区域在当前调度周期内对应的运力压力;

获取模块,用于获取所述当前调度周期对应的运力压力变化趋势变量;

调整模块,用于根据所述运力压力变化趋势变量调整所述运力压力;

调度模块,用于根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

在一个可能的设计中,上述订单调度装置的结构中包括处理器和存储器,所述存储器用于存储支持订单调度装置执行上述第一方面中订单调度方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述订单调度装置还可以包括通信接口,用于订单调度装置与其他设备或通信网络通信。

第三方面,本发明实施例提供了一种计算机存储介质,用于储存订单调度装置所用的计算机软件指令,其包含用于执行上述第一方面中订单调度方法所涉及的程序。

本发明实施例提供的订单调度方法和装置,当需要对任一配送区域在当前调度周期内接收到的多个订单进行调度时,首先确定该配送区域在当前调度周期内对应的运力压力;之后基于历史数据,确定当前调度周期所对应的运力压力变化趋势变量,以根据该运力压力变化趋势变量调整当前调度周期对应的运力压力,即本方案中结合未来运力压力的变化情况对当前调度周期的运力压力进行调整;最后根据调整后的运力压力对当前调度周期内接收到的多个订单进行调度,由于是考虑了未来运力压力的变化情况来对当前调度周期内的订单进行调度的,可以使得对当前调度周期内多个订单的调度更加能够适应于运力压力的变化趋势,有助于提高配送效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的订单调度方法实施例一的流程图;

图2为本发明实施例提供的订单调度方法实施例二的流程图;

图3为图1所示实施例中步骤104的一种实现方式的流程图;

图4为图1所示实施例中步骤104的另一种实现方式的流程图;

图5为本发明实施例提供的订单调度装置实施例一的结构示意图;

图6为本发明实施例提供的订单调度装置实施例二的结构示意图;

图7为本发明实施例提供的订单调度装置实施例三的结构示意图;

图8为本发明实施例提供的订单调度装置实施例四的结构示意图;

图9为本发明实施例提供的订单调度装置实施例五的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述xxx,但这些xxx不应限于这些术语。这些术语仅用来将xxx彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一xxx也可以被称为第二xxx,类似地,第二xxx也可以被称为第一xxx。

取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

图1为本发明实施例提供的订单调度方法实施例一的流程图,本实施例提供的该订单调度方法可以由一订单调度装置来执行,该订单调度装置可以实现为软件,或者实现为软件和硬件的组合,该订单调度装置可以集成设置在物流调度平台侧的设备中,比如服务器中。如图1所示,该方法包括如下步骤:

101、确定一配送区域在当前调度周期内对应的运力压力。

本实施例中以外卖配送场景为例,假设当前调度周期内接收到多个订单,且该多个订单对应于同一配送区域,在一可选方式中,多个订单对应于同一配送区域可以是该多个订单中的取货地址都在同一个配送区域内。在另一可选方式中,多个订单对应于同一配送区域可以是该多个订单中的收货地址都在同一个配送区域内。在另一可选方式中,多个订单对应于同一配送区域可以是该多个订单中的取货地址和收货地址都在同一个配送区域内。

在对这多个订单进行调度时,首先要确定该配送区域在当前调度周期内对应的运力压力,即当前的运力压力,以便于基于该运力压力对该多个订单进行调度。

其中,该运力压力可以理解为是当前调度周期内该配送区域内配送人员平均需配送的订单量。运力压力比如简单表示为:配送区域在当前调度周期内的未完成订单数量/当前调度周期内配送区域中的配送人员数量。其中,该配送人员的数量是指在岗配送人员的数量,或者称为在线配送人员的数量。

因此,为确定上述运力压力,需要先获取上述配送区域在当前调度周期内对应的未完成订单数量和配送人员数量,之后根据该未完成订单数量和配送人员数量确定运力压力。

其中,针对任一订单来说,配送人员一般需要先去取货地址处取得需要配送的物品,再将该物品送至收货地址处,因此,本实施例中,未完成订单数量由未分配的订单的数量、处于取货状态的订单的数量以及处于送货状态的订单的数量组成。其中,未分配的订单是指还没有向任何配送人员分配的订单;处于取货状态的订单是指已经分配给配送人员,配送人员已经接受订单,正在去取货地址处取货的订单;处于送货状态的订单是指配送人员已经取货完毕,正在去送货地址处送货的订单。其中,在一可选实现方式中,订单的未分配、取货、送货状态可以基于配送人员的上报而获得,即配送人员每当触发了改变订单的配送状态的操作时,主动上报当前的订单状态。

102、获取当前调度周期对应的运力压力变化趋势。

本实施例中,为了提高整体的配送效率,在对当前调度周期内的多个订单进行调度时,不但考虑当前调度周期内配送区域的运力压力,还前瞻性地考虑未来运力压力的变化情况,以根据未来运力压力的变化趋势来调整当前调度周期的运力压力,以使得对当前调度周期内多个订单的调度与未来运力压力的变化趋势更匹配。

为了能够以未来运力压力的变化趋势来调整当前调度周期的运力压力,首先需要获取未来运力压力的变化趋势即获取当前调度周期所对应的运力压力变化趋势。

当前调度周期的运力压力变化趋势可以基于历史数据确定。具体地,当前调度周期是指当前工作日中的当前调度周期,其对应的运力压力变化趋势可以基于历史上相应调度周期所对应的运力压力变化趋势确定,其中,历史上是指某个历史工作日或多个历史工作日。而历史上该相应调度周期所对应的运力压力变化趋势,可以是根据该相应调度周期之后的一个或多个调度周期的运力压力相对于该相应调度周期的运力压力的变化趋势确定的。比如,若该相应调度周期之后的一个或多个调度周期的运力压力相对于该相应调度周期的运力压力呈现升高的趋势,则确定该相应调度周期所对应的运力压力变化趋势为升高趋势,从而,确定当前调度周期对应的运力压力变化趋势为升高趋势。

值得说明的是,本发明实施例中,工作日的含义是指需要进行订单配送的日子。

下面结合举例来说明上述确定当前调度周期对应的运力压力变化趋势的过程以及当前调度周期和上述相应调度周期之间相应性的含义。

举例来说,物流调度系统可以将一个工作日划分为若干调度周期,比如每个调度周期为10分钟,从一个工作日的开始时刻,每隔10分钟划定一个调度周期,比如以开始工作时刻为8:00为例,8:00-8:10为第一个调度周期,8:10-8:20为第二个调度周期,依次类推。

假设上述当前调度周期为当前工作日3月10日的第一个调度周期即8:00-8:10,假设上述历史上的某个历史工作日设定为距离当前工作日七天前的一天,即为3月3日。那么此时,3月3日的第一个调度周期即为当前工作日3月10日的当前调度周期即第一个调度周期的相应调度周期。从而,该当前调度周期对应的运力压力变化趋势可以通过获得3月3日的第一个调度周期所对应的运力压力变化趋势而确定。而该3月3日的第一个调度周期对应的运力压力变化趋势可以是根据第一个调度周期之后的一个或多个调度周期的运力压力相对该第一个调度周期的运力压力的变化趋势而确定。其中,当根据第一个调度周期之后的多个调度周期的运力压力相对该第一个调度周期的运力压力的变化趋势而确定该第一个调度周期的运力压力变化趋势时,可以是根据该多个调度周期的运力压力的平均值相对该第一个调度周期的运力压力的变化趋势来确定。

基于此,可选地,针对当前工作日,可以预先基于历史工作日在各调度周期对应的运力压力,确定各个调度周期分别对应的运力压力变化趋势,如此,在当前工作日中,若需要获取当前某调度周期对应的运力压力变化趋势时,可以通过直接查找的方式获得对应的运力压力变化趋势。

另外,实际中,运力压力变化趋势可以通过一个运力压力变化趋势变量来表征,该变量既可以反映运力压力的变化方向,又可以反映运力压力的变化幅度。比如,该运力压力变化趋势变量可以以斜率来表示。

103、根据运力压力变化趋势调整当前调度周期对应的运力压力。

本实施例中,如果运力压力变化趋势变量反映运力压力变化幅度较小,则可以不调整当前调度周期的运力压力,如果运力压力变化趋势变量反映运力压力变化幅度较大,则需调整当前调度周期的运力压力,以与未来的运力压力情况相适应,具体地:

若运力压力变化趋势表示运力压力变化幅度小于预设阈值,比如运力压力变化趋势变量位于第一阈值和第二阈值之间,说明运力压力变化幅度较小,则维持当前调度周期的运力压力不变,第一阈值小于第二阈值。

若运力压力变化趋势表示运力压力升高幅度大于预设阈值,比如运力压力变化趋势变量大于第二阈值,说明运力压力变大趋势明显,则以第一预设调整系数调高当前调度周期的运力压力。可以理解的是,第一预设调整系数大于1。

若运力压力变化趋势表示运力压力降低幅度大于预设阈值,比如运力压力变化趋势变量小于所述第一阈值,说明运力压力变小趋势明显,则以第二预设调整系数调低当前调度周期的运力压力。可以理解的是,第二预设调整系数为小于1的正数。

104、根据调整后的运力压力对当前调度周期内配送区域对应的多个订单进行调度。

对上述多个订单的调度过程比如可以包括:对多个订单进行分组,将得到的订单组分配至合适的配送人员的过程;和/或,对多个订单进行并单处理,以将多个订单分别并入至合适的配送人员等过程,将在后续实施例中描述。

本实施例中,当需要对任一配送区域在当前调度周期内接收到的多个订单进行调度时,首先确定该配送区域在当前调度周期内对应的运力压力;之后基于历史数据,确定当前调度周期所对应的历史调度周期的运力压力变化趋势,以根据该运力压力变化趋势调整当前调度周期对应的运力压力,即本方案中结合未来运力压力的变化情况对当前调度周期的运力压力进行调整;最后根据调整后的运力压力对当前调度周期内接收到的多个订单进行调度,由于是考虑了未来运力压力的变化情况来对当前调度周期内的订单进行调度的,可以使得对当前调度周期内多个订单的调度更加能够适应于运力压力的变化趋势,有助于提高配送效率。

图2为本发明实施例提供的订单调度方法实施例二的流程图,如图2所示,可选地,在步骤101之前,该方法还可以包括如下步骤:

201、确定一配送区域在各调度周期分别对应的历史平均运力压力,其中,该历史平均运力压力对应于多天运力压力的平均值。

202、对各调度周期分别对应的历史平均运力压力进行平滑处理。

203、针对各调度周期中的第i个调度周期,结合第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定第i个调度周期对应的运力压力变化趋势。

本实施例中,对于某配送区域,可以采用预先获取的方式,利用多个历史工作日的数据获取各调度周期分别对应的运力压力变化趋势,如此,在针对当前的工作日中的各调度周期进行订单调度时,可以通过查找方式获得对应的运力压力变化趋势。

具体来说,预先将一工作日划分为多个调度周期。针对一配送区域来说,首先确定该配送区域在各调度周期分别对应的历史平均运力压力,其中,该历史平均运力压力对应于多天运力压力的平均值。也就是说,针对其中的任一调度周期,分别确定在多个历史工作日中的该调度周期时该配送区域所对应的运力压力,进而计算确定出的多个运力压力的平均值,作为该调度周期对应的历史平均运力压力。

举例来说,假设将一个工作日划分为了100个调度周期,对于某配送区域,针对其中的第i个调度周期来说,假设在第一个历史工作日中的该第i个调度周期时,该配送区域对应的运力压力为a,在第二个历史工作日中的该第i个调度周期时,该配送区域对应的运力压力为b,在第三个历史工作日中的该第i个调度周期时,该配送区域对应的运力压力为c,且假设仅使用这三个历史工作日的数据,从而,第i个调度周期对应的历史平均运力压力为a、b、c的均值。

其中,每个历史工作日中该第i个调度周期对应的运力压力的计算过程可以参见图1所示实施例中对配送区域在当前调度周期内的运力压力的计算过程,不再赘述。其中,i的取值可以小于调度周期的总数比如上述举例的100,即最后的一个或几个调度周期的运力压力可以不用调整。

另外,历史工作日的选择可以是选择当前工作日之前的连续m天,也可以是不连续的特定m天,比如,当前工作日为周六,由于用户在周六、周日的下单情况与周一到周五的下单情况差别明显,因此,此时可以选择过去的比如20个周六和周日作为历史工作日。

在确定出某配送区域在各调度周期分别对应的历史平均运力压力后,可以绘制平均运力压力曲线,该曲线的横坐标代表各个调度周期,纵坐标代表历史平均运力压力。

接下来,为了保证该曲线尽量平滑,以便后续能更稳定地表征一段时间内的运力压力的变化趋势,不至于变化趋势的不合理突变,可选地,还可以对该曲线进行平滑处理,即可以对各调度周期分别对应的历史平均运力压力进行平滑处理。

一种可选的平滑处理方式为窗口滤波方式。简单来说,假设窗口选为2k+1,比如k=2,则窗口宽度为5,此时,针对上述各调度周期中的第i个调度周期,比如表示为ni,可以选择其之前的2个调度周期n(i-1),n(i-2),以及其之后的2个调度周期n(i+1),n(i+2),共五个调度周期。从而,ni对应的历史平均运力压力比如可以被平滑为:这五个调度周期分别对应的历史平均运力压力的平均值。该平滑处理方式和窗口使用方式仅为举例,实际上,可以采用现有技术中其他的平滑方式进行处理。

进而,针对上述各调度周期中的第i个调度周期,结合第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定第i个调度周期对应的运力压力变化趋势。

为了避免后续仅单纯地依据任一调度周期的运力压力变化趋势的变大、变小趋势来频繁调整相应调度周期的当前的运力压力,实际上,可选地,可以以一定的变量来表征运力压力变化趋势,该变量不仅反映出运力压力的变大或变小趋势,还可以反映出变化幅度。也就是说,本发明实施例中,运力压力变化趋势既具有变化方向的含义,也可以具有变化幅度的含义。其中,一种可选的运力压力变化趋势变量可以是斜率。假设第i个调度周期为ni,在进行其对应的运力压力变化趋势变量的计算时,比如考虑其之后的第5个调度周期,即以步长为5进行斜率的度量计算。此时,可以以[n(i+5)对应的历史平均运力压力-ni对应的历史平均运力压力]/5来表征ni对应的运力压力变化趋势变量,如果结果为正值,表示运力压力有上升的趋势;如果结果为负值,表示运力压力有下降的趋势,而结果所对应的数值则反映了变化幅度。

基于此,可以得到各调度周期对应的运力压力变化趋势变量,从而可以保存相应配送区域下各调度周期与运力压力变化趋势变量的对应关系。从而,针对该配送区域,在当前工作日的当前调度周期进行订单调度时,可以基于该当前调度周期查询上述对应关系,得到相应的运力压力变化趋势变量,以便于调整当前调度周期的运力压力,进而根据调整后的运力压力对当前调度周期内接收到的多个订单进行调度。由于是考虑了未来运力压力的变化情况来对当前调度周期内的订单进行调度的,可以使得对当前调度周期内多个订单的调度更加能够适应于运力压力的变化趋势,有助于提高配送效率。

图3为图1所示实施例中步骤104的一种实现方式的流程图,如图3所示,包括如下步骤:

301、根据调整后的运力压力确定分组参数。

302、根据分组参数对所述多个订单进行分组。

本实施例中,以对订单进行分组处理为例对根据调整后的运力压力对当前调度周期内接收到的对应于同一配送区域的多个订单进行调度的过程进行说明。

首先,对多个订单进行分组处理需要使用分组参数,该分组参数可以为相似度阈值和单量上限。

具体地,根据调整后的运力压力确定分组参数可以遵循如下的原则:

如果运力压力被调高,则可以降低相似度阈值,增大单量上限;如果运力压力被调低,则可以升高相似度阈值,减小单量上限;如果运力压力没有被改变,则维持原来的相似度阈值和单量上限不变。实际应用中,可以根据该原则,设置运力压力与相似度阈值和单量上限的对应关系,以基于该对应关系确定调整后的运力压力所对应的相似度阈值和单量上限。

在确定了调整后的运力压力对应的相似度阈值和单量上限之后,可以基于两两订单之间的相似度与相似度阈值的比较结果对该多个订单进行分组,且保证每个订单组内的订单数不超过单量上限。其中,相似性度量参数比如包括取货地址之间的距离、送货地址之间的距离、期望送达时间之差之中的一种或多种参数,并且,每种相似性度量参数可以具有相同的权重,也可以具有不同的权重。

举例来说明上述订单分组调度的过程。假设多个订单包括订单1、订单2、订单3、订单4、订单5、订单6、订单7、订单8。假设在没有进行运力压力调整前,基于调整前的运力压力确定出的原始分组参数为:相似度阈值为s1,单量上限为n1,假设为3。基于该相似度阈值和单量上限,假设订单分组的结果是:订单1、订单2和订单3构成分组1,订单4、订单5和订单6构成分组2,订单7、订单8构成分组3。此时,可能将需要三个配送人员完成这多个订单的配送。

另外,假设对运力压力的调整是调高了运力压力,则此时可以降低相似度阈值为s2,增大单量上限为n2,即s2小于s1,n2大于n1,比如为4。则此时,订单分组的结果可以是:订单1、订单2、订单3、订单8构成分组1,订单4、订单5、订单6和订单7构成分组2。此时,可能将仅需要两个配送人员完成这多个订单的配送,避免运力压力很高时对过多配送人员的占用。

相反地,假设对运力压力的调整是调低了运力压力,则此时可以升高相似度阈值为s3,降低单量上限为n3,即s3大于s1,n3小于n1,比如为2。则此时,订单分组的结果可以是:订单1、订单2构成分组1,订单3、订单8构成分组2,订单4、订单5构成分组3,订单6、订单7构成分组4。此时,可能需要四个配送人员完成这多个订单的配送,但是由于此时运力压力较小,由更多配送人员来完成这多个订单的配送,可以提高订单的配送及时性。

图4为图1所示实施例中步骤104的另一种实现方式的流程图,如图4所示,包括如下步骤:

401、根据调整后的运力压力确定并单参数。

402、根据并单参数对多个订单进行向配送人员的并单处理。

本实施例中,以对订单进行向配送人员的并单处理为例对根据调整后的运力压力对当前调度周期内接收到的对应于同一配送区域的多个订单进行调度的过程进行说明。

首先,对多个订单进行向配送人员的并单处理需要使用并单参数,该并单参数比如可以包括配送人员的未完成订单量,配送人员的未完成订单所对应的取货地址数量、送货地址数量,等。

其中,以任一订单xi以及任一配送人员yj为例,并单处理简单来说就是,判断订单xi能否并入至配送人员yj,由配送人员yj来完成配送的过程。与订单的分组处理不同,在并单处理中,对于上述多个订单来说,是以一个订单为单位,逐个订单进行向配送人员的并入处理的。

具体地,根据调整后的运力压力确定并单参数可以遵循如下的原则:

如果运力压力被调高,则可以降低并单难度;如果运力压力被调低,则可以提高并单难度;如果运力压力没有被改变,则维持原来的并单参数不变。实际应用中,可以根据该原则,设置运力压力与各并单参数的对应关系,以基于该对应关系确定调整后的运力压力所对应的并单参数。

其中,以并单参数为上述举例的配送人员的未完成订单量来说,降低并单难度是指放宽对配送人员的未完成订单量的限制,即可以提高配送人员的未完成订单量的上限,以让订单也可以被并入到未完成订单量较多的配送人员。相反地,提高并单难度是指对配送人员的未完成订单量的限制更加严苛,即降低配送人员的未完成订单量的上限,以让订单可以更容易地被并入到未完成订单量更少的配送人员。

在确定了调整后的运力压力所对应的并单参数之后,针对上述多个订单中的任一订单来说,在进行该订单向某配送人员x的并单处理时,可以先将该订单预分配给该配送人员x,进而判断该配送人员x当前的未完成订单是否能够满足并单参数的限制,如果满足,则将该订单最终分配给该配送人员x。其中,以并单参数为上述举例的配送人员的未完成订单量来说,假设预先设置该未完成订单量为8个,则如果将该订单预分配该配送人员x后,该配送人员x当前的未完成订单量小于或等于8,则该订单最终被分配给该配送人员x。

值得说明的是,如果上述多个订单调度过程既涉及到上述分组处理过程,也涉及到上述并单处理过程,可选地,可以优先针对多个订单中的各个订单执行并单处理过程,之后对于未通过并单过程并入某配送人员的剩余订单,执行分组处理,得到一个或多个订单组,进而,基于订单组指派原则将生成的各订单组分别指派给合适的配送人员,该指派原则也可以视为一种并单处理过程。

以上实施例中,以未来运力压力有明显的降低趋势为例进行说明如何提高配送效率的:若未来运力压力有明显的降低趋势,说明未来配送人员的平均配送压力将较小。此时,为了提高订单的配送效率,可以调低当前调度周期的运力压力,提高相似度阈值,缩小单量上限,提高并单难度,使得订单分组处理后,会获得更多数量的订单组,且一个订单组内的订单数量较少,从而可以由更多的配送人员快速地完成各订单组的配送,可以提高订单配送效率。而且,由于并单难度提高,使得各订单组会被分配给更加适合的配送人员,比如已有未完成订单量更少的配送人员,一方面使得配送人员身上订单量更加均衡,提高配送运力的使用率,另一方面,由更加适合的配送人员完成相应的配送,也会更加提高配送效率。

以下将详细描述本发明的一个或多个实施例的订单调度装置。这些订单调度装置可以被实现在服务器的基础架构中,或者实现在客户端与服务器交互过程中服务器的架构中。本领域技术人员可以理解,这些订单调度装置均可使用市售的硬件组件通过本方案所教导的进行配置来构成。

图5为本发明实施例提供的订单调度装置实施例一的结构示意图,如图5所示,该装置包括:第一确定模块11、获取模块12、调整模块13、调度模块14。

第一确定模块11,用于确定一配送区域在当前调度周期内对应的运力压力。

获取模块12,用于获取所述当前调度周期对应的运力压力变化趋势。

调整模块13,用于根据所述运力压力变化趋势调整所述运力压力。

调度模块14,用于根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

可选地,所述调整模块13具体用于:

若所述运力压力变化趋势表示变化幅度小于预设阈值,则维持所述运力压力不变;

若所述运力压力变化趋势表示运力压力升高幅度大于预设阈值,则以第一预设调整系数调高所述运力压力;

若所述运力压力变化趋势表示运力压力降低幅度大于预设阈值,则以第二预设调整系数调低所述运力压力。

图5所示装置可以执行图1所示实施例的方法,本实施例未详细描述的部分,可参考对图1所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1所示实施例中的描述,在此不再赘述。

图6为本发明实施例提供的订单调度装置实施例二的结构示意图,如图6所示,在图5所示实施例基础上,该装置还包括:第二确定模块21、平滑处理模块22、第三确定模块23。

第二确定模块21,用于确定所述配送区域在各调度周期分别对应的历史平均运力压力,所述历史平均运力压力对应于多天运力压力的平均值。

平滑处理模块22,用于对所述各调度周期分别对应的历史平均运力压力进行平滑处理。

第三确定模块23,用于针对所述各调度周期中的第i个调度周期,结合所述第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定所述第i个调度周期对应的运力压力变化趋势。

图6所示装置可以执行图2所示实施例的方法,本实施例未详细描述的部分,可参考对图2所示实施例的相关说明。该技术方案的执行过程和技术效果参见图2所示实施例中的描述,在此不再赘述。

图7为本发明实施例提供的订单调度装置实施例三的结构示意图,如图7所示,在图5所示实施例基础上,可选地,所述调度模块14包括:

分组调度单元141,用于根据所述调整后的运力压力确定分组参数;根据所述分组参数对所述多个订单进行分组。

图7所示装置可以执行图3所示实施例的方法,本实施例未详细描述的部分,可参考对图3所示实施例的相关说明。该技术方案的执行过程和技术效果参见图3所示实施例中的描述,在此不再赘述。

图8为本发明实施例提供的订单调度装置实施例四的结构示意图,如图8所示,在图5或图7所示实施例基础上,以图7所示实施例为例,可选地,所述调度模块14包括:并单调度单元142。

并单调度单元142,用于根据所述调整后的运力压力确定并单参数;根据所述并单参数对所述多个订单进行向配送人员的并单处理。

图8所示装置可以执行图4所示实施例的方法,本实施例未详细描述的部分,可参考对图3所示实施例的相关说明。该技术方案的执行过程和技术效果参见图4所示实施例中的描述,在此不再赘述。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

以上描述了订单调度装置的内部功能和结构,在一个可能的设计中,该订单调度装置的结构可实现为一电子设备,该电子设备比如为服务器,如图9所示,可以包括:处理器31和存储器32。其中,所述存储器32用于存储支持订单调度装置执行上述任一实施例中提供的订单调度方法的程序,所述处理器31被配置为用于执行所述存储器32中存储的程序。

所述程序包括一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器31执行时实现如下步骤:

确定一配送区域在当前调度周期内对应的运力压力;获取所述当前调度周期对应的运力压力变化趋势;根据所述运力压力变化趋势调整所述运力压力;根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

除上述步骤外,可选地,所述处理器31还用于执行前述各方法实施例中的全部或部分步骤。

其中,所述订单调度装置的结构中还可以包括通信接口33,用于订单调度装置与其他设备或通信网络通信。

另外,本发明实施例提供了一种计算机存储介质,用于储存订单调度装置所用的计算机软件指令,其包含用于执行上述任一方法实施例中订单调度方法所涉及的程序。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

本发明公开a1、一种订单调度方法,包括:

确定一配送区域在当前调度周期内对应的运力压力;

获取所述当前调度周期对应的运力压力变化趋势;

根据所述运力压力变化趋势调整所述运力压力;

根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

a2、根据a1所述的方法,所述根据所述运力压力变化趋势调整所述运力压力,包括:

若所述运力压力变化趋势表示运力压力变化幅度小于预设阈值,则维持所述运力压力不变;

若所述运力压力变化趋势表示运力压力升高幅度大于预设阈值,则以第一预设调整系数调高所述运力压力;

若所述运力压力变化趋势表示运力压力降低幅度大于预设阈值,则以第二预设调整系数调低所述运力压力。

a3、根据a2所述的方法,所述根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度,包括:

根据所述调整后的运力压力确定分组参数;根据所述分组参数对所述多个订单进行分组;

和/或,

所述根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度,包括:

根据所述调整后的运力压力确定并单参数;根据所述并单参数对所述多个订单进行向配送人员的并单处理。

a4、根据a1至a3中任一项所述的方法,所述确定一配送区域在当前调度周期内对应的运力压力,包括:

获取所述配送区域在所述当前调度周期内对应的未完成订单数量和配送人员数量;

根据所述未完成订单数量和所述配送人员数量,确定所述运力压力。

a5、根据a1至a3中任一项所述的方法,所述方法还包括:

确定所述配送区域在各调度周期分别对应的历史平均运力压力,所述历史平均运力压力对应于多天运力压力的平均值;

针对所述各调度周期中的第i个调度周期,结合所述第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定所述第i个调度周期对应的运力压力变化趋势。

a6、根据a5所述的方法,,所述确定所述配送区域在各调度周期分别对应的历史平均运力压力之后,还包括:

对所述各历史调度周期分别对应的历史平均运力压力进行平滑处理。

本发明公开b7、一种订单调度装置,包括:

第一确定模块,用于确定一配送区域在当前调度周期内对应的运力压力;

获取模块,用于获取所述当前调度周期对应的运力压力变化趋势;

调整模块,用于根据所述运力压力变化趋势调整所述运力压力;

调度模块,用于根据调整后的运力压力对所述当前调度周期内所述配送区域对应的多个订单进行调度。

b8、根据b7所述的装置,所述调整模块具体用于:

若所述运力压力变化趋势表示运力压力变化幅度小于预设阈值,则维持所述运力压力不变;

若所述运力压力变化趋势表示运力压力升高幅度大于预设阈值,则以第一预设调整系数调高所述运力压力;

若所述运力压力变化趋势表示运力压力降低幅度大于预设阈值,则以第二预设调整系数调低所述运力压力。

b9、根据b8所述的装置,所述调度模块包括:

分组调度单元,用于根据所述调整后的运力压力确定分组参数;根据所述分组参数对所述多个订单进行分组;

和/或,

并单调度单元,用于根据所述调整后的运力压力确定并单参数;根据所述并单参数对所述多个订单进行向配送人员的并单处理。

b10、根据b7至b9中任一项所述的装置,所述第一确定模块具体用于:

获取所述配送区域在所述当前调度周期内对应的未完成订单数量和配送人员数量;根据所述未完成订单数量和所述配送人员数量,确定所述运力压力。

b11、根据b7至b9中任一项所述的装置,还包括:

第二确定模块,用于确定所述配送区域在各调度周期分别对应的历史平均运力压力,所述历史平均运力压力对应于多天运力压力的平均值;

第三确定模块,用于针对所述各调度周期中的第i个调度周期,结合所述第i个调度周期之后的至少一个调度周期分别对应的历史平均运力压力,确定所述第i个调度周期对应的运力压力变化趋势。

b12、根据b11所述的装置,还包括:

平滑处理模块,用于对所述各调度周期分别对应的历史平均运力压力进行平滑处理。

本发明公开c13、一种电子设备,包括:处理器和存储器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现如a1至a6中任一项所述的订单调度方法。

本发明还公开d14、一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时实现如a1至a6中任一项所述的订单调度方法。

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