Complement task allocation method, device and storage medium
By allocating supplementary coding tasks in the supplementary coding server based on a balanced allocation strategy, the problem of low supplementary coding efficiency caused by fuzzy or missing package waybill information in the sorting system is solved. This enables supplementary coding personnel to obtain package images in advance, thereby improving the processing speed and success rate of supplementary coding tasks.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENZHEN S F TAISEN HLDG (GRP) CO LTD
- Filing Date
- 2024-12-28
- Publication Date
- 2026-06-30
AI Technical Summary
In existing sorting systems, unclear or missing package waybill information causes excessively long waiting times for package image transmission by the code replacement personnel, reducing code replacement efficiency.
After receiving the target coding task from the sorting system, the coding server distributes the task to the target coding client based on a balanced allocation strategy, ensuring that the coding client obtains the package image in advance and reduces waiting time.
It improved the efficiency of code replacement personnel, reduced the waiting time for package image transmission, and increased the processing speed and success rate of code replacement tasks.
Smart Images

Figure CN122298676A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of logistics technology, specifically to a method, device, and storage medium for assigning code completion tasks. Background Technology
[0002] The logistics sorting system utilizes machine vision technology to identify waybill images on packages, achieving efficient and accurate product classification and delivery. As packages move along the conveyor belt, high-definition cameras capture images of the waybills on the packages. The sorting system identifies the waybill number by scanning the barcode in the waybill image and then queries the company's database for the corresponding destination based on the identified waybill number. If destination information is available, the package can be automatically sorted successfully; otherwise, it is marked as an abnormal package.
[0003] However, during transportation, packages may experience compression, wear and tear, or contamination, resulting in blurred or missing waybill information, causing sorting system failures. In such cases, personnel are needed to add missing waybill information. These personnel obtain photos of the packages taken by the sorting system through a waybill client and input the missing information. Summary of the Invention
[0004] In view of this, this application aims to provide a method, device and storage medium for allocating code replacement tasks, which enables the code replacement client to obtain the package image of the code replacement task in advance, reduces the waiting time for code replacement personnel to wait for the transmission of the package image, and thus improves the code replacement efficiency of code replacement personnel.
[0005] According to a first aspect of this application, a method for allocating code replacement tasks is provided, comprising: receiving a target code replacement task for a target package from a sorting system; the target code replacement task being used to instruct the replacement of missing logistics information in the waybill of the target package based on a package image of the target package; determining each available code replacement client for the target code replacement task, and a task list for each available code replacement client; the task list being used to record incomplete code replacement tasks at the corresponding code replacement client; the code replacement client being used to obtain the code replacement tasks and their corresponding package images from the corresponding task list, and to generate a code replacement result corresponding to the code replacement task based on the operation of the code replacement personnel; selecting a target code replacement client to process the target code replacement task based on a balanced allocation strategy and the task lists of each available code replacement client; and adding the target code replacement task to the task list of the target code replacement client.
[0006] According to a second aspect of this application, an electronic device is provided, comprising: a processor; a memory for storing processor-executable instructions; the processor being configured to perform the method described in any of the above embodiments.
[0007] According to a third aspect of this application, a computer-readable storage medium is provided, the storage medium storing a computer program for performing the methods described in any of the above embodiments.
[0008] This application provides a method, device, and storage medium for assigning code replacement tasks. The solution includes: receiving a code replacement task for a target package from a sorting system; determining each available code replacement client for the target code replacement task and a task list for each available client; then, based on a balanced allocation strategy, selecting a target code replacement client to process the target code replacement task according to the task lists of each available client; and adding the target code replacement task to the task list of the target client. This allows the code replacement client to obtain the code replacement tasks and their corresponding package images from the task list in advance, reducing the waiting time for code replacement personnel to receive package images, thereby improving the code replacement efficiency. Attached Figure Description
[0009] Figure 1 The diagram shown is a schematic representation of an implementation environment provided in an embodiment of this application.
[0010] Figure 2 The diagram shown is a flowchart of a two's complement task allocation method provided in one embodiment of this application.
[0011] Figure 3 The diagram shown is a block diagram of a complement task allocation device provided in one embodiment of this application.
[0012] Figure 4 The diagram shown is a structural block diagram of an electronic device provided in one embodiment of this application. Detailed Implementation
[0013] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0014] Application Overview
[0015] The existing sorting system first identifies the package's tracking number using a camera, then queries the company's database for the corresponding destination based on the identified tracking number. If destination information is available, automatic sorting is successful; otherwise, the package is marked as an abnormal package and removed from the abnormal sorting chute for manual processing. When sorting volume is large, many packages will be removed from the abnormal sorting chute, leading to low efficiency and potential inventory buildup. If the replacement code result is obtained before the abnormal package is removed from the abnormal sorting chute, the abnormal package can be sorted without manual processing.
[0016] The general process of code replacement is as follows: When the code replacement personnel begin to process the code replacement task of the sorting system, the package image collected by the sorting system is displayed on the code replacement client. The code replacement personnel read the missing logistics information from the package image and input it into the code replacement client as the code replacement result.
[0017] In related technologies, the coding server typically issues a new coding task and its corresponding package image only after the client submits the coding result of the current coding task. The coding personnel then have to wait for the package image transmission to complete before they can read the missing logistics information from it. Clearly, the package image transmission process consumes the coding personnel's time, resulting in low coding efficiency.
[0018] To address the aforementioned issues, this embodiment of the application sets up a task list for each coding client to perform coding tasks. After the coding server receives the target coding task from the sorting system, it allocates the target coding task to the target coding client based on a balanced allocation strategy. This allows the coding client to obtain the package image of the coding task in advance, reducing the waiting time for coding personnel to receive the package image, thereby improving the coding efficiency of the coding personnel.
[0019] After introducing the basic principles of this application, various non-limiting embodiments of this application will be described in detail below with reference to the accompanying drawings.
[0020] Exemplary System
[0021] Figure 1 The diagram illustrates an implementation environment provided in this application embodiment. This implementation environment includes a sorting system 110, a code replacement server 120, and a code replacement client 130. Generally, there are multiple sorting systems 110, code replacement servers 120, and code replacement clients 130 in this implementation environment; no specific limitation is made here. The sorting system 110 and the code replacement server 120 are connected via a communication network. The code replacement server 120 and the code replacement client 130 are connected via a communication network. Optionally, the communication network can be a wired network or a wireless network.
[0022] The sorting system 110 can capture images of packages and identify the barcodes in the waybill images using barcode recognition technology to obtain the waybill number, thereby achieving efficient and accurate product classification and delivery. When an unidentifiable abnormal package is encountered, a supplementary barcode request is generated for the abnormal package.
[0023] The code replacement server 120 can receive code replacement requests sent by the sorting system 110 and obtain the corresponding package images, thereby generating code replacement tasks and distributing them to each code replacement client 130. Before distributing the code replacement tasks, the code replacement server 120 can also perform at least one preprocessing operation on the package images, such as waybill cutting, straightening, and text recognition.
[0024] The supplementary coding client 130 is used to receive the supplementary coding task and its corresponding package image, display the package image and obtain the supplementary coding result of the supplementary coding personnel for the supplementary coding task, and feed the supplementary coding result back to the sorting system 110 through the supplementary coding server 120.
[0025] The complement code client 130 can be a general-purpose computer or a computer device composed of dedicated integrated circuits, etc., and this application embodiment does not limit this. For example, the complement code client 130 can be a mobile terminal device such as a tablet computer, or it can be a personal computer (PC), such as a laptop computer and a desktop computer, etc. Those skilled in the art will know that the number of the above-mentioned complement code clients 130 can be one or more, and their types can be the same or different. For example, there can be one complement code client 130, or there can be dozens or hundreds of complement code clients 130, or more. This application embodiment does not limit the number and device type of the complement code clients 130.
[0026] The complement server 120 may be a single server, or a combination of several servers, or a virtualization platform, or a cloud computing service center; this application embodiment does not limit this.
[0027] Exemplary methods
[0028] Figure 2 This is a flowchart illustrating a complement task allocation method provided in one embodiment of this application. Figure 2 The method described is executed by the complement server 120, but this embodiment is not limited thereto. The server can be a single server, or a combination of several servers, or a virtualization platform, or a cloud computing service center; this embodiment does not limit this. Figure 2 As shown, the method includes the following:
[0029] Step S210: Receive a target replenishment task for the target package from the sorting system; the target replenishment task is used to instruct the replenishment personnel to supplement the missing logistics information in the waybill of the target package based on the package image of the target package.
[0030] In this embodiment, the code supplementation task is generated based on a code supplementation request generated by the sorting system. It instructs code supplementation personnel to supplement missing logistics information in the waybill of the target package based on the package image. The target code supplementation task is the code supplementation task that has not yet been assigned to the code supplementation client.
[0031] In this embodiment of the application, the waybill may include an image code (such as a barcode or QR code) recording the waybill number, as well as information such as the waybill number, shipper information, consignee information, carrier information, origin, and destination.
[0032] In this embodiment of the application, the missing logistics information may be a waybill number, destination address, etc. that the sorting system failed to identify, and is not specifically limited here.
[0033] In this embodiment of the application, the package image may include the original image acquired for the target package, and may also include a waybill image that has undergone preprocessing such as cropping and straightening of the original image.
[0034] Step S220: Determine each available coding client for the target coding task, and a task list for each available coding client; the task list is used to record the unfinished coding tasks at the corresponding coding client; the coding client is used to obtain the coding tasks in the corresponding task list and their corresponding package images, and to generate the coding results corresponding to the coding tasks based on the operations of the coding personnel.
[0035] In this embodiment of the application, the code replacement client is used to obtain the code replacement tasks and their corresponding package images from the corresponding task list, display the package image of the current code replacement task, receive the operations of the code replacement personnel and generate the code replacement result corresponding to the current code replacement task accordingly, and feed the code replacement result back to the code replacement server.
[0036] In this embodiment, the available complement code client refers to a complement code client capable of processing the target complement code task. The filtering criteria for the available complement code client include at least: the complement code client is online and in complement code state; the filtering criteria may also include: the target complement code task is within the service range of the complement code client; and the number of uncompleted tasks at the complement code client has not reached the maximum task volume.
[0037] In this embodiment, the task list is used to record any incomplete complementation tasks at the corresponding complementation client. Once a complementation task is completed, it is removed from its corresponding complementation task list.
[0038] In this embodiment of the application, the person responsible for the code replacement may be a staff member who processes the code replacement task, that is, an operator of the code replacement client.
[0039] Step S230: Based on the balanced allocation strategy, select the target complement client to process the target complement task according to the task list of each available complement client.
[0040] In this embodiment, the balanced allocation strategy is used to evenly distribute the complementation task to each complementation client. This balanced allocation includes not only average allocation and round-robin allocation, but also allocation of the target complementation task to the available complementation client with the shortest estimated waiting time based on the processing speed of each available complementation client and the existing complementation tasks in the task list.
[0041] In this embodiment, the target complement client can be the available complement client with the fewest complement tasks in the task list, or the available complement client with the shortest estimated waiting time. The estimated waiting time can be calculated based on the processing speed of each available complement client and the existing complement tasks in the task list.
[0042] Step S240: Add the target complement task to the task list of the target complement client.
[0043] In this embodiment, after receiving a coding task for a target package from the sorting system, the system determines each available coding client for the target coding task and a task list for each available coding client. Then, based on a balanced allocation strategy, a target coding client is selected to process the target coding task according to the task lists of each available coding client. The target coding task is then added to the task list of the target coding client. This allows the coding client to obtain the coding tasks and their corresponding package images from the task list in advance, reducing the waiting time for coding personnel to receive package images, thereby improving the coding efficiency of the coding personnel.
[0044] based on Figure 2 In addition to the method described in the embodiments of this specification, some specific implementation schemes of the method are also provided, which will be described below.
[0045] In practical applications, when there are many replenishment requests at the sorting system, the replenishment client may have too many replenishment tasks in its replenishment list. Processing the earliest replenishment request sequentially means that the corresponding package may have already been removed from the error checkpoint before the replenishment is completed, causing more abnormal packages to be removed from the error checkpoint due to the replenishment time it occupies. Based on this, the embodiments in this specification also provide some specific implementation schemes to automatically cancel the earliest replenishment task when there are too many replenishment tasks. The specific implementation is as follows:
[0046] Optionally, determining each available complement client for the target complement task includes: determining the number of unfinished tasks at each complement client based on the task list of each complement client; if there is a complement client whose number of unfinished tasks has not reached the maximum number of tasks, then determining that complement client as the available complement client; if the number of unfinished tasks of all complement clients has reached the maximum number of tasks, then canceling the complement task with the earliest task request time.
[0047] In this embodiment of the application, the number of incomplete tasks is used to describe the number of incomplete code completion tasks in the task list, and can be used to reflect the busyness of the code completion personnel at the code completion client.
[0048] In this embodiment of the application, determining the number of unfinished tasks at each complement code client based on the task list of each complement code client includes: for each complement code client, determining the number of complement code tasks in the task list of that complement code client to obtain the number of unfinished tasks; the maximum number of tasks is used to represent the maximum number of tasks allowed to exist in the task list.
[0049] In this embodiment, the maximum task volume represents the maximum value of the unfinished task volume. The maximum task volume corresponding to each coding client can be uniformly set to the same value. The maximum task volume can also be set according to the processing speed of the coding personnel at the coding client; specifically, the statistical value (mean, median, or mode) of the coding time spent by the coding personnel in processing the coding task is determined, and the quotient of the longest waiting time of the coding task and the statistical value of the coding time is calculated to obtain the maximum task volume corresponding to the coding personnel.
[0050] In this embodiment of the application, the available complement code client can be a complement code client whose incomplete task amount has not reached the maximum task amount.
[0051] In this embodiment of the application, the task request time may be the moment when the sorting system determines that it cannot obtain logistics information, the time when the package image of the target package is collected, the time when the sorting system generates a supplementary code request, or the time when the supplementary code server receives the supplementary code request from the sorting system.
[0052] In this embodiment of the application, after canceling the earliest complement code task, the method further includes: adding the target complement code task to the original task list that was located before the earliest complement code task.
[0053] In this embodiment, based on the task list of each complement code client, the number of unfinished tasks at each complement code client is determined, and complement code clients whose unfinished task volume has not reached the maximum task volume are identified as available complement code clients. If the number of unfinished tasks of all complement code clients reaches the maximum task volume, the complement code task with the earliest task request time is canceled. Therefore, when there are too many complement code tasks, the earliest task request time is proactively abandoned, allowing operation time for other complement code tasks and improving the overall success rate of complement code tasks.
[0054] To improve the balance and efficiency of two's complement task allocation, this application provides an optional embodiment, the specific implementation of which is described below.
[0055] Optionally, the step of selecting the target complement client for processing the target complement task based on the balanced allocation strategy and the task list of each available complement client includes: determining the available complement client with the fewest unfinished tasks as the target complement client for processing the target complement task.
[0056] In this embodiment, the number of unfinished tasks is determined based on the number of code completion tasks in the task list. Specifically, the number of unfinished tasks is the number of code completion tasks in the task list, or the product of the number of code completion tasks in the task list and a speed conversion factor. The speed conversion factor is used to represent the speed at which the code completion personnel at the code completion client process code completion tasks, and is calculated as follows: the statistical value (mean, median, or mode) of the code completion time spent by the code completion personnel in processing the code completion tasks is determined, and the ratio of the statistical value of the code completion time to the preset code completion time is calculated to obtain the speed conversion factor.
[0057] In this embodiment of the application, the maximum number of tasks is used to represent the maximum number of tasks allowed to exist in the task list.
[0058] In this embodiment, the target complement task is directly assigned to the available complement client with the fewest unfinished tasks. This not only simplifies the task assignment process but also ensures the balance and fairness of task assignment. Furthermore, it enables assignment based on processing speed, which helps to achieve rapid response and efficient processing of complement tasks.
[0059] In practical applications, if the target complement task is assigned to the available complement client with the fewest tasks in the task list, it is very likely that multiple available complement clients with the fewest tasks will exist simultaneously. To further improve the balance of complement task allocation in this situation, this application provides an optional embodiment, the specific implementation of which is described below.
[0060] Optionally, the step of selecting the target complement client for processing the target complement task based on the balanced allocation strategy and the task list of each available complement client includes: determining the available complement client with the fewest unfinished tasks to obtain candidate complement clients; if the number of candidate complement clients is greater than one, then selecting the candidate complement client with the earliest last allocation time of the complement task as the target complement client; or, selecting the candidate complement client with the earliest last completion time of the complement task as the target complement client.
[0061] In this embodiment, the candidate complement client is the available complement client with the fewest uncompleted tasks. If there is only one candidate complement client, then the candidate complement client is directly selected as the target complement client.
[0062] In this embodiment of the application, the allocation time is the time when the two's complement server adds the target two's complement task to the task list corresponding to the two's complement client.
[0063] In this embodiment of the application, the completion time is the time when the two's complement client last sent the two's complement result to the two's complement server.
[0064] In this embodiment, if there are multiple candidate clients with the fewest uncompleted tasks, the previous allocation time and / or previous completion time of the coding task are further considered, and the candidate client with the earliest previous allocation time or previous completion time is selected as the target coding client. This improves the balance of coding task allocation in this situation.
[0065] In practical applications, to expedite the processing of code replacement tasks, code replacement personnel can perform text recognition processing on the waybill number area in the package image before processing the task. If the waybill number recognition result is complete, the code replacement personnel will likely only need to verify the result against the package image. If the waybill number recognition result is incomplete or missing, it needs to be completed based on the package image. If the waybill number still cannot be completed, a fuzzy search using the incomplete waybill number is required to obtain the correct and complete number. It is clear that the completeness of the waybill number recognition result directly affects the processing time of the code replacement task. The number of code replacement tasks in the task list cannot accurately reflect the amount of unfinished tasks at the code replacement client.
[0066] Based on this, the embodiments of this specification also provide some specific implementation schemes to accurately compensate for the incomplete task amount at the client end, and the specific implementation is as follows:
[0067] Optionally, the code completion task is used to instruct the completion of missing waybill numbers in the waybill of the target package based on the package image and the waybill number recognition result obtained by text recognition processing of the waybill number area in the package image; the method further includes: for each code completion task, determining the estimated processing time of the code completion task based on the completeness of the waybill number recognition result; determining the amount of unfinished tasks at the code completion client based on the task list of each code completion client includes: for each code completion client's task list, calculating the sum of the estimated processing times of each code completion task in the task list to obtain the amount of unfinished tasks at the code completion client; the maximum amount of tasks is used to represent the maximum value of the sum of the estimated processing times of each code completion task in the task list.
[0068] In this embodiment of the application, the code supplementation task is used to supplement the missing waybill number in the waybill of the target package based on the package image and waybill number recognition results.
[0069] In this embodiment of the application, the waybill number recognition result is the text recognition result obtained by performing text recognition processing on the waybill number area in the package image.
[0070] In this embodiment, the completeness of the waybill number identification result refers to the degree of consistency between the waybill number identification result and the waybill number numbering rules. For example, the number of digits in the waybill number identification result. The completeness level indicates whether a waybill number identification result has been obtained, and whether the waybill number in the identification result is complete.
[0071] In this embodiment, the estimated processing time is negatively correlated with the completeness of the waybill number recognition result. That is, the higher the completeness of the waybill number recognition result, the shorter the estimated processing time for the code completion task. Conversely, the lower the completeness of the waybill number recognition result, the longer the estimated processing time.
[0072] In this embodiment, the unfinished task quantity represents the sum of the estimated processing times of all two's complement tasks in the task list. Correspondingly, the maximum task quantity represents the maximum value of the sum of the estimated processing times of all two's complement tasks in the task list.
[0073] In this embodiment of the application, the estimated processing time of each code-supplementing task in the task list is determined based on the completeness of the waybill number identification result of each code-supplementing task, thereby accurately calculating the amount of unfinished tasks at the code-supplementing client, which helps to improve the balance of code-supplementing task allocation.
[0074] In practical applications, once a package is identified as abnormal, the time available for re-coding is extremely limited. If the re-coding task takes too long, even if the correct waybill number is obtained, the abnormal package may have already been removed from the error checkpoint or entered the next sorting process on the circular sorting machine. Furthermore, it consumes processing time for other unprocessed re-coding tasks, causing more abnormal packages to be removed from the error checkpoint. Therefore, this specification provides some specific implementation schemes to automatically terminate re-coding tasks with excessively long waiting times, as follows:
[0075] Optionally, after adding the target complementation task to the task list of the target complementation client, the method further includes: canceling the complementation task if the complementation waiting time exceeds a preset maximum waiting time.
[0076] In this embodiment, the code completion waiting time can be the duration between the code completion task request time and the current time. The task request time can be the moment when the sorting system determines that it cannot obtain logistics information, the time when the package image of the target package is acquired, the time when the sorting system generates the code completion request, or the time when the code completion server receives the code completion request from the sorting system.
[0077] In this embodiment of the application, the maximum waiting time can be the maximum time that the code completion task is allowed to wait, and can be set according to the sorting process.
[0078] In this embodiment of the application, by setting a maximum waiting time, the code completion tasks with excessively long waiting times are automatically abandoned, and resources and time are allocated to other code completion tasks that are more likely to succeed, thereby improving the overall code completion efficiency. This helps to reduce the number of abnormal packages that are taken offline at the abnormal port and avoids package backlog.
[0079] In this embodiment, the replenishment personnel need to select or switch the sorting equipment they are responsible for replenishing based on actual production conditions. Based on this, this specification also provides some specific implementation schemes that allocate replenishment tasks according to the service scope of each replenishment personnel, as follows:
[0080] Optionally, the target coding task records the device identification information of the target sorting device that generated the target coding task; determining each available coding client for the target coding task includes: obtaining the service range of currently online coding clients; the service range is used to represent the set of sorting devices served by the corresponding coding client; and filtering the available coding clients from the online coding clients according to the device identification information and the service range of the online coding clients.
[0081] In this embodiment of the application, the service scope refers to the processing of coding tasks generated by sorting devices in a set of sorting devices by coding personnel. The set of sorting devices includes device identification information of the coding devices served by the coding personnel.
[0082] In this embodiment of the application, if the service scope of an online code replacement client includes the device identification information of the target sorting device, then the online code replacement client is a usable code replacement client.
[0083] In this embodiment of the application, the sorting device can correspond to multiple available complement code clients. Whenever a complement code client enters or exits the complement code state, the available complement code clients corresponding to the sorting device can be updated.
[0084] In this embodiment, based on the device identification information carried in the target coding task, online coding clients whose service scope includes the device identification information are filtered to obtain available coding clients. This allows for the allocation of coding tasks according to the service scope of each coding personnel, facilitating the rational scheduling of coding personnel.
[0085] In practical applications, the two-factor encoding client may exit the two-factor encoding state due to reasons such as pause, offline status, or disconnection. However, the time it takes for the two-factor encoding client to recover to the two-factor encoding state is uncertain. Based on this, the embodiments in this specification also provide some specific implementation schemes to prevent the two-factor encoding tasks in the client's task list from timeout, and their specific implementations are as follows:
[0086] Optionally, the method further includes: if the complement client exits the complement state, then the complement task in the task list of the complement client is identified as the target complement task.
[0087] In this embodiment of the application, the exit of the complement code client from the complement code state may include switching the state of the complement code client to a paused state, an offline state, a disconnected state, etc.
[0088] In this embodiment of the application, after determining the complementation tasks in the task list of the complementation client as the target complementation task, the method further includes: determining each available complementation client for the target complementation task, and the task list of each available complementation client; selecting a target complementation client to process the target complementation task based on a balanced allocation strategy and according to the task lists of each available complementation client; and adding the target complementation task to the task list of the target complementation client. The complementation tasks in the task list may be sorted according to their task request time.
[0089] In this embodiment of the application, after the complement client exits the complement state, the complement tasks in the task list of the complement client are remarked as target complement tasks so as to automatically allocate complement tasks at the complement client; this avoids delaying the allocated complement tasks when the complement client exits the complement state for any reason, improves the continuity and stability of complement task processing, and reduces the impact of unforeseen circumstances on complement tasks.
[0090] Exemplary device
[0091] The apparatus embodiments of this application can be used to execute the method embodiments of this application. For details not disclosed in the apparatus embodiments of this application, please refer to the method embodiments of this application.
[0092] Figure 3 The diagram shown is a block diagram of a complement task allocation device provided in one embodiment of this application. Figure 3 As shown, the device 300 includes:
[0093] The receiving module 310 is used to receive a target replenishment task for a target package from the sorting system; the target replenishment task is used to instruct the replenishment personnel to supplement the missing logistics information in the waybill of the target package based on the package image of the target package.
[0094] The determining module 320 is used to determine each available coding client for the target coding task, and a task list for each available coding client; the task list is used to record the unfinished coding tasks at the corresponding coding client; the coding client is used to obtain the coding tasks in the corresponding task list and their corresponding package images, and generate the coding results corresponding to the coding tasks based on the operations of the coding personnel.
[0095] The allocation module 330 is used to select the target complement client for processing the target complement task based on the task list of each available complement client, according to the balanced allocation strategy.
[0096] Add module 340, used to add the target complement task to the task list of the target complement client.
[0097] Optionally, the determining module 320 is used to determine the number of unfinished tasks at each of the complement clients based on the task list of each complement client; if there is a complement client whose number of unfinished tasks has not reached the maximum number of tasks, then the complement client is determined as the available complement client; if the number of unfinished tasks of all complement clients has reached the maximum number of tasks, then the complement task with the earliest task request time is canceled.
[0098] Optionally, the allocation module 330 is used to determine the available complement client with the fewest unfinished tasks as the target complement client for processing the target complement task.
[0099] Optionally, the allocation module 330 is used to determine the available complement client with the fewest unfinished tasks and obtain candidate complement clients; if the number of candidate complement clients is greater than one, the candidate complement client with the earliest last allocation time of the complement task is selected as the target complement client; or, the candidate complement client with the earliest last completion time of the complement task is selected as the target complement client.
[0100] Optionally, the code completion task is used to instruct the completion of missing waybill numbers in the waybill of the target package based on the package image and the waybill number recognition result obtained by text recognition processing of the waybill number area in the package image; the device 300 further includes: a time estimation module, used to determine the estimated processing time of each code completion task based on the completeness of the waybill number recognition result; the determination module 320 is used to calculate the sum of the estimated processing times of each code completion task in the task list of each code completion client to obtain the amount of unfinished tasks at the code completion client; the maximum task amount is used to represent the maximum value of the sum of the estimated processing times of each code completion task in the task list.
[0101] Optionally, the device further includes a task cancellation module, used to cancel the complementation task if the complementation waiting time exceeds a preset maximum waiting time.
[0102] Optionally, the target coding task records the device identification information of the target sorting device that generated the target coding task; the determining module 320 is used to obtain the service range of the currently online coding clients; the service range is used to represent the set of sorting devices served by the corresponding coding client; and the available coding clients are filtered from the online coding clients according to the device identification information and the service range of the online coding clients.
[0103] Optionally, the device further includes a task reallocation module, configured to, if the complement client exits the complement state, determine the complement task in the task list of the complement client as the target complement task.
[0104] Exemplary electronic devices
[0105] Below, for reference Figure 4 This describes an electronic device according to embodiments of the present application. Figure 4 A block diagram of an electronic device according to an embodiment of this application is illustrated.
[0106] like Figure 4 As shown, the electronic device 400 includes one or more processors 410 and memory 420.
[0107] The processor 410 may be a central processing unit (CPU) or other form of processing unit with data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 400 to perform desired functions.
[0108] The memory 420 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 410 may execute the program instructions to implement the complement task allocation methods of the various embodiments of this application described above and / or other desired functions. Various contents, such as category correspondences, may also be stored in the computer-readable storage medium.
[0109] In one example, the electronic device 400 may also include an input device 430 and an output device 440, which are interconnected via a bus system and / or other forms of connection mechanism (not shown).
[0110] In addition, the input device 430 may also include, for example, a keyboard, a mouse, etc. The output device 440 can output various information to the outside. The output device 440 may include, for example, a monitor, a speaker, a printer, and a communication network and its connected remote output devices, etc.
[0111] Of course, for the sake of simplicity, Figure 4 Only some of the components of the electronic device 400 relevant to this application are shown in this illustration; components such as buses, input / output interfaces, etc., are omitted. In addition, the electronic device 400 may include any other suitable components depending on the specific application.
[0112] Exemplary computer program products and computer-readable storage media
[0113] In addition to the methods and devices described above, embodiments of this application may also be computer program products, which include computer program instructions that, when executed by a processor, cause the processor to perform the steps in the complement task allocation methods according to various embodiments of this application as described in the "Exemplary Methods" section of this specification.
[0114] The computer program product can be written in any combination of one or more programming languages to perform the operations of the embodiments of this application. The programming languages include object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0115] Furthermore, embodiments of this application may also be computer-readable storage media storing computer program instructions thereon, which, when executed by a processor, cause the processor to perform the steps in the complement task allocation method according to various embodiments of this application described in the "Exemplary Methods" section of this specification.
[0116] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0117] The basic principles of this application have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this application are merely examples and not limitations, and should not be considered as essential features of each embodiment of this application. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the application to the necessity of employing the aforementioned specific details for implementation.
[0118] The block diagrams of devices, apparatuses, devices, and systems involved in this application are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.
[0119] It should also be noted that in the apparatus, equipment, and methods of this application, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions of this application.
[0120] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this application. Therefore, this application is not intended to be limited to the aspects shown herein, but rather to be accorded the widest scope consistent with the principles and novel features disclosed herein.
[0121] It should be understood that the qualifiers “first,” “second,” “third,” “fourth,” “fifth,” and “sixth” used in the description of the embodiments of this application are only used to more clearly illustrate the technical solutions and are not intended to limit the scope of protection of this application.
[0122] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this application to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.
Claims
1. A two's complement task allocation method, characterized in that, include: The receiving and sorting system performs target code replenishment tasks for the target packages. The target supplementation task is used to instruct the supplementation of missing logistics information in the waybill of the target package based on the package image of the target package; The available coding clients for the target coding task are determined, as well as the task list for each available coding client; the task list is used to record the unfinished coding tasks at the corresponding coding client; the coding client is used to obtain the coding tasks in the corresponding task list and their corresponding package images, and to generate the coding results corresponding to the coding tasks based on the operations of the coding personnel. Based on the balanced allocation strategy, the target complement client for processing the target complement task is selected according to the task list of each available complement client; Add the target complement task to the task list of the target complement client.
2. The method according to claim 1, characterized in that, The process of determining the available complement clients for the target complement task includes: Based on the task list of each of the two's complement clients, determine the amount of unfinished tasks at each of the two's complement clients; If there is a complement code client that has not completed the task and has not reached the maximum task amount, then the complement code client is identified as the available complement code client; If the number of incomplete tasks for all complement clients reaches the maximum number of tasks, then cancel the complement task with the earliest task request time.
3. The method according to claim 2, characterized in that, The step of selecting a target two's complement client to handle the target two's complement task based on the balanced allocation strategy and the task lists of each available two's complement client includes: The available complement client with the fewest unfinished tasks is identified as the target complement client for processing the target complement task.
4. The method according to claim 2, characterized in that, The step of selecting a target two's complement client to handle the target two's complement task based on the balanced allocation strategy and the task lists of each available two's complement client includes: Identify the available two's complement client with the fewest unfinished tasks to obtain candidate two's complement clients; If the number of candidate complement clients is greater than one, the candidate complement client with the earliest last allocation time of the complement task is selected as the target complement client; or, the candidate complement client with the earliest last completion time of the complement task is selected as the target complement client.
5. The method according to any one of claims 3 to 4, characterized in that, The code completion task is used to instruct, based on the package image and the code recognition result obtained by performing text recognition processing on the waybill number area in the package image, to complete the missing waybill number in the waybill of the target package; the method further includes: For each code replacement task, the estimated processing time for the code replacement task is determined based on the completeness of the waybill number recognition result. The step of determining the number of unfinished tasks at each complement client based on the task list of each complement client includes: For each complement code client's task list, the sum of the estimated processing times of each complement code task in the task list is calculated to obtain the number of unfinished tasks at the complement code client; the maximum number of tasks is used to represent the maximum value of the sum of the estimated processing times of each complement code task in the task list.
6. The method according to claim 1, characterized in that, After adding the target complement task to the task list of the target complement client, the process further includes: If the waiting time for the complementation task exceeds the preset maximum waiting time, the complementation task will be cancelled.
7. The method according to claim 1, characterized in that, The target complement coding task records the device identification information of the target sorting device that generated the target complement coding task; the step of determining each available complement coding client for the target complement coding task includes: Obtain the service range of the currently online complement code client; the service range is used to represent the set of sorting devices corresponding to the complement code client service; Based on the device identification information and the service scope of the online code replacement client, the available code replacement clients are selected from the online code replacement clients.
8. The method according to claim 1, characterized in that, The method further includes: If the complement client exits the complement state, then the complement task in the task list of the complement client is determined as the target complement task.
9. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to perform the method according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions that, when executed by a processor, cause the processor to perform the method as described in any one of claims 1 to 8.