CN113450035A - 任务组建方法及装置、计算机存储介质、电子设备 - Google Patents
任务组建方法及装置、计算机存储介质、电子设备 Download PDFInfo
- Publication number
- CN113450035A CN113450035A CN202010213342.7A CN202010213342A CN113450035A CN 113450035 A CN113450035 A CN 113450035A CN 202010213342 A CN202010213342 A CN 202010213342A CN 113450035 A CN113450035 A CN 113450035A
- Authority
- CN
- China
- Prior art keywords
- task
- order
- sub
- initial
- orders
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q10/0875—Itemisation or classification of parts, supplies or services, e.g. bill of materials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及物流技术领域,提供了一种任务组建方法、装置、计算机存储介质及电子设备,该任务组建方法包括:获取各订单信息,根据各所述订单信息将各订单中的子订单按照逻辑区进行划分;基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建为多个初始任务;利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,根据各所述更新任务进行任务组建。本公开的任务组建方法将订单进行拆分进行任务组建,节省了任务处理时间,大大提高了任务处理的效率。
Description
技术领域
本公开涉及物流技术领域,特别涉及一种任务组建方法、任务组建装置、计算机可读存储介质及电子设备。
背景技术
随着电子商务行业的发展,特别是用户网购数量的增加,物品订单的数量越来越多。在物品仓库运营中,如何快速对订单进行处理,提高拣货速度和发货效率,已成为非常重要的问题。
在现有技术中,通常采取先将订单下放到仓库,对订单进行定位,接着拣货员进行拣货打包,最后将订单出库。在整个过程中,组建合适的拣货任务对于提高拣货人员的拣货效率至关重要,在组建拣货任务单时,通常以订单维度进行拣选。但是以订单维度进行组建拣货任务的方式拣货耗时较长,拣货效率低。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种任务组建方法、任务组建装置、计算机可读存储介质及电子设备,进而至少在一定程度上减少了任务处理时间、提高了任务处理效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种任务组建方法,获取订单信息,根据所述订单信息将各订单中的子订单按照逻辑区进行划分;基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建为多个初始任务;利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,根据各所述更新任务进行任务组建。
在本公开的一个示例性实施例中,在根据所述订单信息将各订单中的子订单按照逻辑区进行划分之后,所述方法还包括:在各所述逻辑区内,根据所述订单信息中的订单编号对各所述子订单进行排序以形成订单序列。
在本公开的一个示例性实施例中,基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建为多个初始任务,包括:按照所述订单编号由低到高的顺序,根据所述成本节约算法依次将所述子订单组建为多个初始任务,其中,所述初始任务满足所述约束条件。
在本公开的一个示例性实施例中,按照所述订单编号由低到高的顺序,根据所述成本节约算法依次将所述子订单组建为多个初始任务,包括:取所述订单编号最小的第一子订单作为所述第一任务单;判断所述第一任务单是否满足所述约束条件,根据判断结果和所述成本节约算法组建第一初始任务;在所述订单序列中剔除所述第一初始任务中的子订单,并将剔除所述第一初始任务中的子订单后的所述订单序列中订单编号最小的子订单作为新的第一子订单;重复上述步骤,组建多个所述初始任务。
在本公开的一个示例性实施例中,根据判断结果和所述成本节约算法组建第一初始任务,包括:若所述第一任务单满足所述约束条件,则将所述第一子订单与其余一个或多个子订单按照所述成本节约算法组建成所述第一初始任务;若所述第一任务单不满足所述约束条件,则将所述第一子订单拆分为多个二级子订单,并将满足约束条件的所述二级子订单组建成所述第一初始任务。
在本公开的一个示例性实施例中,将所述第一子订单与其余一个或多个子订单按照所述成本节约算法组建成所述第一初始任务,包括:根据所述成本节约算法分别计算所述第一子订单与其余一个或多个子订单的节约值;确定所述节约值最大的一个或多个子订单,并将所述第一子订单和所述一个或多个子订单组建为所述第一初始任务。
在本公开的一个示例性实施例中,所述初始任务中的子订单按照子订单顺序排列;利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,包括:将同一个所述初始任务中的多个子订单两两交换子订单顺序,并计算交换位置后的初始任务的任务完成时间;比较各所述任务完成时间的大小,将所述任务完成时间最小的子订单顺序作为目标顺序;根据各所述子订单对应的所述目标顺序形成所述更新任务。
在本公开的一个示例性实施例中,所述初始任务包括多个第三初始任务和多个第四初始任务;利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,包括:获取所述第三初始任务和所述第四初始任务的第一任务完成时间;在所述第三初始任务中取出一子订单作为目标子订单,在所述第三初始任务中删除所述目标子订单以形成第五初始任务,并将所述目标子订单***所述第四初始任务中以形成第六初始任务;计算所述第五初始任务和所述第六初始任务的第二任务完成时间;判断所述第二任务完成时间是否小于所述第一任务完成时间,并根据判断结果执行目标操作。
在本公开的一个示例性实施例中,根据判断结果执行目标操作,包括:若所述第二任务完成时间小于所述第一任务完成时间,则以所述第五初始任务和所述第六初始任务替换所述第三初始任务和所述第四初始任务;若所述第二任务完成时间大于或等于所述第一任务完成时间,则保留所述第三初始任务和所述第四初始任务。
在本公开的一个示例性实施例中,根据各所述更新任务进行任务组建,包括:记录迭代更新次数,判断所述迭代更新次数是否大于预设次数;若是,则停止迭代更新,并根据各所述更新任务进行任务组建;若否,则继续进行迭代更新。
在本公开的一个示例性实施例中,所述约束条件包括一个所述初始任务中的子订单的数量不超过预设数量、一个所述初始任务中的所有子订单的总体积不超过预设总体积和一个所述初始任务中的所有子订单的总重量不超过预设总重量。
根据本公开的一个方面,提供了一种任务组建装置,划分逻辑模块,用于获取订单信息,根据所述订单信息将各订单中的子订单按照逻辑区进行划分;组建任务模块,用于基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建成多个初始任务;优化任务模块,用于利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,根据各所述更新任务进行任务组建。
根据本公开的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的任务组建方法。
根据本公开的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的任务组建方法。
由上述技术方案可知,本公开示例性实施例中的任务组建方法至少具备以下优点和积极效果:
本公开示例性实施例的任务组建方法首先获取订单信息,根据订单信息将各订单中的子订单按照逻辑区进行划分;接着基于约束条件,在各逻辑区内根据成本约束算法将各子订单组建为多个初始任务;最后利用局部邻域搜索算法对各初始任务进行迭代更新以获得各更新任务,根据更新任务进行任务组建。本公开中的任务组建方法,第一方面,将一个订单拆分为多个子订单,基于子订单维度进行任务组建,保证了生成的任务可以被一次执行完成而不会超过任务执行上限;第二方面,根据约束条件组建初始任务,规范了任务组成,节省了任务完成时间;第三方面,利用成本节约算法从订单库中找出具有较高相关度的子订单组合,以利用较低的资源对更多的任务进行处理,从而达到提升任务处理效率,降低物流运营成本的效果;第四方面,利用局部邻域搜索算法对初始任务进行优化,提升了组成任务单的子订单之间的关联度,提高了任务完成的效率。
本公开应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了根据本公开的一实施例的任务组建方法的流程示意图;
图2示意性示出了根据本公开的一实施例的仓库拣货区布局的结构示意图;
图3示意性示出了根据本公开的一实施例的组建多个初始任务的流程示意图;
图4示意性示出了根据本公开的一实施例的利用***算子得到更新任务的流程示意图;
图5示意性示出了根据本公开的一实施例的根据各更新任务进行任务组建的流程示意图;
图6示意性示出了根据本公开的一实施例的自动组单***的的流程示意图;
图7示意性示出了根据本公开的一实施例的任务组建装置的框图;
图8示意性示出了根据本公开的一实施例的电子设备的模块示意图;
图9示意性示出了根据本公开的一实施例的程序产品示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
随着物流行业的快速发展,在实际仓库运营中,通常包括如下环节,首先将订单下放到仓库,对订单进行定位,接着组建拣货任务,使拣货员进行拣货复核打包,最后将订单出库。组建合适的拣货任务对于提高拣货人员的拣货效率至关重要。在组建拣货任务单时,通常考虑以订单维度进行拣选或以SKU(最小库存单元)维度进行拣选,由于每个订单可能来自不能的储区,因此,使用SKU维度组建拣货任务单的效果更好。
在现有技术中,组建任务单的方式包括以下几种:第一种,人工筛选,人工组单通常将统一储区下的商品进行组单,然后约束每个任务单的上界,从而得到多个任务单;第二种,算法组单,对于当前可以同时拣选的所有订单,组建任务单,通常使用的算法包括启发式算法和元启发式算法,例如,启发式算法包括种子通道类算法,元启发式算法包括遗传算法和局部邻域搜索算法。目前对于SKU维度进行组建任务单的研究较少,对于以订单维度组建任务单存在拣货任务效率低的问题。
基于相关技术中存在的问题,在本公开的一个实施例中提出了一种任务组建方法。图1示出了任务组建方法的流程示意图,如图1所示,该任务组建方法至少包括以下步骤:
步骤S110:获取订单信息,根据订单信息将各订单中的子订单按照逻辑区进行划分;
步骤S120:基于约束条件,在各逻辑区内根据成本节约算法将各子订单组建为多个初始任务;
步骤S130:利用局部邻域搜索算法对各初始任务进行迭代更新以获得各更新任务,根据各更新任务进行任务组建。
本公开实施例中的任务组建方法第一方面,将一个订单拆分为多个子订单,基于子订单维度进行任务组建,保证了生成的任务可以被一次执行完成而不会超过任务执行上限;第二方面,根据约束条件组建初始任务,规范了任务组成,节省了任务完成时间;第三方面,利用成本节约算法从订单库中找出具有较高相关度的子订单组合,以利用较低的资源对更多的任务进行处理,从而达到提升任务处理效率,降低物流运营成本的效果;第四方面,利用局部邻域搜索算法对初始任务进行优化,提升了组成任务单的子订单之间的关联度,提高了任务完成的效率。
需要说明的是,本公开实施例所提供的任务组建方法一般由具有计算功能的处理器执行,其中,该处理器可以包括终端设备,也可以包括服务器,还可以是终端设备和服务器组合而成的具有计算功能的处理器,本公开对此不做具体限定。
为了使本公开的技术方案更清晰,接下来以实例对本示例性实施例中的任务组建方法进行详细说明。
在步骤S110中,获取订单信息,根据订单信息将各订单中的子订单按照逻辑区进行划分。
需要说明的是,在仓库中,订单通常会成批下放到仓库,该订单下放过程是动态的。在订单下放到仓库后,需要将每个订单进行定位,即给每个订单指定最优的储位和相应的数量,通常采用清空储位原则等。在定位完成后,订单需要进行组建拣货任务单,拣货人员领取分配到的拣货任务单后到对应的储位进行拣货。图2示出了仓库拣货区布局的结构示意图,如图2所示,仓库拣货区201分为多个逻辑区202,包括L1、L2、L3,一个逻辑区202分为多个储区203,比如在L1逻辑区202内包括A、B、C、D、E储区203,在一个储区203内,分为多个巷道204,比如在E储区203内包括1、2、3巷道204,一个巷道204内又有多个储位205,每个订单的各个物品以SKU不同储存在储位205中。当然,该逻辑区202、储区203、巷道204和储位205的个数在此不作具体限定。
在本公开的示例性实施例中,组建任务单的目标是获得最小的拣货时间,其中拣货时间为绑定容器时间、行走时间、扫描商品条码时间、下架时间以及输入确认时间的总和。
在本公开的示例性实施例中,电商平台将订单信息下放至仓库拣货区201,其中,该订单信息包括订单建立的时间,订单截止时间,订单的建立平台,订单的收货地址,订单包含的物品数量、体积、重量以及物品所对应的SKU,每个物品所在的逻辑区202、储区203、巷道204以及储位205等一个或多个订单信息,当然,该订单信息还可以包括其他与该订单及订单包含的物品有关的其他信息,本公开对此不作具体限定。
在本公开的示例性实施例中,每个订单由多个子订单构成,订单中的每种物品构成一个子订单,即每个子订单中包含一个SKU的物品。根据各订单信息中每个物品所在的逻辑区202将各订单中的子订单进行划分。比如,一个订单中若包括10个物品,其中有5个物品都存储在L1逻辑区202内,则将前5个物品所在的子订单划分在L1逻辑区内202,另外,还有5个物品存储在L2逻辑区202内,则将后5个物品所在的子订单划分在L2逻辑区202内。也就是说,根据每个订单中的子订单所在逻辑区202的不同,将所在同一逻辑区202的子订单聚集。
在本公开的示例性实施例中,在根据各订单信息将各订单中的子订单按照逻辑区202进行划分之后,在各逻辑区202内,根据订单信息中的订单编号对各子订单进行排序以形成订单序列。其中,该订单编号可以是巷道顺序号,也可以是物品的SKU,本公开对此不作具体限定。另外,若存在巷道顺序号相同的情况,则根据储位的商品数进行排序。
在步骤S120中,基于约束条件,在各逻辑区202内根据成本节约算法将各子订单组建为多个初始任务。
在本公开的示例性实施例中,初始任务中的各子订单位于同一个逻辑区202内,以保证任务完成时间短和执行任务的效率高。
在本公开的示例性实施例中,约束条件包括一个初始任务中的子订单的数量不超过预设数量、一个所述初始任务中的所有子订单的总体积不超过预设总体积和一个所述初始任务中的所有子订单的总重量不超过预设总重量。其中,该预设数量、预设总体积和预设总重量由实际情况确定,本公开对此不作具体限定。
在本公开的示例性实施例中,成本节约算法的目的是计算节约值,节约值为行走时间节约值、绑定时间节约值、扫描时间节约值和下架时间节约值的总和。其中,行走时间为从任务起始点到储存物品的储位再到任务终点之间所花费的时间,比如,当前拣货任务中,子订单1的行走时间为TC,待加入该拣货任务的子订单2单独组成拣货任务时的行走时间为TO,将子订单加入上述拣货任务后,该拣货任务完成子订单1和子订单2所花费的行走时间为TN,则将子订单2添加至含有子订单1的拣货任务时的行走时间节约值为TC+TO-TN。每个拣货任务有一个固定绑定时间,绑定时间节约指的是子订单加入拣货任务之后,需要构造的拣货任务会减少,拣货任务的减少会造成绑定时间的节约。扫描时间为将物品从储位取出之间需要扫描二维码确认物品的时间,若子订单中包括同种物品或一个初始任务中的多个物品位于同一个储位时,存在扫描时间节约值,比如,子订单1需要拣储位1的物品1,子订单2也需要拣储位1中的物品1,则子订单1和子订单2就可以组建为一个拣货任务,节约一次扫描时间。下架时间为将物品从所在储位取出所花费的时间,若两个子订单位于同一个储区,则存在下架时间节约值。
在本公开的示例性实施例中,按照订单编号由低到高的顺序,根据成本节约算法依次将子订单组建为多个初始任务,其中,初始任务满足约束条件。图3示出了组建多个初始任务的流程示意图,如图3所示,该流程至少包括步骤S310至步骤S360,详细说明如下:
在步骤S310中,取订单编号最小的第一子订单作为第一任务单。
在本公开的示例性实施例中,在按照订单编号排序的订单序列中,取订单编号最小的子订单作为第一子订单,并将第一子订单构成第一任务单。
在步骤S320中,判断第一任务单是否满足约束条件。
在本公开的示例性实施例中,根据第一任务单对应的子订单的订单信息,判断第一任务单是否满足未超过预设数量、预设体积和预设重量的约束条件。
在步骤S330中,若第一任务单满足约束条件,则将第一子订单与其余一个或多个子订单按照成本节约算法组建成第一初始任务。
在本公开的示例性实施例中,在第一任务单满足约束条件的情况下,根据成本节约算法分别计算第一子订单与其余一个或多个子订单的节约值,并将节约值最大的一个或多个子订单与第一任务单合并,以形成第一初始任务。
具体地,按照订单序列中的顺序依次将子订单作为第一子订单、第二子订单、第三子订单,等等以此类推。在第一子订单组成的第一任务单满足约束条件时,分别计算第一子订单与第二子订单的节约值,第一子订单与第三子订单的节约值,第一子订单与第四子订单的节约值以及第一子订单与订单序列中的其余所有子订单的节约值。确定具有最大节约值的子订单组合,并将具有最大节约值的子订单组合作为第一初始任务。另外,在组建新的第一初始任务之后,还需判断第一初始任务是否满足约束条件,若第一初始任务满足约束条件,则在第一初始任务的基础上,计算第一初始任务中的所有子订单与订单序列中剩余的所有子订单的节约值,将节约值最大的子订单再添加至第一初始任务。按照上述方法,根据成本节约算法继续将订单序列中的子订单添加至第一初始任务中,直到第一初始任务达到约束条件上限,此时完成第一初始任务的组建。
步骤S340中,若第一任务单不满足约束条件,则将第一子订单拆分为多个二级子订单,并将满足约束条件的二级子订单组建成第一初始任务。
在本公开的示例性实施例中,在第一任务单不满足约束条件的情况下,将第一子订单拆分为多个二级子订单,其中,在拆分第一子订单时,按照约束条件进行拆分,也就是说,按照预设数量、预设体积和预设重量将第一子订单拆分为恰好达到约束条件上限的第一二级子订单和一个或多个第二二级子订单。将第一子订单进行拆分之后,将第一二级子订单组建为第一初始任务。将剩余二级子订单与订单序列中剩余的子订单按照订单编号进行排序,以组建更多的初始任务。
在步骤S350中,在订单序列中剔除第一初始任务中的子订单,并将剔除后的订单序列中订单编号最小的子订单作为新的第一子订单。
在本公开的示例性实施例中,将已经组建初始任务的子订单从订单序列中剔除,并将剔除后的订单序列中订单编号最小的子订单作为新的第一子订单。
在步骤S360中,重复上述步骤,组建多个初始任务。
在本公开的示例性实施例中,根据新的第一子订单,组建多个第一任务单,并根据上述步骤S310至S360,组建多个初始任务。
继续参照图1所示,在步骤S130中,利用局部邻域搜索算法对各初始任务进行迭代更新以获得各更新任务,根据各更新任务进行任务组建。
在本公开的示例性实施例中,利用局部邻域搜索算法对初始任务进行迭代更新,其中,局部邻域搜索算法包括如下三种方法:
第一种,2-OPT算子。该算子是针对一个初始任务内的子订单的操作,通过交换子订单在初始任务中的排列顺序,得到更新任务,以使更新任务的任务完成时间最短。
在本公开的示例性实施例中,初始任务中的子订单按照子订单顺序排列,子订单顺序在实际的仓库拣货任务中,代表的是拣货员的拣货顺序,子订单的排列顺序在任务组建中至关重要,是任务完成时间的决定性因素之一。
在本公开的示例性实施例中,将同一个初始任务中的多个子订单两两交换子订单顺序,并计算交换位置后的任务完成时间;比较各任务完成时间的大小,将任务完成时间最小的子订单顺序作为目标顺序;根据各子订单对应的目标顺序形成更新任务。
第二种,***算子。该算子是针对两个初始任务之间的子订单的操作,取出一个初始任务中的子订单,将该子订单从该初始任务中删除,***另一个初始任务中;然后计算新的任务完成时间,并比较在删除***操作之前的初始任务的起始任务完成时间,若新的任务完成时间小于起始任务完成时间,将进行删除***操作之后的两个初始任务作为更新任务;并在该更新任务的基础上,变换删除的子订单和子订单***顺序,以得到任务完成时间最短的更新任务。
在本公开的示例性实施例中,初始任务包括多个第三初始任务和多个第四初始任务,图4示出了利用***算子得到更新任务的流程示意图,如图4所示,在步骤S410中,获取第三初始任务和第四初始任务的第一任务完成时间;在步骤S420中,在第三初始任务中取出一子订单作为目标子订单,在第三初始任务中删除该目标子订单以形成第五初始任务,并将该目标子订单***第四初始任务中以形成第六初始任务;其中,该目标子订单可以是第三初始任务中的任一子订单,可以是将第三初始任务中的子订单逐一作为目标子订单进行处理。另外,在将目标子订单***第四初始任务时,可以***第四初始任务的任意两个子订单位置之间,并且,在选择第四初始任务时优先选择物品数量较少的初始任务进行***目标子订单操作,在步骤S430中,计算第五初始任务和第六初始任务的第二任务完成时间;在步骤S440中,判断第二任务完成时间是否小于第一任务完成时间;在步骤S450中,若第二任务完成时间小于第一任务完成时间,则以第五初始任务和第六初始任务替换第三初始任务和所述第四初始任务;在步骤S460中,若第二任务完成时间大于等于第一任务完成时间,则保留第三初始任务和第四初始任务。
在本公开的示例性实施例中,在更新任务时,为了不占用较多的***资源,使用模拟退火算法进行选择性的更新任务,即当通过局部邻域搜索算法得到一个更新任务时,可以将该更新任务保存,以使在下次更新任务时在上述更新任务的基础上进行更新,也可以舍弃该更新任务。具体地,若更新任务的任务完成时间比当前任务的任务完成时间短时,则保存更新任务;若更新任务的任务完成时间比当前任务的任务完成时间长时,***以概率exp(-(f-f0)/f0)更新当前任务,其中,f0为当前任务的任务完成时间,f为更新任务的任务完成时间。
在本公开的示例性实施例中,图5示出了根据各更新任务进行任务组建的流程示意图,如图5所示,在步骤S510中,获得初始任务;在步骤S520中,根据2-OPT算子和/或***算子对初始任务进行迭代更新,以形成更新任务;在步骤S530中,判断是否达到终止条件,其中,该终止条件可以是迭代更新的时间,比如,预设更新时间为10秒,在对初始任务进行迭代更新操作10秒之后,将获得的更新任务作为最终任务,进行任务组建;该终止条件也可以是迭代次数,比如,预设迭代次数为20次,在迭代更新20次之后,结束更新,将迭代更新的20次中任务完成时间最短的更新任务作为最终任务进行任务组建。当然该终止条件还可以是迭代更新后的结果,本公开对此不作具体限定,在步骤S540中,若未达到终止条件,则返回步骤S520;若达到终止条件,则比较在更新任务的过程中各更新任务的任务完成时间,将任务完成时间最短的更新任务作为最终任务进行任务组建。
在实际的仓库作业中,订单下放是随时间和波次逐步下放的,所以在在任务组建的时候不必将所有订单均生成任务单。本公开示例性实施例中还提出了一种自动组单***,该***通过自动判断剩余订单的数量和执行任务人数的关系,从而生成相应数量的任务。图6示意性示出了自动组单***的流程示意图,如图6所示,在步骤S610中,获取当前可执行任务的人数和执行任务的能力,其中,根据历史任务执行数据,得到每个人执行任务的能力,即在一定时间内可以执行的任务数;在步骤S620中,获取需要执行的订单的数量以及订单信息;在步骤S630中,利用上述任务组建方法生成组建相应数量的任务单。
另外,在输出组建的一定数量的任务单时,还需要计算每个任务单的指数,该任务单的指数代表了该输出该任务单的顺序,若任务单指数较大,则优先输出该任务单。具体地,任务单的指数为任务单饱和度与执行任务时间的比值,其中任务单饱和度为此外,如果该任务单中包含的子订单的订单截止时间小于预设时间参数时,则将该任务单的指数设置为充分大的数,预设时间参数根据实际情况进行限定,本公开对此不作具体限定。
以下介绍本公开的装置实施例,可以用于执行本公开上述的任务组建方法。对于本公开装置实施例中未披露的细节,请参照本公开上述的任务组建方法的实施例。
图7示意性示出了根据本公开的一个实施例的任务组建装置的框图。
参照图7所示,根据本公开的一个实施例的任务组建装置700,任务组建装置700包括:划分逻辑模块701、组建任务模块702和优化任务模块703。具体地:
划分逻辑模块701,用于获取订单信息,根据订单信息将各订单中的子订单按照逻辑区202进行划分;
组建任务模块702,用于基于约束条件,在各逻辑区202内根据成本节约算法将各子订单组建成多个初始任务;
优化任务模块703,用于利用局部邻域搜索算法对各初始任务进行迭代更新以获得各更新任务,根据各更新任务进行任务组建。
上述各任务组建装置的具体细节已经在对应的任务组建方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为***、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
下面参照图8来描述根据本发明的这种实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同***组件(包括存储单元820和处理单元810)的总线830、显示单元840。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图1中所示的步骤S110,获取订单信息,根据订单信息将各订单中的子订单按照逻辑区202进行划分;步骤S120,基于约束条件,在各逻辑区202内根据成本节约算法将各子订单组建为多个初始任务;步骤S130,利用局部邻域搜索算法对各初始任务进行迭代更新以获得各更新任务,根据各更新任务进行任务组建。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备1000(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得观众能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
参考图9所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (14)
1.一种任务组建方法,其特征在于,包括:
获取订单信息,根据所述订单信息将各订单中的子订单按照逻辑区进行划分;
基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建为多个初始任务;
利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,根据各所述更新任务进行任务组建。
2.根据权利要求1所述的任务组建方法,其特征在于,在根据所述订单信息将各订单中的子订单按照逻辑区进行划分之后,所述方法还包括:
在各所述逻辑区内,根据所述订单信息中的订单编号对各所述子订单进行排序以形成订单序列。
3.根据权利要求2所述的任务组建方法,其特征在于,基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建为多个初始任务,包括:
按照所述订单编号由低到高的顺序,根据所述成本节约算法依次将所述子订单组建为多个初始任务,其中,所述初始任务满足所述约束条件。
4.根据权利要求3所述的任务组建方法,其特征在于,按照所述订单编号由低到高的顺序,根据所述成本节约算法依次将所述子订单组建为多个初始任务,包括:
取所述订单编号最小的第一子订单作为所述第一任务单;
判断所述第一任务单是否满足所述约束条件,根据判断结果和所述成本节约算法组建第一初始任务;
在所述订单序列中剔除所述第一初始任务中的子订单,并将剔除所述第一初始任务中的子订单后的所述订单序列中订单编号最小的子订单作为新的第一子订单;
重复上述步骤,组建多个所述初始任务。
5.根据权利要求4所述的任务组建方法,其特征在于,根据判断结果和所述成本节约算法组建第一初始任务,包括:
若所述第一任务单满足所述约束条件,则将所述第一子订单与其余一个或多个子订单按照所述成本节约算法组建成所述第一初始任务;
若所述第一任务单不满足所述约束条件,则将所述第一子订单拆分为多个二级子订单,并将满足约束条件的所述二级子订单组建成所述第一初始任务。
6.根据权利要求5所述的任务组建方法,其特征在于,将所述第一子订单与其余一个或多个子订单按照所述成本节约算法组建成所述第一初始任务,包括:
根据所述成本节约算法分别计算所述第一子订单与其余一个或多个子订单的节约值;
确定所述节约值最大的一个或多个子订单,并将所述第一子订单和所述一个或多个子订单组建为所述第一初始任务。
7.根据权利要求1所述的任务组建方法,其特征在于,所述初始任务中的子订单按照子订单顺序排列;
利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,包括:
将同一个所述初始任务中的多个子订单两两交换子订单顺序,并计算交换位置后的初始任务的任务完成时间;
比较各所述任务完成时间的大小,将所述任务完成时间最小的子订单顺序作为目标顺序;
根据各所述子订单对应的所述目标顺序形成所述更新任务。
8.根据权利要求1所述的任务组建方法,其特征在于,所述初始任务包括多个第三初始任务和多个第四初始任务;
利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,包括:
获取所述第三初始任务和所述第四初始任务的第一任务完成时间;
在所述第三初始任务中取出一子订单作为目标子订单,在所述第三初始任务中删除所述目标子订单以形成第五初始任务,并将所述目标子订单***所述第四初始任务中以形成第六初始任务;
计算所述第五初始任务和所述第六初始任务的第二任务完成时间;
判断所述第二任务完成时间是否小于所述第一任务完成时间,并根据判断结果执行目标操作。
9.根据权利要求8所述的任务组建方法,其特征在于:根据判断结果执行目标操作,包括:
若所述第二任务完成时间小于所述第一任务完成时间,则以所述第五初始任务和所述第六初始任务替换所述第三初始任务和所述第四初始任务;
若所述第二任务完成时间大于或等于所述第一任务完成时间,则保留所述第三初始任务和所述第四初始任务。
10.根据权利要求1所述的任务组建方法,其特征在于,根据各所述更新任务进行任务组建,包括:
记录迭代更新次数,判断所述迭代更新次数是否大于预设次数;
若是,则停止迭代更新,并根据各所述更新任务进行任务组建;
若否,则继续进行迭代更新。
11.根据权利要求1所述的任务组建方法,其特征在于,所述约束条件包括一个所述初始任务中的子订单的数量不超过预设数量、一个所述初始任务中的所有子订单的总体积不超过预设总体积和一个所述初始任务中的所有子订单的总重量不超过预设总重量。
12.一种任务组建装置,其特征在于,包括:
划分逻辑模块,用于获取订单信息,根据所述订单信息将各订单中的子订单按照逻辑区进行划分;
组建任务模块,用于基于约束条件,在各所述逻辑区内根据成本节约算法将各所述子订单组建成多个初始任务;
优化任务模块,用于利用局部邻域搜索算法对各所述初始任务进行迭代更新以获得各更新任务,根据各所述更新任务进行任务组建。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至11中任一项所述的任务组建方法。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至11中任一项所述的任务组建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010213342.7A CN113450035A (zh) | 2020-03-24 | 2020-03-24 | 任务组建方法及装置、计算机存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010213342.7A CN113450035A (zh) | 2020-03-24 | 2020-03-24 | 任务组建方法及装置、计算机存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113450035A true CN113450035A (zh) | 2021-09-28 |
Family
ID=77806446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010213342.7A Pending CN113450035A (zh) | 2020-03-24 | 2020-03-24 | 任务组建方法及装置、计算机存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113450035A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115545396A (zh) * | 2022-08-11 | 2022-12-30 | 江苏新格尔人居科技有限公司 | 一种基于订单实况的门窗生产管理方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469201A (zh) * | 2015-07-20 | 2016-04-06 | 浙江工业大学 | 一种物流配送中心作业任务处理与调度的方法 |
CN107392543A (zh) * | 2017-07-28 | 2017-11-24 | 网易无尾熊(杭州)科技有限公司 | 信息处理方法、数据处理***、介质和计算设备 |
CN108647810A (zh) * | 2018-04-19 | 2018-10-12 | 安吉汽车物流股份有限公司 | 订单运输的分配方法及装置、计算机可读介质 |
CN110516986A (zh) * | 2018-05-21 | 2019-11-29 | 北京京东振世信息技术有限公司 | 包裹生产模式下的集合单组建方法和装置 |
CN110570115A (zh) * | 2019-09-03 | 2019-12-13 | 上海百胜软件股份有限公司 | 处理大规模订单高效分配的方法和*** |
CN110880057A (zh) * | 2018-09-05 | 2020-03-13 | 北京京东振世信息技术有限公司 | 组单方法和装置 |
-
2020
- 2020-03-24 CN CN202010213342.7A patent/CN113450035A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469201A (zh) * | 2015-07-20 | 2016-04-06 | 浙江工业大学 | 一种物流配送中心作业任务处理与调度的方法 |
CN107392543A (zh) * | 2017-07-28 | 2017-11-24 | 网易无尾熊(杭州)科技有限公司 | 信息处理方法、数据处理***、介质和计算设备 |
CN108647810A (zh) * | 2018-04-19 | 2018-10-12 | 安吉汽车物流股份有限公司 | 订单运输的分配方法及装置、计算机可读介质 |
CN110516986A (zh) * | 2018-05-21 | 2019-11-29 | 北京京东振世信息技术有限公司 | 包裹生产模式下的集合单组建方法和装置 |
CN110880057A (zh) * | 2018-09-05 | 2020-03-13 | 北京京东振世信息技术有限公司 | 组单方法和装置 |
CN110570115A (zh) * | 2019-09-03 | 2019-12-13 | 上海百胜软件股份有限公司 | 处理大规模订单高效分配的方法和*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115545396A (zh) * | 2022-08-11 | 2022-12-30 | 江苏新格尔人居科技有限公司 | 一种基于订单实况的门窗生产管理方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7046090B2 (ja) | 出庫方法及び装置 | |
US11681982B2 (en) | Automated guided vehicle control and organizing inventory items using stock keeping unit clusters | |
Pan et al. | Order batching in a pick-and-pass warehousing system with group genetic algorithm | |
US8700752B2 (en) | Optimized efficient LPAR capacity consolidation | |
CN110717697A (zh) | 一种出库定位的方法和装置 | |
CN111589730B (zh) | 一种拣货方法、装置、设备和存储介质 | |
CN111898221A (zh) | 选址方法、装置及计算机可读存储介质 | |
CN110182530B (zh) | 一种仓库管理方法和装置 | |
CN112785215B (zh) | 一种生成拣货路径的方法和装置 | |
CN111507651A (zh) | 应用于人机混合仓库的订单数据处理方法和装置 | |
CN114118888A (zh) | 订单出库的方法和装置 | |
WO2024011971A1 (zh) | 订单的处理方法、装置和计算机可读存储介质 | |
CN113650997B (zh) | 一种物品出库定位方法和装置 | |
CN113450035A (zh) | 任务组建方法及装置、计算机存储介质、电子设备 | |
CN111144796A (zh) | 用于生成理货信息的方法和装置 | |
CN111703802B (zh) | 出入库流程的控制方法和装置、仓储*** | |
Bayram et al. | Optimal order batching in warehouse management: A data-driven robust approach | |
US20210027228A1 (en) | Shipping operation assisting system, method therefor, and storage medium | |
CN109902980A (zh) | 用于业务处理的方法及装置 | |
Roohnavazfar et al. | A hybrid algorithm for the Vehicle Routing Problem with AND/OR Precedence Constraints and time windows | |
JP7414931B1 (ja) | 情報処理装置、情報処理方法、プログラムおよび情報処理システム | |
CN110648103A (zh) | 用于选择仓库中的货品的方法、装置、介质和计算设备 | |
CN112785213B (zh) | 一种仓库拣货单的组建方法和装置 | |
CN114997779A (zh) | 一种仓储处理方法、装置、电子设备及计算机可读介质 | |
CN113627837B (zh) | 集货定位方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |