CN114781916A - Task allocation method and device, electronic equipment and storage medium - Google Patents

Task allocation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114781916A
CN114781916A CN202210518070.0A CN202210518070A CN114781916A CN 114781916 A CN114781916 A CN 114781916A CN 202210518070 A CN202210518070 A CN 202210518070A CN 114781916 A CN114781916 A CN 114781916A
Authority
CN
China
Prior art keywords
task
service
tasks
execution
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210518070.0A
Other languages
Chinese (zh)
Inventor
孙玮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Zhenshi Information Technology Co Ltd
Original Assignee
Beijing Jingdong Zhenshi Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Zhenshi Information Technology Co Ltd filed Critical Beijing Jingdong Zhenshi Information Technology Co Ltd
Priority to CN202210518070.0A priority Critical patent/CN114781916A/en
Publication of CN114781916A publication Critical patent/CN114781916A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the invention discloses a task allocation method and device, electronic equipment and a storage medium. The method comprises the following steps: responding to a task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task; determining an execution parameter matched with the execution capacity, and determining the task stacking number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hour and/or target task number which can be executed and completed by an execution object; and dividing each service task into the number of task piles, so that the service tasks divided into the same pile are distributed to the same execution object to be executed. The technical scheme of the embodiment of the invention can ensure that the execution object can better complete the service task.

Description

