CN110717662B - Task allocation method, device, equipment and storage medium - Google Patents
Task allocation method, device, equipment and storage medium Download PDFInfo
- Publication number
- CN110717662B CN110717662B CN201910925911.8A CN201910925911A CN110717662B CN 110717662 B CN110717662 B CN 110717662B CN 201910925911 A CN201910925911 A CN 201910925911A CN 110717662 B CN110717662 B CN 110717662B
- Authority
- CN
- China
- Prior art keywords
- processing
- target
- area
- processing resources
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 1087
- 230000007115 recruitment Effects 0.000 claims description 208
- 238000012163 sequencing technique Methods 0.000 claims description 12
- 230000001186 cumulative effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 6
- 238000009826 distribution Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/105—Human resources
- G06Q10/1053—Employment or hiring
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The embodiment of the invention discloses a task allocation method, a device, equipment and a storage medium. The method comprises the following steps: determining a target area and the actual sub-demand quantity of the processing resources of each area according to the initial total demand quantity of the processing resources, the position information of the target node and each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the quantity of the sub-tasks and the number of the processing resources in each preset area; determining a target processing node in the target area according to the actual sub-demand quantity of the area processing resources, the target node, the position information of each processing node block in each target area and the quantity of the processing resources of each processing node; and sending the task to be processed to the target processing node. According to the technical scheme, the difficulty of executing the to-be-processed task by processing resources in different areas is considered, and the task completion effect is guaranteed; when the processing nodes form a processing node block, the problem of task resource imbalance among the processing nodes in the block can be avoided.
Description
Technical Field
The embodiment of the invention relates to the technical field of information processing, in particular to a task allocation method, a task allocation device, a task allocation equipment and a storage medium.
Background
In order to meet the demand of labor of the rapidly-developing manufacturing and service industry, in the domestic market in the future, the blue-collar recruitment market will occupy most of the wall of the whole recruitment market.
At present, the large and medium-sized manufacturing industry in the market transfers recruitment pressure to a labor company mainly in cooperation modes of labor dispatching, outsourcing and the like, and the labor company mainly depends on an intermediary mechanism to recruit workers in batches. One important reason why factory recruitment has progressed slowly for many years is that large and medium-sized manufacturing industries are unstable, instantaneous demands are too large (hundreds of people are often), traditional recruitment websites can only provide resumes, and neither intermediaries nor labor companies can complete the conversion process from online to offline, so that only direct supply of people can be relied on for offline channels.
Generally, after receiving the recruitment requirement information of the labor company, the intermediary organization allocates the recruitment task according to the distance between the recruitment enterprise and the offline store through an internal system, and the offline store of the received recruitment task can perform the recruitment work. However, the task allocation method may cause imbalance of task resources among the recruitment stores, especially imbalance of task resources among the geographically adjacent recruitment stores, and the influence of the density and distance of the recruitment stores on the recruitment work is not considered.
Disclosure of Invention
Embodiments of the present invention provide a task allocation method, apparatus, device, and storage medium, so as to optimize a task allocation manner in the prior art, avoid a phenomenon of unbalanced task allocation, and ensure a task completion effect.
In a first aspect, an embodiment of the present invention provides a task allocation method, including:
determining the initial total demand quantity of processing resources matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes;
determining at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the area processing resources of each target area according to the initial total demand quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area;
determining at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position information of the target node, the position information of each processing node block in each target area and the quantity of the processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
and respectively sending each task to be processed to the corresponding target processing node.
In a second aspect, an embodiment of the present invention further provides a task allocation apparatus, including:
the processing resource initial total demand quantity determining module is used for determining the processing resource initial total demand quantity matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes;
a region processing resource actual sub-demand quantity determining module, configured to determine, according to the initial total demand quantity of processing resources, the location information of the target node, the location information of each preset region, a ratio of the demand quantity of processing resources within different preset regions to the sub-task quantity, and the processing resource quantity of each preset region, at least one target region corresponding to the task to be processed, and a region processing resource actual sub-demand quantity of each target region;
a target processing node determining module, configured to determine, in each target area, at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks according to an actual sub-demand quantity of area processing resources of each target area, position information of the target node, position information of each processing node block in each target area, and a quantity of processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
and the task allocation module is used for respectively sending each task to be processed to the corresponding target processing node.
In a third aspect, an embodiment of the present invention further provides a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the task allocation method according to any embodiment of the present invention when executing the program.
In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the task allocation method according to any embodiment of the present invention.
In the technical scheme provided by the embodiment of the invention, after a task to be processed issued by a target node is received, the initial total demand quantity of processing resources matched with the task to be processed is determined, and then at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the processing resources in the area of each target area are determined according to the initial total demand quantity of the processing resources, the position relation between the target node and each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area; and determining a target processing node corresponding to the task to be processed in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position relation between the target node and each processing node block in the target area and the quantity of the processing resources of each processing node, and finally sending the task to be processed to the target processing nodes so that the processing resources of the target processing nodes execute the task to be processed. According to the technical scheme, the different difficulty degrees of the processing resources in different areas for executing the tasks to be processed are considered, the initial total required quantity of the processing resources is not only referred to when the target areas corresponding to the tasks to be processed and the actual sub-required quantity of the processing resources in the areas of the target areas are determined, but also the ratio of the required quantity of the processing resources in the different areas to the number of the sub-tasks is combined, and the task completion effect of the target processing nodes in the different areas is guaranteed; in the above technical solution, after the target processing node block matching the to-be-processed task is determined, the target processing node matching the to-be-processed task is determined from the target processing node block, and in contrast to the technical solution in which the target processing node is determined only according to the absolute distance between the target node and each processing node, when a plurality of processing nodes are close to each other to form a processing node block, the problem that the to-be-processed task of the same target node can only be allocated to a specific processing node, and further the task resources among the processing nodes in the node block are unbalanced can be avoided.
Drawings
FIG. 1 is a flowchart of a task allocation method according to an embodiment of the present invention;
FIG. 2 is a block diagram of a processing node according to an embodiment of the present invention;
FIG. 3 is a flowchart of a task allocation method according to a second embodiment of the present invention;
FIG. 4 is a schematic structural diagram of a task allocation apparatus according to a third embodiment of the present invention;
fig. 5 is a schematic hardware configuration diagram of a computer device in the fourth embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some structures related to the present invention are shown in the drawings, not all of them.
Before discussing exemplary embodiments in greater detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although a flowchart may describe the operations (or steps) as a sequential process, many of the operations can be performed in parallel, concurrently, or simultaneously. In addition, the order of the operations may be re-arranged. The process may be terminated when its operations are completed, but may have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, and the like.
Example one
Fig. 1 is a flowchart of a task allocation method according to an embodiment of the present invention, which is applicable to a case where a task to be processed of a target node is allocated to each processing node matched with the target node to complete when a processing node cluster exists.
As shown in fig. 1, the method of this embodiment specifically includes:
s110, determining the initial total demand quantity of the processing resources matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes.
The target node refers to a node that issues a task, or is referred to as a main body of the issue task, for example, an enterprise that issues the task, or the like. Processing resources refer to individual resources that perform tasks, such as service personnel. Wherein, the task issued by the target node refers to a task that requires one or more processing resources to complete.
The initial total required amount of processing resources refers to the amount of processing resources required to complete the task to be processed. The processing resource initial total required quantity is a theoretical value, and is specifically related to the number of subtasks included in the to-be-processed task and a set ratio of the required processing resource quantity to the number of the subtasks, where the ratio of the required processing resource quantity to the number of the subtasks refers to the number of processing resources required to complete one subtask in the to-be-processed task. Generally, the ratio of the set processing resource requirement quantity to the sub-task quantity is 1, and if the number of the sub-tasks included in the to-be-processed task is 100, the initial total requirement quantity of the processing resource is 100. When the task to be processed is a recruitment task, the number of the subtasks included in the task to be processed specifically refers to the number of recruiters, and the processing resource specifically refers to the recruitment service personnel.
S120, determining at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the area processing resources of each target area according to the initial total demand quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area.
The preset area refers to an area divided according to a preset division standard, and each preset area includes an area of at least one processing node block. The preset partition criteria are not specifically limited in this embodiment, for example, the preset partition criteria may be divided according to a distance between an area and a target node, and assuming that two preset areas are divided, an area within a first preset distance (for example, within 50 km) from the target node may be specifically divided into a first preset area, and an area within a second preset distance (for example, outside 50 km) from the target node may be divided into a second preset area.
A processing node block refers to a block having at least one processing node. When a plurality of processing nodes are distributed in a centralized manner, the processing nodes can be divided into a processing node block.
The processing node refers to a node that provides processing resources for completing tasks issued by the target node, such as a company that provides service personnel, and in particular refers to each subsidiary company belonging to the same parent company. The processing nodes are distributed in a distributed manner or in a centralized manner, and are specifically determined according to market demands.
Specifically, before S120, the method further includes: and dividing at least one processing node block into at least one preset area.
Typically, according to the geographical location information of the processing node blocks, a preset area in which each processing node block is located is determined, and the processing node blocks are divided into corresponding preset areas.
Specifically, before S120, the method further includes: at least one processing node is divided into at least one processing node block.
Optionally, the processing node blocks are divided according to the density of the processing nodes, for example, the processing node blocks are divided through a density clustering DBSCAN algorithm. Typically, the processing nodes may be divided according to the density of the processing nodes and the distance between adjacent processing nodes, and processing nodes at different distances are connected in series by means of density clustering to form a processing node block.
As shown in fig. 2, the distance between the clusters a, B, C, and D is smaller than a predetermined threshold, and the distance between the clusters a and B is smaller than a predetermined threshold, so that the clusters a, B, and C can be divided into one processing node block, but the distance between any one of the clusters a, B, and C and the cluster D exceeds the predetermined threshold, so that the cluster D is not divided into processing node blocks including the clusters a, B, and C.
Further, if it is determined that at least one new processing node exists, at least two processing nodes including the at least one new processing node are subdivided into at least one processing node block.
And processing node block division is carried out again each time a new processing node is recorded in the task distribution system. For example, it is automatically checked in the morning every day whether a new processing node is entered, and if so, all the processing nodes are re-partitioned, where the partition of some processing nodes may or may not be changed.
The ratio of the number of processing resources required in the preset area to the number of the subtasks means the number of processing resources required for completing one subtask in the to-be-processed task in the preset area. Taking a task to be processed as a recruitment task as an example, if the ratio of the required quantity of processing resources to the quantity of subtasks in a preset area is 2. Typically, the farther the preset area is from the target node, the greater the ratio of the processing resource requirement to the subtask requirement.
In S120, first, according to the location information of the target node, the location information of each preset region, the ratio of the required quantity of processing resources to the quantity of subtasks in different preset regions, the quantity of processing resources possessed by each preset region, and the initial total required quantity of processing resources, each target region to which a task to be processed is allocated and the actual required quantity of processing resources of the region of each target region (that is, the quantity of processing resources actually required in each target region) are determined and allocated.
The processing node block comprises a processing node block and a processing node block, wherein the processing node block comprises a plurality of processing nodes, and the processing node block comprises a plurality of processing nodes; the processing resource amount of the preset area is the sum of the processing resource amounts of the processing node blocks included in the preset area.
As an alternative implementation, S120 may be specifically:
sequencing all the preset areas from near to far according to the distance from the target node;
sequentially acquiring a preset area as a current processing preset area;
determining the actual sub-required quantity of the regional processing resources of the current processing preset region according to the initial total required quantity of the processing resources, the ratio of the required quantity of the processing resources of the current processing preset region to the sub-task quantity and the quantity of the processing resources in the current processing preset region, and updating the initial total required quantity of the processing resources according to the actual sub-required quantity of the regional processing resources of the current processing preset region;
and taking the current processing preset area as a target area until the initial total required quantity of the processing resources is updated to zero.
When a task to be processed issued by a target node is received, position information of the target node and position information of each preset region are obtained, distances between the preset regions and the target node are respectively calculated, and the preset regions are sequenced according to the sequence of the distances between the preset regions and the target node from near to far.
Sequentially acquiring a preset area as a current processing preset area, comparing the ratio of the processing resource demand quantity to the subtask quantity of the current processing preset area with the ratio of the processing resource demand quantity to the subtask quantity set in advance, if the two are the same, directly comparing the initial total demand quantity of the processing resources with the processing resource quantity in the current processing preset area, if the processing resource quantity in the current processing preset area is less than the initial total demand quantity of the processing resources, taking the processing resource quantity in the current processing preset area as the actual sub demand quantity of the area processing resources of the current processing preset area, taking the current processing preset area as a target area, and updating the initial total demand quantity of the processing resources into the difference value between the initial total demand quantity of the processing resources and the processing resource quantity in the pre-processing area; and if the number of the processing resources in the current processing preset area is larger than the initial total required number of the processing resources, taking the initial total required number of the processing resources as the actual sub-required number of the processing resources of the area of the current processing preset area, taking the current processing preset area as a target area, and updating the initial total required number of the processing resources to be zero.
Then, sequentially obtaining the next preset area as the current processing preset area until the initial total required quantity of the processing resources is updated to zero, and at the moment, determining each target area corresponding to the task to be processed and the actual sub-required quantity of the processing resources in each target area.
And comparing the ratio of the required quantity of the processing resources of the current processing preset area to the quantity of the subtasks with the ratio of the required quantity of the processing resources to the quantity of the subtasks set before, if the required quantity of the processing resources is different from the ratio of the required quantity of the processing resources of the current processing preset area to the quantity of the subtasks, converting the required quantity of the processing resources into the actual required quantity matched with the ratio of the required quantity of the processing resources of the current processing preset area to the quantity of the subtasks, and then calculating the actual required quantity of the processing resources of the area of the current processing preset area.
As an optional implementation manner of this embodiment, the actual sub-required quantity of the area processing resources of the current processing preset area may be determined according to the initial total required quantity of the processing resources, the ratio of the required quantity of the processing resources of the current processing preset area to the quantity of the sub-tasks, and the quantity of the processing resources possessed by the current processing preset area, and the initial total required quantity of the processing resources may be updated according to the actual sub-required quantity of the area processing resources of the current processing preset area, specifically:
converting the initial total demand quantity of the processing resources into the actual total demand quantity of the processing resources according to the ratio of the demand quantity of the processing resources of the current processing preset area to the quantity of the subtasks;
if the number of the processing resources in the current processing preset area is less than or equal to the actual total required number of the processing resources, determining the number of the processing resources in the current processing preset area as the actual sub-required number of the processing resources in the area of the current processing preset area;
if the number of the processing resources in the current processing preset area is larger than the actual total required number of the processing resources, determining the actual total required number of the processing resources as the actual sub-required number of the processing resources in the area of the current processing preset area;
and updating the actual total demand quantity of the processing resources to be the difference value between the actual total demand quantity of the processing resources and the actual sub-demand quantity of the processing resources in the area of the current processing preset area, and converting the actual total demand quantity of the processing resources back to the initial total demand quantity of the processing resources according to the ratio of the actual total demand quantity of the processing resources in the current processing preset area to the sub-task quantity.
After a preset area is acquired as a current processing preset area: firstly, converting the initial total demand quantity of the processing resources into the actual total demand quantity of the processing resources, wherein the actual total demand quantity of the processing resources is the product of the initial total demand quantity of the processing resources and the ratio of the demand quantity of the processing resources of the current processing preset area to the quantity of the subtasks; secondly, comparing the actual total demand quantity of the processing resources with the actual total demand quantity of the processing resources in the current processing preset area, wherein when the actual total demand quantity of the processing resources in the current processing preset area is less than or equal to the actual total demand quantity of the processing resources, the actual total demand quantity of the processing resources in the current processing preset area is the actual sub-demand quantity of the processing resources in the area, and when the actual total demand quantity of the processing resources in the current processing preset area is greater than the actual total demand quantity of the processing resources, the actual total demand quantity of the processing resources is the actual sub-demand quantity of the processing resources in the area; thirdly, updating the actual total demand quantity of the processing resources, and updating the actual total demand quantity of the processing resources into a difference value between the actual total demand quantity of the processing resources and the actual sub-demand quantity of the processing resources in the area of the current processing preset area; and finally, converting the actual total demand quantity of the processing resources back to the initial total demand quantity of the processing resources, wherein the initial total demand quantity of the processing resources is the quotient of the actual total demand quantity of the processing resources and the ratio of the demand quantity of the processing resources in the current processing preset area to the quantity of the subtasks.
And sequentially obtaining the next preset area as the current processing preset area until the initial total required quantity of the processing resources is updated to zero, and at the moment, determining each target area corresponding to the task to be processed and the actual sub-required quantity of the processing resources in each target area.
It should be noted that, when the actual total required amount of the processing resource is converted back to the initial total required amount of the processing resource, if the quotient value is not an integer, in order to ensure the completion effect of the task to be processed, the quotient value may be rounded up, and the rounding result of the quotient value is used as the initial total required amount of the processing resource. For example, if the actual total required amount of processing resources is 59, and the ratio of the required amount of processing resources to the number of subtasks in the current processing preset region is 2, the initial total required amount of processing resources obtained through direct calculation is 29.5, and the initial total required amount of processing resources is determined as 30 by rounding up the initial total required amount of processing resources.
For example: the target node B issues a task to be processed, and the number of subtasks of the task to be processed is 100. The task allocation system includes 10 processing node blocks, which are Y1 (40 processing resources), Y2 (30 processing resources), Y3 (50 processing resources), Y4 (20 processing resources), Y5 (45 processing resources), Y6 (70 processing resources), Y7 (40 processing resources), Y8 (80 processing resources), Y9 (40 processing resources), and Y10 (60 processing resources), respectively.
Suppose that: and according to the distance between the target node A and each processing node block, carrying out sorting processing from near to far to obtain sorted processing node blocks Y1, Y2, Y3, Y4, Y5, Y6, Y7, Y8, Y9 and Y10.
The 10 processing nodes are divided into two preset areas, wherein the processing node blocks in the first preset area comprise Y1 and Y2, and the processing node blocks in the second preset area comprise Y3, Y4, Y5, Y6, Y7, Y8, Y9 and Y10.
Suppose again that: if the ratio of the required amount of the processing resources to the required amount of the subtasks is 1, the initial total required amount of the processing resources is 100. The ratio of the number of processing resource demands to the number of tasks within the first preset area is 1, and the ratio of the number of processing resource demands to the number of tasks within the second preset area is 2.
The number of processing resources in the first preset area is the sum of the number of processing resources in Y1 and the number of processing resources in Y2, and the number of processing resources in the first preset area is calculated to be 70. The number of processing resources in the first preset area is the sum of the number of processing resources in Y3, Y4, Y5, Y6, Y7, Y8, Y9, and Y10, and the number of processing resources in the first preset area is calculated to be 405.
Firstly, a first preset area is selected as a current processing preset area, the initial total demand quantity 100 of the processing resources is converted into an actual total demand quantity 100 of the processing resources (the initial total demand quantity 100 of the processing resources and the product of the ratio 1 of the demand quantity of the processing resources to the task quantity of the first preset area), the actual total demand quantity of the processing resources and the quantity of the processing resources in the first preset area are compared, the quantity 70 of the processing resources in the first preset area is smaller than the actual total demand quantity 100 of the processing resources, the actual sub demand quantity of the processing resources in the area of the first preset area is the quantity 70 of the processing resources in the first preset area, the actual total demand quantity of the processing resources is updated to 30 (the difference between the actual total demand quantity 100 of the processing resources and the actual sub demand quantity 70 of the processing resources), and the actual total demand quantity 30 of the processing resources is converted back to the initial total demand quantity 30 of the processing resources (the quotient of the actual total demand quantity 30 of the processing resources and the ratio 1 of the demand quantity of the processing resources in the first preset area to the task quantity 1).
And determining the first preset area as a target area, judging that the initial total demand quantity of the processing resources is not equal to zero, and continuing to select a second preset area as the current processing preset area. The initial total demand quantity 30 of the processing resources is converted into an actual total demand quantity 60 of the processing resources (a product of the initial total demand quantity 30 of the processing resources and a ratio 2 of the demand quantity of the processing resources to the number of tasks in the second preset area), the actual total demand quantity of the processing resources is compared with the number of the processing resources in the second preset area, the number 405 of the processing resources in the second preset area is greater than the actual total demand quantity 60 of the processing resources, the actual sub-demand quantity of the processing resources in the area of the second preset area is the actual total demand quantity 60 of the processing resources, the actual total demand quantity of the processing resources is updated to 0 (a difference between the actual total demand quantity 60 of the processing resources and the actual sub-demand quantity 60 of the area), and the actual total demand quantity 0 of the processing resources is converted back to the initial total demand quantity 0 of the processing resources (a quotient 1 of the actual total demand quantity of the processing resources 0 and the number of the processing resources in the second preset area to the number of tasks).
And determining the second preset area as a target area, judging that the initial total demand quantity of the processing resources is equal to zero, and ending the circulation.
Thus, it is determined that the target areas corresponding to the to-be-processed tasks issued by the target node B are a first preset area and a second preset area, where the actual sub-demand quantity of the area processing resources of the first preset area is 70, and the actual sub-demand quantity of the area processing resources of the second preset area is 60.
S130, determining at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position information of the target nodes, the position information of each processing node block in each target area and the quantity of the processing resources of each processing node.
After determining each target area corresponding to the task to be processed and the actual sub-required quantity of the area processing resources of each target area, each target processing node block corresponding to the task to be processed and each target processing node in the target processing node block included in each target area can be determined respectively.
In a target area, all of the processing node blocks may be target processing node blocks, or some of the processing node blocks may be target processing node blocks; in a target processing node block, all of the processing nodes may be target processing nodes, or some of the processing nodes may be target processing nodes.
As an optional implementation manner of this embodiment, at least one target processing node block corresponding to the to-be-processed task may be determined in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the location information of the target node, the location information of each processing node block in each target area, and the quantity of the processing resources possessed by each processing node, and specifically, the method includes:
if the actual sub-demand quantity of the regional processing resources of the target region is equal to the quantity of the processing resources of the target region, taking each processing node block in the target region as a target processing node block, and taking each processing node in each processing node block as a target processing node;
if the actual sub-demand quantity of the regional processing resources of the target region is less than the quantity of the processing resources of the target region, determining at least one target processing node block in the target region according to the distance between each processing node block in the target region and the target node, the quantity of the processing resources of each processing node block in the target region and the actual sub-demand quantity of the regional processing resources of the target region.
When a target processing node block is determined in a target area, firstly, judging whether the actual sub-demand quantity of the area processing resources of the target area is equal to the quantity of the processing resources of the target area or not, if so, all the processing node blocks in the target area are the target processing node blocks, and further, all the processing nodes in all the processing node blocks in the target area are the target processing nodes; if not, determining each target processing node block in the target area according to the distance between each processing node block in the target area and the target node, the processing resource quantity of each processing node block in the target area and the actual sub-requirement quantity of the area processing resources of the target area, wherein the quantity of the target processing node blocks in the target area is related to the actual sub-requirement quantity of the area processing resources.
In the previous example, the actual sub-demand quantity of the local processing resources in the first predetermined area is equal to the quantity of the processing resources provided therein, so that the processing node blocks Y1 and Y2 in the first predetermined area are both target processing node blocks, and each processing node in Y1 and Y2 is a target processing node. If the actual sub-requirement quantity of the regional processing resources in the second preset region is not equal to the quantity of the processing resources provided by the second preset region, each target processing node block needs to be determined according to the distance between each processing node block and the target node included in the second preset region and the actual sub-requirement quantity of the regional processing resources in the second preset region.
As an optional implementation manner of this embodiment, at least one target processing node block may be determined in the target area according to the distance between each processing node block in the target area and the target node, the number of processing resources possessed by each processing node block in the target area, and the actual sub-requirement number of processing resources in the target area, and the method specifically includes:
sequencing the processing node blocks from near to far according to the distance from the target node;
sequentially acquiring a processing node block as a current processing node block;
and accumulating the processing resource number of the current processing node block into a block processing resource statistic value, and taking the current processing node block as a target processing node block until the block processing resource statistic value is more than or equal to the actual sub-required number of the regional processing resources of the target region.
And calculating the distance between each processing node block in the target area and the target node (for example, calculating the distance between each processing node block and the target node according to the longitude and latitude information of the central point of the processing node block), and sequencing each processing node block according to the sequence of the distance between each processing node block and the target node from near to far.
Sequentially acquiring a processing node block as a current processing node block, acquiring the number of processing resources of the current processing node block, accumulating the number of processing resources into a block processing resource statistic value, and simultaneously taking the current processing node block as a target processing node block. Wherein the initial value of the block processing resource statistic is zero.
And sequentially acquiring the next processing node block as the current processing node block in sequence until the block processing resource statistic is greater than or equal to the actual sub-demand quantity of the regional processing resources of the target region, and determining each target processing node block in the target region.
Further, if the block processing resource statistic is equal to the actual sub-demand quantity of the area processing resources of the target area, each processing node in the target processing node block is taken as a target processing node;
if the block processing resource statistic is larger than the actual sub-requirement number of the area processing resources of the target area, dividing the target processing node block into a confirmed target processing node block and a pending target processing node block, wherein the pending target processing node block is a target processing node block which is farthest away from a target node in the target area;
each processing node in the confirmed target processing node block is taken as a target processing node;
determining the actual sub-requirement number of the block processing resources of the processing node block to be determined according to the difference value between the block processing resource statistic and the actual sub-requirement number of the area processing resources of the target area and the number of the processing resources of the processing node block to be determined, and determining at least one target processing node in the processing node block to be determined according to the historical task statistic of each processing node in the processing node block to be determined and the actual sub-requirement number of the block processing resources.
Specifically, under the condition that the block processing resource statistic is equal to the actual sub-required number of the area processing resources of the target area, all processing nodes in each target processing node block are target processing nodes corresponding to the tasks to be processed.
Specifically, under the condition that the block processing resource statistic is greater than the actual sub-demand quantity of the regional processing resources of the target region, all processing nodes in each confirmed target processing node block are target processing nodes corresponding to the tasks to be processed; the processing nodes in the block of the processing node to be targeted may all be the target processing nodes, or may be part of the target processing nodes, and are related to the actual sub-required number of the block processing resources of the block of the processing node to be targeted.
The actual sub-requirement number of the block processing resources of the block of the undetermined target processing node is calculated as follows:
firstly, calculating the difference value between the block processing resource statistic value and the actual sub-requirement quantity of the area processing resources of the target area, then calculating the difference value between the quantity of the processing resources of the processing node block to be determined and the difference value, wherein the calculation result at the moment is the actual sub-requirement quantity of the block processing resources of the processing node block to be determined.
Continuing with the previous example, the processing resource amount of the ordered processing node blocks in the second predetermined area is accumulated until the actual sub-demand amount of the area processing resources in the second predetermined area is greater than or equal to 60. The obtained target processing node blocks are Y3 and Y4, and since the block processing resource statistic value is 70 (sum of 50 and 20), and the block processing resource statistic value 70 is greater than the actual sub-required quantity 60 of the area processing resources in the second preset area, the target processing node blocks are divided into the confirmed target processing node block and the undetermined target processing node block, that is, Y3 is the confirmed target processing node block, and Y4 is the undetermined target processing node block.
Thus, each processing node in the target processing node block is confirmed to be a target processing node. That is, each processing node in the processing node block Y3 is a target processing node.
The processing nodes in the processing node block to be targeted (i.e., processing node block Y4) may all be target processing nodes, or may be part of the target processing nodes, and are related to the actual sub-required number of block processing resources of the processing node block to be targeted. The actual sub-required number of block processing resources for processing node block Y4 is: 20- (70-60) =10.
And then, each target processing node can be determined in the undetermined target processing node block according to the size of the historical task statistic of each processing node in the undetermined target processing node block and the actual sub-required quantity of the block processing resources of the undetermined target processing node block.
As an optional implementation manner of this embodiment, at least one target processing node may be determined in the block of pending target processing nodes according to the size of the historical task statistic of each processing node in the block of pending target processing nodes and the actual sub-required number of block processing resources, which specifically includes:
sequencing all processing nodes in a processing node block to be determined according to historical task statistics from small to large; the historical task statistic value is updated after the processing node receives the task to be processed;
sequentially acquiring a processing node as a current processing node;
and accumulating the processing resource quantity of the current processing node into the node processing resource statistic value, and taking the current processing node as a target processing node until the node processing resource statistic value is more than or equal to the actual sub-required quantity of the block processing resources.
And the historical task statistic value of the processing nodes is the number of the tasks to be processed which are distributed to one processing node in a set time period. Optionally, the starting time point of the set time period is a time when the processing node is divided into one processing node block, and the ending time point is a current time.
According to the historical task statistic value of the processing nodes, the condition that each processing node in the same processing node block is allocated with a task can be analyzed. In order to avoid the phenomenon of unbalanced task allocation of the processing nodes in the same processing node block, in this embodiment, the processing nodes with smaller historical task statistics values in the same processing node block are preferentially allocated with tasks. Each time a processing node is successfully assigned a task, its historical task statistics are updated, e.g., each time a task is successfully assigned, the historical task statistics are incremented by one.
Firstly, all processing nodes in a processing node block to be determined are sorted according to historical task statistics from small to large.
Then, one processing node is sequentially acquired as a current processing node in sequence, the number of processing resources possessed by the current processing node is acquired, the number of the processing resources is accumulated into a node processing resource statistic value, and meanwhile, the current processing node is taken as a target processing node. Wherein the initial value of the node processing resource statistic is zero.
And sequentially acquiring the next processing node as the current processing node in sequence until the node processing resource statistic is greater than or equal to the actual sub-required quantity of the block processing resources, and determining each target processing node in the block of the undetermined target processing nodes.
Continuing with the previous example, assume that the processing node block Y4 includes two processing nodes, M1 (the number of processing resources is 10) and M2 (the number of processing resources is 10), which are sorted from small to large into M1 and M2 according to the historical task statistics.
And accumulating the number of the processing resources of the sequenced processing nodes in the processing node block Y4 until the number is more than or equal to 10 of the actual sub-requirements of the block processing resources, and obtaining a target processing node M1.
Thus, all the target processing nodes corresponding to the to-be-processed task issued by the target node B are obtained, namely all the processing nodes included in Y1, Y2 and Y3, and the processing node M1 included in Y4. These historical task statistics assigned to the processing nodes of the task to be processed are incremented by one.
In the event that it is determined that there is at least one new processing node, processing node block partitioning is resumed for all processing nodes. After the processing node block is divided again, the processing nodes in each processing node block may or may not be changed.
Further, after the subdivision into at least one processing node block, the method further includes:
if at least one processing node is newly added in the target processing node block, initializing historical task statistics values of each processing node in the target processing node block.
After the processing node block is divided again, if a processing node is added to a processing node block, which means that at least one processing node originally not belonging to the processing node block is added, which may be a processing node newly recorded by the system, or a processing node originally belonging to another processing node block is added, the historical task statistics of each processing node in the processing node block is initialized, for example, the processing node is set to zero.
And S140, respectively sending each task to be processed to the corresponding target processing node.
After the target processing node corresponding to each task to be processed is determined, the task to be processed is sent to the corresponding target processing node, so that the processing resource of the target processing node executes the task after receiving the task to be processed.
After the to-be-processed task is sent to the corresponding target processing node, the name and the ID of the target processing node may be associated with the to-be-processed task and recorded in the task allocation table.
In the technical scheme provided by the embodiment of the invention, after a task to be processed issued by a target node is received, the initial total demand quantity of processing resources matched with the task to be processed is determined, and then at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the area processing resources of each target area are determined according to the initial total demand quantity of the processing resources, the position relation between the target node and each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area; and finally, determining a target processing node corresponding to the task to be processed in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position relation between the target node and each processing node block in the target area and the quantity of the processing resources of each processing node, and sending the task to be processed to the target processing nodes so that the processing resources of the target processing nodes execute the task to be processed.
According to the technical scheme, the different difficulty degrees of the processing resources in different regions for executing the to-be-processed tasks are considered, the initial total required quantity of the processing resources is not only referred to when the target regions corresponding to the to-be-processed tasks and the actual sub-required quantity of the processing resources in the regions of the target regions are determined, but also the ratio of the required quantity of the processing resources in the different regions to the sub-task quantity is combined, and the task completion effect of the target processing nodes in the different regions is guaranteed.
In the above technical solution, after the target processing node block matching the to-be-processed task is determined, the target processing node matching the to-be-processed task is determined from the target processing node block, and in contrast to the technical solution in which the target processing node is determined only according to the absolute distance between the target node and each processing node, when a plurality of processing nodes are close to each other to form a processing node block, the problem that the to-be-processed task of the same target node can only be allocated to a specific processing node, and further the task resources among the processing nodes in the node block are unbalanced can be avoided.
It should be noted that the target processing node blocks and/or target processing nodes corresponding to different to-be-processed tasks issued by different target nodes determined in the present embodiment are allowed to have a coincidence phenomenon. For example, the target processing nodes corresponding to the to-be-processed tasks issued by the target node a include a, B, c, d, e, f and g, and meanwhile, the target processing nodes corresponding to the to-be-processed tasks issued by the target node B include h, i, j, k, l, g, f and e, that is, the target processing nodes e, f and g may receive a plurality of to-be-processed tasks issued by a plurality of target nodes at the same time, and the processing resources of the target processing nodes e, f and g may process a plurality of to-be-processed tasks issued by a plurality of target nodes at the same time.
Example two
Fig. 3 is a flowchart of a task allocation method according to a second embodiment of the present invention, and the present embodiment provides a specific implementation manner for a specific application scenario, where in the application scenario, a target node is a target plant, a task to be processed is a recruitment order, a processing node is an offline recruitment store, and a processing resource is a recruitment service person. Accordingly, the processing node block is a store block.
In the application scenario, an order distribution system (corresponding to the task distribution system of one embodiment) can be developed for distributing recruitment orders to offline recruitment stores. The order distribution system distributes an ID to each offline recruitment store and stores the position information (such as longitude and latitude information) of each offline recruitment store. After each offline recruitment store is divided into different store blocks, the position information of each store block (such as the longitude and latitude information of the center point of the store block) can be determined. The store keeper of the offline recruitment store adds the number of the recruitment service personnel (such as the mobile phone number of the recruitment service personnel) in the store, the recruitment service personnel can check the distributed recruitment orders after logging in the system, and the system determines the number of the recruitment service personnel in each offline recruitment store according to the number of the recruitment service personnel accounts of each offline recruitment store.
Meanwhile, the system divides each store block into regions, and different service personnel ratios (the ratio of the quantity required by the recruitment service personnel to the quantity of the recruitment sub-personnel) are set in different regions. The closer the target factory is to the store block, the smaller the service person ratio of the area to which the store block belongs, for example, 1.
Specifically, the technical solution provided in this embodiment further includes, before determining at least one target area corresponding to a task to be processed and an actual sub-requirement quantity of area processing resources of each target area according to the initial total requirement quantity of processing resources, the location information of the target node, the location information of each preset area, the ratio of the required quantity of processing resources to the number of sub-tasks in different preset areas, and the number of processing resources in each preset area, the method further includes:
and judging that the worker delivery grade of the target factory corresponding to each recruitment order is a second grade.
As shown in fig. 3, the method of this embodiment specifically includes:
s210, judging whether the labor conveying level of the target factory is a second level, if so, executing S220, and if not, executing S260.
The target factory refers to a recruitment factory with unstable labor and possibly large instantaneous demand, and issues a recruitment order to a recruitment intermediary by itself or through a labor company when the recruitment is demanded.
And after receiving the recruitment order, the operator of the recruitment intermediary mechanism inputs the recruitment order into the order distribution system so that the order distribution system determines the required quantity of the recruitment service personnel matched with the order according to the recruitment order.
Specifically, the labor transportation grade of the target plant can be determined according to the labor transportation record of the target plant.
As an optional implementation manner of this embodiment, the determining the recruitment transportation level of the target plant corresponding to each recruitment order may specifically be:
sorting the factories according to the sequence of the total working time of historical delivery users of each factory in a set time period;
calculating the accumulated total working time corresponding to each factory according to the factory sequencing; wherein the accumulated total job time corresponding to the target plant is a cumulative sum of the total job time of each plant ranked before the target plant and the target plant;
calculating the accumulated sum of the total working hours of the historical delivery users of each factory in the set time period; and judging the recruitment transportation grade of the target factory according to the ratio of the accumulated sum of the accumulated total working hours corresponding to the target factory in the total working hours.
Firstly, counting the working personnel in the historical transportation users of each factory within a set time period (for example, the last 30 days), respectively calculating the total working duration of the historical transportation users of each factory according to the working durations of the working personnel, and sequencing the factories according to the sequence of the total working durations from large to small; then, according to the factory sequencing, accumulating the total working time of all the factories from the factory with the first ranking to the target factory, wherein the accumulated sum is the accumulated total working time of the target factory; and finally, calculating the sum of the total working hours of the historical delivery users of all the factories, and the ratio of the accumulated total working hours of the target factory to the sum of the accumulated total working hours of the target factory to the total working hours, namely the basis for judging the recruitment delivery grade of the target factory.
Further, the employment delivery grade of the target plant may be determined according to the ratio of the cumulative sum of the total working hours of the accumulated total working hours corresponding to the target plant in the total working hours, specifically:
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a first ratio range, judging that the worker conveying level of the target factory is a first level;
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a second ratio range, judging that the work transportation grade of the target factory is a second grade;
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a third ratio range, judging that the recruitment transportation grade of the target factory is a third grade;
wherein, the proportion value included in the first proportion range, the second proportion range and the third proportion range is increased in sequence.
For example, if the ratio of the accumulated total working hours corresponding to the target plant to the accumulated sum of the total working hours is 70% at the top (the first ratio range is 0-70%), the recruitment transportation grade of the target plant is the first grade, and the first grade represents that the number of historical transportation users is large; the proportion of the accumulated total working duration corresponding to the target plant to the accumulated sum of the total working duration is 70% -90% (the second proportion range is 70% -90%), the work delivery grade of the target plant is the second grade, and the second grade represents that the number of historical delivery users is general; and if the occupation ratio of the accumulated total working duration corresponding to the target plant in the total working duration is 10 percent later (the third occupation ratio range is 90-100 percent), the recruitment transportation grade of the target plant is the third grade, and the third grade represents that the number of historical transportation users is small.
For example, by this day, there are 1000 on-line employees in the offline store historical delivery staff, and assuming that the average on-duty duration of each of the 1000 on-duty staff in the last 30 days is 10 days, the cumulative total on-duty duration sum of the historical delivery users is 1000 × 10=10000 days. The 1000 employees are distributed among 5 plants, wherein the total duration of the job at plant X1 is 5000 days, the total duration of the job at plant X2 is 2000 days, the total duration of the job at plant X3 is 1500 days, the total duration of the job at plant X4 is 1000 days, and the total duration of the job at plant X5 is 500 days.
Wherein, the factory with the accumulated total duration in the first 70% of the accumulated sum of the total duration is in the first grade; the factory with the accumulated total duration of employment accounting for 70% -90% of the accumulated total duration of employment in the accumulated sum of the total duration of employment is in a second grade; the percentage of the cumulative total length of stay in the cumulative sum of total lengths of stay in the next 10% of the plants is the third grade.
This yields:
the ratio of the total working duration accumulated in the factory X1 in the total working duration accumulated sum is 5000/10000=50%, and the work utilization conveying level of the factory X1 is a first level;
the ratio of the accumulated total working duration of the factory X2 to the accumulated sum of the total working duration is (5000 + 2000)/10000 =70%, and the worker conveying grade of the factory X2 is a first grade;
the ratio of the accumulated total working time length of the factory X3 to the accumulated sum of the total working time lengths is (5000 +2000+ 1500)/10000 =85%, and the worker conveying grade of the factory X3 is the second grade;
the ratio of the accumulated total working duration of factory X4 to the accumulated sum of the total working duration is (5000 +2000+1500+ 1000)/10000 =95%, and the recruitment transportation grade of factory X4 is the third grade;
the ratio of the accumulated total working time length of the factory X5 to the accumulated sum of the total working time lengths is (5000 +2000+1500+1000+ 500)/10000 =100%, and the recruitment transportation grade of the factory X5 is the third grade.
Typically, the labor delivery level of each plant may be maintained periodically, e.g., updated once a day, and recorded for storage. And when a recruitment order of the target factory is received, directly inquiring the recruitment and transportation quantity grade of the target factory.
Compared with the technical scheme of determining the recruitment transportation grade of the target plant according to the ranking proportion of the historical recruitment transportation amount of the target plant, the technical scheme of determining the recruitment transportation grade of the target plant has the advantages that: the obtained work conveying grade of the target factory is judged more accurately.
Assuming that the total working time sum is 10000 days, the total working time accumulated by the plant X1 is 7000 days, the total working time accumulated by the plant X2 is 500 days, the total working time accumulated by the plant X3 is 400 days, and the total working time accumulated by the plant X4 is 300 days, \ 8230 \ 8230:, \ 8230if the industrial transportation grade of the target plant is determined according to the historical industrial transportation quantity ranking ratio, since the historical industrial transportation quantity ranking of the plant X2 is the second, when the industrial transportation grade is determined according to the ranking ratio, the industrial transportation grade of the plant X2 is likely to be determined as the first grade, in fact, the historical industrial transportation quantity of the plant X2 is not much, and further, the determined industrial transportation grade is not accurate. However, according to the above technical solution for determining the labor transportation level of the target plant, although the rank of the plant X2 is adjacent to the rank of the plant X1 according to the accumulated total working hours, the labor transportation level of the plant X2 is not the same as the labor transportation level of the plant X1, and the determined labor transportation level can be more accurately matched with the actual labor transportation amount.
S220, determining the initial total demand quantity of the recruitment service personnel matched with each recruitment order according to one or more recruitment orders released by one or more target factories.
Wherein the recruitment headcount is known information in the recruitment order. And calculating to obtain the initial total required quantity of the recruitment service personnel according to the set ratio of the required quantity of the recruitment service personnel to the number of the recruitment sub-personnel and the total number of the recruitment personnel.
And S230, determining at least one target area corresponding to the recruitment order and the actual sub-demand quantity of the regional recruitment service personnel in each target area according to the initial total demand quantity of the recruitment service personnel, the position information of the target plant, the position information of each preset area, the ratio of the demand quantity of the recruitment service personnel to the number of the recruitment sub-persons in different preset areas and the number of the recruitment service personnel in each preset area.
Each offline recruitment store in the system is divided into at least one store block in advance, and the number of the recruitment service personnel in one store block is the sum of the recruitment service personnel in each offline recruitment store in the store block. And dividing each store block into different preset areas, wherein the number of the recruitment service personnel in one preset area is the sum of the recruitment service personnel in each offline recruitment store in the preset area.
The off-line recruitment stores in different preset areas are different from the target plant in distance, so that the recruitment service personnel in different preset areas have different difficulty degrees in completing the recruitment orders of the target plant. For example, each of the recruitment service personnel in the offline recruitment store closer to the target plant may recruit one worker, and every two recruitment service personnel in the offline recruitment store closer to the target plant may recruit one worker. Therefore, the parameter of the ratio of the required quantity of the recruitment service personnel to the number of the recruitment sub-personnel in the preset area is introduced to determine the required quantity of the recruitment service personnel in different preset areas.
Specifically, each target area corresponding to the recruitment order and the actual sub-demand quantity of the regional recruitment service personnel in each target area can be determined according to the initial total demand quantity of the recruitment service personnel, the position relation between the target plant and each preset area, the ratio of the demand quantity of the recruitment service personnel in different preset areas to the number of the recruitment sub-personnel and the number of the recruitment service personnel in each preset area.
Firstly, calculating a sorted list of preset areas according to the distance between a target factory and each preset area; secondly, sequentially selecting a preset area as a current processing preset area, converting the initial total demand quantity of the recruitment service personnel into the actual total demand quantity of the recruitment service personnel according to the ratio of the demand quantity of the recruitment service personnel to the number of the recruitment sub-personnel in the current processing preset area, determining the actual sub-demand quantity of the regional recruitment service personnel in the current processing preset area according to the size relationship between the number of the recruitment service personnel and the actual total demand quantity of the recruitment service personnel in the current processing preset area, updating the actual total demand quantity of the recruitment service personnel into the difference value between the actual total demand quantity of the recruitment service personnel and the actual sub-demand quantity of the regional recruitment service personnel in the current processing preset area, and converting the actual total demand quantity of the recruitment service personnel back to the initial total demand quantity of the recruitment service personnel according to the ratio of the demand quantity of the recruitment service personnel in the current processing preset area to the number of the recruitment sub-personnel; and finally, taking the current processing preset area as a target area, and sequentially selecting the next preset area as the current processing preset area until the initial total required quantity of the recruitment service personnel is equal to zero.
And S240, determining at least one target store block corresponding to the recruitment order and at least one target offline recruitment store in the target store blocks in each target area according to the actual sub-demand quantity of the regional recruitment service personnel in each target area, the position information of the target plant, the position information of each store block in each target area and the quantity of the recruitment service personnel in each offline recruitment store.
After each target area corresponding to the recruitment order and the actual sub-required quantity of the area recruitment service personnel of each target area are determined, a target store block included in the target area and a target off-line recruitment store in the target store block can be respectively determined in each target area.
And when the actual sub-required quantity of the regional recruitment service personnel in the target region is equal to the quantity of the recruitment service personnel in the target region, all store blocks in the target region are target store blocks, and all off-line recruitment stores in all the store blocks are target off-line recruitment stores.
And when the actual sub-demand quantity of the regional recruitment service personnel in the target region is less than the actual sub-demand quantity of the recruitment service personnel in the target region, determining at least one target store block in the target region according to the distance between each store block in the target region and the target plant, the number of the recruitment service personnel in each store block in the target region and the actual sub-demand quantity of the regional recruitment service personnel in the target region.
Specifically, the store blocks are sequenced from near to far away from the target factory, one store block is sequentially obtained as a currently processed store block according to the sequence, the number of recruitment service personnel of the currently processed store block is accumulated into the block recruitment service personnel statistic value, and the currently processed store block is used as the target store block until the block recruitment service personnel statistic value is larger than or equal to the actual sub-demand number of the regional recruitment service personnel in the target region.
And when the block recruitment service member statistic is equal to the actual sub-demand quantity of the regional recruitment service members in the target region, all off-line recruitment stores in the target store block are target off-line recruitment stores.
And when the block recruitment service personnel statistic value is larger than the actual sub-demand number of the area recruitment service personnel in the target area, dividing the target store block into a confirmed target store block and an undetermined target store block, wherein the undetermined target store block is a target store block which is farthest away from a target factory in the target area, namely the last determined target store block.
Determining that all off-line recruitment stores in the target store block are target off-line recruitment stores; in the to-be-targeted store block, the actual sub-demand quantity of the block recruitment service personnel of the to-be-targeted store block is determined according to the difference value between the block recruitment service personnel statistic and the actual sub-demand quantity of the area recruitment service personnel of the target area and the quantity of the recruitment service personnel of the to-be-targeted store block, and the actual sub-demand quantity of the block recruitment service personnel of the to-be-targeted store block is determined according to the historical task statistic of each offline recruitment store in the to-be-targeted store block and the actual sub-demand quantity of the block recruitment service personnel.
Specifically, the actual sub-demand quantity of the block recruiting service personnel of the to-be-determined target store block is calculated as follows: the method comprises the steps of firstly calculating the difference value between a block recruitment service person statistic value and the actual sub-demand quantity of the area recruitment service persons in a target area, then calculating the difference value between the quantity of the recruitment service persons in a to-be-determined store block and the difference value, and obtaining the calculation result at the moment, namely the actual sub-demand quantity of the block recruitment service persons in the to-be-determined store block.
Further, an ordered list of the offline recruitment stores is calculated according to the historical task statistics of the offline recruitment stores in the to-be-determined target store block, the quantity of the recruitment service personnel of each offline recruitment store is sequentially accumulated until the actual sub-demand quantity of the block recruitment service personnel of the to-be-determined target store block is met, and therefore each target offline recruitment store in the to-be-determined target store block is determined.
At this time, the system can return the determined name and ID of the target offline recruitment store to a front display interface of the system so that the operator can see to which offline recruitment stores the recruitment order should be sent.
And S250, respectively sending each recruitment order to a corresponding target offline recruitment store.
And automatically associating and sending each recruitment order and the ID of the corresponding target offline recruitment store by the system, and recording the association and the sending in an order distribution table. And after the recruitment service personnel of the recruitment store are logged in the system, the recruitment order of the corresponding target factory can be received, and the recruitment work can be carried out according to the recruitment order.
It is worth pointing out that when the target offline recruitment store corresponding to the recruitment order of the target plant a coincides with the target offline recruitment store corresponding to the recruitment order of the target plant B, the recruitment orders of the target plant a and the target plant B can be simultaneously viewed and the recruitment work can be simultaneously carried out for the target plant a and the target plant B after the recruitment service personnel login system of the coinciding target offline recruitment store.
And S260, executing an order distribution scheme matched with the employment conveying grade according to the employment conveying grade of the target factory.
The present embodiment proposes only an order allocation scheme for a target plant with an industrial transportation level being the second level, and the order allocation scheme for a target plant with another industrial transportation level is not particularly limited.
For the sake of brevity, the present embodiment is not explained in detail herein, and reference is made to the aforementioned embodiments for further description.
In the technical scheme, under the condition that the user conveying type of the target plant is a second type, firstly, according to the initial total demand quantity of the recruitment service personnel and the ratio of the demand quantity of the recruitment service personnel to the quantity of the subtasks in different preset areas, a target area matched with a recruitment order of the target plant and the actual sub-demand quantity of the regional recruitment service personnel of each target area are determined, and if the quantity of the recruitment service personnel in the target area is greater than the actual sub-demand quantity of the regional recruitment service personnel in the target area, part of target store blocks are determined in the target area according to the distance between each store block in the target area and the target plant; and if the quantity of the recruitment service personnel in the target store block is greater than the actual sub-demand quantity of the block recruitment service personnel in the target store block, determining part of target processing nodes in the target store block according to the historical task statistics of each offline recruitment store in the target store block.
Compared with the technical scheme that the target off-line recruitment store is determined only according to the absolute distance between the target plant and each off-line recruitment store, in the embodiment, each off-line recruitment store is divided into the areas, the preset area of the distributed order is determined firstly, then the store area of the distributed order is determined in the preset area, and the off-line recruitment store of the distributed order is determined in the store area again.
EXAMPLE III
Fig. 4 is a schematic structural diagram of a task allocation apparatus according to a third embodiment of the present invention, which is applicable to a case where a task to be processed of a target node is allocated to each processing node matched with the target node to be completed when a processing node cluster exists.
As shown in fig. 4, the task allocation apparatus specifically includes: an initial total required amount of processing resources determination module 310, an actual sub-required amount of regional processing resources determination module 320, a target processing node determination module 330, and a task allocation module 340. Wherein,
a processing resource initial total demand quantity determining module 310, configured to determine, according to one or more to-be-processed tasks issued by one or more target nodes, an initial total demand quantity of processing resources matched with each to-be-processed task;
a region processing resource actual sub-demand quantity determining module 320, configured to determine, according to the initial total demand quantity of processing resources, the location information of the target node, the location information of each preset region, a ratio of the demand quantity of processing resources in different preset regions to the sub-task quantity, and the processing resource quantity of each preset region, at least one target region corresponding to the task to be processed, and a region processing resource actual sub-demand quantity of each target region;
a target processing node determining module 330, configured to determine, in each target area, at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks according to the actual sub-demand quantity of the area processing resources of each target area, the location information of the target node, the location information of each processing node block in each target area, and the quantity of the processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
and the task allocation module 340 is configured to send each to-be-processed task to the corresponding target processing node.
In the technical scheme provided by the embodiment of the invention, after a task to be processed issued by a target node is received, the initial total demand quantity of processing resources matched with the task to be processed is determined, and then at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the processing resources in the area of each target area are determined according to the initial total demand quantity of the processing resources, the position relation between the target node and each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area; and determining a target processing node corresponding to the task to be processed in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position relation between the target node and each processing node block in the target area and the quantity of the processing resources of each processing node, and finally sending the task to be processed to the target processing nodes so that the processing resources of the target processing nodes execute the task to be processed.
According to the technical scheme, the different difficulty degrees of the processing resources in different areas for executing the tasks to be processed are considered, the initial total required quantity of the processing resources is not only referred to when the target areas corresponding to the tasks to be processed and the actual sub-required quantity of the processing resources in the areas of the target areas are determined, but also the ratio of the required quantity of the processing resources in the different areas to the number of the sub-tasks is combined, and the task completion effect of the target processing nodes in the different areas is guaranteed; in the above technical solution, after the target processing node block matching the task to be processed is determined, the target processing node matching the task to be processed is determined from the target processing node block, and in comparison with the technical solution in which the target processing node is determined only according to the absolute distance between the target node and each processing node, in the case where a plurality of processing nodes are close to each other to form a processing node block, the problem that the task to be processed of the same target node can only be allocated to a specific processing node, and thus the task resources among the processing nodes in the node block are unbalanced can be avoided.
Specifically, the module 320 for determining the actual sub-requirement number of the regional processing resource includes: the system comprises a region sorting unit, a region selecting unit, a region processing and judging unit and a region circulating unit, wherein the region sorting unit, the region selecting unit, the region processing and judging unit and the region circulating unit are arranged in the region sorting unit;
the region sorting unit is used for sorting all the preset regions from near to far according to the distance from the target node;
the area selection unit is used for sequentially acquiring a preset area as a current processing preset area;
a region processing determining unit, configured to determine an actual sub-required number of region processing resources of the current processing preset region according to the initial total required number of processing resources, a ratio of the required number of processing resources of the current processing preset region to the number of sub-tasks, and the number of processing resources in the current processing preset region, and update the initial total required number of processing resources according to the actual sub-required number of region processing resources of the current processing preset region;
and the area circulating unit is used for taking the current processing preset area as a target area until the initial total required quantity of the processing resources is updated to zero.
Further, the area processing determining unit is specifically configured to convert the initial total required amount of the processing resources into an actual total required amount of the processing resources according to a ratio of the required amount of the processing resources of the current processing preset area to the number of the subtasks; if the number of the processing resources in the current processing preset area is less than or equal to the actual total required number of the processing resources, determining the number of the processing resources in the current processing preset area as the actual sub-required number of the area processing resources in the current processing preset area; if the number of the processing resources in the current processing preset area is larger than the actual total required number of the processing resources, determining the actual total required number of the processing resources as the actual sub-required number of the processing resources in the area of the current processing preset area; and updating the actual total demand quantity of the processing resources to be the difference value between the actual total demand quantity of the processing resources and the actual sub-demand quantity of the processing resources in the area of the current processing preset area, and converting the actual total demand quantity of the processing resources back to the initial total demand quantity of the processing resources according to the ratio of the actual total demand quantity of the processing resources in the current processing preset area to the sub-task quantity.
Specifically, the target processing node determination module 330 includes a target processing node block first determination unit and a target processing node block second determination unit, where;
a target processing node block first determination unit, configured to, if the actual sub-demand quantity of the regional processing resources of the target region is equal to the quantity of the processing resources possessed by the target region, take each processing node block in the target region as a target processing node block, and take each processing node in each processing node block as a target processing node;
a second determining unit of a target processing node block, configured to determine, if the actual sub-requirement quantity of the area processing resources of the target area is smaller than the quantity of the processing resources of the target area, at least one target processing node block in the target area according to a distance between each processing node block in the target area and the target node, the quantity of the processing resources of each processing node block in the target area, and the actual sub-requirement quantity of the area processing resources of the target area.
Further, the second determining unit of the target processing node block specifically includes: the system comprises a block sorting subunit, a block selecting subunit and a block circulating processing subunit, wherein the block sorting subunit, the block selecting subunit and the block circulating processing subunit are connected with the block circulating processing subunit;
the block sorting subunit is used for sorting the processing node blocks from near to far according to the distance from the target node;
the block selection subunit is used for sequentially acquiring a processing node block as a current processing node block;
and the block cyclic processing subunit is configured to accumulate the number of processing resources of the current processing node block into a block processing resource statistic, and use the current processing node block as a target processing node block until the block processing resource statistic is greater than or equal to the actual sub-required number of area processing resources of the target area.
Further, the second determining unit of the target processing node block specifically includes:
a target processing node first determining subunit, configured to, if the block processing resource statistic is equal to the actual sub-required number of area processing resources of the target area, take each processing node in the target processing node block as a target processing node;
a target processing node block dividing subunit, configured to divide the target processing node block into a confirmed target processing node block and an undetermined target processing node block if the block processing resource statistics is greater than an actual sub-required number of area processing resources of the target area, where the undetermined target processing node block is one of the target processing node blocks that is farthest from the target node in the target area;
a second target processing node determining subunit, configured to determine each processing node in the target processing node block as a target processing node;
and a third target processing node determining subunit, configured to determine, according to a difference between the block processing resource statistics and the actual sub-required number of area processing resources in the target area, and the number of processing resources of the to-be-determined target processing node block, the actual sub-required number of block processing resources of the to-be-determined target processing node block, and determine, according to the size of the historical task statistics of each processing node in the to-be-determined target processing node block and the actual sub-required number of block processing resources, at least one target processing node in the to-be-determined target processing node block.
Further, a third determining subunit of the target processing node, configured to sort, from small to large, the processing nodes in the to-be-determined target processing node block according to historical task statistics; wherein the historical task statistics are updated after the processing node receives the task to be processed; sequentially acquiring a processing node as a current processing node; and accumulating the processing resource quantity of the current processing node into a node processing resource statistic value, and taking the current processing node as a target processing node until the node processing resource statistic value is more than or equal to the actual sub-required quantity of the block processing resources.
Specifically, the above apparatus further comprises: and a processing node block dividing module, configured to divide at least one processing node into at least one processing node block before determining at least one target area corresponding to the to-be-processed task and the actual sub-requirement number of the area processing resources of each target area according to the initial total requirement number of the processing resources, the location information of the target node, the location information of each preset area, the ratio of the required number of the processing resources to the number of the sub-tasks in different preset areas, and the number of the processing resources in each preset area.
Further, the above apparatus further comprises: a processing node block repartitioning module to repartition at least two processing nodes, including at least one new processing node, into at least one processing node block if it is determined that the at least one new processing node exists.
Further, the above apparatus further comprises: and the historical task statistic initialization module is used for initializing the historical task statistics of each processing node in the target processing node block if at least one processing node is newly added in the target processing node block after the processing node block is re-divided into at least one processing node block.
Specifically, the target node is a target factory, the task to be processed is a recruitment order, the processing node is an off-line recruitment store, and the processing resource is a recruitment service person.
Further, the above apparatus further comprises: and the recruitment transport level judging module is used for judging that the recruitment transport level of the target plant corresponding to each recruitment order is a second level before determining at least one target area corresponding to the task to be processed and the actual sub-requirement quantity of the regional processing resources of each target area according to the initial total requirement quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the requirement quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area.
Further, the employment conveying grade judging module is specifically configured to:
sorting the factories according to the size sequence of the total working time of the historical delivery users of each factory in a set time period;
calculating the accumulated total working time corresponding to each factory according to the factory sequencing; wherein the accumulated total job time corresponding to the target plant is a cumulative sum of the total job time of each plant ranked before the target plant and the target plant;
calculating the total accumulated sum of the working hours of historical delivery users of each factory in the set time period;
and judging the recruitment transportation grade of the target factory according to the ratio of the accumulated sum of the accumulated total working hours corresponding to the target factory in the total working hours.
Specifically, if the ratio of the accumulated total working duration corresponding to the target factory to the total working duration accumulated sum belongs to a first ratio range, judging that the work transportation grade of the target factory is a first grade;
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a second ratio range, judging that the work transportation grade of the target factory is a second grade;
if the ratio of the accumulated total working duration corresponding to the target factory in the total working duration is in a third ratio range, judging that the recruitment conveying grade of the target factory is a third grade;
wherein, the ratio values included in the first ratio range, the second ratio range and the third ratio range are sequentially increased.
The task allocation device can execute the task allocation method provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects for executing the task allocation method.
Example four
Fig. 5 is a schematic diagram of a hardware structure of a computer device according to a fourth embodiment of the present invention, and as shown in fig. 5, the computer device includes:
one or more processors 410, one processor 410 being exemplified in FIG. 5;
a memory 420;
the computer device may further include: an input device 430 and an output device 440.
The processor 410, the memory 420, the input device 430 and the output device 440 in the computer apparatus may be connected by a bus or other means, and the connection by the bus is exemplified in fig. 5.
The memory 420, which is a non-transitory computer-readable storage medium, may be used for storing software programs, computer-executable programs, and modules, such as program instructions/modules corresponding to a task allocation method in the embodiment of the present invention (for example, the processing resource initial total demand amount determination module 310, the regional processing resource actual sub-demand amount determination module 320, the target processing node determination module 330, and the task allocation module 340 shown in fig. 4). The processor 410 executes various functional applications and data processing of the computer device by executing software programs, instructions and modules stored in the memory 420, namely, a task allocation method of the above-described method embodiments.
The memory 420 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to use of the computer device, and the like. Further, the memory 420 may include high speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, memory 420 may optionally include memory located remotely from processor 410, which may be connected to the terminal device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input means 430 may be used to receive input numeric or character information and to generate key signal inputs related to user settings and function controls of the computer device. The output device 440 may include a display device such as a display screen.
EXAMPLE five
An embodiment of the present invention further provides a storage medium containing computer-executable instructions, which when executed by a computer processor, perform a method for task allocation, the method including:
determining the initial total demand quantity of processing resources matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes;
determining at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the area processing resources of each target area according to the initial total demand quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area;
determining at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position information of the target nodes, the position information of each processing node block in each target area and the quantity of the processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
and respectively sending each task to be processed to the corresponding target processing node.
Optionally, the computer-executable instructions, when executed by a computer processor, may be further configured to implement a technical solution of a task allocation method provided in any embodiment of the present invention.
From the above description of the embodiments, it is obvious for those skilled in the art that the present invention can be implemented by software and necessary general hardware, and certainly, can also be implemented by hardware, but the former is a better embodiment in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as a floppy disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a FLASH Memory (FLASH), a hard disk or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute the methods according to the embodiments of the present invention.
It should be noted that, in the embodiment of the task allocation apparatus, the included units and modules are merely divided according to functional logic, but are not limited to the above division as long as the corresponding functions can be implemented; in addition, the specific names of the functional units are only for the convenience of distinguishing from each other, and are not used for limiting the protection scope of the present invention.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims (16)
1. A task allocation method, comprising:
determining the initial total demand quantity of processing resources matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes;
determining at least one target area corresponding to the task to be processed and the actual sub-demand quantity of the area processing resources of each target area according to the initial total demand quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the demand quantity of the processing resources in different preset areas to the sub-task quantity and the processing resource quantity of each preset area;
determining at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position information of the target node, the position information of each processing node block in each target area and the quantity of the processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
respectively sending each task to be processed to the corresponding target processing node;
determining at least one target area corresponding to the task to be processed and the actual sub-requirement quantity of the area processing resources of each target area according to the initial total requirement quantity of the processing resources, the position information of the target node, the position information of each preset area, the ratio of the required quantity of the processing resources in different preset areas to the required quantity of the sub-tasks and the quantity of the processing resources in each preset area, comprising:
sequencing all the preset areas from near to far according to the distance from the target node;
sequentially acquiring a preset area as a current processing preset area;
converting the initial total demand quantity of the processing resources into the actual total demand quantity of the processing resources according to the ratio of the demand quantity of the processing resources in the current processing preset area to the quantity of the subtasks;
if the number of the processing resources in the current processing preset area is less than or equal to the actual total required number of the processing resources, determining the number of the processing resources in the current processing preset area as the actual sub-required number of the processing resources in the area of the current processing preset area;
if the number of the processing resources in the current processing preset area is larger than the actual total required number of the processing resources, determining the actual total required number of the processing resources as the actual sub-required number of the processing resources in the area of the current processing preset area;
and updating the actual total demand quantity of the processing resources to be the difference value between the actual total demand quantity of the processing resources and the actual sub-demand quantity of the processing resources in the area of the current processing preset area, and converting the actual total demand quantity of the processing resources back to the initial total demand quantity of the processing resources according to the ratio of the actual total demand quantity of the processing resources in the current processing preset area to the sub-task quantity so as to update the initial total demand quantity of the processing resources.
2. The method of claim 1, wherein updating the initial total required amount of processing resources comprises:
and taking the current processing preset area as a target area until the initial total required quantity of the processing resources is updated to zero.
3. The method of claim 1, wherein determining at least one target processing node block corresponding to the task to be processed in each target area according to the actual sub-demand quantity of the area processing resources of each target area, the position information of the target node, the position information of each processing node block in each target area, and the quantity of the processing resources possessed by each processing node, comprises:
if the actual sub-demand quantity of the regional processing resources of the target region is equal to the quantity of the processing resources of the target region, taking each processing node block in the target region as a target processing node block, and taking each processing node in each processing node block as a target processing node;
if the actual sub-demand quantity of the area processing resources of the target area is less than the quantity of the processing resources of the target area, determining at least one target processing node block in the target area according to the distance between each processing node block in the target area and the target node, the quantity of the processing resources of each processing node block in the target area and the actual sub-demand quantity of the area processing resources of the target area.
4. The method of claim 3, wherein determining at least one target processing node block in the target area according to the distance between each processing node block in the target area and the target node, the amount of processing resources provided by each processing node block in the target area, and the actual sub-demand amount of area processing resources of the target area comprises:
sequencing the processing node blocks from near to far according to the distance from the target node;
sequentially acquiring a processing node block as a current processing node block;
and accumulating the processing resource number of the current processing node block into a block processing resource statistic value, and taking the current processing node block as a target processing node block until the block processing resource statistic value is more than or equal to the actual sub-demand number of the regional processing resources in the target region.
5. The method of claim 4, wherein determining at least one target processing node in at least one target processing node block in the target area according to the distance between each processing node block in the target area and the target node, the amount of processing resources provided by each processing node block in the target area, and the actual sub-demand amount of processing resources in the target area comprises:
if the block processing resource statistic is equal to the actual sub-demand quantity of the area processing resources of the target area, taking each processing node in the target processing node block as a target processing node;
if the block processing resource statistic is larger than the actual sub-required number of the area processing resources of the target area, dividing the target processing node block into a confirmed target processing node block and an undetermined target processing node block, wherein the undetermined target processing node block is the target processing node block which is farthest away from the target node in the target area;
processing nodes in the confirmed target processing node block are used as target processing nodes;
determining the actual sub-requirement number of the block processing resources of the to-be-determined target processing node block according to the difference value between the block processing resource statistic and the actual sub-requirement number of the area processing resources of the target area and the number of the processing resources of the to-be-determined target processing node block, and determining at least one target processing node in the to-be-determined target processing node block according to the historical task statistic value of each processing node in the to-be-determined target processing node block and the actual sub-requirement number of the block processing resources.
6. The method of claim 5, wherein determining at least one target processing node in the block of pending target processing nodes based on the size of historical task statistics for each processing node in the block of pending target processing nodes and the actual sub-demand number of processing resources for the block comprises:
sequencing all processing nodes in the undetermined target processing node block from small to large according to historical task statistics; wherein the historical task statistics are updated after the processing node receives the task to be processed;
sequentially acquiring a processing node as a current processing node;
and accumulating the processing resource quantity of the current processing node into a node processing resource statistic value, and taking the current processing node as a target processing node until the node processing resource statistic value is more than or equal to the actual sub-required quantity of the block processing resources.
7. The method of claim 1, wherein before determining at least one target area corresponding to the task to be processed and an actual sub-requirement amount of processing resources for each of the target areas according to the initial total requirement amount of processing resources, the location information of the target node, the location information of each of the preset areas, the ratio of the requirement amount of processing resources to the number of sub-tasks in different preset areas, and the number of processing resources provided in each of the preset areas, the method further comprises:
the method comprises the steps of dividing at least one processing node into at least one processing node block, and dividing the at least one processing node block into at least one preset area.
8. The method of claim 7, further comprising:
if it is determined that at least one new processing node exists, at least two processing nodes including the at least one new processing node are re-divided into at least one processing node block.
9. The method of claim 8, further comprising, after the repartitioning into at least one processing node block:
if at least one processing node is newly added in the target processing node block, initializing the historical task statistic value of each processing node in the target processing node block.
10. The method of claim 1, wherein the target node is a target plant, the task to be processed is a recruitment order, the processing node is an offline recruitment store, and the processing resource is a recruitment service personnel.
11. The method of claim 10, wherein before determining at least one target area corresponding to the task to be processed and an actual sub-requirement amount of processing resources for each of the target areas according to the initial total requirement amount of processing resources, the location information of the target node, the location information of each of the preset areas, the ratio of the requirement amount of processing resources to the number of sub-tasks in different preset areas, and the number of processing resources provided in each of the preset areas, the method further comprises:
and judging that the worker conveying grade of the target factory corresponding to each recruitment order is a second grade.
12. The method of claim 11, wherein determining the recruitment transportation grade for the target facility for each of the recruitment orders comprises:
sorting the factories according to the size sequence of the total working time of the historical delivery users of each factory in a set time period;
calculating the accumulated total working hours corresponding to each factory according to the factory sequencing; wherein the accumulated total job time corresponding to a target plant is the accumulated sum of the total job times of each plant ranked before the target plant and the target plant;
calculating the total accumulated sum of the working hours of historical delivery users of each factory in the set time period;
and judging the recruitment transportation grade of the target factory according to the ratio of the accumulated sum of the accumulated total working hours corresponding to the target factory in the total working hours.
13. The method of claim 12, wherein determining the recruitment transportation level of the target plant based on the cumulative sum of the total length of employment corresponding to the target plant comprises:
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a first ratio range, judging that the worker conveying level of the target factory is a first level;
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a second ratio range, judging that the work transportation grade of the target factory is a second grade;
if the ratio of the accumulated total working duration corresponding to the target factory to the sum of the total working duration belongs to a third ratio range, judging that the recruitment transportation grade of the target factory is a third grade;
wherein, the ratio values included in the first ratio range, the second ratio range and the third ratio range are sequentially increased.
14. A task assigning apparatus, comprising:
the processing resource initial total demand quantity determining module is used for determining the processing resource initial total demand quantity matched with each task to be processed according to one or more tasks to be processed issued by one or more target nodes;
a region processing resource actual sub-demand quantity determining module, configured to determine, according to the initial total demand quantity of processing resources, the location information of the target node, the location information of each preset region, a ratio of the demand quantity of processing resources within different preset regions to the sub-task quantity, and the processing resource quantity of each preset region, at least one target region corresponding to the task to be processed, and a region processing resource actual sub-demand quantity of each target region;
a target processing node determining module, configured to determine, in each target area, at least one target processing node block corresponding to the task to be processed and at least one target processing node in the target processing node blocks according to an actual sub-demand quantity of area processing resources of each target area, position information of the target node, position information of each processing node block in each target area, and a quantity of processing resources possessed by each processing node; each preset area comprises at least one processing node block, and each processing node block comprises at least one processing node;
the task allocation module is used for respectively sending each task to be processed to the corresponding target processing node;
the module for determining the actual sub-demand quantity of the regional processing resources comprises: a region sorting unit, a region selecting unit, a region processing and judging unit,
the region sorting unit is used for sorting the preset regions from near to far according to the distance from the target node;
the area selection unit is used for sequentially acquiring a preset area as a current processing preset area;
the area processing judging unit is used for converting the initial total demand quantity of the processing resources into the actual total demand quantity of the processing resources according to the ratio of the demand quantity of the processing resources of the current processing preset area to the quantity of the subtasks;
if the number of the processing resources in the current processing preset area is less than or equal to the actual total required number of the processing resources, determining the number of the processing resources in the current processing preset area as the actual sub-required number of the processing resources in the area of the current processing preset area;
if the number of the processing resources in the current processing preset area is larger than the actual total required number of the processing resources, determining the actual total required number of the processing resources as the actual sub-required number of the processing resources in the area of the current processing preset area;
and updating the actual total demand quantity of the processing resources to be the difference value between the actual total demand quantity of the processing resources and the actual sub-demand quantity of the processing resources in the area of the current processing preset area, and converting the actual total demand quantity of the processing resources back to the initial total demand quantity of the processing resources according to the ratio of the actual total demand quantity of the processing resources in the current processing preset area to the sub-task quantity so as to update the initial total demand quantity of the processing resources.
15. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1 to 13 when executing the program.
16. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 13.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910925911.8A CN110717662B (en) | 2019-09-27 | 2019-09-27 | Task allocation method, device, equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910925911.8A CN110717662B (en) | 2019-09-27 | 2019-09-27 | Task allocation method, device, equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110717662A CN110717662A (en) | 2020-01-21 |
CN110717662B true CN110717662B (en) | 2022-10-28 |
Family
ID=69211994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910925911.8A Active CN110717662B (en) | 2019-09-27 | 2019-09-27 | Task allocation method, device, equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110717662B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625733B (en) * | 2020-05-29 | 2024-01-19 | 杭州弧途科技有限公司 | Method for gathering part-time information based on business district geographic position |
CN112085378B (en) * | 2020-09-04 | 2023-02-03 | 中国平安财产保险股份有限公司 | Resource allocation method, device, computer equipment and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017167025A1 (en) * | 2016-03-28 | 2017-10-05 | 中兴通讯股份有限公司 | Method and device for realizing task scheduling, and computer storage medium |
CN110070289A (en) * | 2019-04-19 | 2019-07-30 | 苏州达家迎信息技术有限公司 | Method for allocating tasks, device, equipment and storage medium |
CN110163474A (en) * | 2019-04-12 | 2019-08-23 | 平安普惠企业管理有限公司 | A kind of method and apparatus of task distribution |
-
2019
- 2019-09-27 CN CN201910925911.8A patent/CN110717662B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017167025A1 (en) * | 2016-03-28 | 2017-10-05 | 中兴通讯股份有限公司 | Method and device for realizing task scheduling, and computer storage medium |
CN110163474A (en) * | 2019-04-12 | 2019-08-23 | 平安普惠企业管理有限公司 | A kind of method and apparatus of task distribution |
CN110070289A (en) * | 2019-04-19 | 2019-07-30 | 苏州达家迎信息技术有限公司 | Method for allocating tasks, device, equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN110717662A (en) | 2020-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110070289B (en) | Task allocation method, device, equipment and storage medium | |
US10474504B2 (en) | Distributed node intra-group task scheduling method and system | |
CN107016449B (en) | Intelligent manufacturing method based on cross-enterprise dynamic planning and scheduling | |
US20010049619A1 (en) | Method and system for allocating specific appointment time windows in a service industry | |
CN110689265A (en) | Task allocation method, device, equipment and storage medium | |
CN104102544A (en) | Multi QoS (quality of service)-constrained parallel task scheduling cost optimizing method under mixed cloud environment | |
CN106650993B (en) | Dynamic resource optimization method based on Markov decision process | |
CN110717662B (en) | Task allocation method, device, equipment and storage medium | |
CN111507557A (en) | Multi-role-based work platform task allocation method and system | |
WO2018180743A1 (en) | Work management device, work management method, and program storage medium | |
CN110648076A (en) | Task allocation method, device, equipment and storage medium | |
CN112053092A (en) | Work order processing method and device, readable medium and equipment | |
JP2019008501A (en) | Production managing system and production managing method | |
CN115239223A (en) | Allocation center task scheduling method, device, equipment and storage medium | |
CN108445853B (en) | Productivity sharing workshop based on cloud data | |
CN116562477A (en) | Method, device, equipment and storage medium for selecting workgroup scheduling scheme | |
CN115660261B (en) | Production order information processing method, computer device and storage medium | |
CN101071489A (en) | Work flow management system and method for realizing work process automation | |
CN112990624A (en) | Task allocation method, device, equipment and storage medium | |
Wahyudin et al. | Resource allocation model to find optimal allocation of workforce, material, and tools in an aircraft line maintenance | |
CN110705865A (en) | Task allocation method, device, equipment and storage medium | |
CN114091797A (en) | Intelligent dispatching method and device | |
Suma et al. | Study on multi-task oriented service composition and optimization problem of customer order scheduling problem using fuzzy min-max algorithm | |
CN111915230A (en) | Quick delivery-based work platform task settlement method | |
CN114648185A (en) | Plan scheduling method, plan scheduling device, computer device, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |