Task allocation method and device

By filtering out seat groups with the highest group weight and seat weight seat weight and allocating tasks to target seats, the problem of low task allocation efficiency in the existing technology is solved, and the efficiency improvement of task allocation and process simplification are achieved.

CN120069345APending Publication Date: 2025-05-30BEIJING JINGDONG YUANSHENG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311609192.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-28
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In the prior art, the task allocation algorithm is relatively complex, resulting in low task allocation efficiency and uneven task allocation, which reduces the user's task processing efficiency.

Method used

By responding to the task to be allocated, obtain the grouping weights of pre-set multiple seat groups, filter out the target seat grouping, and filter out the target seats based on the seat weight, and finally assign the task to the target seat.

Benefits of technology

Improve the efficiency of task allocation and simplify the task allocation process, avoid allocating tasks to seats that have been occupied, and ensure that tasks are evenly allocated to individual seat groups.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120069345A_ABST
    Figure CN120069345A_ABST
Patent Text Reader

Abstract

The invention discloses a task allocation method and device, and relates to the technical field of computers. A specific embodiment of the task allocation method comprises the steps of obtaining preset grouping weights of a plurality of seat groups in response to a received to-be-allocated task, and screening out a target seat group from the plurality of seat groups according to the grouping weights; determining the seat weight of each seat included in the target seat group, and screening out a target seat from the target seat group according to the seat weight; and allocating the to-be-allocated task to the target seat, the target seat being associated with a target user, and the target user processing the to-be-allocated task allocated to the target seat. According to the embodiment, the target seat suitable for processing the to-be-allocated task is screened out from a large number of seats based on multi-level grouping of the seats, the task allocation efficiency can be improved, and the task allocation process can be simplified.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular, to a method and apparatus for task allocation. Background Art

[0002] In the case where tasks need to be processed manually, the system will allocate tasks to idle users. For example, in a liability determination system, the liability determination tasks include: a liability determination user determines the liability of an order, and the system searches for idle liability determination users among a large number of liability determination users, and then allocates the liability determination tasks to the found liability determination users. When searching for idle users, the users are usually sorted in order, such as by user number, and starting from the beginning according to the sorting order, each user is sequentially checked to determine whether the user is idle, and the task is allocated to the first user determined to be idle.

[0003] In the process of implementing the present invention, the inventors found that the prior art has at least the following problems:

[0004] Checking each user sequentially in order results in too many checks, making the task allocation algorithm complex and the task allocation efficiency low. Summary of the Invention

[0005] In view of this, embodiments of the present invention provide a method and apparatus for task allocation, which can improve the task allocation efficiency and simplify the task allocation process.

[0006] To achieve the above object, according to the first aspect of the embodiments of the present invention, a method for task allocation is provided, including:

[0007] In response to receiving a task to be allocated, obtain the grouping weights of a plurality of pre-set seat groups, and filter out a target seat group from the plurality of seat groups according to the grouping weights;

[0008] Determine the seat weights of each seat included in the target seat group, and filter out a target seat from the target seat group according to the seat weights;

[0009] Allocate the task to be allocated to the target seat, where the target seat is associated with a target user, and the target user processes the task to be allocated to the target seat.

[0010] Optionally, there is a tree-like association relationship between the plurality of seat groups, and each seat group is a node of the tree-like association relationship; filtering out a target seat group from the plurality of seat groups according to the grouping weights includes:

[0011] Repeat the following steps in the order from the root node to the leaf node until the target seat grouping is selected: According to the grouping weights of the seat groupings corresponding to each child node connected to the current node, select the target child node from the child nodes; in the case where the target child node is not a leaf node, use the target child node as the current node; in the case where the target child node is a leaf node, use the seat grouping corresponding to the target child node as the target seat grouping.

[0012] Optionally, after allocating the task to be allocated to the target seat, the method further includes: transferring the target seat from the target seat grouping to a pre-set occupied seat grouping;

[0013] After the task to be allocated is processed, the method further includes: transferring the target seat from the occupied seat grouping to the target seat grouping.

[0014] Optionally, after transferring the target seat from the target seat grouping to a pre-set occupied seat grouping, the method further includes: updating the grouping weight of the target seat grouping, and updating the seat weights of the remaining seats included in the target seat grouping;

[0015] After transferring the target seat from the occupied seat grouping to the target seat grouping, the method further includes: updating the grouping weight of the target seat grouping, and updating the seat weights of all seats included in the target seat grouping.

[0016] Optionally, there is an inclusion relationship between the multiple seat groupings, the target seat grouping is within the first seat grouping, and the grouping weight includes: an initial grouping weight and a real-time grouping weight; updating the grouping weight of the target seat grouping includes:

[0017] Determine a second seat grouping included in the first seat grouping except the target seat grouping;

[0018] Determine the total grouping weight according to the initial grouping weight of the target seat grouping and the initial grouping weight of the second seat grouping;

[0019] Update the real-time grouping weight of the target seat grouping according to the total grouping weight.

[0020] Optionally, the seat weight includes: an initial seat weight and a real-time seat weight; updating the seat weights of the remaining seats included in the target seat grouping includes: determining the total seat weight of the remaining seats according to the initial seat weights of the remaining seats included in the target seat grouping, and updating the real-time seat weights of the remaining seats according to the total seat weight;

[0021] Update the seat weights of all seats included in the target seat grouping, including: updating the real-time seat weights of all seats according to the total seat weight.

[0022] Optionally, screening out target seats from the target seat grouping according to the seat weights, including:

[0023] Update the real-time seat weights of each seat included in the target seat grouping according to the initial seat weights, and screen out target seats from the multiple seats included in the target seat grouping according to the updated real-time seat weights.

[0024] According to a second aspect of the embodiments of the present invention, there is provided a task allocation device, including:

[0025] A first screening module, configured to, in response to receiving a task to be allocated, obtain the grouping weights of a plurality of pre-set seat groupings, and screen out a target seat grouping from the plurality of seat groupings according to the grouping weights;

[0026] A second screening module, configured to determine the seat weights of each seat included in the target seat grouping, and screen out target seats from the target seat grouping according to the seat weights;

[0027] An allocation module, configured to allocate the task to be allocated to the target seat, where the target seat is associated with a target user, and the target user processes the task to be allocated assigned to the target seat.

[0028] Optionally, there is a tree-like association relationship between the plurality of seat groupings, and each seat grouping is a node of the tree-like association relationship; screening out a target seat grouping from the plurality of seat groupings according to the grouping weights includes:

[0029] Repeat the following steps in the order from the root node to the leaf node until the target seat grouping is screened out: screen out target child nodes from the respective child nodes according to the grouping weights of the seat groupings corresponding to the respective child nodes connected to the current node; in the case where the target child node is not a leaf node, use the target child node as the current node; in the case where the target child node is a leaf node, use the seat grouping corresponding to the target child node as the target seat grouping.

[0030] Optionally, the device further includes: a first transfer module, configured to transfer the target seat from the target seat grouping to a pre-set occupied seat grouping;

[0031] The device further includes: a second transfer module, configured to transfer the target seat from the occupied seat grouping to the target seat grouping.

[0032] Optionally, the device further includes: a first update module, configured to update the grouping weight of the target seat grouping and update the seat weights of the remaining seats included in the target seat grouping;

[0033] The device further includes: a second update module, configured to update the grouping weight of the target seat grouping and update the seat weights of all the seats included in the target seat grouping.

[0034] Optionally, there is an inclusion relationship between the multiple seat groupings, the target seat grouping is within a first seat grouping, and the grouping weight includes: an initial grouping weight and a real-time grouping weight; updating the grouping weight of the target seat grouping includes:

[0035] Determine a second seat grouping included in the first seat grouping other than the target seat grouping;

[0036] Determine a total grouping weight according to the initial grouping weight of the target seat grouping and the initial grouping weight of the second seat grouping;

[0037] Update the real-time grouping weight of the target seat grouping according to the total grouping weight.

[0038] Optionally, the seat weight includes: an initial seat weight and a real-time seat weight; updating the seat weights of the remaining seats included in the target seat grouping includes: determining the total seat weight of the remaining seats according to the initial seat weights of the remaining seats included in the target seat grouping, and updating the real-time seat weights of the remaining seats according to the total seat weight;

[0039] Updating the seat weights of all the seats included in the target seat grouping includes: updating the real-time seat weights of all the seats according to the total seat weight.

[0040] Optionally, according to the seat weights, screening out target seats from the target seat grouping includes:

[0041] Updating the real-time seat weights of each seat included in the target seat grouping according to the initial seat weights of each seat, and screening out target seats from the multiple seats included in the target seat grouping according to the updated real-time seat weights.

[0042] According to a third aspect of the embodiments of the present invention, there is provided an electronic device, including:

[0043] One or more processors;

[0044] A storage device for storing one or more programs,

[0045] When the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any of the above embodiments.

[0046] According to a fourth aspect of the embodiments of the present invention, there is provided a computer-readable medium having a computer program stored thereon, and when the program is executed by a processor, the method described in any of the above embodiments is implemented.

[0047] One embodiment of the above invention has the following advantages or beneficial effects: Based on seat-based multi-level grouping, target seats suitable for processing tasks to be assigned are screened out from a large number of seats, which can improve the task allocation efficiency and simplify the task allocation process; according to the tree-like association relationship, target seat groups are screened out from multiple seat groups, which can improve the screening efficiency of target seat groups and simplify the screening process of target seat groups; after the task to be assigned is assigned to the target seat, the target seat is transferred to the occupied seat group, so that all seats in the target seat group are idle seats, separating the idle seats from the occupied seats and avoiding assigning the task to be assigned to an already occupied seat; updating the grouping weight of the seat group can improve the efficiency of screening target seat groups according to the grouping weight, facilitating the selection of seat groups with longer waiting times; updating the seat weight can improve the efficiency of screening target seats according to the seat weight, facilitating the selection of seats with longer waiting times; updating the seat weight based on the initial seat weight and the real-time seat weight can update the seat weight more flexibly to meet different weight update requirements.

[0048] The further effects of the above non-conventional optional methods will be described in conjunction with the specific embodiments below. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] The drawings are used to better understand the present invention and do not constitute an improper limitation to the present invention. Among them:

[0050] Figure 1 is a schematic diagram of the main process of the task allocation method according to the embodiments of the present invention;

[0051] Figure 2 is a schematic diagram of the tree-like association relationship of seat groups according to a reference embodiment of the present invention;

[0052] Figure 3 is a schematic diagram of the data structure of the seats included in the target seat group and the occupied seat group according to a reference embodiment of the present invention;

[0053] Figure 4 is a schematic diagram of the overall process of the task allocation method according to a reference embodiment of the present invention;

[0054] Figure 5It is a schematic diagram of the change in seat weight according to a reference embodiment of the present invention;

[0055] Figure 6 It is a schematic diagram of the main process of task allocation according to a reference embodiment of the present invention;

[0056] Figure 7 It is a schematic diagram of the main modules of the task allocation device according to an embodiment of the present invention;

[0057] Figure 8 It is an exemplary system architecture diagram to which the embodiments of the present invention can be applied;

[0058] Figure 9 It is a schematic diagram of the structure of a computer system of a terminal device or a server suitable for implementing the embodiments of the present invention. Detailed implementation manners

[0059] The following describes exemplary embodiments of the present invention with reference to the accompanying drawings. Various details of the embodiments of the present invention are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted below.

[0060] It should be noted that in the technical solution of the present invention, the collection, use, storage, sharing, transfer, and other processing of the user's personal information all comply with the provisions of relevant laws and regulations, and the user needs to be informed and obtain the consent or authorization of the user. When applicable, technical processing such as de-identification and / or anonymization and / or encryption is performed on the user's personal information.

[0061] In the case where tasks need to be processed manually, the system will allocate tasks to idle users. For example, in a responsibility determination system, the responsibility determination tasks include: a responsibility determination user determines the responsibility for an order, and the system searches for idle responsibility determination users among a large number of responsibility determination users, and then allocates the responsibility determination tasks to the found responsibility determination users. When searching for idle users, users are usually sorted in the order of user number, login time, etc. From the beginning to the end according to the sorting order, each user is sequentially checked to determine whether they are in an idle state, and the task is allocated to the first user determined to be idle.

[0062] Checking each user in sequence results in too many checks, making the task allocation algorithm complex and the task allocation efficiency low. After a user finishes processing a task, they can continue to process new tasks. For example, when sorting by user number, users with a higher sorting order will process more tasks, resulting in uneven task allocation and reducing the task processing efficiency of users with a higher sorting order.

[0063] In view of this, according to the first aspect of the embodiments of the present invention, a task allocation method is provided.

[0064] Figure 1 It is a schematic diagram of the main process of the task allocation method according to the embodiments of the present invention. As Figure 1 shown, the task allocation method according to the embodiments of the present invention mainly includes the following steps S101 to step S103.

[0065] Step S101, in response to receiving a task to be allocated, obtain the grouping weights of a plurality of pre-set seat groups, and according to the grouping weights, screen out a target seat group from the plurality of seat groups.

[0066] The task to be allocated is a task that needs to be allocated to a user for processing. Each user has a corresponding seat in the system. Before allocating the task, the execution entity of the embodiments of the present invention groups the seats corresponding to the users to obtain a plurality of seat groups, and each seat group includes one or more seats. Before allocating the task, the execution entity of the embodiments of the present invention sets the grouping weight of each seat group. For example, the grouping weight of each seat group is determined according to the number of seats included in each seat group, or first, the seat weight of each seat in each seat group is set, and the sum of the seat weights of all seats in each seat group is used as the grouping weight of the seat group. When setting the seat weight of each seat, the seat weight of each seat is determined according to the generation time of each seat or the time since the last task allocation for each seat.

[0067] After receiving the task to be allocated, the execution entity of the embodiments of the present invention queries the grouping weight table of the seat groups, determines the grouping weight of each seat group, compares the grouping weights of each seat, and screens out the target seat group. For example, the seat group with the largest grouping weight is screened out from the plurality of seat groups as the target seat group, or the seat group with the smallest grouping weight is screened out from the plurality of seat groups as the target seat group.

[0068] Exemplarily, there are three seat groups, namely seat group A1, seat group A2, and seat group A3. Among them, seat group A1 includes seats B1, B2, and B3. Seat B1 completed the last assigned task 3 minutes ago, seat B2 completed the last assigned task 5 minutes ago, and seat B3 completed the last assigned task 1 minute ago. Therefore, the seat weight of seat B1 is 3, the seat weight of seat B2 is 5, and the seat weight of seat B3 is 1. That is, the longer the time since the last task was completed, the greater the seat weight and the greater the probability of reassigning tasks. The group weight of seat group A1 is equal to the sum of the seat weights of each seat it includes, that is, the group weight of seat group A1 is 9. The group weight of seat group A2 is 8, and the group weight of seat group A3 is 7. Since the group weight of seat group A1 is the largest, seat group A1 is used as the target seat group. That is, the greater the group weight, the greater the probability of reassigning tasks.

[0069] Determining the target seat group according to the group weight of the seat group can improve the screening efficiency of the target seat group, enable the seat group with a longer waiting time to have a greater chance of obtaining the task to be assigned, and is conducive to evenly distributing the task to be assigned to each seat group.

[0070] According to a reference embodiment of the present invention, there is a tree-like association relationship between multiple seat groups. Each seat group serves as a node of the tree-like association relationship, and the association relationship between seat groups serves as the edge of the tree-like association relationship. Each seat group can be associated with other seat groups. The leaf nodes of the tree-like association relationship represent the seat groups with seats, and other nodes represent the seat groups including other seat groups.

[0071] When screening the target seat group from multiple seat groups according to the group weight, the following steps are repeatedly executed in the order from the root node to the leaf node until the target seat group is screened out: First, according to the group weights of the seat groups corresponding to each child node connected to the root node, the target child node is screened out among each child node. For example, the child node with the largest group weight among each child node is selected as the target child node. When the target child node is not a leaf node, it means that the seat group corresponding to the target child node does not include seats. Therefore, the target child node is used as the current node, and the next target child node is continuously screened out from each child node connected to the current node until the screened target child node is a leaf node. When the target child node is a leaf node, it means that the seat group corresponding to the target child node includes seats. Therefore, the seat group corresponding to the target child node is used as the target seat group.

[0072] Figure 2 is a schematic diagram of the tree-like association relationship of seat groups according to a reference embodiment of the present invention. Exemplarily, as Figure 2As shown, the tree - like association relationship includes multiple nodes. Each node represents a seat grouping, and the number on each node represents the grouping weight of the seat grouping. Specifically, the grouping weight of each seat grouping is equal to the sum of the grouping weights of other seat groupings associated with that seat. For example, the grouping weight 17 of the seat grouping corresponding to the root node 301 is equal to the sum of the grouping weights of the seat groupings corresponding to the child nodes of this node. Starting from the root node 301, traverse the nodes downward, and select the node with the largest grouping weight as the target child node. Specifically, select node 302 as the target child node among the child nodes of the root node 301, select node 303 as the target child node among the child nodes of node 302, and select node 304 as the target child node among the child nodes of node 303. Since node 304 is a leaf node, node 304 is used as the target child node, and the seat grouping corresponding to node 304 is used as the target seat grouping.

[0073] Filtering out the target seat grouping from multiple seat groupings according to the tree - like association relationship can improve the filtering efficiency of the target seat grouping and simplify the filtering process of the target seat grouping.

[0074] Step S102: Determine the seat weight of each seat included in the target seat grouping, and filter out the target seat from the target seat grouping according to the seat weight.

[0075] Before receiving the task to be assigned, the execution entity of the embodiment of the present invention sets the seat weight of each seat. For example, according to the average task assignment cycle of each seat in the past period of time, determine the seat weight of each seat. The seat with a longer average task assignment cycle, that is, the seat with a larger time difference between receiving two tasks, has a larger seat weight and a greater probability of being assigned a task. For the seat that has been assigned a task, set its seat weight to a negative value, and for the seat that has not been assigned a task, set its seat weight to a positive value to distinguish between idle seats and seats occupied by tasks.

[0076] After determining the target seat grouping, the execution entity of the embodiment of the present invention queries the seat weights included in the target seat grouping, and filters out the target seat from the seats included in the target seat grouping. For example, the seat with the largest seat weight is used as the target seat.

[0077] Exemplarily, the target seat grouping includes: Seat C1, Seat C2, and Seat C3. Among them, Seat C1 has been assigned 12 tasks in the past 24 hours, and the average task assignment cycle is 2; Seat C2 has been assigned 8 tasks in the past 24 hours, and the average task assignment cycle is 3; Seat C3 has been assigned 6 tasks in the past 24 hours, and the average task assignment cycle is 4. Therefore, the seat weight of Seat C1 is 2, the seat weight of Seat C2 is 3, and the seat weight of Seat C3 is 4. That is, Seat C3 has been assigned fewer tasks, and Seat C1 has been assigned more tasks. The seat C3 with the largest seat weight is used as the target seat.

[0078] Determining the target seat according to the seat weight can improve the screening efficiency of the target seat, enabling seats with longer waiting times and fewer assigned tasks to have a greater chance of obtaining the tasks to be assigned, which is conducive to evenly distributing the tasks to be assigned to each seat.

[0079] Step S103: Assign the task to be assigned to the target seat, where the target seat is associated with a target user, and the target user processes the task to be assigned to the target seat.

[0080] After determining the target seat, the task to be assigned is assigned to the target seat, and the target seat is associated with the user who processes the task. The execution entity of the embodiment of the present invention sends a message to the target user associated with the target seat. For example, an email, a text message, an in-site message, a voice message, etc. is sent to the target user to prompt the target user to process the task to be assigned to the target seat in a timely manner. In the case where a seat weight greater than zero indicates that no task has been assigned to the seat and a seat weight less than zero indicates that a task has been assigned to the seat, the seat weight of the target seat is taken as the opposite number. For example, when the seat weight of the target seat is 5, after the task to be assigned is assigned to the target seat, the seat weight of the target seat is modified to -5 to determine whether the seat has received the task to be assigned and distinguish between seats with unassigned tasks and seats with assigned tasks.

[0081] According to a reference embodiment of the present invention, after the task to be assigned is assigned to the target seat, the method further includes: transferring the target seat from the target seat grouping to a pre-set occupied seat grouping. Specifically, the target seat grouping only includes seats with unassigned tasks, and the occupied seat grouping only includes seats with assigned tasks. Based on different groupings, seats with unassigned tasks and seats with assigned tasks are distinguished. After the task to be assigned is processed, the method further includes: transferring the target seat from the occupied seat grouping to the target seat grouping, removing the target seat from the occupied seat grouping, and then adding the target seat to the target seat grouping.

[0082] The data structure of the seats in the target seat group can be a queue, a linked list, a map table, etc., and the data structure of the seats occupying the seats in the seat group can be a tree, a graph, etc. Preferably, a red-black tree is used as the data structure of the seats occupying the seats in the seat group. Because the execution entity of the embodiments of the present invention needs to process a large number of tasks to be allocated, involving a large number of seat transfer operations, the red-black tree can improve the efficiency of seat transfer and simplify the seat transfer process.

[0083] Figure 3 It is a schematic diagram of the data structure of the seats included in the target seat group and the occupied seat group according to a reference embodiment of the present invention. Exemplarily, as Figure 3 shown, the data structure of the target seat group 301 is a queue, and the seats in the queue are arranged in descending order of seat weight. After determining the target seat group 301, the seat 303 with the largest seat weight is transferred to the occupied seat group 302; the data structure of the occupied seat group 302 is a red-black tree, and the number on each node of the red-black tree represents the corresponding seat weight. According to the seat weight of the seat 303, the seat 303 is inserted into the occupied seat group 302. Specifically, the seat 303 is transferred to the right node of the seat 304; after the task to be allocated to the seat 303 is completed, the seat 303 is transferred from the occupied seat group 302 to the target seat group 301. Specifically, the seat 303 is transferred to the end of the queue of the target seat group 301.

[0084] After allocating the task to be allocated to the target seat, transfer the target seat to the occupied seat group, so that all the seats in the target seat group are idle seats, separating the idle seats and the occupied seats, and avoiding allocating the task to be allocated to the already occupied seats.

[0085] According to another reference embodiment of the present invention, after transferring the target seat from the target seat group to a pre-set occupied seat group, the method further includes: updating the grouping weight of the target seat group. After transferring the target seat, the number of target seats in the target seat group decreases. In the case where the grouping weight is equal to the sum of the seat weights included in the seat group, update the grouping weight of the target seat group according to the sum of the seat weights of the remaining seats included in the target seat group. Update the seat weights of the remaining seats included in the target seat group. For example, recalculate the difference between the current time and the time when the last task was allocated to the remaining seats, determine the length of time the remaining seats have been idle continuously, and convert the length of time into the corresponding seat weight.

[0086] Exemplarily, the target seat group (with a group weight of 6) includes: seat D1 (with a seat weight of 1), seat D2 (with a seat weight of 2), and seat D3 (with a seat weight of 3). Among them, seat D1 is transferred from the target seat group to the occupied seat group as the target seat. The target seat group still includes: seat D2 and seat D3. Therefore, the group weight of the target seat group is updated to the sum of the seat weights of seat D2 and seat D3, and the updated group weight is 2 + 3 = 5. Since the time of the last task assignment to seat D2 was 5 minutes ago, and the time of the last task assignment to seat D3 was 6 minutes ago, the seat weight of seat D2 is updated to 5, and the seat weight of seat D3 is updated to 6.

[0087] After transferring the target seat from the occupied seat group to the target seat group, the method further includes: updating the group weight of the target seat group. After transferring the target seat back to the target seat group, the number of target seats in the target seat group increases. In the case where the group weight is equal to the sum of the seat weights included in the seat group, the group weight of the target seat is updated according to the sum of the seat weights of all seats included in the target seat group. Update the seat weights of all seats included in the target seat group. For example, recalculate the difference between the current time and the time of the last task assignment to the remaining seats, determine the duration of the remaining seats being idle, and convert the duration into the corresponding seat weight.

[0088] Exemplarily, the target seat group (with a group weight of 3) includes: seat E1 (with a seat weight of 1) and seat E2 (with a seat weight of 2). Seat E3, as the target seat that has completed the task to be assigned, is transferred from the occupied seat group to the target seat group. The current target seat group includes: seat E1, seat E2, and seat E3. Since the time of the last task assignment to seat E1 was 3 minutes ago, and the time of the last task assignment to seat E2 was 4 minutes ago, the seat weight of seat E1 is updated to 3, and the seat weight of seat E2 is updated to 4. The last task assignment to seat E3 was 1 minute ago, and the seat weight of seat E3 is updated to 1. Therefore, the group weight of the target seat group is updated to the sum of the seat weights of seat E1, seat E2, and seat E3, and the updated group weight is 3 + 4 + 1 = 8.

[0089] Updating the group weight of the seat group can improve the efficiency of screening the target seat group according to the group weight, facilitating the selection of the seat group with a longer waiting time; updating the seat weight can improve the efficiency of screening the target seat according to the seat weight, facilitating the selection of the seat with a longer waiting time.