Task allocation method and device, electronic equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of data processing, in particular to a task allocation method and device, electronic equipment and a storage medium.
Background
In the field of home service, home service tasks generally include three modes of loading and loading integration, pure distribution and pure installation. At present, dispatching vehicles and service masters are distributed to each home service task according to the volume of home in the home service tasks, and then the service masters drive the vehicles to carry the home to provide home service.
In the process of implementing the invention, the inventor finds that the following technical problems exist in the prior art: the service master can not be guaranteed to well complete the home service task. Furthermore, the above technical problems are not limited to home service tasks, but also exist in the distribution process of other types of service tasks.
Disclosure of Invention
The embodiment of the invention provides a task allocation method and device, electronic equipment and a storage medium, which are used for ensuring that an execution object can better complete a service task.
According to an aspect of the present invention, there is provided a task allocation method, which may include:
responding to a task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task;
determining an execution parameter matched with the execution capacity, and determining the task heap number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hours and/or target task number which can be executed and completed by an execution object;
and dividing each service task into the number of the task piles, so that the service tasks divided into the same pile are distributed to the same execution object to be executed.
Optionally, determining the number of task piles for each service task according to the execution parameters may include:
determining the total service man-hour of each service task, and determining the first stacking number according to the total service man-hour and the target service man-hour; and/or determining the total task quantity of each service task, and determining the second stacking quantity according to the total task quantity and the target task quantity;
and determining the task pile dividing quantity aiming at each service task according to the first pile dividing quantity and/or the second pile dividing quantity.
On this basis, optionally, determining the task heap number for each service task according to the first heap number and/or the second heap number may include:
comparing the number of the first piles with the number of the second piles;
and taking the larger of the first pile dividing quantity and the second pile dividing quantity as the task pile dividing quantity aiming at each service task.
Optionally, each service task corresponds to respective pre-configured standard service man-hour, and the target service man-hour is associated with the standard service man-hour;
determining the total service man-hour for each service task may include:
and taking the sum of the standard service man-hours of each service task as the total service man-hour of each service task.
Optionally, dividing each service task into the number of task piles may include:
respectively determining task service man-hour of each service task;
sequencing all service tasks according to the task service man-hour;
and sequentially dividing each sequenced service task into the sub-stacks with the number of the task sub-stacks.
On this basis, optionally, sequentially dividing the sequenced service tasks into the sub-stacks with the number of task sub-stacks may include:
aiming at the current task to be divided in each service task after sequencing, dividing the current task into the current sub-stacks to be divided currently in the sub-stacks with the number of task sub-stacks;
for the non-divided tasks which are not divided in the sequenced service tasks, if the attribute tasks which are similar to the service attributes of the current task exist in the non-divided tasks, dividing the attribute tasks into the current pile, and updating the non-divided tasks according to the division result;
if the non-divided tasks exist, updating the non-divided task which is closest to the current task in sequence in each non-divided task as the current task, updating the next pile of the current pile in each pile as the current pile, and repeatedly executing the step of dividing the current task into the current pile to be divided currently in the piles with the quantity of the task piles.
Optionally, the target service man-hour may include a maximum service man-hour, the target task number includes a maximum task number, and after each service task is divided into a heap of task heap numbers, the task allocation method may further include:
and aiming at each sub-stack, if the sum of the task service working hours of the service tasks divided into the sub-stacks is larger than the maximum service working hour, and/or the service task number is larger than the maximum task number, generating and sending out prompt information.
On this basis, optionally, after generating and sending the prompt message, the task allocation method may further include:
and responding to the task adjusting operation input by the user aiming at the prompt message, determining the tasks to be adjusted in each service task, and the pre-adjustment piles and the post-adjustment piles corresponding to the tasks to be adjusted in each pile, and dividing the tasks to be adjusted from the pre-adjustment piles to the post-adjustment piles.
Optionally, after dividing each service task into the number of task piles, the task allocation method may further include:
aiming at each heap, taking a service task in the heap as a heap task, determining a service time range and a service address of each heap task, and determining a service sequence of each heap task according to the service time range and the service address;
and taking the reverse order of the service order as a loading order, and realizing sequential loading of task articles corresponding to each stacking task according to the loading order.
According to another aspect of the present invention, there is provided a task assigning apparatus, which may include:
the execution capacity acquisition module is used for responding to the task allocation instruction and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task;
the task pile number determining module is used for determining an execution parameter matched with the execution capacity and determining the task pile number of each service task according to the execution parameter, wherein the execution parameter comprises target service man-hours and/or target task number of an executable object;
and the service task allocation module is used for dividing each service task into the sub-stacks with the number of the task sub-stacks so as to allocate the service tasks divided into the same sub-stack to the same execution object for execution.
According to another aspect of the present invention, there is provided an electronic device, which may include:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the first and the second end of the pipe are connected with each other,
the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to cause the at least one processor, when executed, to implement the method of task allocation provided by any of the embodiments of the invention.
According to another aspect of the present invention, there is provided a computer-readable storage medium having stored thereon computer instructions for causing a processor to execute a method for task allocation provided by any of the embodiments of the present invention.
According to the technical scheme of the embodiment of the invention, each service task to be distributed and the execution capacity of an execution object capable of executing the service task are obtained by responding to the task distribution instruction; determining an execution parameter matched with the execution capacity, and determining the task stacking number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hour and/or target task number which can be executed and completed by an execution object; and dividing each service task into the number of task piles, so that the service tasks divided into the same pile are distributed to the same execution object to be executed. According to the technical scheme, the execution object is an object capable of executing the service task, the task heap number is determined according to the execution parameter, and the execution parameter can represent the workload (which is represented by the target service man-hour and/or the target task number) which can be executed and completed by the execution object, so that after the service tasks to be distributed are divided based on the task heap number, the service tasks divided into the same heap are tasks which can be executed and completed by the execution object, and the effect of ensuring that the execution object can well complete (namely can execute and complete) the service tasks is achieved.
It should be understood that the statements in this section are not intended to identify key or critical features of the embodiments of the present invention, nor are they intended to limit the scope of the invention. Other features of the present invention will become apparent from the following description.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the description below are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a flow chart of a task allocation method according to an embodiment of the present invention;
FIG. 2 is a flow chart of another task allocation method provided in accordance with an embodiment of the present invention;
FIG. 3 is a diagram illustrating a result of a heap in another task allocation method according to an embodiment of the present invention;
FIG. 4 is a flow chart of another task allocation method provided in accordance with an embodiment of the present invention;
FIG. 5 is a flow chart of another task allocation method provided in accordance with an embodiment of the present invention;
FIG. 6 is a flow diagram of an alternative example of another task allocation method provided in accordance with an embodiment of the invention;
FIG. 7 is a block diagram of a task allocation apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device implementing the task allocation method according to the embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in other sequences than those illustrated or described herein. The cases of "target", "original", etc. are similar and will not be described in detail herein. Moreover, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Fig. 1 is a flowchart of a task allocation method provided in an embodiment of the present invention. The present embodiment is applicable to a case where a service task is assigned to a certain execution object, and is particularly applicable to a case where a service task is assigned to an execution object that can well complete the service task. The method can be executed by the task allocation device provided by the embodiment of the invention, the device can be implemented in a software and/or hardware-based manner, and the device can be integrated on an electronic device, and the electronic device can be various user terminals or servers.
Referring to fig. 1, the method of the embodiment of the present invention specifically includes the following steps:
s110, responding to the task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task.
The task allocation instruction can be an instruction for allocating a service task to be allocated, and the service task can be a home service task, specifically a home delivery task, a home installation task, a home repair task, and the like; the system can be an advisory service task, in particular to a task for providing legal advisory service, intellectual property advisory service, manpower advisory service and the like; or a cleaning service task, namely a task of providing cleaning service; and the like, are not specifically limited herein.
And responding to the task allocation instruction, and acquiring each service task to be allocated and execution capacity. The service tasks may be of the same or different types, for example, continuing to take home service tasks as an example, the home service tasks may all be home installation tasks, or some of the home installation tasks, some of the home distribution tasks, and others of the home distribution tasks. The execution capacity can be the capacity of an execution object capable of executing the service tasks when executing the service tasks, and in practical application, optionally, the execution capacity can be represented in various ways, such as a level and/or a score, for example, continuing to take the home service tasks as an example, the execution capacity can be represented by a proficiency level, such as a high level, a medium level and a low level; optionally, when the task types of the service tasks are different, the execution condition of the service tasks in some task types may be affected by the execution capability, and the execution condition of the service tasks in some task types may not be affected by the execution capability, for example, taking the home service task as an example, the execution speed of the home installation task may be affected by the proficiency level of a service master, but the execution speed of the home distribution task may not be affected by the proficiency level of the service master; alternatively, the number of execution objects capable of completing the service task may be at least two, the execution capabilities of the execution objects may be different, and the execution capability obtained in response to the service allocation task may be one of the execution capabilities, that is, the user may trigger a task allocation instruction by selecting a certain execution capability, so that the task allocation device allocates the service task to the execution object having the execution capability by responding to the task allocation instruction.
And S120, determining an execution parameter matched with the execution capacity, and determining the task heap number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hours and/or target task number which can be executed and completed by an execution object.
The execution parameter may be a parameter related to the execution capability, such as a target service man-hour and/or a target number of tasks that the execution object can perform (specifically, the execution task can be performed within a preset time range and/or a preset space range), where the target service man-hour may be understood as a maximum service man-hour, an average service man-hour, or a minimum service man-hour that the execution object can provide, and the target number of tasks may be understood as a maximum number of tasks, an average number of tasks, or a minimum number of tasks that the execution object can perform.
In practical applications, optionally, the unit of the target service man-hour may be time in a physical sense, such as 8 hours; for example, in the above example, the actual working time of each execution object is 8 hours, and with respect to the middle level, the high-level execution object can complete the working amount of the middle-level execution object within 8 hours only within 10 hours, and the low-level execution object can complete the working amount of the middle-level execution object within 8 hours only within 6 hours, so that the target service man-hour corresponding to the high level may be 10 hours, the target service man-hour corresponding to the middle level may be 8 hours, and the target service man-hour corresponding to the low level may be 6 hours; etc., and are not specifically limited herein. Still alternatively, the target service man-hour and/or the target task number may be a value preset according to an analysis result of the big data.
In order to ensure that all the service tasks can be well completed, i.e. that they can be completed, especially in time, the number of task piles for the service tasks can be determined according to the execution parameters, thereby determining how many execution objects are needed for the service tasks to be completed together.
And S130, dividing each service task into the sub-stacks with the number of the task sub-stacks, and distributing the service tasks divided into the same sub-stack to the same execution object for execution.
The service tasks to be allocated are divided into the task piles with the quantity of the task piles, the quantity of the task piles is determined according to the execution parameters, the execution parameters can represent the workload of executable completion of the execution object, and the workload can be represented by the target service man-hour and/or the target task quantity, so that the service tasks divided into the same pile can be executed and completed by any execution object, the service tasks divided into the same pile can be allocated to the same execution object to be executed, and the execution object can be ensured to well complete the service tasks allocated to the user. In practical applications, optionally, the distribution process of the service tasks may be implemented in various ways, such as displaying the division result (i.e. the heap division result) to determine, by a user, which execution object the service task in each heap is executed by, and of course, the execution object is an object having the execution capability; the service tasks in any sub-heap can also be automatically allocated to the execution objects which can provide services and have the execution capacity; and so on.
In practical applications, it may be that, assuming that the number of task piles is N, the number of execution objects with the execution capacity is M, where M and N are both positive integers and N is greater than M, which means that after the task allocation ends, there are service tasks that are divided and unallocated, and at this time, a reminder message indicating that the task allocation quota of the execution objects with the execution capacity is full may be generated and issued, so that the user selects the remaining execution capacity to trigger the task allocation instruction again, thereby allocating the execution objects with the remaining execution capacity to the unallocated service tasks. For example, in the above example of the high level, the middle level and the low level, after the user selects the high level, the task assigning device assigns 100 service tasks into 10 piles, and since there are 5 persons as the high-level execution object, it is possible to optionally assign 5 piles to the 5 persons from the 10 piles. Then, the user selects the middle level, the task assigning means assigns the remaining 50 service tasks into 6 heaps, and since the execution object of the middle level has 4 persons, 4 heaps can be optionally assigned to the 4 persons from the 6 heaps. Then, the user selects the low level, and the task assigning means divides the remaining 20 service tasks into 4 scrambles, so that the 4 scrambles can be assigned to 4 execution objects having the low level.
According to the technical scheme of the embodiment of the invention, each service task to be distributed and the execution capacity of an execution object capable of executing the service task are obtained by responding to the task distribution instruction; determining an execution parameter matched with the execution capacity, and determining the task stacking number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hour and/or target task number which can be executed and completed by an execution object; and dividing each service task into the number of the task piles, so that the service tasks divided into the same pile are distributed to the same execution object to be executed. According to the technical scheme, the execution object is an object capable of executing the service task, the task heap number is determined according to the execution parameter, and the execution parameter can represent the workload (which is represented by the target service man-hour and/or the target task number) which can be executed and completed by the execution object, so that after the service tasks to be distributed are divided based on the task heap number, the service tasks divided into the same heap are tasks which can be executed and completed by the execution object, and the effect of ensuring that the execution object can well complete (namely can execute and complete) the service tasks is achieved.
On this basis, an optional technical solution determines the number of task piles for each service task according to the execution parameters, including: determining the total service man-hour of each service task, and determining the first stacking number according to the total service man-hour and the target service man-hour; and/or determining the total task quantity of each service task, and determining the second stacking quantity according to the total task quantity and the target task quantity; and determining the task pile number aiming at each service task according to the first pile number and/or the second pile number. The total service man-hour may be the total man-hour spent for completing the service tasks, and the unit of the total service man-hour may be the same as the unit of the target service man-hour. The first stacking number is determined according to the total service man-hour and the target service man-hour, for example, the first stacking number is determined according to the ratio of the total service man-hour and the target service man-hour, so that the number of execution objects required for completing the service tasks can be determined when the service man-hour is taken as a reference. The total task number can represent the total number of the service tasks, the second heap number is determined according to the total task number and the target task number, for example, the second heap number is determined according to the ratio of the total task number and the target task number, so that how many execution objects are needed for completing the service tasks can be determined by taking the task number as a reference. Furthermore, the task stacking number can be determined according to the first stacking number and/or the second stacking number, and therefore the effect of accurately determining the task stacking number is achieved. In practical applications, optionally, taking the number of the first heap as an example, if the first heap number is determined according to a ratio of total service man-hours to target service man-hours, because the first heap number is an integer, a result of rounding up the ratio of the total service man-hours to the target service man-hours may be used as the first heap number, that is, the first heap number is made as large as possible, or the number of service tasks in each heap is made as small as possible, thereby further ensuring that the service tasks divided into the same heap can be executed and completed by the execution object.
On this basis, optionally, determining the task heap number for each service task according to the first heap number and/or the second heap number may include: comparing the number of the first piles with the number of the second piles; and taking the larger of the first pile dividing quantity and the second pile dividing quantity as the task pile dividing quantity aiming at each service task. In order to ensure that the execution object can better complete the service task allocated to itself to the greatest extent, a larger number of the first and second piles may be used as the task pile number. Exemplary, task staging
Figure BDA0003640564690000121
Optionally, each service task corresponds to respective pre-configured standard service man-hour, and the target service man-hour is associated with the standard service man-hour; determining the total service man-hours for each service task may include: and taking the sum of the standard service man-hours of each service task as the total service man-hour of each service task.
Wherein, standard service man-hour can be configured for each service item in advance, namely the service man-hour spent for completing the service item. The unit of the standard service working hour can be time in a physical sense, or time set by a user, for example, when the standard service working hour is set for calculating salary for an execution object, the unit of the standard service working hour is not time in the physical sense. For example, taking the home delivery service and the home installation service as an example, it is assumed that service man-hours actually spent for completing these two services are 1 hour and 2 hours, respectively (the unit here is time in a physical sense), but since the technical content of the former is low and the technical content of the latter is high, standard service man-hours configured for the former and the latter may be 0.5 hour and 3 hours, respectively (the unit here is not time in a physical sense). It should be emphasized that, for execution objects with different execution capabilities, there may be a difference in the service man-hours (the unit is time in physical sense) actually spent by them to complete a certain service item, such as that, with respect to the middle level, the high-level execution object actually spends less service man-hours, while the low-level execution object actually spends more service man-hours, but the standard service man-hours obtained by them are the same, so that in the case that the salary corresponding to the unit standard service man-hours is fixed, they can obtain the salary matching with their own execution capabilities within the same work-hours through the above setting.
On this basis, since the service task may be composed of at least one service item, each service task also corresponds to a respective standard service man-hour, and the above-mentioned target service man-hour may also be calculated in units of standard service man-hours, then the total service man-hour may be the sum of the standard service man-hours of each service task, which means that the values related to the service man-hours are all calculated in units of standard service man-hours, thereby ensuring the accuracy of the calculated first number of piles.
Fig. 2 is a flowchart of another task allocation method provided in the embodiment of the present invention. The present embodiment is optimized based on the above technical solutions. In this embodiment, optionally, the dividing each service task into the number of task piles includes: respectively determining task service man-hour of each service task; sequencing each service task based on the task service man-hour; and sequentially dividing each sequenced service task into the sub-stacks with the number of the task sub-stacks. The same or corresponding terms as those in the above embodiments are not explained in detail herein.
Referring to fig. 2, the method of the present embodiment may specifically include the following steps:
s210, responding to the task allocation instruction, acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task.
S220, determining an execution parameter matched with the execution capacity, and determining the task stacking number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service working hours and/or target task number which can be executed and completed by an execution object.
And S230, respectively determining the task service man-hour of each service task, and sequencing each service task by taking the task service man-hour as a basis.
The task service man-hour may be a service man-hour spent by the execution object to complete the service task, specifically, a service man-hour spent actually, or a service man-hour spent in a standard manner, and is not particularly limited herein. And sequencing the service tasks according to the task service man-hours of the service tasks, wherein the specific sequencing mode can be forward sequencing or reverse sequencing.
And S240, sequentially dividing the sequenced service tasks into the sub-stacks with the number of the task sub-stacks, so that the service tasks divided into the same sub-stack are distributed to the same execution object to be executed.
For the sub-stacks corresponding to the number of the task sub-stacks, the sorted service tasks can be sequentially divided into the sub-stacks. For example, referring to fig. 3, taking the number of task sub-stacks as 4 as an example, the frames in the first row store the ordered service tasks, and the frames in the second row represent one sub-stack. The method comprises the steps of dividing a service task 001 arranged in the 1 st of all service tasks into a 1 st heap, dividing a service task 002 arranged in the 2 nd into a 2 nd heap … … into a 4 th heap, dividing a service task 004 arranged in the 4 th heap into a 4 th heap, dividing a service task 005 arranged in the 5 th heap into a 1 st heap … … and the like, and therefore after all the service tasks are divided, enabling the service time of the tasks corresponding to each heap to be close.
By combining application scenes possibly related to the embodiment of the invention, in the field of home service, the technical scheme can lead one sub-stack to have both home installation tasks and home distribution tasks, thereby avoiding the situation that home placement is not performed as much as home distribution tasks in one vehicle or home installation tasks are performed in one vehicle to cause a service master to be not completely installed, and further realizing uniform distribution of home service tasks. In addition, when the task service working hours are associated with salaries, the technical scheme can balance the salaries of the execution objects with the same execution capacity.
According to the technical scheme of the embodiment of the invention, the task service man-hour of each service task is respectively determined, the service tasks are sequenced according to the task service man-hour, and then the sequenced service tasks are sequentially divided into the piles with the quantity of the task piles, so that the task service man-hours corresponding to each pile are close, and when the task service man-hours are associated with salaries, the salaries of execution objects with the same execution capacity are balanced.
On this basis, an optional technical solution is to sequentially divide the sequenced service tasks into the piles of the task pile number, and may include: aiming at the current task to be divided in the sequenced service tasks, dividing the current task into the current sub-stacks to be divided currently in the sub-stacks with the number of task sub-stacks; for the non-divided tasks which are not divided in the sequenced service tasks, if the non-divided tasks have attribute tasks similar to the service attributes of the current task, dividing the attribute tasks into the current pile, and updating the non-divided tasks according to the division result; and if the non-divided tasks exist, updating the non-divided task which is closest to the current task in sequence in each non-divided task as the current task, updating the next heap of the current heap in each heap as the current heap, and repeatedly executing the step of dividing the current task into the current heap to be divided currently in the heaps with the number of task heaps.
Since each service task after sequencing is sequentially divided into the number of task piles, the current task is divided into the current pile according to the current task to be divided currently among the service tasks and the current pile to be divided currently among the piles, and if the service task 002 in the example of fig. 3 is the current task, the 2 nd pile is the current pile, the service task 002 is divided into the 2 nd pile. Further, for an undivided task that is not divided among the service tasks, it may be determined whether an attribute task similar to a service attribute of the current task exists among the undivided tasks, wherein the service attribute may be a service address, a service type, a service time range, and the like. Since service tasks with similar service attributes are similar and are handed over to the same execution object for execution, this may speed up the execution of these service tasks, so in case of attribute tasks, they may also be divided into the current heap. And repeating the process until all the service tasks are divided. In combination with the application scenarios possibly involved in the embodiments of the present invention, for example, after the current tasks of the sequenced home installation tasks and home delivery tasks are divided into the current piles, if the attribute tasks with the same service addresses as those of the current tasks exist in the non-divided tasks, the attribute tasks may also be divided into the current piles, so that the same service master provides the installation/delivery services, thereby increasing the execution speed of the current tasks and the attribute tasks by saving the time on the way.
Fig. 4 is a flowchart of another task allocation method provided in the embodiment of the present invention. The present embodiment is optimized based on the above technical solutions. In this embodiment, optionally, the target service man-hour includes a maximum service man-hour, the target task number includes a maximum task number, and after dividing each service task into a pile of which the task pile number is equal to the target service man-hour, the task allocation method may further include: and aiming at each sub-stack, if the sum of the task service working hours of the service tasks divided into the sub-stacks is larger than the maximum service working hour and/or the service task number is larger than the maximum task number, generating and sending out prompt information. The same or corresponding terms as those in the above embodiments are not explained in detail herein.
Referring to fig. 4, the method of this embodiment may specifically include the following steps:
s310, responding to the task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task.
And S320, determining an execution parameter matched with the execution capacity, and determining the task heap number aiming at each service task according to the execution parameter, wherein the execution parameter comprises the maximum service man-hour and/or the maximum task number of the executable completion of the execution object.
The maximum service man-hour may represent a maximum value of the service man-hours that the execution object can provide in a preset time range and/or a preset space range, and when the man-hour for providing the service exceeds the maximum service man-hour, a situation that the execution object cannot perform the allocated service task is likely to occur. Similarly, the maximum number of tasks may represent the maximum number of service tasks that the execution object can perform in the preset time range and/or the preset space range, and when the number of tasks to be completed exceeds the maximum number of tasks, it is also likely that the execution object cannot perform the allocated service tasks.
And S330, dividing each service task into the sub-stacks with the number of the task sub-stacks, and distributing the service tasks divided into the same sub-stack to the same execution object for execution.
And S340, aiming at each sub-stack, if the sum of the task service working hours of the service tasks divided into the sub-stack is larger than the maximum service working hour, and/or the service task number is larger than the maximum task number, generating and sending out prompt information.
The sum of the task service man-hours can indicate the service man-hours that the execution object needs to provide to complete the service tasks in the heap, and the number of the service tasks can indicate how many service tasks are in the heap. In order to further ensure that the service tasks allocated to a certain execution object are services that can be completed by the execution object, when the sum of the task service man-hours is greater than the maximum service man-hour and/or the number of the service tasks is greater than the maximum task number, prompt information can be generated and sent out, so that a user is prompted that the service tasks in the heap may have the situation that the execution object cannot be completed, and the user can correspondingly adjust the service tasks according to actual conditions.
According to the technical scheme of the embodiment of the invention, if the sum of the task service man-hours of the service tasks divided into the certain sub-heap is larger than the maximum service man-hour and/or the service task number is larger than the maximum task number, which indicates that the service tasks in the sub-heap may cause the execution object to be unable to execute and complete, the prompt information can be generated and sent out, so that the user can correspondingly adjust the sub-heap result according to the prompt information, and the execution object can be ensured to better complete the service task allocated to the user to the maximum extent.
On this basis, an optional technical solution is that after generating and sending out the prompt information, the task allocation method may further include: and responding to the task adjusting operation input by the user aiming at the prompt message, determining the tasks to be adjusted in each service task, and the pre-adjustment piles and the post-adjustment piles corresponding to the tasks to be adjusted in each pile, and dividing the tasks to be adjusted from the pre-adjustment piles to the post-adjustment piles. After browsing the prompt message, the user can manually add or delete a certain service task in a certain pile to avoid the situation that the sum of the task service man-hours of any pile is larger than the maximum service man-hour and/or the number of the service tasks is larger than the maximum number of the tasks. For example, a user may divide a certain service task (i.e., a task to be adjusted) in a heap before adjustment (i.e., a heap before adjustment) into another heap (i.e., a heap after adjustment) from the heap before adjustment, and at this time, the task allocation apparatus may receive a task adjustment operation input by the user, and then adjust a heap result in response to the task adjustment operation, thereby further ensuring that the execution object can better complete the service task allocated to itself.
Fig. 5 is a flowchart of another task allocation method provided in the embodiment of the present invention. The present embodiment is optimized based on the above technical solutions. In this embodiment, optionally, after dividing each service task into the number of task piles, the task allocation method may further include: for each sub-heap, taking the service task in the sub-heap as a sub-heap task, determining the service time range and the service address of each sub-heap task, and determining the service sequence of each sub-heap task according to the service time range and the service address; and taking the reverse order of the service order as a loading order, and realizing sequential loading of task articles corresponding to each stacking task according to the loading order. The same or corresponding terms as those in the above embodiments are not explained in detail herein.
Referring to fig. 5, the method of this embodiment may specifically include the following steps:
s410, responding to the task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task.
And S420, determining an execution parameter matched with the execution capacity, and determining the task heap number aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service man-hours and/or target task number which can be executed and completed by an execution object.
And S430, dividing each service task into the piles of which the number is equal to that of the task piles, and distributing the service tasks divided into the same pile to the same execution object for execution.
S440, aiming at each heap, taking the service tasks in the heap as the heap tasks, determining the service time range and the service address of each heap task, and determining the service sequence of each heap task according to the service time range and the service address.
For simplifying the expression, aiming at any heap, taking the service tasks in the heap as the heap tasks, respectively determining the service time range and the service address of each heap task, so as to determine the service sequence of each heap task according to the service time range and the service address. For example, the blocking tasks may be respectively circled based on the service time range, and assuming that the service time range is morning, afternoon or evening, the blocking tasks providing service in the morning, the blocking tasks providing service in the afternoon and the blocking tasks providing service in the evening may be respectively circled; further, for the heap tasks within each circle (i.e., the heap tasks with the same service time range), the optimal path may be calculated according to their service addresses, and then the service order of the service addresses may be obtained according to the sequence of the service addresses on the optimal path. Finally, the service sequence of each heap task can be obtained by combining the service time range.
And S450, taking the reverse order of the service order as a loading order, and sequentially loading task articles corresponding to each piling task according to the loading order.
The service sequence can show the sequential execution sequence of each stacking task, so that the reverse sequence of the service sequence can be used as the loading sequence for facilitating unloading of corresponding task articles, sequential loading of the task articles corresponding to the stacking tasks is achieved according to the loading sequence, the task articles corresponding to the stacking tasks to be executed later are loaded first, and the task articles corresponding to the stacking tasks to be executed first are loaded later, so that when a certain stacking task is executed in sequence, rapid unloading of the task articles corresponding to the stacking tasks can be achieved.
According to the technical scheme of the embodiment of the invention, aiming at each stacking task in any stacking, the service time range and the service address of the stacking task are respectively determined, and then the service sequence of the stacking task is determined according to the service time range and the service address, so that the reverse sequence of the service sequence can be used as the loading sequence, the task objects respectively corresponding to the stacking task are sequentially loaded according to the loading sequence, and the effect of quickly unloading the task objects corresponding to the stacking task can be realized when the stacking task is sequentially executed.
In order to better understand the above technical solutions as a whole, in combination with application scenarios that may be related to the embodiments of the present invention, a car dispatching process of a home delivery order is exemplarily described herein by taking a home delivery service (which may also be referred to as a home service order) set forth in the background art as an example. For example, as shown in fig. 6, different grids previously defined on a map are obtained, and an area defined by any one grid is used as a road area. For any pre-sorting station, screening out household service orders with service addresses located in a road area where the pre-sorting station is located from household service orders to be distributed (namely to be dispatched), then screening out the household service orders again from the screened household service orders according to service dates to obtain household service orders (hereinafter referred to as orders) needing to be dispatched, and summarizing the orders which need to be dispatched on the next day in the road area and have order states of being dispatched according to order-intercepting time every day. And acquiring basic data configured in advance, such as standard service working hours, maximum service working hours and maximum task quantity, wherein the maximum service working hours and the maximum task quantity are related to the proficiency level and the road area. The user selects a certain level of proficiency, which triggers a task allocation instruction, in response to which the task allocation means executes the above logic for order banking based on corresponding underlying data. Respectively calculating the sum of task service man-hours, the service task quantity and the total home volume of the orders in each sub-stack, and if the orders in a certain sub-stack meet any one of the following conditions, generating and sending prompt information to enable a user to manually adjust the orders: the sum of the task service man-hours is larger than the maximum service man-hour, the number of the service tasks is larger than the maximum number of the tasks, and the total home volume is larger than the maximum home volume. For orders within each sub-stack, their order of service (i.e., order of delivery) is determined based on their service time ranges and service addresses, and the user may manually adjust the order of delivery. In practical application, optionally, after a user manually adjusts an order in a certain pile, the sum of task service man-hours, the number of service tasks and the total home volume of the order in the pile may be recalculated, and the delivery sequence may be re-determined. For each sub-stack, the user selects a delivery vehicle and a service master corresponding to the selected proficiency level for the order in the sub-stack, then generates and prints a vehicle dispatching list, generates an order loading sequence according to the reverse sequence of the delivery sequence while generating the vehicle dispatching list, and prints information on the vehicle dispatching list. After the dispatching order is generated, the order state of the orders in the dispatching order is marked as dispatched, the dispatched orders do not participate in the calculation of piling again, and the obtained orders on each dispatching vehicle are orders which can be completely completed by a service master in the next day.
Fig. 7 is a block diagram of a task allocation apparatus according to an embodiment of the present invention, where the apparatus is configured to execute a task allocation method according to any of the embodiments described above. The task allocation device and the task allocation method of the embodiments belong to the same inventive concept, and details that are not described in detail in the embodiments of the task allocation device may refer to the embodiments of the task allocation method. Referring to fig. 7, the apparatus may specifically include: an execution capacity acquisition module 510, a task heap number determination module 520, and a service task allocation module 530. Wherein the content of the first and second substances,
an execution capacity obtaining module 510, configured to, in response to the task allocation instruction, obtain each service task to be allocated and an execution capacity, where the execution capacity is a capacity of an execution object that can be used to execute the service task;
a task heap number determining module 520, configured to determine an execution parameter matched with the execution capability, and determine a task heap number for each service task according to the execution parameter, where the execution parameter includes a target service man-hour and/or a target task number for an execution object to perform;
and a service task allocation module 530, configured to divide each service task into a number of task heap divisions, so as to allocate the service tasks divided into the same heap to the same execution object for execution.
Optionally, the task stack quantity determining module 520 may include:
a second pile number determination unit, configured to determine total service man-hours of each service task, and determine a first pile number according to the total service man-hours and a target service man-hours; and/or determining the total task quantity of each service task, and determining the second stacking quantity according to the total task quantity and the target task quantity;
and the task pile dividing quantity determining unit is used for determining the task pile dividing quantity aiming at each service task according to the first pile dividing quantity and/or the second pile dividing quantity.
On this basis, optionally, the task pile number determining unit may be specifically configured to:
comparing the number of the first piles with the number of the second piles;
and taking the larger of the first pile dividing quantity and the second pile dividing quantity as the task pile dividing quantity aiming at each service task.
Optionally, each service task corresponds to a respective preconfigured standard service man-hour, the target service man-hour is associated with the standard service man-hour, and the second stacking number determining unit may include:
and the total service man-hour determining subunit is used for taking the sum of the standard service man-hours of each service task as the total service man-hour of each service task.
Optionally, the service task allocating module 530 may include:
the task service man-hour determining unit is used for respectively determining the task service man-hours of each service task; the service task sequencing unit is used for sequencing each service task by taking the task service working hours as a basis; and the service task dividing unit is used for sequentially dividing each sequenced service task into the sub-stacks with the task sub-stack quantity.
On this basis, optionally, the service task dividing unit may be specifically configured to:
aiming at the current task to be divided in the sequenced service tasks, dividing the current task into the current sub-stacks to be divided currently in the sub-stacks with the number of task sub-stacks;
for the non-divided tasks which are not divided in the sequenced service tasks, if the attribute tasks which are similar to the service attributes of the current task exist in the non-divided tasks, dividing the attribute tasks into the current pile, and updating the non-divided tasks according to the division result;
and if the non-divided tasks exist, updating the non-divided task which is closest to the current task in sequence in each non-divided task as the current task, updating the next heap of the current heap in each heap as the current heap, and repeatedly executing the step of dividing the current task into the current heap to be divided currently in the heaps with the number of task heaps.
Optionally, the target service man-hour includes a maximum service man-hour, and the target task number includes a maximum task number, and the task allocating device may further include:
and the prompt information sending module is used for generating and sending prompt information aiming at each pile after each service task is divided into piles with the quantity of task piles, if the sum of the task service working hours of each service task divided into the piles is larger than the maximum service working hour, and/or the service task quantity is larger than the maximum task quantity.
On this basis, optionally, the task allocation device may further include:
and the service task adjusting module is used for responding to task adjusting operation input by a user aiming at the prompt information after generating and sending the prompt information, determining the tasks to be adjusted in each service task and the pre-adjustment piles and the post-adjustment piles corresponding to the tasks to be adjusted in each pile, and dividing the tasks to be adjusted into the post-adjustment piles from the pre-adjustment piles.
Optionally, the task allocation apparatus may further include:
the service sequence determining module is used for dividing each service task into the piles with the number of the task piles, regarding each pile, taking the service task in the pile as a pile task, determining the service time range and the service address of each pile task, and determining the service sequence of each pile task according to the service time range and the service address;
and the task article loading module is used for taking the reverse order of the service order as a loading order so as to realize sequential loading of task articles corresponding to each stacking task respectively according to the loading order.
The task allocation device provided by the embodiment of the invention responds to the task allocation instruction through the execution capacity acquisition module, and acquires each service task to be allocated and the execution capacity of an execution object capable of executing the service task; determining an execution parameter matched with the execution capacity through a task stacking quantity determining module, and determining the task stacking quantity aiming at each service task according to the execution parameter, wherein the execution parameter comprises target service working hours and/or target task quantity which can be executed and completed by an execution object; and dividing each service task into the heaps with the number of the task heaps through the service task allocation module so as to allocate the service tasks divided into the same heap to the same execution object for execution. In the device, because the execution object is an object capable of executing the service task, and the number of the task piles is determined according to the execution parameter, the execution parameter can indicate the workload (which is indicated by the target service man-hour and/or the target task number) that the execution object can execute and complete, after each service task to be allocated is divided based on the number of the task piles, the service tasks divided into the same pile are tasks capable of being executed and completed by the execution object, so that the effect of ensuring that the execution object can well complete (i.e. can execute and complete) the service tasks is achieved.
The task allocation device provided by the embodiment of the invention can execute the task allocation method provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method.
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, specific names of the functional units are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present invention.
FIG. 8 illustrates a schematic diagram of an electronic device 10 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 8, the electronic device 10 includes at least one processor 11, and a memory communicatively connected to the at least one processor 11, such as a Read Only Memory (ROM)12, a Random Access Memory (RAM)13, and the like, wherein the memory stores a computer program executable by the at least one processor, and the processor 11 can perform various suitable actions and processes according to the computer program stored in the Read Only Memory (ROM)12 or the computer program loaded from a storage unit 18 into the Random Access Memory (RAM) 13. In the RAM 13, various programs and data necessary for the operation of the electronic apparatus 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other via a bus 14. An input/output (I/O) interface 15 is also connected to bus 14.
A number of components in the electronic device 10 are connected to the I/O interface 15, including: an input unit 16 such as a keyboard, a mouse, or the like; an output unit 17 such as various types of displays, speakers, and the like; a storage unit 18 such as a magnetic disk, an optical disk, or the like; and a communication unit 19 such as a network card, modem, wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
Processor 11 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, or the like. The processor 11 performs the various methods and processes described above, such as the task allocation method.
In some embodiments, the task assignment methodology may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 10 via the ROM 12 and/or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the task allocation method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the task allocation method by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be performed. A computer program can execute entirely on a machine, partly on a machine, as a stand-alone software package partly on a machine and partly on a remote machine or entirely on a remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user may provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), blockchain networks, and the internet.
The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome.
It should be understood that various forms of the flows shown above, reordering, adding or deleting steps, may be used. For example, the steps described in the present invention may be executed in parallel, sequentially, or in different orders, and are not limited herein as long as the desired results of the technical solution of the present invention can be achieved.
The above-described embodiments should not be construed as limiting the scope of the invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (12)

