Task list allocation method, device, equipment, storage medium and program product

CN122596813APending Publication Date: 2026-08-18BEIJING JINGDONG YUANSHENG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510173958.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-17
Publication Date
2026-08-18

AI Technical Summary

Technical Problem

进一步地,还可以通过优化仓内拣货作业场景下的任务单分配问题,达到提升整体拣货效率的目的,而相关的任务单分配方案中,并未充分考虑任务单本身的属性,从而在此基础上实现的任务单分配方案会影响分配结果的合理性或公平性

Benefits of technology

[0010] According to the task order allocation scheme provided in this disclosure, when allocating task orders, the task parameters of each task order among the multiple task orders to be allocated in the current task order processing wave in the warehouse can be obtained. When determining how to allocate the multiple task orders to the corresponding pickers, the task parameters of each task order, including but not limited to picking route length and picking weight, are fully considered. That is, when determining the target allocation strategy for task order allocation, the attributes of each task order itself are fully considered. This ensures that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order corresponding to each picker, the attribute differences between different task orders are taken into account. This ensures the fairness or rationality of task order allocation, so as to ensure that the difference in workload between different pickers is small, thereby improving the efficiency of picking operations in the warehouse and reducing the cost of picking operations in the warehouse.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122596813A_ABST
    Figure CN122596813A_ABST
Patent Text Reader

Abstract

The present disclosure provides a task list allocation method and device, electronic equipment, computer readable storage medium and computer program product, relating to the technical field of computer. The method comprises: obtaining task parameters of each task list in a plurality of task lists; wherein the task parameters of each task list comprise the picking route length and the picking weight of each task list; determining a target allocation strategy for allocating the plurality of task lists to a plurality of pickers based on the task parameters of each task list; wherein the target allocation strategy is used to indicate the correspondence between the task list and the picker and the task list processing order corresponding to each picker. The method takes into account the attribute differences between different task lists when allocating task lists, which can ensure the fairness or reasonableness of task list allocation, thereby ensuring that the work intensity difference between different pickers is small, improving the efficiency of in-warehouse picking operation and reducing the cost of in-warehouse picking operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, specifically to a task allocation method, apparatus, electronic device, storage medium, and program product. Background Technology

[0002] As users place increasingly higher demands on the timeliness of logistics, e-commerce companies need to continuously optimize each link in the logistics supply chain to achieve lower costs and higher efficiency. Warehouses, as a crucial node in the logistics network, are responsible for the centralized storage and rapid outbound processing of goods, impacting the efficiency of the entire goods transportation chain. Therefore, improving the timeliness of warehouse picking operations and reducing costs is key to meeting the timeliness requirements of the logistics supply chain.

[0003] Currently, in warehouse picking operations, batch order picking is commonly used. Orders of similar product categories are combined into a single task order, which is then assigned to pickers for processing. This reduces walking distances during picking and increases the picking volume per unit time. Furthermore, optimizing task order allocation in warehouse picking operations can further improve overall picking efficiency. However, current task order allocation schemes often fail to fully consider the attributes of the task orders themselves, potentially affecting the rationality or fairness of the allocation results. Summary of the Invention

[0004] This disclosure provides a task order allocation method, task order allocation device, electronic device, computer-readable storage medium, and computer program product. By taking into account the attribute differences between different task orders when allocating task orders, the fairness or rationality of task order allocation can be guaranteed. This ensures that the difference in workload between different pickers is small, thereby improving the efficiency of warehouse picking operations and reducing the cost of warehouse picking operations.

[0005] In a first aspect, embodiments of this disclosure propose a task order allocation method, comprising: obtaining task parameters of each task order from a plurality of task orders; wherein the task parameters of each task order include the picking route length and picking weight of each task order; and determining a target allocation strategy for allocating the plurality of task orders to a plurality of pickers based on the task parameters of each task order; wherein the target allocation strategy is used to indicate the correspondence between task orders and pickers and the task order processing order corresponding to each picker.

[0006] Secondly, embodiments of this disclosure provide a task order allocation device, comprising: an acquisition module and a processing module. The acquisition module is configured to acquire task parameters for each of a plurality of task orders; wherein the task parameters for each task order include the picking route length and picking weight of each task order; the processing module is configured to determine a target allocation strategy for allocating the plurality of task orders to a plurality of pickers based on the task parameters of each task order; wherein the target allocation strategy is used to indicate the correspondence between task orders and pickers and the task order processing order for each picker.

[0007] Thirdly, embodiments of this disclosure provide an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to implement the task allocation method as described in any implementation of the first aspect.

[0008] Fourthly, embodiments of this disclosure provide a non-transitory computer-readable storage medium storing computer instructions that enable a computer to implement the task allocation method as described in any implementation of the first aspect.

[0009] Fifthly, embodiments of this disclosure provide a computer program product including a computer program that, when executed by a processor, can implement the task allocation method as described in any implementation of the first aspect.

[0010] According to the task order allocation scheme provided in this disclosure, when allocating task orders, the task parameters of each task order among the multiple task orders to be allocated in the current task order processing wave in the warehouse can be obtained. When determining how to allocate the multiple task orders to the corresponding pickers, the task parameters of each task order, including but not limited to picking route length and picking weight, are fully considered. That is, when determining the target allocation strategy for task order allocation, the attributes of each task order itself are fully considered. This ensures that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order corresponding to each picker, the attribute differences between different task orders are taken into account. This ensures the fairness or rationality of task order allocation, so as to ensure that the difference in workload between different pickers is small, thereby improving the efficiency of picking operations in the warehouse and reducing the cost of picking operations in the warehouse.

[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0012] Other features, objects, and advantages of this disclosure will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0013] Figure 1 This is an exemplary system architecture to which this disclosure can be applied;

[0014] Figure 2 A flowchart of a task allocation method provided in this embodiment of the disclosure;

[0015] Figure 3 A flowchart illustrating another task allocation method provided in this embodiment of the disclosure;

[0016] Figure 4 A flowchart illustrating a task allocation method in an application scenario provided by an embodiment of this disclosure;

[0017] Figure 5 A structural block diagram of a task allocation device provided in an embodiment of this disclosure;

[0018] Figure 6 This is a schematic diagram of the structure of an electronic device suitable for performing a task allocation method, provided as an embodiment of the present disclosure. Detailed Implementation

[0019] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding; these should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description. It should be noted that, unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other.

[0020] It should be noted that the collection, acquisition, storage, processing, transmission, provision, disclosure, and application of user personal information (such as account information) involved in the technical solution disclosed herein are all carried out with the user's knowledge and explicit authorization, comply with the provisions of relevant laws and regulations, and do not violate public order and good morals.

[0021] As users place increasingly higher demands on the timeliness of logistics, e-commerce companies need to continuously optimize each link in the logistics supply chain to achieve lower costs and higher efficiency. Warehouses, as a crucial node in the logistics network, are responsible for the centralized storage and rapid outbound processing of goods, impacting the efficiency of the entire goods transportation chain. Therefore, improving the timeliness of warehouse picking operations and reducing costs is key to meeting the timeliness requirements of the logistics supply chain.

[0022] Currently, in warehouse picking operations, batch order picking is typically employed. During warehouse production, customer orders arrive sequentially. The warehouse production system collects order demands for a period during each processing wave (e.g., two processing waves per day, morning and evening), merges orders of similar categories into a single task order, and then assigns these merged task orders to the corresponding pickers. This allows pickers to reduce walking distances and handling actions, thereby increasing the picking volume per unit time and improving picking efficiency. Furthermore, optimizing task order allocation in warehouse picking operations can further improve overall picking efficiency. However, current task order allocation schemes often fail to fully consider the attributes of the task orders themselves, potentially affecting the rationality or fairness of the allocation results.

[0023] Furthermore, the current task allocation scheme also fails to accurately depict the picking efficiency of pickers. Affected by the picker's own attributes and the attributes of the task itself, the picking efficiency of pickers is not a constant, but will decrease with working hours. Therefore, if the picking efficiency of pickers cannot be accurately depicted in task allocation, the fairness of allocation cannot be guaranteed.

[0024] Therefore, a solution is needed to improve the rationality or fairness of task allocation.

[0025] The specific implementation methods of the present disclosure will now be described in detail with reference to the accompanying drawings.

[0026] Figure 1 An exemplary system architecture 100 is shown, to which embodiments of the task allocation method, task allocation device, electronic device, computer-readable storage medium, and computer program product of the present disclosure can be applied.

[0027] like Figure 1 As shown, system architecture 100 may include terminal devices 101, 102, and 103, a network 104, and a server 105. Network 104 serves as the medium for providing communication links between terminal devices 101, 102, and 103 and server 105. Network 104 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.

[0028] Users can use terminal devices 101, 102, and 103 to interact with server 105 via network 104 to receive or send messages, etc. Various applications for enabling information communication between the terminal devices 101, 102, and 103 and server 105 can be installed. These applications include warehouse management applications, task assignment applications, and instant messaging applications.

[0029] Terminal devices 101, 102, and 103 and server 105 can be either hardware or software. When terminal devices 101, 102, and 103 are hardware, they can be various electronic devices with displays, including but not limited to smartphones, tablets, laptops, and desktop computers. When terminal devices 101, 102, and 103 are software, they can be installed in the aforementioned electronic devices, and can be implemented as multiple software programs or software modules, or as a single software program or software module; no specific limitation is made here. When server 105 is hardware, it can be implemented as a distributed server cluster composed of multiple servers, or as a single server. When server 105 is software, it can be implemented as multiple software programs or software modules, or as a single software program or software module; no specific limitation is made here.

[0030] Server 105 can provide various services through its built-in applications. For example, when running an application that allocates tasks based on the attributes of the task order itself, Server 105 can achieve the following: When allocating task orders, it can obtain the task parameters of each task order among the multiple task orders to be allocated in the current task order processing wave within the warehouse. When determining which of these multiple task orders to assign to the corresponding pickers, it fully considers the task parameters of each task order, including but not limited to picking route length and picking weight. That is, when determining the target allocation strategy for task order allocation, it fully considers the attributes of each task order itself. This ensures that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order for each picker, it takes into account the attribute differences between different task orders, thereby ensuring the fairness or rationality of task order allocation. This minimizes the difference in workload between different pickers, thereby improving the efficiency of warehouse picking operations and reducing the cost of warehouse picking operations.

[0031] It should be noted that, in addition to being obtained from terminal devices 101, 102, and 103 via network 104, the task parameters of each task can also be pre-stored locally on server 105 through various means. Therefore, when server 105 detects that this data is already stored locally (e.g., when starting to process the task parameters of previously stored pending task orders), it can choose to directly retrieve this data from locally. In this case, the exemplary system architecture 100 may also exclude terminal devices 101, 102, and 103 and network 104.

[0032] Since determining the target allocation strategy based on the task parameters of each task order requires significant computing resources and strong computing power, the task order allocation method provided in the subsequent embodiments of this disclosure is generally executed by a server 105 with strong computing power and abundant computing resources. Correspondingly, the task order allocation device is also generally located in the server 105. However, it should also be noted that when terminal devices 101, 102, and 103 also possess sufficient computing power and resources, they can also complete the aforementioned calculations performed by the server 105 through the task order allocation application installed on them, thereby outputting the same results as the server 105. Especially when multiple terminal devices with different computing capabilities exist simultaneously, but the task order allocation application determines that the terminal device has strong computing power and abundant remaining computing resources, it can allow the terminal device to perform the aforementioned calculations, thereby appropriately reducing the computing pressure on the server 105. Accordingly, the task order allocation device can also be located in the terminal devices 101, 102, and 103. In this case, the exemplary system architecture 100 may also exclude the server 105 and the network 104.

[0033] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.

[0034] Please refer to Figure 2 , Figure 2 A flowchart of a task allocation method provided in this disclosure embodiment, wherein process 200 includes the following steps:

[0035] Step 201: Obtain the task parameters of each task order from multiple task orders; wherein, the task parameters of each task order include the picking route length and picking weight of each task order.

[0036] This step is intended for the execution body of the task assignment method (e.g., Figure 1 The server 105 shown obtains the task parameters corresponding to each of the multiple task orders. These task parameters can be used to characterize the attributes of the task order itself, including but not limited to the picking route length (also known as picking distance) and picking weight. Considering that each task order includes multiple orders of similar categories, the picking route length of each task order can be the cumulative picking route length corresponding to all the orders it includes, and the picking weight of each task order can be the cumulative picking weight corresponding to all the orders it includes.

[0037] Step 202: Based on the task parameters of each task order, determine the target allocation strategy for assigning multiple task orders to multiple pickers; wherein, the target allocation strategy is used to indicate the correspondence between task orders and pickers and the processing order of task orders for each picker.

[0038] Based on step 201, this step aims to ensure that the execution entity fully considers the task parameters of each task when determining the target allocation strategy for assigning multiple task orders to multiple pickers. Since the picking route length and / or picking weight of different task orders may be different, the fairness or rationality of task order allocation can be guaranteed by taking into account at least the picking route length and picking weight of each task order when determining the final task order allocation strategy, i.e., the target allocation strategy.

[0039] The target allocation strategy can indicate the correspondence between the finally allocated task orders and pickers, as well as the processing order of all task orders assigned to each picker, i.e., the task order processing sequence corresponding to each picker. In some optional implementations of the embodiments of this disclosure, the correspondence between task orders and pickers in the target allocation strategy can be that a picker can be assigned at least one task order, and a task order needs to be uniquely assigned to a unique picker. Furthermore, in the task order processing sequence corresponding to each picker, the position of any task order in the processing sequence is unique, ranking at the first, last, or middle position of all task orders to be processed by that picker.

[0040] The task order allocation method provided in this disclosure can obtain the task parameters of each task order in the current task order processing wave (e.g., two processing waves in a day, morning and evening) to be allocated in the warehouse. When determining to allocate the multiple task orders to the corresponding pickers, the method fully considers the task parameters of each task order, including but not limited to picking route length and picking weight. That is, when determining the target allocation strategy for task order allocation, the method fully considers the attributes of each task order itself. This ensures that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order corresponding to each picker, the method takes into account the attribute differences between different task orders. This ensures the fairness or rationality of task order allocation, so as to ensure that the difference in workload between different pickers is small, thereby improving the efficiency of warehouse picking operations and reducing the cost of warehouse picking operations.

[0041] Please refer to Figure 3 , Figure 3 A flowchart of another task allocation method provided in this disclosure embodiment, wherein process 300 includes the following steps:

[0042] Step 301: Obtain the task parameters of each task order from multiple task orders; wherein, the task parameters of each task order include the picking route length and picking weight of each task order.

[0043] This step 301 and as follows Figure 2 The steps shown in step 201 are the same; for the same parts, please refer to the corresponding parts of the previous embodiment, which will not be repeated here. Further, the above... Figure 2 Step 202 in the corresponding embodiment can be specifically implemented as steps 302 and 303 as follows.

[0044] Step 302: Based on the genetic algorithm, multiple task orders are randomly assigned to multiple pickers to generate a task order allocation population including a first number of task order allocation individuals; wherein, the task order allocation individuals include a task order sequence determined based on multiple task orders and the picker allocation result corresponding to the task order sequence.

[0045] Step 303: Based on the task allocation population and the task parameters of each task, determine the target allocation strategy for allocating multiple task orders to multiple pickers; wherein, the target allocation strategy is used to indicate the correspondence between task orders and pickers and the task order processing order for each picker.

[0046] Building upon step 301, steps 302 and 303 aim to employ a genetic algorithm (GA) to first randomly assign the multiple task orders to multiple pickers, generating a task order allocation population with a certain group size, i.e., a first number of task order allocation individuals. Then, based on this task order allocation population and the task parameters of each task order, a fairer and more reasonable task order allocation result can be obtained. The task order allocation population serves as the starting point for the search space of a genetic algorithm, which is highly effective in solving complex optimization problems. It plays a crucial role in the genetic algorithm. The task order allocation population can refer to a set of potential task order allocation individuals corresponding to the respective task order allocation schemes. Each task order allocation individual in the population can include a task order sequence determined based on the multiple task orders and the picker allocation result corresponding to that task order sequence.

[0047] It should be noted that the parts related to the target allocation strategy in step 303 can be found in the previous embodiment, such as... Figure 2 The corresponding part of step 202 shown will not be described again here.

[0048] The task allocation method provided in this disclosure can obtain the task parameters of each task in the current task processing wave in the warehouse when allocating task orders. When determining to allocate the multiple task orders to the corresponding pickers, it fully considers the task parameters of each task order, including but not limited to picking route length and picking weight. That is, when determining the target allocation strategy for task order allocation, it fully considers the attributes of each task order itself. Furthermore, when determining the target allocation strategy, it combines a task order allocation population based on a genetic algorithm, which includes task order allocation individuals of a certain size, and searches for the optimal solution suitable for determining the target allocation strategy. This can further ensure the fairness or rationality of task order allocation and improve the efficiency of task order allocation.

[0049] In the above Figure 3 Based on the corresponding implementation, taking a scenario with p task orders and k pickers (where p and k can be integers greater than 1) as an example, the p task orders are randomly assigned to the k pickers using a genetic algorithm, resulting in a task order allocation population of size S (i.e., the first quantity). This population includes S task order allocation individuals (also called solutions or candidate solutions). The task order sequence determined based on multiple task orders included in each task order allocation individual can also be called a task order set. Thus, each task order allocation individual can be divided into two parts, chromosomes q and r, which represent the task order set q = [1, 2, ..., p] ∈ R. p The picking staff allocation result r = [r1, r2, ..., r] corresponding to the task order allocation sequence mentioned above. p ]∈R p , where R p This can represent an individual task order allocation. Further, taking p=5 and k=3 as an example, if the task order set code for a certain task order allocation individual within the task order allocation population is q=[1,2,3,4,5], and the allocation result code is r=[2,3,1,2,1], then this means that the allocation result represented by this individual is: picker 1 picks task orders 3 and 5 in sequence, picker 2 picks task orders 1 and 4 in sequence, and picker 3 picks task order 2.

[0050] In the above Figure 3 Based on the corresponding embodiments, in some optional implementations of the embodiments of this disclosure, step 303 above can be specifically executed as follows:

[0051] Step a): Based on the task allocation fairness threshold and the task parameters of each task, determine the fitness value of each individual in the task allocation population. The value of this task allocation fairness threshold can be set according to specific task allocation needs and / or practical experience, and is not specifically limited here.

[0052] Step b): Update the task assignment individuals in the task assignment population based on the fitness values ​​of each task assignment individual.

[0053] The fitness value of each individual assigned to a task can also be called the fitness value. It is an indicator used to evaluate the quality of an individual in the current task assignment population. An individual with a higher fitness value can be considered a better solution and is more likely to be selected in the subsequent selection process to generate new offspring, i.e., updated task assignment individuals.

[0054] Step c): In response to the fact that the cumulative number of times the task assignment population is updated can be divided by a preset call frequency threshold, the tabu search algorithm is invoked to perform tabu search operations on each updated task assignment individual to obtain each candidate task assignment individual.

[0055] Tabu Search (TS) is a metaheuristic algorithm based on local search, a high-level local search algorithm used to solve complex combinatorial optimization problems. Tabu Search can explore the solution space more effectively, escape local optima, is applicable to various combinatorial optimization problems, and may find a global optimum or a better approximate solution. Furthermore, the preset call frequency threshold can be set according to specific task allocation requirements and / or practical experience, and is not specifically limited here. Additionally, it should be noted that the number of candidate task allocation individuals obtained by performing the Tabu Search operation on each updated task allocation individual is the aforementioned first number; that is, the population size, i.e., the total number of task allocation individuals, remains unchanged after each update of the task allocation population based on the genetic algorithm and the Tabu Search algorithm.

[0056] Step d): In response to the cumulative count reaching a first preset threshold, a target allocation strategy is determined based on the largest fitness value among the individual candidates for task allocation. The value of this first preset threshold can be set according to specific task allocation requirements and / or practical experience, and is not specifically limited here.

[0057] Furthermore, in some optional implementations of the embodiments of this disclosure, the value of the first preset number of times threshold is greater than or equal to the value of the preset call frequency threshold, so as to ensure that the tabu search algorithm can be successfully called to update the individual assigned to each task based on the genetic algorithm, thereby enhancing the diversity of the search and the global search capability.

[0058] In this embodiment, during the iterative update of the task allocation population using a genetic algorithm, the number of updates to the task allocation population is accumulated to obtain a cumulative count. After each update, based on whether the latest cumulative count is divisible by a preset call frequency threshold, it is determined whether to invoke the tabu search algorithm to perform a tabu search operation on each of the latest task allocation individuals in the updated task allocation population. Specifically, if the cumulative count of updates to the task allocation population is determined to be divisible by the preset call frequency threshold, the tabu search algorithm is invoked to perform a tabu search operation on each of the updated task allocation individuals. Thus, by introducing the tabu search algorithm into the genetic algorithm and the task parameters of each task in multiple task orders, the target allocation strategy for assigning multiple task orders to multiple pickers can be determined. This avoids the local optimum output by the genetic algorithm, preventing the updated task allocation individuals in the task allocation population from becoming increasingly similar.

[0059] Furthermore, after obtaining the updated task allocation individuals (i.e., candidate task allocation individuals) based on the tabu search algorithm, it can be determined whether to determine the final target allocation strategy based on the currently obtained candidate task allocation individuals, based on the relationship between the latest cumulative count corresponding to the task allocation population and the iteration count threshold corresponding to the genetic algorithm (i.e., the first preset threshold). Further, if the latest cumulative count corresponding to the task allocation population has reached the iteration threshold, the individual with the highest fitness value among all candidate task allocation individuals can be selected to determine the target allocation strategy, thereby ensuring the accuracy and rationality of the allocation results.

[0060] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, step 303 may further include the following:

[0061] Step e): In response to the fact that the cumulative count value has not reached the first preset count threshold, the cumulative count value is incremented by 1, and the current task allocation individuals in the task allocation population are updated to the candidate task allocation individuals.

[0062] Step f): For each task assignment individual after the update, return to the step of determining the fitness value of each task assignment individual.

[0063] In this embodiment, after obtaining the updated task allocation individuals, i.e., each candidate task allocation individual, based on the tabu search algorithm, if it is determined that the latest cumulative count corresponding to the task allocation population has not reached the iteration count threshold corresponding to the genetic algorithm, i.e., the first preset count threshold, then it means that the optimal task allocation individual for determining the final target allocation strategy cannot be determined at present. Therefore, the task allocation population can be updated based on the candidate task allocation individuals, i.e., the current task allocation individuals in the task allocation population are replaced with each candidate task allocation individual, and the update count, i.e., the cumulative count, of the task allocation population is incremented by 1. For each updated task allocation individual, step a) above is returned to be executed to enter a new round of iteration.

[0064] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, step 303 may further include the following:

[0065] Step g): In response to the fact that the cumulative number of times cannot be divided by the preset call frequency threshold and has not reached the first preset number of times threshold, the cumulative number of times is incremented by 1, and individuals are assigned to each task order after the update. Then, the process returns to the step of determining the fitness value of each task order assigned individual.

[0066] In this embodiment, if, after each update of the task allocation population in the above iteration process, based on whether the latest cumulative count value is divisible by a preset call frequency threshold, it is determined whether to call the tabu search algorithm to perform tabu search operations on each of the latest task allocation individuals in the currently updated task allocation population, if it is determined that the cumulative count value for updating the task allocation population is not divisible by the preset call frequency threshold, and the latest cumulative count value has not yet reached the above iteration count threshold, i.e., the first preset count threshold, then it is temporarily unnecessary to call the tabu search algorithm to continue executing the genetic algorithm for the currently updated task allocation population. That is, the update count of the task allocation population, i.e., the cumulative count, is incremented by 1, and for each updated task allocation individual, the above step a) is returned to be executed to enter a new round of iteration until the value of the cumulative count is divisible by the preset call frequency threshold, at which point the tabu search algorithm is called.

[0067] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, step 303 may further include the following: in response to the fact that the value of the cumulative number of times cannot be divided by a preset call frequency threshold and reaches the first preset number of times threshold, a target allocation strategy is determined based on the latest updated task allocation individuals in the task allocation population; wherein, the target allocation strategy corresponds to the one with the largest fitness value among all the latest updated task allocation individuals in the task allocation population.

[0068] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, step a) can be specifically performed as follows:

[0069] Based on the picking route length and picking weight of each task order, a task order allocation fairness index is determined for the individual task order assignee. If the task order allocation fairness index for the individual task order assignee is less than the task order allocation fairness threshold, the fitness value of the individual task order assignee is set to a preset value. If the task order allocation fairness index for the individual task order assignee is greater than or equal to the task order allocation fairness threshold, the fitness value of the individual task order assignee is determined based on the total time taken for all pickers in the individual task order assignee to complete all task orders.

[0070] In this embodiment, considering that the task parameters (picking route length and / or picking weight) of different task orders may vary, resulting in different workloads, the fitness value of each task order allocation individual can be determined based on the task order allocation fairness index corresponding to the picking route length and picking weight of each task order. Furthermore, the fitness value of each task order allocation individual can be determined based on the relationship between the value of the task order allocation fairness index and the aforementioned task order allocation fairness threshold. Thus, by establishing a task order allocation fairness index and determining the fitness value of each task order allocation individual used for updating the task order allocation population, the rationality of updating task order allocation individuals in the task order allocation population can be ensured. Specifically, if the task order allocation fairness index corresponding to a task order allocation individual does not reach the aforementioned task order allocation fairness threshold, the fitness value of the task order allocation individual can be set to a preset value. If the task order allocation fairness index corresponding to a task order allocation individual reaches the task order allocation fairness threshold, the fitness value of the task order allocation individual can be determined based on the overall time taken for all pickers in the task order allocation individual to complete all task orders. The preset value can be set according to specific task allocation requirements and / or practical experience. In some optional implementations of this disclosure, the preset value can be set to 0.

[0071] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, the method may further include determining the total time for all pickers in the task assignment individual to complete all task orders based on the following:

[0072] Based on the picking route length of the task order, the maximum picking speed of the picker, and the fatigue sensitivity of the picker, the picking time of the task order is determined. Among them, the fatigue sensitivity of the picker is used to characterize the relationship between the picking speed of each picker and the cumulative picking time. Based on the picking time of all task orders corresponding to the picker in the task order allocation individual, the completion time of the task order corresponding to that picker is determined. The largest completion time of the task orders corresponding to all pickers in the task order allocation individual is determined as the overall time for all pickers in the task order allocation individual to complete all task orders.

[0073] In this embodiment, when determining the picking time of each task assigned to each picker in a task order allocation individual, the task parameters of each task order and the fatigue sensitivity of the corresponding picker can be fully considered. Furthermore, based on the picking time of each task order assigned to a picker, the completion time of that picker's corresponding task order can be determined. Thus, the overall completion time for all pickers in a task order allocation individual to complete all task orders can be accurately determined based on the completion time of each picker's individual task order. Since all pickers in each task order allocation individual process their assigned task orders in parallel, the largest of all task order completion times for all pickers can be determined as the overall completion time for all pickers in that task order allocation individual to complete all task orders. That is, within this overall time, each picker can complete all their assigned task orders.

[0074] It should be noted that the longer the overall time for all pickers in each task order allocation individual to complete all task orders, the smaller the fitness value of that task order allocation individual; the target allocation strategy in this embodiment aims to minimize the overall time to complete all task orders.

[0075] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, the step of determining the task allocation fairness index corresponding to the task allocation individual based on the picking route length and picking weight of each task order can be specifically executed as follows:

[0076] Based on the picking route length and picking weight of the task orders corresponding to each picker in the task order allocation individual, the cumulative picking route length and cumulative picking weight of each picker in the task order allocation individual are determined; the sum of the cumulative picking route length and cumulative picking weight of each picker in the task order allocation individual is determined as the cumulative workload of each picker in the task order allocation individual; based on the average cumulative workload of pickers corresponding to the task order allocation individual, the total number of pickers, and the cumulative workload of each picker in the task order allocation individual, the task order allocation fairness index corresponding to the task order allocation individual is determined.

[0077] In this embodiment, the cumulative workload of each picker can be determined based on the picking route length and picking weight of each task assigned to each picker in each task order allocation individual. Then, by combining the average cumulative workload of pickers corresponding to each task order allocation individual and the total number of pickers, the task order allocation fairness index corresponding to each task order allocation individual can be accurately characterized, so as to accurately describe the relationship between the fatigue sensitivity of pickers and their picking efficiency.

[0078] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, the step of updating the task allocation individuals in the task allocation population based on the fitness value of each task allocation individual can be specifically implemented as follows:

[0079] Identify the target task allocation individual with the highest fitness value; based on the roulette wheel method, select a second number of task allocation individuals from the remaining task allocation individuals; wherein, the remaining task allocation individuals include the task allocation individuals other than the target task allocation individual from the first number of task allocation individuals, and the first number is the sum of the second number and the number of target task allocation individuals; according to the preset crossover probability and preset mutation probability, perform crossover and mutation on the target task allocation individual and the second number of task allocation individuals to obtain the updated task allocation individuals in the task allocation population.

[0080] Roulette Wheel Selection is a selection mechanism in genetic algorithms used to select individuals from the current population to generate the next generation. Its basic idea is to determine the probability of an individual being selected based on its fitness value; individuals with higher fitness values ​​have a greater probability of being selected.

[0081] In this embodiment, the target task allocation individual with the highest fitness value can be selected first from the current task allocation population. Then, a roulette wheel selection method can be used to select a second number of task allocation individuals from all task allocation individuals (i.e., the first number of task allocation individuals) excluding the target task allocation individual. This ensures population diversity and is simple to implement. Then, the parameters of the genetic algorithm, namely the preset crossover probability and preset mutation probability, can be used to perform crossover and mutation on the target task allocation individual and the second number of task allocation individuals, thereby updating the task allocation individuals in the task allocation population. Specifically, the crossover and mutation of the target task order allocation individuals and the second number of task order allocation individuals based on preset crossover and mutation probabilities can refer to exchanging the task order sequence and / or picker allocation result between any two task order allocation individuals in the target task order allocation individuals and the second number of task order allocation individuals based on the preset crossover probability. For example, after crossover of task order allocation individuals (q1, r1) and (q2, r2), two new task order allocation individuals (q2, r1) and (q1, r2) are obtained. The mutation also involves transforming the order of task orders assigned to different pickers and / or task orders processed by the same picker within the task order allocation individuals based on the preset mutation probability. For example, continuing with the above task order set encoded as q = [1, 2, 3, 4, 5] and the allocation result encoded as r = [2, 3, 1, 2, 1], after mutation, a new allocation result encoded as r is obtained. ′ =[2,3,1,1,2], which in turn yields a new task allocation individual.

[0082] Furthermore, based on the above embodiments, in some optional implementations of the embodiments of this disclosure, the process of calling the tabu search algorithm to perform tabu search operations on each updated task allocation individual to obtain each candidate task allocation individual in step c) above can be specifically executed as follows:

[0083] Step i): Mutate the updated task order assignment individuals to generate the corresponding neighborhood set, and update the operation corresponding to the current mutation (which may include adjusting the order of each picker and / or the picker corresponding to the task order, which can also be called a solution) in the tabu table with a preset tabu step size; at this time, each operation corresponds to the preset tabu step size;

[0084] Step ii): Remove the task assignment individuals corresponding to the operations recorded in the tabu list (initially empty) from the neighborhood set, calculate the fitness value of each remaining task assignment individual in the neighborhood set, select the task assignment individual with the largest fitness value, obtain the updated (or mutated) task assignment individual, and increment the number of tabu search operations by 1.

[0085] Step iii): Decrement the preset taboo step size corresponding to each operation recorded in the taboo table by 1 until it is reduced to 0. The corresponding operation can continue to be used for the mutation of task order assigned individuals; wherein, any operation recorded in the taboo table can correspond to a task order assigned individual.

[0086] Step iv): In response to the number of times the above tabu search operation is executed reaching the second preset threshold, the currently updated task allocation individuals are taken as candidate task allocation individuals, thereby completing the update of the latest task allocation individuals in the task allocation population selected or output by the genetic algorithm based on the tabu search algorithm.

[0087] Step v): In response to the fact that the number of times the above tabu search operation is executed does not reach the second preset number threshold, return to step i), that is, mutate the individual assigned to the currently updated task list to generate the corresponding neighborhood set until the number of times the above tabu search operation is executed reaches the second preset number threshold.

[0088] In the tabu search algorithm, the neighborhood set refers to the set of solutions reachable from the current solution (i.e., each individual in the task allocation population currently assigned to a task) through a series of allowed operations (such as swaps, moves, etc.). A tabu list (a data structure) is used to restrict the neighborhood set, preventing the algorithm from getting trapped in local optima. The tabu list records solutions or operations visited in the most recent iterations to prevent the algorithm from looping through the solution space. Thus, by dynamically adjusting the contents of the tabu list, the tabu search algorithm can more effectively explore the solution space, escape local optima, and potentially find the global optimum or a better approximate solution.

[0089] To enhance understanding, this disclosure also provides a specific implementation scheme based on a particular application scenario. Please refer to the example below. Figure 4 The process 400 shown may specifically include the following:

[0090] Step 401: Randomly generate an initial population (corresponding to the task allocation population in the above embodiment), let S individuals are randomly generated (corresponding to the first number of task order allocation individuals in the above embodiment). in Let be the first task sequence in the t-th iteration. This is the first allocation result in the t-th iteration.