[0090] According to another referenceable embodiment of the present invention, there is an inclusion relationship among multiple seat groups. For example, seat group F1 includes seat groups F2, F3, and F4. The target seat group is within the first seat group, and the seat group including the target seat group is taken as the first seat group. The grouping weights include: initial grouping weight and real-time grouping weight. Among them, the initial grouping weight is fixed, static, and unchangeable, and the real-time grouping weight is variable, dynamic, and updates the grouping weight of the seat group before and after each task allocation.

[0091] When updating the grouping weight of the target seat group, first determine the second seat group included in the first seat group except the target seat group. The first seat group includes other seat groups in addition to the target seat group, and the other seat groups included in the first seat group are taken as the second seat group. Then determine the total grouping weight according to the initial grouping weight of the target seat group and the initial grouping weight of the second seat group. For example, add the initial grouping weight of the target seat group and the initial grouping weight of the second seat group to obtain the total grouping weight. Update the real-time grouping weight of the target seat group according to the total grouping weight. For example, use the real-time grouping weight to subtract, add, or multiply with the total grouping weight to obtain the updated real-time grouping weight. When updating the grouping weight of the target seat group, only update the real-time grouping weight of the target seat group.

[0092] It should be noted that before screening the target seat group, it is also necessary to update the real-time grouping weight of the target seat group. For example, sum the initial grouping weight of the target seat group and the real-time grouping weight of the target seat group, and take the summation result as the updated real-time grouping weight of the target seat group. It should be noted that the grouping weight update operation performed before screening the target seat group is opposite to the grouping weight update operation performed after screening the target seat group. For example, if the former is subtraction, the latter is addition; if the former is multiplication, the latter is division. Therefore, the real-time grouping weight of the target seat group will fluctuate within a certain range, making the probability of each seat group being screened as the target seat group equal.

[0093] Exemplarily, the first seat group includes: the target seat group (initial grouping weight is 7, real-time grouping weight is 6), seat group G1 (initial grouping weight is 5, real-time grouping weight is 4), seat group G2 (initial grouping weight is 3, real-time grouping weight is 2). Among them, seat group G1 and seat group G2 are the second seat groups. According to the initial grouping weight of the target seat group and the initial grouping weight of the second seat group, the total grouping weight is determined as: 7 + 5 + 3 = 15. Subtract the grouping weight of the target seat group from the total grouping weight, and the updated real-time grouping weight of the target seat group is obtained as: 6 - 15 = -9.

[0094] Based on the initial group weight and the real-time group weight, the group weight of the seat grouping can be updated more flexibly to meet different requirements for updating the group weight; updating the group weight of the target seat grouping before and after screening the target seat grouping can make the real-time group weight of the target seat grouping fluctuate within a certain data range, facilitating a more balanced screening of the target seat grouping and avoiding always screening a certain seat grouping.

[0095] According to another reference embodiment of the present invention, the seat weight includes: the initial seat weight and the real-time seat weight; updating the seat weights of the remaining seats included in the target seat grouping includes: determining the total seat weight of the remaining seats according to the initial seat weights of the remaining seats included in the target seat grouping. For example, adding up the initial seat weights of the remaining seats to obtain the total seat weight of the remaining seats. Updating the real-time seat weights of the remaining seats according to the total seat weight. For example, subtracting, adding, or multiplying the real-time seat weights of the remaining seats by the total seat weight to obtain the updated seat weights. When updating the seat weight of the target seat, only the real-time seat weight of the target seat is updated.

[0096] It should be noted that before screening the target seat, it is also necessary to update the real-time seat weights of all seats in the target seat grouping. For example, adding the initial seat weight of each seat to the corresponding real-time seat weight, and taking the sum result as the updated real-time seat weight of each seat grouping. It should be noted that the seat weight update operation performed before screening the target seat is opposite to the seat weight update operation performed after screening the target seat. For example, if the former is subtraction, the latter is addition; if the former is multiplication, the latter is division. Therefore, the real-time seat weight of the target seat will fluctuate within a certain range, making the probability of each seat being screened as the target seat equal.

[0097] Updating the seat weights of all seats included in the target seat grouping includes: updating the real-time seat weights of all seats according to the total seat weight. For example, subtracting, adding, or multiplying the real-time seat weights of all seats included in the target seat grouping by the total seat weight to obtain the updated seat weights. When updating the seat weight of the target seat, only the real-time seat weight of the target seat is updated.

[0098] Exemplarily, the target seat grouping includes: a target seat (with an initial seat weight of 6 and a real-time seat weight of 5), seat G1 (with an initial seat weight of 4 and a real-time seat weight of 3), and seat G2 (with an initial seat weight of 2 and a real-time seat weight of 1). After transferring the target seat, the target seat grouping still includes seat G1 and seat G2. According to the initial seat weights of seat G1 and seat G2, the total grouping weight is determined as: 4 + 2 = 6. Subtracting the real-time seat weight of seat G1 from the total grouping weight, the updated real-time seat weight of seat G1 is obtained as: 5 - 6 = -1. Subtracting the real-time seat weight of seat G2 from the total grouping weight, the updated real-time seat weight of seat G2 is obtained as: 3 - 6 = -3.

[0099] Based on the initial seat weight and the real-time seat weight, the seat weight of the seat can be updated more flexibly to meet different seat weight update requirements; before and after screening the target seat, updating the seat weights included in the target seat grouping can make the real-time seat weights of the seats included in the target seat grouping fluctuate within a certain data range, facilitating a more balanced screening of the target seat and avoiding always screening to a certain seat.

[0100] According to another referenceable embodiment of the present invention, when screening the target seat from the target seat grouping according to the seat weight, first update the real-time seat weight of each seat included in the target seat grouping according to the initial seat weight of each seat, for example, adding, subtracting, multiplying, or dividing the initial seat weight and the real-time seat weight, etc., and taking the calculation result as the updated real-time seat weight. According to the updated real-time seat weight, screen the target seat from the multiple seats included in the target seat grouping, for example, taking the seat with the largest real-time seat weight in the target seat grouping as the target seat, or taking the seat with the smallest real-time seat weight in the target seat grouping as the target seat.

