Project Resource Allocation Method and Allocation System Based on Dynamic Scheduling

Through the dynamic scheduling model, the resource dependence between task nodes is analyzed and the critical paths are dynamically updated, which solves the problem of task blockage in the resource shortage of traditional resource allocation methods, and realizes resource optimization and shortening of project cycles.

CN119443684BActive Publication Date: 2025-07-11HANGZHOU WANLAN TECH CO LTD

Patent Information

Application Number
CN202411556378.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-07-11
Estimated Expiration
2044-11-04

AI Technical Summary

Technical Problem

Traditional project resource allocation methods fail to effectively respond in the situation of resource shortage, resulting in blockage and hysteresis of task nodes, delaying project progress, and making it difficult to optimize resource allocation plans.

Method used

The project resource allocation method based on dynamic scheduling is adopted, and the resource dependence between task nodes is analyzed through the dynamic scheduling model, the key paths are dynamically updated, and the algorithm is used to find the optimal resource allocation plan, and the path with the earliest completion time is generated.

Benefits of technology

In the environment of resource shortage, we can achieve full utilization of resources, shorten project cycles, optimize resource allocation, avoid blockage of task nodes, and improve project progress.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119443684B_ABST
    Figure CN119443684B_ABST
Patent Text Reader

Abstract

The present invention provides a project resource allocation method and an allocation system based on dynamic scheduling, belonging to the field of intelligent technologies. The allocation method includes: inputting project resources, a task set of a project, and a required resource set corresponding to the task set into a dynamic scheduling model of the project; according to the dynamic scheduling model, determining a set of feasible allocation schemes for the project, where each feasible allocation scheme can enable the available resources of the project resources at any time sequence to meet the required resources corresponding to multiple second tasks in a processing state at this time sequence; and determining the feasible allocation scheme with the minimum completion time in the set of feasible allocation schemes as the target allocation scheme. The method designed by the present invention can, in an environment of resource shortage competition, form different critical paths through different resource allocation schemes, compare all the formed critical paths, and find a path with the earliest completion time as the optimal path, so as to achieve the purpose of making full use of resources and shortening the project cycle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent technologies, and particularly to a project resource allocation method and an allocation system based on dynamic scheduling. Background Art

[0002] Traditional project resource allocation methods often lack coping solutions after changes occur in project paths and cycles due to resource shortages. For example, the critical path method in the traditional mode not only presets the project execution path and cycle, but also presets the abundance of resources. On these two premises, the invariance of the critical path is ensured. By preferentially allocating resources to task nodes located on the critical path, the overall project progress is guaranteed.

[0003] However, this unfair resource competition and allocation strategy method ignores the possible blockage and delay situations that may occur in task nodes that do not receive corresponding resources in the case of resource shortages. The delayed tasks will cause the original critical path to change and become nodes on the new critical path, greatly reducing the effectiveness of the allocation scheme established based on the original critical path.

[0004] Through long-term practice, it has been found that when optimizing the planning of project resource allocation, it is not only necessary to establish the relevance between tasks, but also necessary to comprehensively evaluate the progress and path changes brought about by different resource allocation methods, which often faces relatively great difficulties. Summary of the Invention

[0005] In view of this, the purpose of the present invention is to provide a project resource allocation method and an allocation system based on dynamic scheduling, aiming to optimize the allocation of project resources by using the method of dynamic scheduling. This method can comprehensively analyze the dependence of each task node on resources, calculate the possibilities formed by different resource allocation methods, dynamically update the critical path, and finally find the optimal solution among various changes through a suitable algorithm, thereby solving the above problems.

[0006] To achieve the above object, the present invention provides a project resource allocation method based on dynamic scheduling, and the allocation method includes: inputting the project resources, the task set of the project, and the demand resource set corresponding to the task set into the dynamic scheduling model of the project, wherein the task set includes multiple tasks, the required time of each task in the multiple tasks, and a binary relation matrix composed of the relationship types between any two tasks in the multiple tasks, and the demand resource set is a set of demand resources corresponding to each task; determining a set of feasible allocation plans for the project according to the dynamic scheduling model, wherein each feasible allocation plan in the set of feasible allocation plans can enable the available resources of the project resources at any time sequence to meet the demand resources corresponding to the second task in the processing state among the multiple tasks at this time sequence; and determining the feasible allocation plan with the minimum completion time in the set of feasible allocation plans as the target allocation plan.