1. A method for task allocation, comprising:
responding to a task allocation instruction, and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task;
determining an execution parameter matched with the execution capacity, and determining the task stacking quantity aiming at each service task according to the execution parameter, wherein the execution parameter comprises a target service man-hour and/or a target task quantity which can be executed and completed by the execution object;
dividing the service tasks into the number of the task piles, and allocating the service tasks divided into the same pile to the same execution object for execution.
2. The method of claim 1, wherein determining the number of task piles for each service task according to the execution parameters comprises:
determining the total service man-hour of each service task, and determining a first stacking number according to the total service man-hour and the target service man-hour; and/or determining the total task quantity of each service task, and determining a second stacking quantity according to the total task quantity and the target task quantity;
and determining the task pile dividing quantity aiming at each service task according to the first pile dividing quantity and/or the second pile dividing quantity.
3. The method of claim 2, wherein determining the number of task piles for the respective service task according to the first number of piles and/or the second number of piles comprises:
comparing the first quantity of piles with the second quantity of piles in quantity;
and taking the larger one of the first pile dividing quantity and the second pile dividing quantity as the task pile dividing quantity aiming at each service task.
4. The method of claim 2, wherein each of the service tasks corresponds to a respective pre-configured standard service man-hour, the target service man-hour being associated with the standard service man-hour;
the determining the total service man-hour of each service task comprises the following steps:
and taking the sum of the standard service man-hours of each service task as the total service man-hour of each service task.
5. The method of claim 1, wherein the partitioning the respective service tasks into the number of task piles comprises:
respectively determining task service man-hour of each service task;
sequencing all the service tasks by taking the task service man-hour as a basis;
and sequentially dividing the sequenced service tasks into the sub-stacks with the task sub-stack quantity.
6. The method according to claim 5, wherein the sequentially dividing the ordered service tasks into the number of the task piles comprises:
for the current task to be divided currently in the sequenced service tasks, dividing the current task into the current sub-stacks to be divided currently in the sub-stacks with the number of the task sub-stacks;
for the non-divided tasks which are not divided in the service tasks after the sequencing, if the non-divided tasks have attribute tasks similar to the service attributes of the current task, dividing the attribute tasks into the current pile, and updating the non-divided tasks according to the division result;
if the non-divided tasks exist, updating the non-divided task which is closest to the current task in sequence in each non-divided task to be the current task, updating the next sub-heap of the current sub-heap in each sub-heap to be the current sub-heap, and repeatedly executing the step of dividing the current task into the current sub-heap to be currently divided in the sub-heaps with the number of task sub-heaps.
7. The method of claim 1, wherein the target service man-hour comprises a maximum service man-hour, wherein the target number of tasks comprises a maximum number of tasks, and wherein after the dividing the respective service tasks into the number of task piles, further comprising:
and aiming at each sub-stack, if the sum of the task service man-hours of all the service tasks divided into the sub-stack is larger than the maximum service man-hour and/or the number of the service tasks is larger than the maximum number of the tasks, generating and sending out prompt information.
8. The method of claim 7, further comprising, after said generating and issuing a prompt message:
and responding to a task adjusting operation input by a user aiming at the prompt message, determining a task to be adjusted in each service task and a pre-adjustment pile and a post-adjustment pile corresponding to the task to be adjusted in each pile, and dividing the task to be adjusted into the post-adjustment pile from the pre-adjustment pile.
9. The method of claim 1, further comprising, after said dividing said respective service tasks into said number of task-per-pile sub-piles,:
aiming at each sub-stack, taking the service tasks in the sub-stacks as sub-stack tasks, determining the service time range and the service address of each sub-stack task, and determining the service sequence of each sub-stack task according to the service time range and the service address;
and taking the reverse order of the service order as a loading order to realize sequential loading of task articles corresponding to each stacked task according to the loading order.
10. A task assigning apparatus, comprising:
the execution capacity acquisition module is used for responding to a task allocation instruction and acquiring each service task to be allocated and execution capacity, wherein the execution capacity is the capacity of an execution object which can be used for executing the service task;
the task pile number determining module is used for determining an execution parameter matched with the execution capacity and determining the task pile number of each service task according to the execution parameter, wherein the execution parameter comprises target service man-hours and/or target task number which can be executed and completed by the execution object;
and the service task allocation module is used for dividing each service task into the sub-piles with the number of the task sub-piles so as to allocate the service tasks divided into the same sub-pile to the same execution object to execute.
11. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to cause the at least one processor to perform the method of task allocation according to any one of claims 1-9.
12. A computer-readable storage medium storing computer instructions for causing a processor to perform a method of task allocation as claimed in any one of claims 1 to 9 when executed.
CN202210518070.0A 2022-05-12 2022-05-12 Task allocation method and device, electronic equipment and storage medium Pending CN114781916A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210518070.0A CN114781916A (en) 2022-05-12 2022-05-12 Task allocation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210518070.0A CN114781916A (en) 2022-05-12 2022-05-12 Task allocation method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114781916A true CN114781916A (en) 2022-07-22