[0091] Step 402: Calculate the fitness value f(x,Dp,Wp,μ,ρ) for each individual in the population; where Dp represents the picking route length of the task order, Wp represents the picking weight of the task order, and μ represents the fatigue sensitivity of the picker. This represents the fairness index threshold (corresponding to the task allocation fairness threshold in the above embodiment).

[0092] Specifically, the fitness value of x1 can be expressed as Where M is a sufficiently large number, and makespan1(x1) is the completion time of this assignment calculated based on the sorting of x1 (corresponding to the total time for all pickers in the task assignment individual in the above embodiment to complete all task orders). In response to Established, If the value is 1, then the value of f(x1) approaches 0 (corresponding to the preset value in the above embodiment); and in response to Not valid. When the value is 0, f(x1) = 1 / makespan1(x1). Therefore, the larger the fitness value, the shorter the completion time. The determination of makespan1(x1) can be seen in the following process:

[0093] Taking a warehouse collecting P task orders in a certain wave as an example, where the picking route length for task order i to pick all orders is D. i The picking weight is W i .

[0094] Picker fatigue characterization: There are K pickers in the warehouse. The maximum speed at which picker k moves within the aisle is Vmax. k (Corresponding to the maximum picking speed of the picker in the above embodiment), as working time progresses, the picker's speed will decrease according to fatigue level. The moving speed of picker k is expressed as... Where μ k The fatigue sensitivity of picker k is estimated using historical performance. For example, samples of picker k's movement speed changes over time each day can be collected, with a combination of t and v as a sample. Then, by designing an adaptive loss function and training or learning using methods such as gradient descent, μ can be obtained.

[0095] Characterizing allocation fairness: The allocation strategy requires that the picker's cumulative normalized movement distance (AD) be calculated in each allocation. k and cumulative normalized transport weight (AW) k (The cumulative picking route length and cumulative picking weight of each picker in the task allocation individual in the above embodiment) are within a certain fluctuation range. Thus, by utilizing the coefficient of variation c v Construct a fairness indicator ρ.

[0096]

[0097]

[0098] ρ = 1 - c v

[0099] Among them, L k c is the cumulative normalized workload of picker k (corresponding to the cumulative workload of each picker in the above embodiment). v ρ is the coefficient of variation of the cumulative workload of all pickers. The fairness index ρ constructed here is equivalent to the JFI fairness index. It is the average of the cumulative workload of all pickers.

[0100] Considering the dynamic allocation strategy for picking tasks that balances personnel efficiency and allocation fairness, the basic model references the Unrelated Parallel Machine Scheduling Problem (UPMSP) (a non-deterministic polynomial (NP-Hard) problem involving mixed integer programming). The basic model is shown below:

[0101] Symbol Explanation

[0102]

[0103]

[0104] Based on the symbols defined above, a task allocation model that considers personnel efficiency and allocation fairness was established.

[0105]

[0106]

[0107] In summary, the task allocation model is a nonlinear mixed-integer programming model that can characterize employee fatigue and allocation fairness during task picking in the warehouse. To ensure the allocation efficiency of the model under large-scale problems, based on the above modeling problem and combining the advantages of different metaheuristic algorithms, a combined strategy of genetic algorithm and tabu search algorithm is proposed for solving the problem. This strategy utilizes the parallel search capability of the genetic algorithm and the design of the tabu search algorithm to delay getting trapped in local optima. The tabu search algorithm is used as the mutation operator of the genetic algorithm iteration to prevent the genetic algorithm from getting trapped in local solutions. This can accelerate the solution efficiency while ensuring the solution quality.

[0108] Step 403: Select a new generation of the population using a roulette wheel selection method (corresponding to the task allocation population that updated the task allocation individuals in the above embodiment); specifically, sort the individuals in the population from largest to smallest fitness value, retain the individual with the best fitness value (corresponding to the target task allocation individual in the above embodiment), and use a roulette wheel selection method on the remaining individuals (corresponding to the remaining task allocation individuals in the above embodiment). The probability of the i-th individual being selected is: Where N is the number of remaining individuals.

[0109] Step 404: Based on the exchange probability P x and the probability of mutation P y Individuals in the new generation population are randomly swapped and mutated to generate a new generation of individuals (corresponding to the updated task allocation individuals in the above embodiments). Each iteration generates new individuals by simultaneously randomly arranging the task allocation chromosomes and the allocation result chromosomes, which increases the diversity of individuals in the population.

[0110] Step 405: Determine whether the number of iterations t1 of the genetic algorithm (corresponding to the cumulative number in the above embodiment) is divisible by k (corresponding to the preset call frequency threshold in the above embodiment, for example, it can be 10). If yes, execute step 408 to perform local search on the individuals in the new generation population to improve the quality of the individuals in the population; otherwise, execute step 406.

[0111] Step 406: Determine whether t1 is equal to T1 (corresponding to the first preset number threshold in the above embodiment); if yes, execute step 416, otherwise execute step 407.

[0112] Step 407: Let t1 = t1 + 1, return to iterative execution of step 402, until t1 reaches T1.

[0113] Step 408: Invoke the tabu search algorithm.

[0114] Step 409: Initialize the parameters of the tabu search algorithm, including but not limited to the tabu step size L of the tabu list and the number of iterations T2 of the tabu search algorithm (corresponding to the second preset number threshold in the above embodiment).

[0115] Step 410: Generate a neighborhood set; for example, for individuals swap The system agrees to generate a neighborhood set for the picking order of any two task orders among the pickers.

[0116] Step 411: Calculate the optimal solution; specifically, remove the solutions recorded in the taboo table from the neighborhood set, calculate the fitness value of each individual in the neighborhood set, and obtain the optimal solution, i.e., the individual x* with the largest fitness value, thereby realizing the update of individuals in the population.

[0117] Step 412: Update the tabu list; reduce the step size corresponding to x* in the tabu list by 1 (initially L, meaning x* will not be searched in the next L iterations) until it is reduced to 0. Then release the operation or interpretation corresponding to x* and continue to use it for the generation of the neighborhood set. In this way, the tabu search algorithm can escape local optima and increase the probability of obtaining the global optimum.

[0118] Step 413: Determine if t2 is equal to T2; if yes, proceed to step 415, otherwise proceed to step 414.

[0119] Step 414: Let t2 = t2 + 1, return to iterative execution of step 410, until t2 reaches T2.

[0120] Step 415: Tabu search ends, output the updated individual (corresponding to the candidate task allocation individual in the above embodiment), and return to execute step 406.

[0121] Step 416: Output the optimal solution (i.e., obtain the individual corresponding to the target allocation strategy in the above embodiment).

[0122] In this embodiment of the disclosure, when new individuals are generated through the above iteration, the task single chromosome and the allocation result chromosome can be randomly arranged, which can increase the diversity of individuals in the population.

