A multi-project scheduling optimization algorithm and system based on resource constraints
By using multi-project scheduling optimization algorithms and systems in resource-constrained environments, the problem of how to efficiently arrange multiple power test tasks is solved, and tasks are completed on time and resources are efficiently utilized.
Patent Information
- Application Number
- CN202411829420.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-12
- Publication Date
- 2025-04-08
AI Technical Summary
In resource-constrained environments, how to efficiently arrange multiple power test tasks to ensure timely completion has become an important technical challenge.
A multi-project scheduling optimization algorithm and system based on resource constraints is proposed, including data preparation module, task dependency analysis module, task priority calculation module and scheduling execution module. Through real-time monitoring, conflict detection and processing, dynamic adjustment and evaluation and optimization module, task scheduling is adopted using the shortest job priority algorithm or backtracking algorithm.
With limited personnel and equipment, a number of power testing tasks can be efficiently dispatched, effectively reducing project delay risks, improving resource utilization, and providing strong support for project management.
Smart Images

Figure CN119784035A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of power test project management, and in particular to a multi-project scheduling optimization algorithm and system based on resource constraints. Background Art
[0002] In modern power and engineering management, multiple projects need to be promoted simultaneously. Each project often involves multiple test tasks and relies on limited human and equipment resources. In a resource-constrained environment, how to efficiently schedule tasks to ensure that each task is completed on time has become an important technical challenge. Therefore, a multi-project scheduling optimization algorithm and system based on resource constraints is proposed to ensure the effective use of resources and the smooth progress of the project. Summary of the invention
[0003] In view of this, an object of the present invention is to provide a multi-project scheduling optimization algorithm and system based on resource constraints to at least solve the above problems.
[0004] The technical solution adopted in the first aspect of the present invention is as follows:
[0005] A multi-project scheduling optimization algorithm based on resource constraints, the algorithm includes: a data preparation module, a task dependency analysis module, a task priority calculation module and a scheduling execution module, the data preparation module is used to load data containing tasks, personnel information and equipment status monitoring, the task dependency analysis module is used to build a dependency graph between tasks to determine the order of task execution, the task priority calculation module is used to assign a priority to each task according to deadline, resource requirements and urgency factors, and the scheduling execution module performs task scheduling by adopting the shortest job first algorithm SJF or the backtracking algorithm to ensure that high-priority tasks are executed first.
[0006] Furthermore, it includes a real-time monitoring module, which is used to dynamically monitor the progress of tasks and the real-time status of personnel and equipment.
[0007] Furthermore, it includes a conflict detection and processing module, which is used to monitor the allocation of equipment and personnel during task execution, and if a conflict occurs, adjust the task sequence or reallocate personnel.
[0008] Furthermore, it includes a dynamic adjustment scheme module, which optimizes and adjusts the allocation of tasks and personnel in real time according to the task execution status.
[0009] Furthermore, it includes an evaluation and optimization module, which generates an evaluation report after the task is completed, including resource usage and project completion time, and uses the resource usage and project completion time as a basis for project optimization.
[0010] Furthermore, the task allocation priority calculation process is as follows: assign a priority value P to the task j , and is calculated by the following function:
[0011] P j =w1·T j +w2·R j +w3·D j
[0012] Among them, T j : The deadline difference of task j, R j : The total amount of resources required for the task, D j : The urgency index of the task, w1,w2,w3: weight coefficients.
[0013] The technical solution adopted in the second aspect of the present invention is as follows:
[0014] A system for executing a multi-project scheduling optimization algorithm based on resource constraints proposed in the first aspect, characterized in that the system comprises:
[0015] Processing unit, used to perform calculations and logical reasoning of each module;
[0016] A data storage unit for storing loaded data, task information and evaluation reports;
[0017] User interface for displaying task progress and resource utilization.
[0018] Furthermore, the user interface includes a visualization tool to facilitate users to monitor project progress and resource usage in real time.
[0019] Compared with the prior art, the present invention has the following beneficial effects:
[0020] The present invention proposes a multi-project scheduling optimization algorithm and system based on resource constraints. By establishing accurate task dependencies, personnel skills, and equipment availability, and applying scientific scheduling algorithms and dynamic adjustment mechanisms, multiple power test tasks can be efficiently scheduled under the condition of personnel and equipment constraints. It effectively reduces the risk of project delays, improves resource utilization, and provides strong support for project management. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only preferred embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0022] Figure 1 It is a schematic diagram of the overall process of a multi-project scheduling optimization algorithm based on resource constraints proposed in an embodiment of the present invention. DETAILED DESCRIPTION
[0023] The principles and features of the present invention are described below in conjunction with the accompanying drawings. The enumerated embodiments are only used to explain the present invention and are not used to limit the scope of the present invention.
[0024] Embodiment 1
[0025] A multi-project scheduling optimization algorithm based on resource constraints, the algorithm includes: a data preparation module, a task dependency analysis module, a task priority calculation module and a scheduling execution module, the data preparation module is used to load data containing tasks, personnel information and equipment status monitoring, the task dependency analysis module is used to build a dependency graph between tasks to determine the order of task execution, the task priority calculation module is used to assign a priority to each task according to deadline, resource requirements and urgency factors, and the scheduling execution module performs task scheduling by adopting the shortest job first algorithm SJF or the backtracking algorithm to ensure that high-priority tasks are executed first.
[0026] This embodiment includes a real-time monitoring module, which is used to dynamically monitor the progress of tasks and the real-time status of personnel and equipment.
[0027] This embodiment includes a conflict detection and processing module, which is used to monitor the allocation of equipment and personnel during task execution, and if a conflict occurs, adjust the task sequence or redeploy personnel.
[0028] This embodiment includes a dynamic adjustment scheme module, which optimizes and adjusts the allocation of tasks and personnel in real time according to the task execution status.
[0029] This embodiment includes an evaluation and optimization module, which generates an evaluation report after the task is completed, including resource usage and project completion time, and uses the resource usage and project completion time as a basis for project optimization.
[0030] The task allocation priority calculation process is: assign a priority value P to the task j , and is calculated by the following function:
[0031] P j =w1·T j +w2·R j +w3·D j
[0032] Among them, T j : The deadline difference of task j, R j: The total amount of resources required for the task, D j : The urgency index of the task, w1,w2,w3: weight coefficients.
[0033] For example, for task decomposition and dependency analysis:
[0034] Decompose the tasks of each project and build a directed acyclic graph (DAG) based on the interdependencies of the tasks. The specific expression is:
[0035] Task set T = {t1, t2, ..., t n} - Dependency collection Indicates t i Need to be in t j Completed before.
[0036] Through the personnel skill library, a cubic equation is constructed to express the skill matching between personnel and tasks:
[0037]
[0038] Among them, S is the skill matrix, S ij Indicates whether person i has the skills required for task j.
[0039] By setting the state matrix of the device, the formula is expressed as follows:
[0040] E k =Available k -InUse k
[0041] Among them, E k Indicates the available number of device k.
[0042] For priority setting, assign a priority value P to the task. j , and is calculated by the following function:
[0043] P j =w1·T j +w2·R j +w3·D j
[0044] Among them, T j : The deadline difference of task j, R j : The total amount of resources required for the task, D j : The urgency index of the task, w1,w2,w3: weight coefficients.
[0045] For task sorting, the shortest job first algorithm SJF can be used to prioritize the job with the shortest duration for scheduling. The implementation steps are:
[0046] Sort tasks by their duration:
[0047] T sorted = sort(T, by duration)
[0048] Go through each task in turn, assigning available personnel and equipment.
[0049] Or you can set the state variables by selecting the backtracking algorithm, recursively assign tasks, and search for the best scheduling solution. Set the state function to:
[0050]
[0051] In backtracking, when the condition is not met, return and continue to the next branch.
[0052] For the dynamic adjustment mechanism, a status monitoring mechanism is established to monitor the task progress through real-time data feedback and make dynamic adjustments. The model is as follows:
[0053]
[0054] Update task assignments based on completion status and adjust the order of task execution if necessary.
[0055] For benefit evaluation and continuous optimization, we regularly evaluate resource usage and task completion time, and use the benefit function to calculate resource and time efficiency:
[0056]
[0057] Among them, Rutilization is the effective utilization rate of resources, and Tcompletion is the total time required to complete the project. By comparing the evaluation results, scheduling decision support is provided for subsequent projects.
[0058] For project conflict detection, when assigning tasks, it is necessary to detect whether there are conflicts in resources and time, check whether the assignment of tasks meets the availability of personnel and equipment, and perform conflict resolution if there is a conflict.
[0059] For conflict handling and backtracking, if a conflict is detected, take the following actions:
[0060] Update Task Assignments: Re-adjust assignments to resolve conflicts.
[0061] Perform backtracking check: Use the backtracking algorithm to check completed tasks and pending tasks, and try again to find a feasible allocation solution.
[0062] Log failure and retry: If no viable solution can be found, log the failure and try again.
[0063] Here are the detailed steps to implement the algorithm:
[0064] Data preparation: Create a list of project tasks, including the name of each task, estimated duration, required equipment, and skill requirements.
[0065] Task 1: Test content A (requires 4 pieces of equipment A and 3 personnel)
[0066] Task 2: Test content B (requires 3 devices B, 2 personnel)
[0067] Task 3: Test Content C (No equipment required, 4 personnel)
[0068] Personnel information collection:
[0069] Summarize the skill information of all available personnel to form a personnel skill matrix, recording the test tasks that each person can perform and their proficiency.
[0070] Staff allocation:
[0071] Person 1: Skills allow participation in Task 1 and Task 2
[0072] Person 2: Skills allow participation in Task 1 and Task 2
[0073] Person 3: Skills allow participation in Task 1 and Task 2
[0074] Personnel 4: Skills allow participation in Task 3 and can participate in Task 1 and Task 2 (can be used as a backup personnel)
[0075] Personnel 5: Skills allow participation in Task 3 and can participate in Task 1 and Task 2 (can be used as a backup personnel) 1.3 Equipment status record:
[0076] Organize information on all test equipment within the department, recording the type of each equipment, available quantity, and its current usage status.
[0077] Equipment distribution:
[0078] Device A1: Available
[0079] Device A2: Available
[0080] Equipment A3: Available
[0081] Equipment A4: Available
[0082] Device B1: Available
[0083] Device B2: Available
[0084] Device B3: Available
[0085] Task dependency analysis
[0086] Build the dependency graph:
[0087] Use a directed acyclic graph (DAG) to represent the dependencies between tasks and ensure that tasks are executed in the order of dependencies.
[0088] Dependencies between tasks:
[0089] Task 2 depends on the completion of Task 1.
[0090] Task 3 can be performed in parallel with Task 1 and Task 2.
[0091] Priority calculation
[0092] Key performance indicator setting:
[0093] Assign a preliminary priority to each task based on its deadline, resource requirements, and importance. Define weighting factors to balance these factors.
[0094] Prioritize each task based on deadline, resource requirements, and task importance:
[0095] Task 1 Priority: High (executed first because other tasks depend on it)
[0096] Task 2 priority: Medium (to be executed after Task 1 is completed)
[0097] Task 3 priority: low (can be executed in parallel with tasks 1 and 2)
[0098] Priority evaluation formula:
[0099] P j =w1·T j +w2·R j +w3·D j
[0100] Use weight coefficients for dynamic adjustments to ensure that high-priority tasks are processed in a timely manner.
[0101] Set weights:
[0102] -w1=0.5-w2=0.3-w3=0.2-Calculation priority:
[0103] P1=0.5×T1+0.3×R1+0.2×D1
[0104] P2=0.5×T2+0.3×R2+0.2×D2
[0105] P3=0.5×T3+0.3×R3+0.2×D3
[0106] Execution Scheduling Algorithm
[0107] Select a scheduling strategy:
[0108] Prioritize the shortest job first (SJF) or backtracking algorithm to calculate the scheduling order of tasks.
[0109] Task scheduling execution:
[0110] Sort all pending tasks and check available personnel and equipment one by one: if the conditions are met, assign the task; otherwise, mark it as "pending assignment".
[0111] Task 1 is executed first:
[0112] Allocate 4 devices A (device A1, A2, A3, A4).
[0113] Assign 3 personnel (Person 1, Person 2, Person 3).
[0114] After completing Task 1, immediately proceed to Task 2:
[0115] Allocate 3 devices B (device B1, B2, B3).
[0116] Assign 2 personnel (Person 1, Person 2).
[0117] By using 4 devices A and B, personnel can also be transferred from task 1 to task 2.
[0118] At the same time, Task 3 is started to make use of idle personnel:
[0119] 4 personnel are required (Personnel 4 and 5 can be deployed to Task 3, but attention should be paid to the personnel status).
[0120] Conflict detection and handling
[0121] Conflict Check:
[0122] Monitor the status of people and equipment to ensure that there is no resource contention.
[0123] For example, if there is a usage conflict between equipment A and equipment B, spare personnel can be mobilized to participate.
[0124] Conflict handling:
[0125] In case of equipment or personnel conflicts, take the following actions:
[0126] Reassign the people involved in the task.
[0127] If Task 1 and Task 3 are carried out at the same time and there are insufficient personnel, the order of the tasks can be adjusted.
[0128] Backtracking processing:
[0129] If the conflict cannot be resolved, backtrack to find a feasible scheduling solution: use the backtracking algorithm to test the execution combination of other tasks.
[0130] Dynamic adjustment and monitoring, real-time monitoring of progress:
[0131] Implement a progress monitoring mechanism to track the completion of each task in real time and collect data to evaluate the time and resource utilization of task execution.
[0132] Dynamically adjust the plan: Based on progress, adjust the task schedule when necessary to ensure the project progresses on time.
[0133] Evaluation report generation: Regularly summarize project progress, including data utilization and project completion time.
[0134] Continuous optimization feedback: Provide optimization suggestions for future projects and make corresponding adjustments based on problems encountered in actual implementation.
[0135] Embodiment 2
[0136] A system for executing a multi-project scheduling optimization algorithm based on resource constraints proposed in embodiment 1, characterized in that the system includes:
[0137] Processing unit, used to perform calculations and logical reasoning of each module;
[0138] A data storage unit for storing loaded data, task information and evaluation reports;
[0139] User interface for displaying task progress and resource utilization.
[0140] The user interface includes visualization tools to facilitate users to monitor project progress and resource usage in real time.
[0141] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A multi-project scheduling optimization algorithm based on resource constraints, characterized in that: The algorithm includes: a data preparation module, a task dependency analysis module, a task priority calculation module and a scheduling execution module. The data preparation module is used to load data containing tasks, personnel information and equipment status monitoring. The task dependency analysis module is used to build a dependency graph between tasks to determine the order of task execution. The task priority calculation module is used to assign a priority to each task based on deadline, resource requirements and urgency factors. The scheduling execution module performs task scheduling by adopting the shortest job first algorithm SJF or the backtracking algorithm to ensure that high-priority tasks are executed first.
2. The multi-project scheduling optimization algorithm based on resource constraints according to claim 1 is characterized in that: It includes a real-time monitoring module, which is used to dynamically monitor the progress of tasks and the real-time status of personnel and equipment.
3. The resource-constrained multi-project scheduling optimization algorithm according to claim 1 is characterized in that: It includes a conflict detection and processing module, which is used to monitor the allocation of equipment and personnel during task execution. If a conflict occurs, the task sequence is adjusted or the personnel are redeployed.
4. The multi-project scheduling optimization algorithm based on resource constraints according to claim 1 is characterized in that: It includes a dynamic adjustment scheme module, which optimizes and adjusts the allocation of tasks and personnel in real time according to the task execution status.
5. The multi-project scheduling optimization algorithm based on resource constraints according to claim 1 is characterized in that: It includes an evaluation and optimization module, which generates an evaluation report after the task is completed, including resource usage and project completion time, and uses the resource usage and project completion time as the basis for project optimization.
6. The resource-constrained multi-project scheduling optimization algorithm according to claim 1 is characterized in that: The task allocation priority calculation process is: assign a priority value P to the task j , and is calculated by the following function: P j =w1·T j +w2·R j +w3·D j Among them, T j : The deadline difference of task j, R j : The total amount of resources required for the task, D j : The urgency index of the task, w1,w2,w3: weight coefficients.
7. A system for executing the algorithm according to any one of claims 1 to 6, characterized in that: The system comprises: Processing unit, used to perform calculations and logical reasoning of each module; A data storage unit for storing loaded data, task information and evaluation reports; User interface for displaying task progress and resource utilization.
8. The system according to claim 7, characterized in that The user interface includes visualization tools to facilitate users to monitor project progress and resource usage in real time.
Citation Information
Cited By
Task scheduling method, device and equipment for intelligent industrial remote control scene
CN120087716A
Task scheduling method, device and equipment for intelligent industrial remote control scene
CN120087716B
Graded alarm processing and task scheduling method used in multi-user environment
CN120471393A
Enterprise multi-project collaborative management method and system based on data security analysis
CN120670116A
Acquisition gateway-oriented function module dynamic configuration method and system
CN121967197A