Family

ID=82437286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210518070.0A Pending CN114781916A (en) 2022-05-12 2022-05-12 Task allocation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114781916A (en)

Similar Documents

Publication Publication Date Title
WO2019037367A1 (en) Delivery task processing method and apparatus, and electronic device
CN114422509B (en) Automatic file backup method and device, network disk and storage medium
CN115658311A (en) Resource scheduling method, device, equipment and medium
CN103713852A (en) Method for processing information, service platform and electronic devices
CN112650449A (en) Release method and release system of cache space, electronic device and storage medium
CN114844791B (en) Cloud service automatic management and distribution method and system based on big data and storage medium
CN117435337A (en) Resource allocation method, device, electronic equipment and storage medium
CN115952054A (en) Simulation task resource management method, device, equipment and medium
CN111598432A (en) Task allocation method and device
CN114781916A (en) Task allocation method and device, electronic equipment and storage medium
CN113407322B (en) Multi-terminal task allocation method and device, electronic equipment and readable storage medium
CN114169733A (en) Resource allocation method and device
CN114327897A (en) Resource allocation method and device and electronic equipment
CN113342781A (en) Data migration method, device, equipment and storage medium
CN111062634A (en) Approval task allocation method and device, computer equipment and storage medium
CN110727400A (en) Flow control method, apparatus, device and medium for distributed storage system
CN113313195B (en) Labeling task processing method, labeling task processing device, labeling task processing equipment, labeling task processing storage medium and labeling task processing program product
CN110705884B (en) List processing method, device, equipment and storage medium
CN113204400B (en) Schedule display space distribution method and device, storage medium and electronic equipment
CN113837593B (en) Virtual data distribution method, device, equipment and storage medium
CN115099568A (en) Task allocation method and device, electronic equipment and storage medium
CN117667397A (en) GPU resource scheduling method and device, electronic equipment and storage medium
CN115239496A (en) Internal trading method and device for carbon emission quota, storage medium and trading server
CN117314067A (en) Work order distribution method, apparatus, device, storage medium and program product
CN115858115A (en) Method and device for processing advertising materials

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