[0007] Optionally, the dynamic scheduling model is used to perform the following functions: determining the available resources and the first task in the unprocessed state at a time sequence according to the project resources and the starting state matrix of the task set at this time sequence, wherein the first task in the initial time sequence is all tasks in the task set; determining the state change behavior of the task as the decision on the task according to the available resources at this time sequence and the demand resources corresponding to any first task, wherein the decision includes an active decision to change the first task to the second task and a passive decision to change the second task to the third task in the processed state; after the decision on any task, determining the state change matrix of the task set according to the binary relation matrix as the starting state matrix of the task set before the next active decision; and making active decisions on each task in the task set in an iterative manner until there is no first task in the task set.

[0008] Optionally, the passive decision includes: changing the second task to the third task in the processed state according to the required time of the second task.

[0009] Optionally, the demand resources include consumable resources and usage resources, and determining the available resources at a time sequence according to the project resources and the starting state matrix of the task set at this time sequence includes: determining the second task and the third task at this time sequence according to the starting state matrix of the task set at this time sequence; summing the consumable resources in the demand resources corresponding to the second task and the demand resources corresponding to the third task to determine the occupied resources at this time sequence; and determining the remaining resources obtained by subtracting the occupied resources from the project resources as the available resources at this time sequence.

[0010] Optionally, determining the set of feasible allocation plans for the project according to the dynamic scheduling model includes: obtaining, according to the dynamic scheduling model, a decision set for making the active decision for each task in the task set; using the method of full selection or preference selection to select and combine decisions from the decision set to obtain a strategy set, where each decision in the strategy set corresponds uniquely to each task; and determining the strategy set sorted according to the occurrence time sequence of each decision in the strategy set as the set of feasible allocation plans for the project.

[0011] Optionally, the method of full selection includes the dynamic programming method; and / or the method of preference selection includes one or more of the following: simulated annealing algorithm, ant colony algorithm, genetic algorithm, reinforcement learning, and deep learning.

[0012] Optionally, the relationship type includes: start-to-start, finish-to-start, finish-to-finish, and no relationship. Wherein, when the relationship type between the baseline task and another comparison task is start-to-start or finish-to-start, the baseline task is used as the preceding point of the comparison task, and the comparison task is used as the succeeding point of the baseline task.

[0013] Optionally, the binary relation matrix is determined in the following manner: determining, according to the relationship type between any two tasks among the multiple tasks, the set of tasks without a preceding point as the starting point set; and determining the succeeding point set of each task according to the succeeding point task corresponding to any task in the starting point set.

[0014] Optionally, determining the feasible allocation plan with the minimum completion time in the set of feasible allocation plans as the target allocation plan includes: determining the start time and end time of each task in the task set for each feasible allocation plan in the set of feasible allocation plans, where the end time of each task is determined by summing the start time of each task and the required time of the task; calculating the difference between the latest end time and the start time of the starting task to obtain the completion time of each feasible allocation plan; and determining the feasible allocation plan with the minimum completion time in the set of feasible allocation plans as the target allocation plan.

[0015] On the other hand, the present invention also provides a project resource allocation system based on a dynamic scheduling model. The allocation system includes: a model determination device for inputting the project resources, the task set of the project, and the demand resource set corresponding to the task set into the dynamic scheduling model of the project. Wherein, the task set includes multiple tasks, the required time for each task in the multiple tasks, and a binary relation matrix composed of the relationship types between any two tasks in the multiple tasks. The demand resource set is a set of demand resources corresponding to each task; a policy set determination device for determining a set of feasible allocation plans for the project according to the dynamic scheduling model. Wherein, each feasible allocation plan in the set of feasible allocation plans can enable the available resources of the project resources at any time sequence to meet the demand resources corresponding to the second task in the processing state among the multiple tasks at this time sequence; and a critical path determination device for determining the feasible allocation plan with the minimum completion time in the set of feasible allocation plans as the target allocation plan.

[0016] Through the above technical solutions, a project resource allocation method based on dynamic scheduling is proposed in this article. A critical path is generated during the resource allocation process, and finally, the optimal path that can be achieved in the actual process is found through algorithm iteration. The beneficial effect of the present invention is that the designed method can, in an environment of resource shortage and competition, form different critical paths through different resource allocation plans, compare all the formed critical paths, and find a path with the earliest completion time as the optimal path to achieve the purpose of making full use of resources and shortening the project cycle.

[0017] Other features and advantages of the embodiments of the present invention will be described in detail in the subsequent specific implementation part. Brief Description of the Drawings

[0018] The drawings are used to provide a further understanding of the embodiments of the present invention, and constitute a part of the specification. Together with the following specific implementation manners, they are used to explain the embodiments of the present invention, but do not constitute a limitation to the embodiments of the present invention. In the drawings:

[0019] Figure 1 is a flowchart of a project resource allocation method based on dynamic scheduling according to an embodiment of the present invention;

[0020] Figure 2 is a specific flowchart of a project resource allocation method according to an embodiment of the present invention;

[0021] Figures 3-7 is a schematic diagram of the process of project task execution according to an embodiment of the present invention;

[0022] Figure 8It is a schematic structural diagram of a project resource allocation system based on dynamic scheduling according to an embodiment of the present invention. Detailed implementation manners

[0023] The following will describe in detail the specific implementation manners of the embodiments of the present invention with reference to the accompanying drawings. It should be understood that the specific implementation manners described herein are only for explaining and illustrating the embodiments of the present invention, and are not used to limit the embodiments of the present invention.

[0024] The present invention first provides a project resource allocation method 100 based on dynamic scheduling, as Figure 1 shown. The allocation method 100 may include:

[0025] Step S110, input the project resources, the task set of the project, and the demand resource set corresponding to the task set into the dynamic scheduling model of the project. Among them, the task set may include multiple tasks, the required time for each task in the multiple tasks, and a binary relation matrix composed of the relationship types between any two tasks in the multiple tasks. In addition, the demand resource set is a set of the required resources corresponding to each task.

[0026] In this step, before determining the dynamic scheduling model of the project, it is first necessary to perform structural modeling based on the relevant information during the execution of the project, so as to collect the required relevant information in advance and provide it to the dynamic scheduling model. Among them, structural modeling can be understood as a process of determining the constraint boundaries of each parameter, and may include task decomposition, specifying the dependencies between task nodes, and the definition of elements such as resource requirements, etc., which can be reflected in the following set form:

[0027] G=(K,S,M d ,B,U)

[0028] Where:

[0029] K=(k1,k2,…,k n ) represents the task set of the project, and n is the number of tasks in the multiple tasks.

[0030] S=(s1,s2,…,s n ) is the state set of the tasks.

[0031] M d is the binary relation matrix between task nodes.

[0032] B=(b1,b2,…,b l ) is the project resources, that is, the total available resource set.

[0033] U=(u1,u2,…,u n ) is the demand resource set corresponding to the task set, that is, the total resource set required by the project.

[0034] Secondly, it is necessary to collect the project's dataset and establish a database around the structure of the dynamic scheduling model (used to characterize the relevant information during the project execution). For example, around the above definition of the project ontology: G = (K, S, M d , B, U), select a database system, such as tdsql, mysql, sqlserver, mongodb, postgresql, etc., so as to establish a database capable of carrying and storing the project-related dataset.

[0035] Then, collect the task data of the project. The task data is the data formed after the project is decomposed by methods such as WBS (Work Breakdown Structure task structure decomposition), and generally includes data such as task names, requirements, specifications, etc. For example, the original data such as project resources, the project's task set, and the corresponding required resource set of the task set can be collected, so as to fill the data of each element and set according to the structure of the dynamic scheduling model to determine the project's dynamic scheduling model.

[0036] Specifically, this step can collect the relevant data of the tasks around the definition of the task set in the above project model G: K = (k1, k2,..., k n ). At the same time, for the task data, a set M of relationships between tasks can be established around the mutual dependence relationships (relationship types) between tasks d , where:

[0037]

[0038] m ij represents the relationship type between task k i and task k j . Among them, E = (e1, e2,..., e k ) is the relationship type, which can include: Start to Start (SS), Finish to Start (FS), Finish to Finish (FF), and no relationship. Specifically, if the relationship type between task A and task B is Start to Start, it means that task B can only start after task A starts; if the relationship type between task A and task B is Finish to Start, it means that task B can only start after task A finishes; if the relationship type between task A and task B is Finish to Finish, it means that task B can only finish after task A finishes; and no relationship means that there is no association relationship between task A and task B, that is, regardless of whether task A starts or finishes, task B can start or finish.

[0039] For example, in a construction project, there may be an SS relationship between the architect's design work (Task A) and the construction team's preparatory work (Task B). The construction team can only start the preparatory work when the architect begins the design. However, this does not mean that the construction team has to wait until the architect finishes the design before starting the preparatory work. As long as the architect has started the design, the construction team can start the preparatory work simultaneously.

[0040] For example, in a software development project, there may be an FF relationship between the programming work of the development team (Task A) and the testing work of the testing team (Task B). The testing work of the testing team can only end when the development team finishes the programming work. This is because the testing team needs to complete all the testing work after the development team finishes all the programming work.

[0041] Among them, when the relationship type between the baseline task and another comparison task is SS or FS, the baseline task is taken as the predecessor point of the comparison task, and the comparison task is taken as the successor point of the baseline task. That is to say, in the above example, if the baseline task is A and the comparison task is B, then Task A is taken as the predecessor point of Task B, and Task B is taken as the successor point of Task A.

[0042] In addition, the binary relation matrix can be determined in the following way:

[0043] 1) According to the relationship type between any two tasks among multiple tasks, determine the set of tasks without predecessor points as the starting point set; and

[0044] 2) Determine the successor point set of each task according to the successor point tasks corresponding to any task in the starting point set.

[0045] Finally, it is necessary to collect the project resources (total project resource data) and the required resource set corresponding to the task set. Among them, the total project resource data is the total number of all resources owned by the project. Resources are generally personnel with specific skills, equipment, environmental space, etc. Data collection can be carried out according to the following set: B = (b1, b2,..., b l ), where b i = (r i , o i ), r i is the resource type, r i ∈ R (r1, r2,..., r l ), R is the set of all resource types, o i is the quantity of resources available. Among them, resources can be divided into "usage-based" resources and "consumable" resources. The former will return to the total resource set after the task is completed and be reflected in the available quantity, while the latter will not return to the total resource set after the task is completed.

[0046] The required resource set corresponding to the task set is the resource data required for the task (which can also be referred to as task resource dependency data). That is, the number of personnel with specific skills, the number of equipment, the amount of materials, etc. required for a task. At the same time, the time required for the task, which is a value of particular concern in the present invention, is treated as an independent object and not included in the resource set, and is determined during data collection. Among them, for "usage-type" resources, the time required for the task is the expected occupation time of the resource, and the resource will be automatically released when the task is completed. The specific definition can be referred to the following formula: U = (u1, u2,..., u n ) is the required resource set, u i = (k i , A i , w i ), w i is the required time, A i = (a i1 , a i2 ,..., a il ) is the resource vector on which task t i depends, a ij = (r j , q i ), r j ∈ R, q i is the amount of resources required for task k i .

[0047] Through the above specific steps, the project resources, the task set of the project, and the required resource set corresponding to the task set can be collected first, and then the information collected above is input into the dynamic scheduling model of the project.

[0048] Step S120, according to the dynamic scheduling model, determine the set of feasible allocation schemes for the project. Among them, each feasible allocation scheme in the set of feasible allocation schemes can make the available resources of the project resources at any time sequence meet the required resources corresponding to the second tasks in the processing state among multiple tasks at this time sequence.

[0049] Among them, after collecting the above data and inputting to construct the dynamic scheduling model, the following functions 1)-4) can be performed using the dynamic scheduling model:

[0050] 1) According to the starting state matrix of the project resources and the task set at a time sequence, determine the available resources and the first tasks in the unprocessed state at this time sequence. Among them, the first tasks in the initial time sequence are all tasks in the task set.

[0051] Among them, the first tasks in the unprocessed state, the second tasks in the processing state, and the third tasks in the processed state can be determined first according to the task state set defined above. That is, for: S = (s1, s2,..., sn ), where s i represents the status of task k i and can include "0 - unprocessed, 1 - processing, 2 - processed", etc. Additionally, it can be understood that during the initial collection of project data, its initial value is: 0 - unprocessed.

[0052] As described above, the required resources include consumable resources and usage resources. Then, "determining the available resources at this time sequence based on the project resources and the starting status matrix of the task set at a certain time sequence" in this step can include the following steps a) - c):

[0053] a) Determine the second task and the third task at this time sequence based on the starting status matrix of the task set at this time sequence; the specific determination method is as described above and will not be elaborated here.

[0054] b) Sum the consumable resources in the required resources corresponding to the second task and the required resources corresponding to the third task to determine the occupied resources at this time sequence.

[0055] c) Determine the remaining resources obtained by subtracting the occupied resources from the project resources as the available resources at this time sequence.

[0056] Thus, through the above steps a) - c), the available resources at this time sequence can be determined.

[0057] 2) Determine the status change behavior of a task as the decision for the task based on the available resources at this time sequence and the required resources corresponding to any first task.

[0058] Among them, the decision includes an active decision to change the first task to the second task and a passive decision to change the second task to the third task in the processed state. Among them, the passive decision can include: changing the second task to the third task in the processed state according to the required time of the second task. That is, when a task obtains the required resources, the status can be changed from "0 - unprocessed" to "1 - processing" state, and this process is called an active decision; and after this state passes through the required time w i later, the status can be changed to "2 - processed", and this process is called a passive decision.

[0059] Specifically, according to each task node K = (k1, k2,..., k n ), and the task status S = (s1, s2,..., s n ), changing the task node k i to the status is determined as the decision for the task. Among them, Represent all currently available decisions, that is, the set of feasible states determined by the resource status, and its boundary condition is the sufficiency of the resource quantity, that is, the required resource quantity for the current task volume needs to be less than or equal to the available resource quantity (corresponding to different resource types), where:

[0060] That is to say, it can only change to the "1 - Processing" state when there are available resources at the current time sequence, and the resources also enter the consumed or occupied state. After the time in the "Processing" state reaches the time required for the task, it can change to the "2 - Processed" state, and the non - consumable resources are released.

[0061] 3) After making a decision for any task, according to the binary relation matrix, determine the state change matrix of the task set as the starting state matrix of the task set before the next active decision.

[0062] 4) Make active decisions for each task in the task set in an iterative manner until there is no first task in the task set.

[0063] Specifically, after each decision, according to the determined binary relation matrix, the state change can be output, and the obtained state matrix is used as the starting matrix before the next decision, and the iterative calculation is carried out accordingly. This process is called the state transition process, which can be represented by the following state transition equation:

[0064]

[0065] Through the state transition equation, it can be judged the satisfaction of the current available resources for the task and the global requirements of the algorithm, and the corresponding relationship for the deterministic change of the state. When the state of any task changes, the current solution Z d can be updated i the elements in of

[0066] In summary, through the above four steps 1) - 4), the iterative process can be executed using the dynamic scheduling model to determine the active decision set for each task. Among them, iteration is a solution method used to approximate the optimal solution. In this paper, all strategies are exhausted through the dynamic programming model, the time axis is updated, the critical path is generated, and the minimum completion time is used as the comparison index to find the feasible optimal critical path.

[0067] In an embodiment, step S120 may further include:

[0068] Step S121, according to the dynamic scheduling model, obtain the decision set for making active decisions for each task in the task set.

[0069] Step S122: Use the all - selection or preferred method to select decisions from the decision set for combination to obtain a strategy set, where each decision in the strategy set uniquely corresponds to each task.

[0070] Among them, a strategy is a set of a series of decisions. For example, the strategy from the i - th task node to the j - th task node is:

[0071] A complete strategy is the case when i = 0 and j = n in the above formula, and when i≥0, j≤n, and i≤j, it is a sub - strategy of the complete strategy. When a strategy is a feasible strategy, it is the decision set formed when the states corresponding to the tasks included are all "2 - processed".

[0072] In addition, the all - selection method can include the dynamic programming method, that is, through the full combination of all feasible decisions and then the process of screening and allocation. The advantage of this method is that it traverses comprehensively, so the obtained results are more accurate. However, the disadvantage is that there are a large number of invalid traversals, so it requires more computing resources and results in low execution efficiency. The preferred method is to find a relatively optimal solution without traversing all combinations through a set algorithm, which will bring an improvement in execution efficiency. For example, the preferred method can include one or more of the following: simulated annealing algorithm, ant colony algorithm, genetic algorithm, reinforcement learning, and deep learning, etc.

[0073] Step S123: Determine the strategy set sorted according to the occurrence time sequence of each decision in the strategy set as the set of feasible allocation schemes for the project.

[0074] Among them, each feasible allocation scheme in the set of feasible allocation schemes can include the start time and end time of each task in the task set, and the end time can be determined by summing the start time of each task and the required time of the task.

[0075] Step S130: Determine the feasible allocation scheme with the minimum completion time in the set of feasible allocation schemes as the target allocation scheme.

[0076] The essence of the algorithm involved in this article is to establish different critical paths through different allocation schemes of the resources required for tasks, compare all the critical paths, and find a path with the earliest completion time as the optimal path to achieve the purpose of making full use of resources and shortening the project cycle. That is, it is necessary to find a planning scheme with the earliest end time, which can be expressed by the following formula:

[0077] Specifically, step S130 can also include:

[0078] Step S131: Determine the start time and end time of each task in the task set of each feasible allocation plan in the set of feasible allocation plans. Among them, the end time of each task is determined by summing the start time of each task and the required time of this task.

[0079] Among them, the set of all feasible allocation plans is:

[0080] Z = (Z1, Z2,...)

[0081] where Z i = (z i1 , z i2 ,..., z in ), represents the final result of task k i of allocation plan Z j , is the "start time" of the task, that is, the time to allocate resources and perform state conversion, is the "end time" of the task.

[0082] Step S132: Subtract the latest end time from the start time of the starting task to obtain the completion time of each feasible allocation plan. The completion time can also be called the maximum end time.

[0083] Let the set K p = (k p1 , k p2 ,..., k pv ) be all the associated previous tasks of task k d calculated through the binary relation matrix M j , then:

[0084]

[0085] Thus

[0086] Step S133: Determine the feasible allocation plan with the minimum completion time in the set of feasible allocation plans as the target allocation plan.

[0087] Let Z * be the optimal plan, then:

[0088]

[0089] That is, the plan with the "minimum" "maximum end time" among all allocation plans is the optimal plan.

[0090] Through the above technical solution, this paper proposes a project resource allocation method based on dynamic scheduling, generates a critical path during the process of resource allocation, and finally finds the optimal path that can be realized in the actual process through algorithm iteration. The beneficial effect of the present invention is that the designed method can, in an environment of resource shortage and competition, form different critical paths through different resource allocation schemes, compare all the formed critical paths, and find a path with the earliest completion time as the optimal path, so as to achieve the purpose of making full use of resources and shortening the project cycle.

[0091] Embodiment

[0092] To further explain the present invention, embodiments of specific applications are provided. Referring to Figure 2 , the process is as follows:

[0093] 1. Data import:

[0094] For the data in the database, after being structured according to the definitions specified by the dynamic scheduling model, it is imported into the dynamic scheduling model, and then the required data set is solved.

[0095] 2. Generate a binary relation matrix:

[0096] Traverse the set of known task association relationships (relationship types), obtain the set of starting points (i.e., the set of tasks without predecessors), and for each starting point, form a set of subsequent points by traversing the task association relationships, and write them into the binary relation matrix.

[0097] 3. Generate an available decision set:

[0098] Through the set of subsequent points of a task, match and calculate the available resource set at the same time to generate an available decision set. When an available decision is generated and applied, for the occupied "usage-type" resources, after the required task time, the task will be automatically completed, and the released resources will be incorporated into the available resource set.

[0099] 4. Select a decision:

[0100] According to the actual data and algorithm environment, use the method of full selection or preferred selection to select decisions for strategy combination. The preferred methods include heuristic algorithms such as simulated annealing algorithm, ant colony algorithm, and genetic algorithm, and also include algorithms such as reinforcement learning and deep learning that compress the hypothesis space through data distribution.

[0101] 5. Policy generation

[0102] Put the selected decision into the policy set, and update the time axis of the selected decision. Record and save the information generated on this policy.

[0103] 6. Recursively generate subsequent decisions

[0104] Return to point 3, continue to select the subsequent set of points, select the decisions in the available decision set corresponding to the subsequent points, and continue to combine and generate new strategies.

[0105] 7. Calculate the complete strategy of the critical path

[0106] When all tasks have been decided and are included in the strategy, this strategy is the complete strategy. For the generated complete strategy, calculate its critical path.

[0107] 8. Iteratively generate strategies

[0108] After completing the generation and saving of a complete strategy, return to the available decision set at the initial point to select the unused decisions, generate new strategies according to the above steps, and calculate the new critical path.

[0109] 9. Optimal solution

[0110] Compare the critical paths of all strategies, and select the critical path with the smallest "maximum completion time" as the optimal strategy.

[0111] In addition, during the application of the present invention, its implementation process is respectively as Figures 3-6 shown, where Figure 3 is the management interface of the project group, which overall manages all projects, including project information maintenance, resource allocation, project team allocation, risk control, etc. Figure 4 and Figure 5 are respectively the resource function definitions of personnel skills and equipment uses. Figure 6 is the function definition of the available resources for the project. The resources including a certain function can meet the tasks with the corresponding requirements for that function. In addition, the Gantt chart of the project task execution diagram with a time axis output for the calculated optimal solution is as Figure 7 shown. Figure 7 Shows the resource dependency graph of the project tasks. Different project tasks will display different "function requirements", and the available resources are matched through functions, so as to allocate and plan the execution of the project.

[0112] On the other hand, the present invention also provides a project resource allocation system 200 based on dynamic scheduling, which can be implemented based on the above-mentioned project resource allocation method 100 based on dynamic scheduling. As Figure 8 shown, the allocation system 200 may include:

[0113] The model determination device 210 is configured to input project resources, a task set of a project, and a demand resource set corresponding to the task set into a dynamic scheduling model of the project. The task set includes multiple tasks, the required time of each task among the multiple tasks, and a binary relation matrix composed of the relation types between any two tasks among the multiple tasks. The demand resource set is a set of demand resources corresponding to each task.

[0114] The policy set determination device 220 is configured to determine a set of feasible allocation schemes of the project according to the dynamic scheduling model. Each feasible allocation scheme in the set of feasible allocation schemes can make the available resources of the project resources at any time sequence satisfy the demand resources corresponding to the second tasks in the processing state at this time sequence among the multiple tasks; and

[0115] The critical path determination device 230 is configured to determine the feasible allocation scheme with the minimum completion time in the set of feasible allocation schemes as the target allocation scheme.

[0116] In one embodiment, the dynamic scheduling model is used to perform the following functions: according to the project resources and the start state matrix of the task set at a time sequence, determine the available resources and the first tasks in the unprocessed state at this time sequence. Among them, the first tasks in the initial time sequence are all the tasks in the task set; according to the available resources at this time sequence and the demand resources corresponding to any first task, determine the state change behavior of this task as the decision on this task. The decision includes an active decision to change the first task to the second task and a passive decision to change the second task to the third task in the processed state; after the decision on any task, according to the binary relation matrix, determine the state change matrix of the task set as the start state matrix of the task set before the next active decision; and actively make decisions on each task in the task set in an iterative manner until there are no first tasks in the task set.