[0101] It should be noted that the operations of updating the seat weights of the seats in the target seat grouping before and after screening the target seat are opposite. For example, before screening the target seat, add the initial seat weight and the real-time seat weight, and take the added result as the updated real-time seat weight. Then, after screening the target seat, subtract the real-time seat weight from the total seat weight, and take the subtracted result as the updated real-time seat weight. This can ensure that the dynamic real-time seat weight can fluctuate within a certain range, avoid the real-time seat weight of the seat increasing or decreasing continuously, and is beneficial to a more balanced screening of the target seat from the target seat grouping.

[0102] Exemplarily, the target seat grouping includes: seat H1 (initial seat weight is 2, real-time seat weight is 4), seat H2 (initial seat weight is 4, real-time seat weight is 6), seat H3 (initial seat weight is 6, real-time seat weight is 8). Add the initial seat weight of each seat to the corresponding real-time seat weight to obtain the updated real-time seat weight. Specifically, the updated real-time seat weight of seat H1 is: 2 + 4 = 6; the updated real-time seat weight of seat H2 is: 4 + 6 = 10; the updated real-time seat weight of seat H3 is: 6 + 8 = 14. Among the seats after updating the real-time seat weight, select the seat with the largest real-time seat weight as the target seat, that is, select seat H3 as the target seat.

[0103] Before screening the target seat, updating the real-time seat weights included in the target seat grouping can make the real-time seat weights of the seats included in the target seat grouping fluctuate within a certain data range, facilitating a more balanced screening of the target seat, avoiding always screening a certain seat, and facilitating a more flexible screening of the target seat.

[0104] Figure 4 It is a schematic diagram of the overall process of the task allocation method according to a reference embodiment of the present invention. Exemplarily, as Figure 4 shown, group the seats to obtain multiple seat groupings, initialize the grouping weights of the seat groupings and the seat weights of each seat; initialize the occupied seat grouping; determine the target seat grouping according to the grouping weights; determine the target seat according to the seat weights; allocate the task to be allocated to the target seat; transfer the target seat to the occupied seat grouping; after the task to be allocated is completed, transfer the target seat to the target seat grouping.

[0105] Figure 5 It is a schematic diagram of the change in seat weight according to a reference embodiment of the present invention. Exemplarily, as Figure 5 shown, the target seat grouping includes: seat J1, seat J2, seat J3 and seat J4, Figure 4 The ordinate represents the value of the seat weight, Figure 4The horizontal axis represents the moment of receiving the task to be assigned, and different lines represent the trend of the seat weight values ​​of different seats. For example, at the moment of receiving the first task to be assigned, the weight of seat J1 is 5, and the seat weight is the largest among all seats in the target seat group. Therefore, the first task to be assigned is assigned to seat J1, and then the seat weight of seat J1 is reduced, and the seat weights of seat J2, seat J3, and seat J4 are increased. For another example, at the moment of receiving the second task to be assigned, the weight of seat J2 is 6, and the seat weight is the largest among all seats in the target seat group. Therefore, the second task to be assigned is assigned to seat J2, and then the seat weight of seat J2 is reduced, and the seat weights of seat J1, seat J3, and seat J4 are increased. The allocation of other tasks to be assigned and the corresponding changes in seat weights are similar. The execution subject of the embodiment of the present invention can ensure that the seat weight fluctuates within a certain range, avoid the seat weight being fixed or continuously increasing or decreasing, and give each seat in the target seat group a balanced probability of receiving the task to be assigned.

[0106] Figure 6 FIG. 1 is a schematic diagram of the main process of task allocation according to a reference embodiment of the present invention. Figure 6 As shown, the task allocation method may include:

[0107] Step S601, in response to receiving a task to be assigned, obtaining group weights of a plurality of pre-set seat groups, and screening a target seat group from the plurality of seat groups according to the group weights;

[0108] Step S602, determining the seat weight of each seat included in the target seat group, and selecting the target seat from the target seat group according to the seat weight;

[0109] Step S603, assigning the to-be-assigned task to the target seat, and sending an email to the target user associated with the target seat, prompting the target user to promptly process the to-be-assigned task assigned to the target seat;

[0110] Step S604, transferring the target seat from the target seat group to the pre-set occupied seat group;

[0111] Step S605, updating the group weight of the target seat group, and updating the seat weights of the remaining seats included in the target seat group;

[0112] Step S606, determine whether the task to be assigned has been completed, if so, jump to step S607, otherwise, jump to step S606;

[0113] Step S607, transferring the target seat from the occupied seat group to the target seat group;

[0114] Step S608: Update the grouping weight of the target seat grouping and update the seat weights of all seats included in the target seat grouping.

[0115] The specific implementation content of the task allocation method in a reference embodiment of the present invention has been described in detail in the above-mentioned task allocation method, so the repeated content will not be described here again.

[0116] Figure 7 It is a schematic diagram of the main modules of the task allocation device according to an embodiment of the present invention. As Figure 7 shown, the task allocation device 700 mainly includes:

[0117] The first screening module 701 is configured to, in response to receiving a task to be allocated, obtain the grouping weights of a plurality of pre-set seat groupings, and screen out a target seat grouping from the plurality of seat groupings according to the grouping weights;

[0118] The second screening module 702 is configured to determine the seat weights of each seat included in the target seat grouping, and screen out a target seat from the target seat grouping according to the seat weights;

[0119] The allocation module 703 is configured to allocate the task to be allocated to the target seat, where the target seat is associated with a target user, and the target user processes the task to be allocated assigned to the target seat.

[0120] According to a reference embodiment of the present invention, there is a tree-like association relationship between the plurality of seat groupings, and each seat grouping serves as a node of the tree-like association relationship; screening out a target seat grouping from the plurality of seat groupings according to the grouping weights includes:

[0121] Repeat the following steps in the order from the root node to the leaf node until the target seat grouping is screened out: According to the grouping weights of the seat groupings corresponding to the respective child nodes connected to the current node, screen out a target child node among the respective child nodes; in the case where the target child node is not a leaf node, use the target child node as the current node; in the case where the target child node is a leaf node, use the seat grouping corresponding to the target child node as the target seat grouping.

[0122] According to another reference embodiment of the present invention, the task allocation device 700 further includes: a first transfer module, configured to transfer the target seat from the target seat grouping to a pre-set occupied seat grouping;

[0123] The task allocation device 700 further includes: a second transfer module, configured to transfer the target seat from the occupied seat grouping to the target seat grouping.

[0124] According to another referenceable embodiment of the present invention, the task allocation device 700 further includes: a first update module, configured to update the grouping weight of the target seat grouping and update the seat weight of the remaining seats included in the target seat grouping;

[0125] The task allocation device 700 further includes: a second update module, configured to update the grouping weight of the target seat grouping and update the seat weight of all seats included in the target seat grouping.

[0126] According to still another referenceable embodiment of the present invention, there is an inclusion relationship between the multiple seat groupings, the target seat grouping is within the first seat grouping, and the grouping weight includes: an initial grouping weight and a real-time grouping weight; updating the grouping weight of the target seat grouping includes:

[0127] Determine a second seat grouping included in the first seat grouping other than the target seat grouping;

[0128] Determine the total grouping weight according to the initial grouping weight of the target seat grouping and the initial grouping weight of the second seat grouping;

[0129] Update the real-time grouping weight of the target seat grouping according to the total grouping weight.

[0130] According to still another referenceable embodiment of the present invention, the seat weight includes: an initial seat weight and a real-time seat weight; updating the seat weight of the remaining seats included in the target seat grouping includes: determining the total seat weight of the remaining seats according to the initial seat weight of the remaining seats included in the target seat grouping, and updating the real-time seat weight of the remaining seats according to the total seat weight;

[0131] Updating the seat weight of all seats included in the target seat grouping includes: updating the real-time seat weight of all seats according to the total seat weight.

[0132] According to a referenceable embodiment of the present invention, screening out target seats from the target seat grouping according to the seat weight includes:

[0133] Updating the real-time seat weight of each seat included in the target seat grouping according to the initial seat weight of each seat, and screening out target seats from the multiple seats included in the target seat grouping according to the updated real-time seat weight.

[0134] It should be noted that the specific implementation content of the task allocation device in the embodiments of the present invention has been described in detail in the above-mentioned task allocation method, so the repeated content will not be described herein.

[0135] According to the technical solution of the embodiment of the present invention, based on the multi-level grouping of seats, the target seats suitable for processing the tasks to be assigned are screened out from a large number of seats, which can improve the task assignment efficiency and simplify the task assignment process; according to the tree-like association relationship, the target seat group is screened out from multiple seat groups, which can improve the screening efficiency of the target seat group and simplify the screening process of the target seat group; after the task to be assigned is assigned to the target seat, the target seat is transferred to the occupied seat group, so that all the seats in the target seat group are idle seats, separating the idle seats and the occupied seats, and avoiding assigning the task to be assigned to the already occupied seat; updating the grouping weight of the seat group can improve the efficiency of screening the target seat group according to the grouping weight, and facilitate the selection of the seat group with a longer waiting time; updating the seat weight can improve the efficiency of screening the target seat according to the seat weight, and facilitate the selection of the seat with a longer waiting time; updating the seat weight based on the initial seat weight and the real-time seat weight can update the seat weight more flexibly and meet different weight update requirements.

[0136] According to the third aspect of the embodiment of the present invention, there is provided an electronic device, including: one or more processors; a storage device for storing one or more programs, which when executed by the one or more processors, cause the one or more processors to implement the method provided in the first aspect of the embodiment of the present invention.

[0137] According to the fourth aspect of the embodiment of the present invention, there is provided a computer-readable medium, on which a computer program is stored, and when the program is executed by a processor, the method provided in the first aspect of the embodiment of the present invention is implemented.

[0138] Figure 8 An exemplary system architecture 800 to which the method or apparatus for task assignment according to the embodiment of the present invention can be applied is shown.

[0139] As Figure 8 shown, the system architecture 800 may include terminal devices 801, 802, 803, a network 804, and a server 805. The network 804 is used to provide a medium for communication links between the terminal devices 801, 802, 803 and the server 805. The network 804 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.

[0140] Users can use the terminal devices 801, 802, 803 to interact with the server 805 through the network 804 to receive or send messages, etc. Various communication client applications may be installed on the terminal devices 801, 802, 803, such as task assignment applications, task query applications, search applications, instant messaging tools, email clients, social platform software, etc. (only for example).

[0141] The terminal devices 801, 802, and 803 can be various electronic devices with a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and so on.

[0142] The server 805 can be a server that provides various services. For example, it can be a background management server (only for example) that supports requests for task allocation sent by the upstream using the terminal devices 801, 802, and 803. The background management server can, in response to receiving a task to be allocated, obtain the grouping weights of multiple pre-set seat groups, and based on the grouping weights, screen out a target seat group from the multiple seat groups; determine the seat weights of each seat included in the target seat group, and based on the seat weights, screen out a target seat from the target seat group; allocate the task to be allocated to the target seat, where the target seat is associated with a target user, and the target user processes the task to be allocated to the target seat; and feedback the situation of task allocation (only for example) to the terminal device.

[0143] It should be noted that the task allocation method provided by the embodiments of the present invention is generally executed by the server 805. Correspondingly, the task allocation device is generally set in the server 805. The task allocation method provided by the embodiments of the present invention can also be executed by the terminal devices 801, 802, and 803. Correspondingly, the task allocation device can be set in the terminal devices 801, 802, and 803.

[0144] It should be understood that Figure 8 the numbers of the terminal devices, networks, and servers in

[0145] are merely illustrative. According to the implementation requirements, there can be any number of terminal devices, networks, and servers. Figure 9 shown in Figure 9 is only an example of a terminal device and should not bring any limitation to the functions and usage scope of the embodiments of the present invention.

[0146] As shown in Figure 9As shown, computer system 900 includes a central processing unit (CPU) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage section 908 into a random access memory (RAM) 903. In the RAM 903, various programs and data required for the operation of the system 900 are also stored. The CPU 901, ROM 902, and RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.

[0147] The following components are connected to the I / O interface 905: an input section 906 including a keyboard, a mouse, etc.; an output section 907 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 908 including a hard disk, etc.; and a communication section 909 including a network interface card such as a LAN card, a modem, etc. The communication section 909 performs communication processing via a network such as the Internet. A drive 910 is also connected to the I / O interface 905 as needed. A removable medium 911, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 910 as needed so that a computer program read from it can be installed into the storage section 908 as needed.

[0148] Specifically, according to the embodiments disclosed in the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, the embodiments disclosed in the present invention include a computer program that includes a computer program carried on a computer-readable medium, and the computer program contains program codes for performing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 909, and / or installed from the removable medium 911. When the computer program is executed by the central processing unit (CPU) 901, the above functions defined in the system of the embodiments of the present invention are executed.

[0149] It should be noted that the computer-readable medium shown in the embodiments of the present invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of a computer-readable storage medium can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the embodiments of the present invention, a computer-readable storage medium can be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, apparatus, or device. In the embodiments of the present invention, a computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium, and this computer-readable medium can send, propagate, or transmit a program for use by or in combination with an instruction execution system, apparatus, or device. The program code contained on a computer-readable medium can be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0150] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer programs according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram can represent a module, a program segment, or a part of code, and the above module, program segment, or part of code contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks can occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown can actually be executed substantially in parallel, and they can sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and the combination of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.

[0151] The modules involved in the embodiments of the present invention can be implemented in software or in hardware. The described modules can also be provided in a processor. For example, it can be described as: a processor includes a first screening module, a second screening module, and an allocation module. In some cases, the names of these modules do not constitute a limitation on the module itself. For example, the first screening module can also be described as "a module for screening out a target seat group from multiple seat groups".

[0152] As another aspect, the embodiments of the present invention also provide a computer-readable medium. The computer-readable medium can be included in the device described in the above embodiments; or it can exist separately without being assembled into the device. The above computer-readable medium carries one or more programs. When the one or more programs are executed by the device, the device implements the following method: in response to receiving a task to be allocated, obtain the grouping weights of multiple pre-set seat groups, and according to the grouping weights, screen out a target seat group from the multiple seat groups; determine the seat weights of each seat included in the target seat group, and according to the seat weights, screen out a target seat from the target seat group; allocate the task to be allocated to the target seat, and the target seat is associated with a target user, and the target user processes the task to be allocated to the target seat.

[0153] According to the technical solution of the embodiments of the present invention, based on the multi-level grouping of seats, screening out a target seat suitable for processing the task to be allocated from a large number of seats can improve the task allocation efficiency and simplify the task allocation process; screening out a target seat group from multiple seat groups according to the tree-like association relationship can improve the screening efficiency of the target seat group and simplify the screening process of the target seat group; after allocating the task to be allocated to the target seat, transfer the target seat to the occupied seat group, so that all seats in the target seat group are idle seats, separating the idle seats and the occupied seats, and avoiding allocating the task to be allocated to an already occupied seat; updating the grouping weights of the seat groups can improve the efficiency of screening the target seat group according to the grouping weights, and facilitate the selection of the seat group with a longer waiting time; updating the seat weights can improve the efficiency of screening the target seat according to the seat weights, and facilitate the selection of the seat with a longer waiting time; updating the seat weights based on the initial seat weights and the real-time seat weights can update the seat weights more flexibly and meet different weight update requirements.

[0154] The above specific embodiments do not constitute a limitation on the protection scope of the embodiments of the present invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principle of the embodiments of the present invention shall be included within the protection scope of the embodiments of the present invention.

Claims

1. A method for task allocation, characterized in that, it includes: In response to receiving a task to be allocated, obtain the grouping weights of multiple preset seat groups, and according to the grouping weights, screen out a target seat group from the multiple seat groups; Determine the seat weights of each seat included in the target seat group, and according to the seat weights, screen out a target seat from the target seat group; Allocate the task to be allocated to the target seat, the target seat is associated with a target user, and the target user processes the task to be allocated to the target seat.

2. The method according to claim 1, characterized in that, There is a tree-like association relationship between the multiple seat groups, and each seat group is used as a node of the tree-like association relationship; Screening out a target seat group from the multiple seat groups according to the grouping weights includes: Repeatedly execute the following steps in the order from the root node to the leaf node until the target seat group is screened out: According to the grouping weights of the seat groups corresponding to each child node connected to the current node, screen out a target child node among the child nodes; In the case that the target child node is not a leaf node, use the target child node as the current node; In the case that the target child node is a leaf node, use the seat group corresponding to the target child node as the target seat group.

3. The method according to claim 1, characterized in that, After allocating the task to be allocated to the target seat, the method further includes: Transfer the target seat from the target seat group to a preset occupied seat group; After the task to be allocated is processed, the method further includes: Transfer the target seat from the occupied seat group to the target seat group.

4. The method according to claim 3, characterized in that, After transferring the target seat from the target seat group to a preset occupied seat group, the method further includes: Update the grouping weight of the target seat group, and update the seat weights of the remaining seats included in the target seat group; After transferring the target seat from the occupied seat group to the target seat group, the method further includes: Update the grouping weight of the target seat group, and update the seat weights of all seats included in the target seat group.

5. The method according to claim 4, characterized in that, There is an inclusion relationship between the multiple seat groups, the target seat group is within a first seat group, and the grouping weights include: an initial grouping weight and a real-time grouping weight; Updating the grouping weight of the target seat group includes: Determine a second seat group included in the first seat group except the target seat group; Determine the total grouping weight according to the initial grouping weight of the target seat group and the initial grouping weight of the second seat group; Update the real-time grouping weight of the target seat group according to the total grouping weight.

6. The method according to claim 4, characterized in that, The seat weights include: initial seat weights and real-time seat weights; updating the seat weights of the remaining seats included in the target seat group includes: determining the total seat weight of the remaining seats according to the initial seat weights of the remaining seats included in the target seat group, and updating the real-time seat weights of the remaining seats according to the total seat weight. Updating the seat weights of all the seats included in the target seat group includes: updating the real-time seat weights of all the seats according to the total seat weight.

7. The method according to claim 6, wherein, screening out target seats from the target seat group according to the seat weights includes: updating the real-time seat weights of each seat included in the target seat group according to the initial seat weights of each seat, and screening out target seats from the multiple seats included in the target seat group according to the updated real-time seat weights.

8. A task allocation device, wherein, it includes: A first screening module, configured to, in response to receiving a task to be allocated, obtain the grouping weights of a plurality of pre-set seat groups, and screen out a target seat group from the plurality of seat groups according to the grouping weights; A second screening module, configured to determine the seat weights of each seat included in the target seat group, and screen out target seats from the target seat group according to the seat weights; An allocation module, configured to allocate the task to be allocated to the target seats, where the target seats are associated with target users, and the target users process the tasks to be allocated to the target seats.

9. An electronic device, wherein, it includes: One or more processors; A storage device, configured to store one or more programs, when the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1-7.

10. A computer-readable medium, on which a computer program is stored, wherein, the program, when executed by a processor, implements the method according to any one of claims 1-7.