[0123] Genetic algorithms can exhibit phenomena such as "premature convergence" during the iteration process. In this embodiment, in order to improve the efficiency of the algorithm, a global search is first performed using GA, so that the individuals in the population are distributed in most areas of the solution space. After convergence to a certain extent, a local search is then performed using TS, making full use of the advantages of both.

[0124] Further reference Figure 5 As an implementation of the methods shown in the above figures, this disclosure provides an embodiment of a task allocation device, which is similar to... Figures 2-3 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.

[0125] like Figure 5 As shown, the task order allocation device 500 of this embodiment may include an acquisition module 501 and a processing module 502. The acquisition module 501 is configured to acquire task parameters for each task order among multiple task orders; wherein the task parameters for each task order include the picking route length and picking weight of each task order; the processing module 502 is configured to determine a target allocation strategy for allocating multiple task orders to multiple pickers based on the task parameters of each task order; wherein the target allocation strategy is used to indicate the correspondence between task orders and pickers and the task order processing order for each picker.

[0126] In this embodiment, the specific processing of the acquisition module 501 and the processing module 502 in the task allocation device 500 and the resulting technical effects can be referred to respectively. Figure 2 The relevant descriptions of steps 201-202 in the corresponding embodiments will not be repeated here.

[0127] In some optional implementations of this embodiment, the processing module 502 is further configured to: randomly assign multiple task orders to multiple pickers based on a genetic algorithm, generating a task order allocation population including a first number of task order allocation individuals; wherein, the task order allocation individuals include a task order sequence determined based on multiple task orders and the picker allocation result corresponding to the task order sequence; and determine a target allocation strategy based on the task order allocation population and the task parameters of each task order.

[0128] In some optional implementations of this embodiment, the processing module 502 is further configured to: determine the fitness value of each task allocation individual in the task allocation population based on the task allocation fairness threshold and the task parameters of each task; update the task allocation individuals in the task allocation population based on the fitness values ​​of each task allocation individual; in response to the cumulative number of times the task allocation population is updated being divisible by a preset call frequency threshold, invoke the tabu search algorithm to perform a tabu search operation on each updated task allocation individual to obtain each candidate task allocation individual; in response to the cumulative number of times reaching a first preset number of times threshold, determine the target allocation strategy based on the largest fitness value among the candidate task allocation individuals.

[0129] In some optional implementations of this embodiment, the processing module 502 is further configured to: in response to the fact that the value of the cumulative count has not reached the first preset count threshold, increment the value of the cumulative count by 1, and update each current task order allocation individual in the task order allocation population to each candidate task order allocation individual; for each updated task order allocation individual, return to the step of determining the fitness value of each task order allocation individual.

[0130] In some optional implementations of this embodiment, the processing module 502 is further configured to: in response to the fact that the value of the cumulative number of times cannot be divided by the preset call frequency threshold and has not reached the first preset number of times threshold, increment the value of the cumulative number of times by 1, and return to the step of determining the fitness value of each task allocation individual for the updated task order allocation individuals.

[0131] In some optional implementations of this embodiment, the processing module 502 is further configured to: determine the task allocation fairness index corresponding to the task allocation individual based on the picking route length and picking weight of each task order; in response to the task allocation fairness index corresponding to the task allocation individual being less than the task allocation fairness threshold, set the fitness value of the task allocation individual to a preset value; in response to the task allocation fairness index corresponding to the task allocation individual being greater than or equal to the task allocation fairness threshold, determine the fitness value of the task allocation individual based on the overall time taken for all pickers in the task allocation individual to complete all task orders.

[0132] In some optional implementations of this embodiment, the processing module 502 is further configured to: determine the picking time of the task order based on the picking route length of the task order, the maximum picking speed of the picker, and the fatigue sensitivity of the picker; wherein, the fatigue sensitivity of the picker is used to characterize the relationship between the picking speed of each picker and the cumulative picking time; determine the task order completion time corresponding to the picker based on the picking time of all task orders corresponding to the picker in the task order allocation individual; and determine the largest of the task order completion times corresponding to each picker in the task order allocation individual as the overall time for all pickers in the task order allocation individual to complete all task orders.

[0133] In some optional implementations of this embodiment, the processing module 502 is further configured to: determine the cumulative picking path length and cumulative picking weight of each picker in the task order allocation individual based on the picking path length and picking weight of the task order corresponding to each picker in the task order allocation individual; determine the cumulative workload of each picker in the task order allocation individual by summing the cumulative picking path length and cumulative picking weight of each picker in the task order allocation individual; and determine the task order allocation fairness index corresponding to the task order allocation individual based on the average cumulative workload of the pickers corresponding to the task order allocation individual, the total number of pickers, and the cumulative workload of each picker in the task order allocation individual.

[0134] In some optional implementations of this embodiment, the processing module 502 is further configured to: determine the target task allocation individual with the largest fitness value; select a second number of task allocation individuals from the remaining task allocation individuals based on the roulette wheel method; wherein the remaining task allocation individuals include task allocation individuals other than the target task allocation individual from the first number of task allocation individuals, and the first number is the sum of the second number and the number of target task allocation individuals; and perform crossover and mutation on the target task allocation individual and the second number of task allocation individuals according to the preset crossover probability and the preset mutation probability to obtain the updated task allocation individuals in the task allocation population.

[0135] This embodiment exists as a device embodiment corresponding to the above method embodiment. When allocating task orders, the task order allocation device can obtain the task parameters of each task order among the multiple task orders to be allocated in the current task order processing wave in the warehouse. When determining to allocate the multiple task orders to the corresponding pickers, it fully considers the task parameters of each task order, including but not limited to picking route length and picking weight. That is, when determining the target allocation strategy for task order allocation, it fully considers the attributes of each task order itself. This can ensure that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order corresponding to each picker, the attribute differences between different task orders are taken into account. This ensures the fairness or rationality of task order allocation, so as to ensure that the difference in workload between different pickers is small, thereby improving the efficiency of picking operations in the warehouse and reducing the cost of picking operations in the warehouse.

[0136] According to embodiments of the present disclosure, the present disclosure also provides an electronic device, the electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to implement the task allocation method described in any of the above embodiments.

[0137] According to embodiments of this disclosure, this disclosure also provides a non-transitory computer-readable storage medium storing computer instructions that enable a computer to implement the task allocation method described in any of the above embodiments when executed.

[0138] According to embodiments of this disclosure, this disclosure also provides a computer program product, which includes a computer program that, when executed by a processor, can implement the task allocation method described in any of the above embodiments.

[0139] Figure 6 A schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0140] like Figure 6As shown, the electronic device 600 includes a computing unit 601, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. The RAM 603 may also store various programs and data required for the operation of the electronic device 600. The computing unit 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0141] Multiple components in electronic device 600 are connected to I / O interface 605, including: input unit 606, such as keyboard, mouse, etc.; output unit 607, such as various types of displays, speakers, etc.; storage unit 608, such as disk, optical disk, etc.; and communication unit 609, such as network card, modem, wireless transceiver, etc. Communication unit 609 allows electronic device 600 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0142] The computing unit 601 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 601 performs the various methods and processes described above, such as the task allocation method. For example, in some embodiments, the task allocation method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by the computing unit 601, one or more steps of the task allocation method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the task allocation method by any other suitable means (e.g., by means of firmware).

[0143] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0144] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0145] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0146] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0147] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0148] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and Virtual Private Server (VPS) services, such as high management difficulty and weak business scalability.

[0149] According to the task order allocation scheme of this disclosure, when allocating task orders, the task parameters of each task order among the multiple task orders to be allocated in the current task order processing wave in the warehouse can be obtained. When determining how to allocate the multiple task orders to the corresponding pickers, the task parameters of each task order, including but not limited to picking route length and picking weight, are fully considered. That is, when determining the target allocation strategy for task order allocation, the attributes of each task order itself are fully considered. This ensures that when determining the correspondence between the task orders indicated by the target allocation strategy and the pickers, as well as the task order processing order corresponding to each picker, the attribute differences between different task orders are taken into account. This ensures the fairness or rationality of task order allocation, so as to ensure that the difference in workload between different pickers is small, thereby improving the efficiency of picking operations in the warehouse and reducing the cost of picking operations in the warehouse.

[0150] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0151] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A task assignment method, comprising: Retrieve the task parameters of each task order from multiple task orders; the task parameters of each task order include the picking route length and picking weight of each task order. Based on the task parameters of each task order, a target allocation strategy is determined for assigning the multiple task orders to multiple pickers; wherein, the target allocation strategy is used to indicate the correspondence between task orders and pickers and the processing order of task orders for each picker.

2. The method according to claim 1, wherein, The step of determining a target allocation strategy for assigning the multiple task orders to multiple pickers based on the task parameters of each task order includes: Based on a genetic algorithm, the multiple task orders are randomly assigned to the multiple pickers, generating a task order allocation population including a first number of task order allocation individuals; wherein, the task order allocation individuals include a task order sequence determined based on the multiple task orders and the picker allocation result corresponding to the task order sequence; The target allocation strategy is determined based on the task allocation population and the task parameters of each task.

3. The method according to claim 2, wherein, The determination of the target allocation strategy based on the task allocation population and the task parameters of each task order includes: Based on the task allocation fairness threshold and the task parameters of each task, the fitness value of each individual in the task allocation population is determined. Update the task assignment individuals in the task assignment population based on the fitness value of each task assignment individual. In response to the fact that the cumulative number of times the task allocation population is updated can be divided by a preset call frequency threshold, the tabu search algorithm is invoked to perform tabu search operations on each updated task allocation individual to obtain each candidate task allocation individual. In response to the cumulative number of times reaching a first preset number of times threshold, the target allocation strategy is determined based on the largest fitness value among the individual corresponding to each candidate task.

4. The method according to claim 3, further comprising: In response to the fact that the value of the cumulative number of times has not reached the first preset number of times threshold, the value of the cumulative number of times is incremented by 1, and the current task allocation individuals in the task allocation population are updated to the candidate task allocation individuals. For each task assignment individual after the update, return to the steps to determine the fitness value of each task assignment individual.

5. The method according to claim 3, further comprising: In response to the fact that the value of the cumulative number of times cannot be divided by the preset call frequency threshold and has not reached the first preset number of times threshold, the value of the cumulative number of times is incremented by 1, and for each task assigned individual after the update, the process returns to the step of determining the fitness value of each task assigned individual.

6. The method according to claim 3, wherein, The process of determining the fitness value of each individual in the task allocation population based on the task allocation fairness threshold and the task parameters of each task includes: Based on the picking route length and picking weight of each task order, determine the task order allocation fairness index corresponding to the individual task order allocation; In response to the task allocation fairness index corresponding to the task allocation individual being less than the task allocation fairness threshold, the fitness value of the task allocation individual is set to a preset value. In response to a task allocation fairness index corresponding to a task allocation individual being greater than or equal to the task allocation fairness threshold, the fitness value of the task allocation individual is determined based on the total time taken for all pickers in the task allocation individual to complete all task orders.

7. The method according to claim 6, further comprising: Based on the picking route length of the task order, the maximum picking speed of the picker, and the fatigue sensitivity of the picker, the picking time of the task order is determined; among them, the fatigue sensitivity of the picker is used to characterize the relationship between the picking speed of each picker and the cumulative picking time. Based on the picking time of all the picking orders corresponding to the picker in the task order allocation individual, the completion time of the task order corresponding to the picker is determined. The longest completion time for each picker in the task order allocation individual is determined as the total completion time for all pickers in that task order allocation individual to complete all task orders.

8. The method according to claim 6, wherein, The method for determining the fairness index of task allocation for each individual task order based on the picking route length and picking weight of each task order includes: Based on the picking route length and picking weight of the task orders corresponding to each picker in the task order allocation individual, determine the cumulative picking route length and cumulative picking weight of each picker in the task order allocation individual. The cumulative picking route length and cumulative picking weight of each picker in the task order allocation individual are summed to determine the cumulative workload of each picker in the task order allocation individual. Based on the average cumulative workload of pickers corresponding to the task order allocation individual, the total number of pickers, and the cumulative workload of each picker in the task order allocation individual, the task order allocation fairness index corresponding to the task order allocation individual is determined.

9. The method according to claim 3, wherein, The step of updating the task assignment individuals in the task assignment population based on the fitness value of each task assignment individual includes: Determine the target task with the highest fitness value and assign it to an individual; Based on the roulette wheel method, a second number of task order allocation individuals are selected from the remaining task order allocation individuals; wherein, the remaining task order allocation individuals include the task order allocation individuals other than the target task order allocation individual from the first number of task order allocation individuals, and the first number is the sum of the second number and the number of the target task order allocation individual; Based on the preset crossover probability and preset mutation probability, crossover and mutation are performed on the target task allocation individual and the second number of task allocation individuals to obtain the updated task allocation individuals in the task allocation population.

10. A task allocation device, comprising: The acquisition module is configured to acquire the task parameters of each task in multiple task orders; wherein, the task parameters of each task order include the picking route length and picking weight of each task order. The processing module is configured to determine a target allocation strategy for assigning the multiple task orders to multiple pickers based on the task parameters of each task order; wherein the target allocation strategy is used to indicate the correspondence between task orders and pickers and the processing order of task orders for each picker.

11. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the task allocation method according to any one of claims 1-9.

12. A non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform the task allocation method according to any one of claims 1-9.

13. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the task allocation method according to any one of claims 1-9.