[0117] In one embodiment, the passive decision includes: according to the required time of the second task, change the second task to the third task in the processed state.

[0118] In one embodiment, the demand resources include consumable resources and usage resources. Determining the available resources at this time sequence according to the project resources and the start state matrix of the task set at a time sequence includes: determining the second task and the third task at this time sequence according to the start state matrix of the task set at this time sequence; summing the consumable resources in the demand resources corresponding to the second task and the demand resources corresponding to the third task to determine the occupied resources at this time sequence; and determining the remaining resources obtained by subtracting the occupied resources from the project resources as the available resources at this time sequence.

[0119] In one embodiment, the policy set determining device 220 is specifically configured to perform the following functions: according to the dynamic scheduling model, obtain a decision set for making the proactive decision for each task in the task set; use an all-selection or preference method to select and combine decisions from the decision set to obtain a policy set, where each decision in the policy set corresponds uniquely to each task; and determine the policy set sorted according to the occurrence time sequence of each decision in the policy set as the feasible allocation scheme set of the project.

[0120] In one embodiment, the all-selection method includes a dynamic programming method; and / or the preference method includes one or more of the following: simulated annealing algorithm, ant colony algorithm, genetic algorithm, reinforcement learning, and deep learning.

[0121] In one embodiment, the relationship types include: start-to-start, finish-to-start, finish-to-finish, and no relationship. Wherein, when the relationship type between the reference task and another comparison task is start-to-start or finish-to-start, the reference task is used as the predecessor point of the comparison task, and the comparison task is used as the successor point of the reference task.

[0122] In one embodiment, the binary relation matrix is determined in the following manner: according to the relationship type between any two tasks in the multiple tasks, determine the set of tasks without the predecessor point as the starting point set; and according to the successor point tasks corresponding to any task in the starting point set, determine the successor point set of each task.

[0123] In one embodiment, the critical path determining device 230 is specifically configured to perform the following functions: determine the start time and end time of each task in the task set of each feasible allocation scheme in the feasible allocation scheme set, where the end time of each task is determined by summing the start time of each task and the required time of the task; subtract the start time of the starting task from the latest end time to obtain the completion time of each feasible allocation scheme; and determine the feasible allocation scheme with the minimum completion time in the feasible allocation scheme set as the target allocation scheme.

[0124] In summary, through the above technical solutions, this paper proposes a project resource allocation method based on dynamic scheduling, generates a critical path during the resource allocation process, and finally finds an optimal path that can be realized in the actual process through algorithm iteration. The beneficial effect of the present invention is that the designed method can, in an environment of resource shortage and competition, form different critical paths through different resource allocation schemes, compare all the formed critical paths, and find a path with the earliest completion time as the optimal path, so as to achieve the purpose of making full use of resources and shortening the project cycle.

[0125] It should also be noted that the term "including", "comprising" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such a process, method, commodity or device. Without more limitations, an element defined by the statement "including one..." does not exclude the existence of another identical element in the process, method, commodity or device including the element.

[0126] The above are only embodiments of the present application and are not used to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included within the scope of the claims of the present application.

Claims

1. A project resource allocation method based on a dynamic scheduling model, characterized in that The allocation method includes: Inputting the project resources, the task set of the project, and the demand resource set corresponding to the task set into the dynamic scheduling model of the project. Among them, the task set includes multiple tasks, the required time of each task in the multiple tasks, and a binary relation matrix composed of the relationship types between any two tasks in the multiple tasks. The demand resource set is the set of demand resources corresponding to each task; According to the dynamic scheduling model, determining a set of feasible allocation schemes for the project. Among them, each feasible allocation scheme in the set of feasible allocation schemes can make the available resources of the project resources at any time sequence meet the demand resources corresponding to the second task in the state of being processed among the multiple tasks at this time sequence. Among them, the set of feasible allocation schemes includes all feasible allocation schemes; and Determining the feasible allocation scheme with the minimum completion time in the set of feasible allocation schemes as the target allocation scheme. Among them, the dynamic scheduling model is used to perform the following functions: According to the project resources and the starting state matrix of the task set at a time sequence, determining the available resources and the first task in the unprocessed state at this time sequence. Among them, the first task in the initial time sequence is all tasks in the task set; According to the available resources at this time sequence and the demand resources corresponding to any first task, determining the state change behavior of this task as the decision on this task. Among them, the decision includes an active decision to change the first task to the second task and a passive decision to change the second task to the third task in the processed state; After the decision on any task, according to the binary relation matrix, determining the state change matrix of the task set as the starting state matrix of the task set before the next active decision; and Making active decisions on each task in the task set in an iterative manner until there is no first task in the task set.

2. The distribution method according to claim 1, wherein The passive decision includes: according to the required time of the second task, changing the second task to the third task in the processed state.

3. The distribution method according to claim 1, wherein The demand resources include consumable resources and usage resources. The determining the available resources at a time sequence according to the project resources and the starting state matrix of the task set at this time sequence includes: According to the starting state matrix of the task set at this time sequence, determining the second task and the third task at this time sequence; Summing the consumable resources in the demand resources corresponding to the second task and the demand resources corresponding to the third task to determine the occupied resources at this time sequence; and Determining the remaining resources obtained by subtracting the occupied resources from the project resources as the available resources at this time sequence.

4. The distribution method according to claim 1, characterized in that The determining the set of feasible allocation schemes for the project according to the dynamic scheduling model includes: According to the dynamic scheduling model, obtaining a decision set for making the active decisions on each task in the task set; Using the method of full selection or preference selection to select and combine decisions from the decision set to obtain a strategy set. Among them, each decision in the strategy set corresponds uniquely to each task; and The policy set obtained by sorting the occurrences of each decision in the described policy set according to the chronological order is determined as the set of feasible allocation solutions for the project.

5. The allocation method according to claim 4, wherein the method of selecting all includes the dynamic programming method; and / or the method of preference includes one or more of the following: simulated annealing algorithm, ant colony algorithm, genetic algorithm, reinforcement learning, and deep learning.

6. The distribution method according to claim 1, characterized in that The relationship types include: start - to - start, finish - to - start, finish - to - finish, and no relationship, wherein, when the relationship type between the reference task and another comparison task is start - to - start or finish - to - start, the reference task is taken as the predecessor point of the comparison task, and the comparison task is taken as the successor point of the reference task.

7. The dispensing method according to claim 6, wherein The binary relationship matrix is determined in the following manner: According to the relationship type between any two tasks in the multiple tasks, the set of tasks without a predecessor point is determined as the starting point set; and According to the successor point tasks corresponding to any task in the starting point set, the successor point set of each task is determined.

8. The dispensing method according to claim 1, characterized in that Determining the feasible allocation solution with the minimum completion time in the set of feasible allocation solutions as the target allocation solution includes: Determining the start time and end time of each task in the task set of each feasible allocation solution in the set of feasible allocation solutions, where the end time of each task is determined by summing the start time of each task and the required time of the task; Taking the difference between the latest end time and the start time of the starting task to obtain the completion time of each feasible allocation solution; and Determining the feasible allocation solution with the minimum completion time in the set of feasible allocation solutions as the target allocation solution.

9. A project resource allocation system based on a dynamic scheduling model, characterized in that, The allocation system includes: A model determination device for inputting the project resources, the task set of the project, and the set of required resources corresponding to the task set into the dynamic scheduling model of the project, where the task set includes multiple tasks, the required time of each task in the multiple tasks, and a binary relationship matrix composed of the relationship types between any two tasks in the multiple tasks, and the set of required resources is the set of required resources corresponding to each task; A policy set determination device for determining the set of feasible allocation solutions of the project according to the dynamic scheduling model, where each feasible allocation solution in the set of feasible allocation solutions can make the available resources of the project resources at any chronological order satisfy the required resources corresponding to the second task in the state of being processed among the multiple tasks at that chronological order, and the set of feasible allocation solutions includes all feasible allocation solutions; and A critical path determination device for determining the feasible allocation solution with the minimum completion time in the set of feasible allocation solutions as the target allocation solution, wherein the dynamic scheduling model is used to perform the following functions: According to the project resources and the starting state matrix of the task set at a chronological order, determining the available resources and the first task in the unprocessed state at that chronological order, where the first task in the initial chronological order is all tasks in the task set; Based on the available resources at this time sequence and the required resources corresponding to any first task, the status change behavior of the task is determined as the decision on the task, where the decision includes an active decision to change the first task to the second task and a passive decision to change the second task to a third task in a processed state; After the decision on any task, according to the binary relation matrix, the status change matrix of the task set is determined as the starting state matrix of the task set before the next active decision; and An active decision is made on each task in the task set in an iterative manner until there is no first task in the task set.

Citation Information

Patent Citations

  • Task scheduling optimization method and system based on equipment state analysis

    CN118193169A

Cited By

  • Dynamic equilibrium labeling method and system for large visual model

    CN121121744A

  • A Dynamic Equilibrium Annotation Method and System for Large Visual Models

    CN121121744B