Integrated optimization method for project scheduling and resource allocation considering time-resource trade-off

By building a dual-objective function model and adopting an adaptive large neighborhood search algorithm, the problem of difficult to effectively consider time-resource trade-offs in the existing technology is solved, and efficient optimization of project scheduling and resource allocation is achieved, which significantly improves resource utilization and cost-effectiveness.

CN119515019BActive Publication Date: 2025-04-04WUHAN TEXTILE UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510089073.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-21
Publication Date
2025-04-04
Estimated Expiration
2045-01-21

AI Technical Summary

Technical Problem

When handling multi-objective optimization, large-scale and multi-modal projects, it is difficult to effectively consider the multiple trade-offs of time-resources, resulting in low resource utilization efficiency and difficulty in achieving overall project optimization.

Method used

A project scheduling and resource allocation integration optimization method considering time-resource trade-offs is proposed. By building a dual-objective function model, an adaptive large neighborhood search algorithm based on super-volume contribution rate indicator is adopted to generate the optimal project scheduling plan and resource allocation plan.

Benefits of technology

It significantly improves the effectiveness of project scheduling and resource allocation, and can effectively reduce resource consumption and cost expenditure, shorten construction period, and improve execution efficiency and resource utilization while ensuring the project is completed on schedule.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119515019B_ABST
    Figure CN119515019B_ABST
Patent Text Reader

Abstract

The present invention provides a method for integrated optimization of project scheduling and resource allocation considering time-resource trade-offs, obtains information of the project to be optimized, and proposes basic assumptions based on the information; based on the basic assumptions, constructs a dual-objective function model with the goal of minimizing the project duration and total cost; adopts an adaptive large neighborhood search algorithm based on the hypervolume contribution rate index to solve the dual-objective function model and generate an optimal project scheduling plan and resource allocation plan. The present invention can effectively reduce resource consumption and cost expenditure, shorten the duration, and improve execution efficiency and resource utilization under the premise of ensuring that the project is completed on schedule, thereby improving the effect of project scheduling and resource allocation, and is particularly suitable for complex project management scenarios that pursue cost-effectiveness maximization under limited resource conditions.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of project management and resource optimization configuration, and in particular relates to a project scheduling and resource configuration integrated optimization method considering time-resource trade-off. Background Art

[0002] Traditional project management research usually treats resource allocation and project scheduling as independent issues, but this approach ignores the interdependence between them, resulting in low resource utilization efficiency and difficulty in achieving overall project optimization. In recent years, research on integrated project scheduling and resource allocation has gradually gained attention in technology-intensive projects, especially in the fields of emergency rescue, software development, high-end equipment manufacturing, and large-scale engineering construction. These projects place higher demands on the configuration of high-end technical equipment and technicians. Existing research mostly focuses on single-mode, resource-constrained projects, while actual projects often involve multi-mode execution, temporary resource use, and complex trade-offs between resources and time. In particular, for scarce resources such as high-end technical equipment and technicians, their high cost requires higher economy in the reasonable allocation of temporary resource rental. Although the rental of temporary resources can effectively meet project needs and reduce fixed costs in a short period of time, existing research rarely considers the multiple trade-offs between temporary resource use and time-resources at the same time. The comprehensive optimization of these issues can not only improve resource utilization efficiency, but also optimize construction period and cost control.

[0003] Optimization methods in existing technologies, such as genetic algorithms, simulated annealing algorithms, and particle swarm optimization algorithms, have achieved good results in certain project management problems, but they are still limited in multi-objective optimization and the processing of large-scale and multi-mode projects. These methods usually focus on a single goal (such as minimizing project completion time) while ignoring the comprehensive optimization of multiple factors such as cost, task priority, and resource constraints. In addition, with the increase in project complexity, existing algorithms are insufficient in terms of convergence speed and solution quality, making it difficult to obtain efficient solutions within a reasonable time. In addition, multi-objective optimization research is still insufficient in the comprehensive trade-offs of multiple dimensions such as cost and duration, making it difficult to effectively deal with the balance between multiple goals. Summary of the invention

[0004] The technical problem to be solved by the present invention is to provide a method for integrated optimization of project scheduling and resource allocation considering time-resource trade-off, which can improve the effect of project scheduling and resource allocation.

[0005] The technical solution adopted by the present invention to solve the above technical problems is: a project scheduling and resource allocation integrated optimization method considering time-resource trade-off, comprising the following steps:

[0006] S1. Obtain information about the project to be optimized and propose basic assumptions based on the information;

[0007] S2. Based on the basic assumptions, a dual objective function model is constructed with the goal of minimizing the project duration and total cost;

[0008] S3, using an adaptive large neighborhood search algorithm based on the super volume contribution rate indicator to solve the dual objective function model and generate an optimal project scheduling plan and resource allocation plan;

[0009] The basic assumptions described include:

[0010] Decompose the project to be optimized into a series of activities with tight preceding and following constraint relationships to form a network structure; wherein the network structure is composed of a node set and a direct precedence constraint, the node set represents an activity, including a virtual start activity and an end activity; the direct precedence constraint represents a direct precedence constraint with an end-start relationship and a lag time of 0;

[0011] The resources required for the project to be optimized are divided into dedicated resources and temporary resources. After being allocated, dedicated resources are only used by the current activity until the activity is completed. Temporary resources are used by multiple activities and can be temporarily called when dedicated resources are insufficient. The allocation of resources meets the resource requirements of the activity, and the total amount of allocated resources is greater than or equal to the resource requirements of the activity.

[0012] Each activity has a certain workload and has several execution modes. The product of the duration corresponding to each execution mode and the number of renewable resources required is greater than or equal to the workload of each activity.

[0013] The cost of dedicated resources is calculated based on the entire project cycle, and the cost of temporary resources is calculated based on the actual usage time and resource volume, and the unit cost of temporary resources is higher than the unit cost of dedicated resources.

[0014] According to the above scheme, the basic assumptions also include resource constraints, project deadline constraints, execution mode constraints, activity start constraints and project deadline constraints; among them,

[0015] Resource constraints include: at any time, the total number of dedicated resources and temporary resources meets the resource requirements of the project at that time; and the maximum available resource quantity constraint of dedicated resources;

[0016] The project's predecessor constraints include the predecessor and successor constraints between all activities;

[0017] The execution mode constraints include: only one execution mode is selected for each activity;

[0018] Activity launch constraints include: each activity can only be launched once;

[0019] Project deadline constraints include: the actual completion time is earlier than or equal to the specified deadline.

[0020] According to the above scheme, the maximum available resource amount constraint of the dedicated resource specifically includes:

[0021] Agree on the minimum and maximum number of days that proprietary resources are used in each time period, the minimum and maximum number of days that proprietary resources are used continuously in each time period, and the minimum and maximum number of days that proprietary resources are continuously stopped from being used in each time period.

[0022] According to the above scheme, the S3 specifically includes:

[0023] S31, based on the dual objectives of minimizing the project duration and the total cost, the parameters in the basic assumptions are mixedly encoded, and the population is initialized to ensure that the basic assumptions are met;

[0024] S32, using the serial scheduling generation mechanism to decode, generate a project scheduling plan and a resource allocation plan, and calculate the fitness values ​​of individuals in the population;

[0025] S33, performing fast non-dominated sorting and crowding distance calculation on the population to identify the non-dominated solution set;

[0026] S34, checking the iteration termination condition, and outputting the Pareto front solution if it is satisfied; otherwise, continuing the iteration; the Pareto front solution is the optimal project scheduling plan and resource allocation plan;

[0027] S35, calculating the hypervolume value and hypervolume contribution rate of each non-dominated solution, selecting the non-dominated solution with the highest hypervolume contribution rate as the basic solution, and performing neighborhood movement on the basic solution;

[0028] S36, generating a new neighborhood solution through a destruction-repair operation;

[0029] S37, merging the new neighborhood solution with the non-dominated solution set, and eliminating duplicate solutions;

[0030] S38, calculating the fitness values ​​of the individuals in the population, performing non-dominated sorting and crowding distance calculation, and updating the non-dominated solution set;

[0031] S39. Use the elite retention strategy to generate a new population and proceed to S34.

[0032] According to the above scheme, in S35, if the non-dominated solution with the highest hypervolume contribution rate has been marked, the solution with the second highest contribution rate is selected as the basic solution.

[0033] According to the above scheme, S31 specifically includes:

[0034] The hybrid coding includes a project scheduling plan vector and a resource allocation plan vector; wherein the project scheduling plan vector is composed of an execution mode vector and an activity priority vector;

[0035] In the execution mode vector, the virtual start activity and end activity have only one execution mode, and their corresponding activity duration and resource requirements are both 0. The execution modes of other activities are randomly generated;

[0036] For the activity priority vector, the priorities of the start activity and the end activity are 1 and the total number of project activities, respectively, and the priorities of other activities are randomly generated;

[0037] If there is a priority constraint relationship between two adjacent activities, their positions are swapped to ensure the correctness of the priority order;

[0038] The resource allocation plan vector represents the configuration vector of each resource. First, the time arrangement of a single dedicated resource in a cycle is generated according to the dedicated resource constraints in the dual objective function model. Each dedicated resource has several possible candidate configuration schemes in a single cycle, one of which is randomly selected to finally form a feasible resource configuration vector.

[0039] The population is initialized by combining the three matrices: execution mode vector, activity priority vector and resource allocation plan vector.

[0040] According to the above scheme, the S32 specifically includes:

[0041] S321, determine the sorted activity set and the to-be-sorted alternative set for each stage: according to the activity priority, add the scheduled activities to the sorted activity set, and add other unsorted activities to the to-be-sorted alternative set;

[0042] S322, selecting an activity from the set of candidates to be sorted according to the activity priority, and determining the required time and resources according to the mode;

[0043] S323, check whether the current remaining resources meet the needs of the activity. If not, delay the start time of the activity until there are enough resources. If so, determine its start time and add the activity to the sorted activity set.

[0044] S324. After each activity is scheduled, the number of resources is updated and their occupation and release status is reflected to ensure that the resource information for subsequent scheduling is up to date;

[0045] S325. Calculate the project duration and obtain the project scheduling plan for the entire project cycle until a feasible scheduling plan is generated that covers all activities;

[0046] S326. Develop a resource allocation plan and comprehensively calculate the number of dedicated resource requirements and temporary resource quantities to ensure that the entire resource allocation plan meets the constraints within the project cycle;

[0047] S327. Using the two objective functions of project duration and total cost as fitness functions, calculate the corresponding fitness values.

[0048] According to the above scheme, the S36 specifically includes:

[0049] S361: randomly selecting elements in the execution mode vector from all execution modes except the first and last active execution modes to destroy, and then repairing the destroyed elements using random numbers;

[0050] S362: Randomly select elements in the activity priority vector for destruction and repair, specifically including:

[0051] A portion of the elements are randomly selected from the activity priority vector to form a first vector, and the remaining elements form a second vector;

[0052] Select an element from the first vector in turn, randomly select a position in the second vector, and determine whether the position is feasible according to the feasible condition of the position. If the position is feasible, insert the element selected from the first vector into the position of the second vector; otherwise, continue to select the next position from the second vector until a feasible position is found;

[0053] Repeat the above operation until the first vector is empty, thereby obtaining the updated second vector and its corresponding neighborhood solution;

[0054] S363: randomly selecting an element in the resource configuration plan vector for destruction; then, randomly selecting a candidate solution from the candidate configuration combinations in the configuration plan of a single resource in a single cycle to repair the destroyed element.

[0055] As a second aspect of the present invention, the present invention further provides a project scheduling and resource allocation integrated optimization system considering time-resource trade-off, comprising:

[0056] The initialization module is used to obtain information about the project to be optimized and to propose basic assumptions based on the information;

[0057] A model building module, used for building a dual objective function model with the goal of minimizing the project duration and total cost according to the basic assumptions;

[0058] A model solving module, for solving the dual objective function model by using an adaptive large neighborhood search algorithm based on the super volume contribution rate index, and generating an optimal project scheduling plan and resource allocation plan;

[0059] The basic assumptions described include:

[0060] Decompose the project to be optimized into a series of activities with tight preceding and following constraint relationships to form a network structure; wherein the network structure is composed of a node set and a direct precedence constraint, the node set represents an activity, including a virtual start activity and an end activity; the direct precedence constraint represents a direct precedence constraint with an end-start relationship and a lag time of 0;

[0061] The resources required for the project to be optimized are divided into dedicated resources and temporary resources. After being allocated, dedicated resources are only used by the current activity until the activity is completed. Temporary resources are used by multiple activities and can be temporarily called when dedicated resources are insufficient. The allocation of resources meets the resource requirements of the activity, and the total amount of allocated resources is greater than or equal to the resource requirements of the activity.

[0062] Each activity has a certain workload and has several execution modes. The product of the duration corresponding to each execution mode and the number of renewable resources required is greater than or equal to the workload of each activity.

[0063] The cost of dedicated resources is calculated based on the entire project cycle, and the cost of temporary resources is calculated based on the actual usage time and resource volume, and the unit cost of temporary resources is higher than the unit cost of dedicated resources.

[0064] As a third aspect of the present invention, the present invention further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method when executing the computer program.

[0065] The beneficial effects of the present invention are as follows: by introducing the idea of ​​time-resource trade-off, a dual-objective function model with the goal of minimizing the total cost of the project and shortening the construction period is established, and then an adaptive large neighborhood search algorithm based on the super volume contribution rate index is adopted to solve the dual-objective function model, thereby generating the optimal project scheduling plan and resource allocation plan. The algorithm is based on the adaptive search mechanism of the super volume contribution rate index, which significantly improves the solution efficiency and algorithm performance, enriches the solution method of multi-mode project scheduling and resource allocation problems, and expands the application of the adaptive large neighborhood search algorithm. The project scheduling plan and resource allocation plan finally generated can provide effective support for decision makers. The present invention can effectively reduce resource consumption and cost expenditure, shorten the construction period, and improve execution efficiency and resource utilization under the premise of ensuring that the project is completed on schedule, thereby improving the effect of project scheduling and resource allocation, and is particularly suitable for complex project management scenarios that pursue cost-effectiveness maximization under limited resource conditions. BRIEF DESCRIPTION OF THE DRAWINGS

[0066] Figure 1 It is a method flow chart of an embodiment of the present invention.

[0067] Figure 2 It is a schematic diagram of project scheduling and resource allocation according to an embodiment of the present invention.

[0068] Figure 3 It is a flow chart of an adaptive large-area search algorithm in one embodiment of the present invention.

[0069] Figure 4 is an AON diagram according to an embodiment of the present invention.

[0070] Figure 5 is a schematic diagram of the destruction-repair operation of the execution pattern vector.

[0071] Figure 6 is a destroy-repair operation diagram of the activity priority vector.

[0072] Figure 7 It is a destruction-repair operation diagram of the resource allocation plan vector.

[0073] Figure 8 is a system block diagram of an embodiment of the present invention.

[0074] Fig. 9 It is a flowchart of the non-dominated sorting genetic algorithm of the prior art.

[0075] Fig.10 It is a comparative convergence diagram of project cost of solving example project by ALNS and NSGA-II algorithms.

[0076] Fig.11 It is a time comparison convergence diagram of the ALNS and NSGA-II algorithms for solving the example project.

[0077] Fig.12 It is a box plot that measures the performance indicators of ALNS and NSGA-II algorithms from the perspective of project scale.

[0078] Fig.13 It is a box plot that measures the performance indicators of ALNS and NSGA-II algorithms from the perspective of network complexity.

[0079] Fig.14 It is a box plot that measures the performance indicators of ALNS and NSGA-II algorithms from the perspective of resource availability. DETAILED DESCRIPTION

[0080] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0081] Glossary:

[0082] Proprietary resources: refers to resources that are allocated specifically for a specific project. During the project execution, the resources are used exclusively and are not shared with other projects. Proprietary resources usually include long-term employees, project-specific equipment, etc.

[0083] Temporary resources: refers to resources that are temporarily acquired or used to meet the needs of a specific period of time. The use of these resources is usually short-term, and they are temporarily used when dedicated resources are insufficient, and are released after use. Typical examples include temporary employees, leased equipment, etc.

[0084] The present invention provides a method for integrating optimization of project scheduling and resource allocation considering time-resource trade-off, such as Figure 1 As shown, the following steps are included:

[0085] S1. Obtain information about the project to be optimized and propose basic assumptions based on the information.

[0086] The basic assumptions described include:

[0087] Decompose the project to be optimized into a series of activities with tight preceding and following constraint relationships to form a network structure; wherein the network structure is composed of a node set and a direct precedence constraint, the node set represents an activity, including a virtual start activity and an end activity; the direct precedence constraint represents a direct precedence constraint with an end-start relationship and a lag time of 0;

[0088] The resources required for the project to be optimized are divided into dedicated resources and temporary resources. After being allocated, dedicated resources are only used by the current activity until the activity is completed. Temporary resources are used by multiple activities and can be temporarily called when dedicated resources are insufficient. The allocation of resources meets the resource requirements of the activity, and the total amount of allocated resources is greater than or equal to the resource requirements of the activity.

[0089] Each activity has a certain workload and has several execution modes. The product of the duration corresponding to each execution mode and the number of renewable resources required is greater than or equal to the workload of each activity.

[0090] The cost of dedicated resources is calculated based on the entire project cycle, and the cost of temporary resources is calculated based on the actual usage time and resource volume, and the unit cost of temporary resources is higher than the unit cost of dedicated resources.

[0091] The basic assumptions also include resource constraints, project deadline constraints, execution mode constraints, activity start constraints, and project deadline constraints.

[0092] Resource constraints include: at any time, the total number of dedicated resources and temporary resources meets the resource requirements of the project at that time; and the maximum available resource quantity constraint of dedicated resources;

[0093] The project's predecessor constraints include the predecessor and successor constraints between all activities;

[0094] The execution mode constraints include: only one execution mode is selected for each activity;

[0095] Activity launch constraints include: each activity can only be launched once;

[0096] Project deadline constraints include: the actual completion time is earlier than or equal to the specified deadline.

[0097] The resource constraints also include:

[0098] Agree on the minimum and maximum number of days that proprietary resources are used in each time period, the minimum and maximum number of days that proprietary resources are used continuously in each time period, and the minimum and maximum number of days that proprietary resources are continuously stopped from being used in each time period.

[0099] In this embodiment, the following definitions are first performed:

[0100] Defining collections and index variables: Defining active collections and its index , Activity 1 and Indicates the first and last virtual start and end activities. Activity collection is a pair of activities with a direct precedence relationship in the project network ( i, k )'s collection. A collection of time periods within a time range (index ), By time length is the time period in periodic units, , is the index set of time periods, ,and Correspondingly, it is used to mark each time period and set the scheduling plan (index ) is defined as .

[0101] Define known variables: The project is decomposed into a series of activities with tight precedence and follow-up constraints, forming a network structure .Activity The workload is The project completion deadline is The unit cost of a proprietary resource is defined as , the unit cost of temporary resources is defined as ,and . Proprietary resources per unit period The minimum and maximum usage days are and The minimum and maximum days of continuous use are and , the minimum and maximum consecutive unused days are and .

[0102] Define intermediate variables: There is an execution mode number as an intermediate variable . Activities Mode ( ) The corresponding duration is set to and the number of renewable resources required is , and meet .Activity The earliest and latest start times of and .

[0103] Define decision variables: Whether to execute the mode Variables As a 0-1 decision variable ( ), the activity exist Variable indicating whether the moment has started As a 0-1 variable ( ), will be assigned to the scheduling plan The proprietary resources of Whether the variable is used at the moment As a 0-1 decision variable ( ,use; , stop using). Assign to the scheduling plan The number of dedicated resources is ( 0 and is an integer), the number of temporary resources is ( 0 and is an integer).

[0104] The relevant parameters and their meanings in the present invention are summarized in Table 1.

[0105] Table 1: Related parameters and their meanings

[0106]

[0107] Define the minimum total project cost The objective function .

[0108] The total cost It consists of two parts: dedicated resource cost and temporary resource cost, which can be expressed as: .in, is the unit cost of the proprietary resource, is the number of dedicated resources, is the unit cost of temporary resources, is the number of temporary resources.

[0109] Define the minimum total project duration The objective function is .in Indicates the project duration.

[0110] Define resource constraints as , ensuring that at any time , the total number of dedicated resources and temporary resources meets the resource needs of the project at any given time. For the moment Whether to use proprietary resources The decision variables, For proprietary resources The amount used at any time, For the moment The number of temporary resources called, For activities In execution mode The amount of resources required, Whether to select the execution mode The decision variables, For activities Is it at the time The starting decision variable. , ensuring that dedicated resources meet the constraints on the available resources of dedicated resources.

[0111] Define the immediate precedence constraint relationship between activities as ,in , ensuring that each activity cannot start before all its predecessor activities are completed. and Respectively for activities The earliest and latest start times, For activities In mode The duration of the following.

[0112] Define the execution mode constraints as , making sure that only one execution mode is selected for each activity.

[0113] Define the activity start constraints as , ensuring that each activity can only be started once.

[0114] Define the project completion time constraint as , ensuring that the actual completion time of the project is no later than the expected deadline .

[0115] Define the minimum number of days that dedicated resources can be used in each time period as ,in, The minimum number of days that dedicated resources are used in each time period. A collection of time periods.

[0116] Define the maximum number of days that dedicated resources can be used in each time period as ,in, The maximum number of days that a dedicated resource can be used in each time period.

[0117] Define the minimum number of days for continuous use of dedicated resources as ,in, The minimum number of consecutive days for exclusive resource use.

[0118] Define the maximum number of days that dedicated resources can be used continuously as ,in, The maximum number of consecutive days that a dedicated resource can be used.

[0119] Define the minimum number of days that dedicated resources can be continuously unused as ,in, The minimum number of consecutive days that a dedicated resource can be unused.

[0120] Define the maximum number of days that dedicated resources can be unused continuously as ,in, The maximum number of consecutive days that dedicated resources can be unused.

[0121] S2. Based on the basic assumptions, a dual-objective function model is constructed with the goal of minimizing the project duration and total cost. Specifically, the above constraints are applied to the objective function of minimizing the total project cost and the duration constraint function to obtain a dual-objective scheduling and resource allocation optimization model with the total project cost and duration as the optimization objects.

[0122] S3. Adopting an adaptive large neighborhood search algorithm based on the super volume contribution rate index, the dual objective function model is solved to generate the optimal project scheduling plan and resource allocation plan, such as Figure 2 The flowchart of the adaptive large neighborhood search algorithm is shown in Figure 3,include:

[0123] S31. Based on the dual objectives of minimizing the project duration and total cost, the parameters in the basic assumptions are mixed encoded and the population is initialized to ensure that the basic assumptions are met.

[0124] The hybrid coding includes a project scheduling plan vector and a resource allocation plan vector; wherein the project scheduling plan vector is composed of an execution mode vector and an activity priority vector. In the execution mode vector, there is only one execution mode for the start activity and the end activity, and the corresponding activity duration and resource requirements are both 0, and the execution modes of other activities are randomly generated. For the activity priority vector, the priorities of the start activity and the end activity are set to 1 and the total number of activities respectively, and the other priorities of the activities are randomly generated. If there is a priority constraint relationship between two adjacent activities, their positions are exchanged to ensure the correctness of the priority order. The resource allocation plan vector represents the configuration vector of each resource; first, the time arrangement of a single dedicated resource in a cycle is generated according to the dedicated resource constraint in the dual objective function model; each dedicated resource has several possible candidate configuration schemes in a single cycle, one of which is randomly selected to finally form a feasible resource configuration vector. By combining the three matrices of the execution mode vector, the activity priority vector and the resource allocation plan vector, the population is initialized.

[0125] Specifically, the hybrid coding in this embodiment consists of two parts: project scheduling plan and resource allocation plans Among them, the project scheduling plan S is composed of the execution mode vector and the activity priority vector Execution mode vector In the project, the start and end activities have only one execution mode, and their corresponding activity duration and resource requirements are both 0. The execution modes of other activities are randomly generated. , the priorities of the start and end activities are 1 and , the priority of other activities is set by If there is a priority constraint relationship between two adjacent activities, their positions need to be swapped to ensure the correctness of the priority order.

[0126] Resource Allocation Plan Represents the configuration vector of each dedicated resource. First, the configuration arrangement of a single dedicated resource is generated according to the dedicated resource time allocation constraint in the model. Taking a specific example, the network diagram is shown in Figure 4 , the corresponding mode combinations are shown in Table 2.

[0127] Table 2: Figure 4Corresponding activity mode

[0128]

[0129] The project completion deadline is 7( ), with a cycle of 1. During these 7 days ( ), each dedicated resource has a maximum and minimum usage of 5 days ( ), and make sure to stop using it for at least 2 days ( =2), up to 5 consecutive days ( =5), the maximum and minimum continuous stop use days are 2 days ( =2) and 1 day ( =1), according to the usage time constraint of dedicated resources, 10 candidate configuration combination schemes are generated for a single resource in a single cycle, see Table 3.

[0130] Table 3: Candidate configuration combinations for a single proprietary resource in a single cycle

[0131]

[0132] One of the 10 candidate resource allocation combination schemes is randomly selected to finally form a feasible resource allocation plan Z. The population initialization process is completed by combining the three matrices X, Y and Z. The embodiment code is shown in Table 4.

[0133] Table 4: Example codes

[0134]

[0135] S32, using the serial scheduling generation mechanism to decode, generate project scheduling plans and resource allocation plans, and calculate the fitness values ​​of individuals in the population; in the decoding stage, a serial scheduling generation mechanism with priority is used ( ) to generate project scheduling and resource allocation plans. Among them, the process of S32 is serial scheduling, and the activities are serially determined to start time.

[0136] The S32 specifically includes:

[0137] S321. Determine the sorted activity set for each stage and the candidate set to be sorted : According to the activity priority, the scheduled activities are added to the sorted activity set, and other unsorted activities are included in the to-be-sorted alternative set.

[0138] S322, according to the activity priority, from the candidate set to be sorted Select an activity according to the pattern vector The pattern in determines the time required for the activity and the resources required .

[0139] S323. Check whether the current remaining resources meet the needs of the activity. If not, delay the start time of the activity until there are sufficient resources. If so, determine its start time and add the activity to the sorted activity set.

[0140] S324: After each activity is scheduled, update the number of resources and reflect their occupation and release status to ensure that the resource information for subsequent scheduling is up to date. The number of resources includes the amount of resources that have been configured and the amount of resources that remain to be configured.

[0141] S325, repeat the iteration until the activity of the tail node is completed. If the completion time of the activity of the tail node does not exceed the deadline for the project completion, the project duration is calculated until a feasible scheduling plan is generated, covering all activities, and the project scheduling plan for the entire period is output, see the project scheduling plan of the embodiment in Table 5, otherwise it is marked as an illegal solution and the search continues.

[0142] Table 5: Example decoding

[0143]

[0144] S326. Develop a resource allocation plan and comprehensively calculate the number of dedicated resource requirements and temporary resource quantities within the project cycle to ensure that the entire resource allocation plan meets the constraints within the project cycle.

[0145] Determine the resource demand of the project based on the generated project scheduling plan, and obtain the temporary resource quantity by the difference between the resource demand and the dedicated resource quantity. Check whether the resource supply of the resource allocation plan meets the resource demand. If it does, output the resource allocation plan, see the resource allocation plan of the embodiment in Table 5, otherwise continue to look for a feasible resource allocation plan. It is worth noting that the resource allocation combination of a single resource in a single cycle in Table 3 meets the dedicated resource constraint in a single cycle, but when multiple cycles are combined, adjacent cycles may not meet the dedicated resource time constraint. The penalty cost method is used to eliminate resource allocation plans that do not meet the constraints.

[0146] According to the resource allocation method with penalty cost in the decoding stage, a resource allocation plan is obtained to allocate the dedicated resources and temporary resources. The resource allocation plan obtained by decoding the embodiment in Table 5 represents the daily usage of a resource in a cycle, 1 means use, 0 means no use.

[0147] S327, taking the two objective functions of project duration and total cost as fitness functions, calculate the corresponding fitness values. This step is used to evaluate the effectiveness of project scheduling and resource allocation plans in multi-objective optimization, and does not provide a basis for further improvement.

[0148] S33. Perform fast non-dominated sorting and crowding distance calculation on the population to identify the non-dominated solution set.

[0149] A quick sort method is used to perform non-dominated sorting, using the symbol " ” indicates the dominant relationship between solutions, such as “A B" means that solution A can dominate solution B. In this model, there are two objective functions, F1 (minimization of duration) and F2 (minimization of cost). If there are two different solution vectors A and B, the following situations may occur:

[0150] (1) When { and ,or{ and When A B;

[0151] (2) When { and ,or{ and When A B;

[0152] (3) When { and ,or{ and ,or{ and When , it means that there is no dominance relationship between A and B.

[0153] After the non-dominated sorting of the individuals in the population, the crowding distance of the individuals in each non-dominated sorting is further calculated, and the crowding distance sorting is performed. On Target The sorting on , and its crowding distance is calculated as follows:

[0154]

[0155] in, and is the goal The maximum and minimum values ​​on and is the goal The previous individual of the previous individual and the next individual target value.

[0156] S34, check the iteration termination condition, if it is satisfied, output the Pareto front solution; otherwise, continue the iteration; the Pareto front solution is the optimal project scheduling plan and resource allocation plan.

[0157] S35. Calculate the hypervolume value of each non-dominated solution and excess volume contribution , select the non-dominated solution with the highest hypervolume contribution rate as the basic solution and perform domain shift on it. If the non-dominated solution with the highest hypervolume contribution rate has been marked, select the solution with the second highest contribution rate as the basic solution.

[0158] The calculation formula ,in, Represents the non-dominated solution set Medium Solution With reference point The space between them forms a hypervolume, that is, and reference point The lines between them serve as diagonals to construct the volume of the hypercube.

[0159] Calculation formula for excess volume contribution ,in, and The objective functions are and The upper bound of and Yes target value.

[0160] S36, generating new neighborhood solutions for the activity pattern vector, the activity priority vector and the resource allocation plan vector respectively through a destroy-repair operation.

[0161] Execution Mode Vector The destruction operation is as follows: From the execution mode vector Randomly select n* elements are destroyed, but the patterns of the first and last activities are not included. Then, the random numbers are used to repair the patterns of the corresponding activities. For example, in one embodiment, the modular execution pattern vector is ={1,2,3,1,3,2,1}, and , then randomly select 2 activity modes (⌊ ⌋ = ⌊ 7 × 0.3 ⌋ =2 ) to destroy and repair. The mode of activity 3 changes from 3 to 2, and the mode of activity 4 changes from 1 to 2. The modes of other activities remain unchanged, forming a new execution mode vector, such as Figure 5 shown.

[0162] Activity Priority Vector The destruction operation is as follows: From the activity priority vector Random selection Elements make up a vector , the remaining activities are stored in the vector Next, we will perform the repair operation: from vector Select each element , in the vector Randomly select a position in and check whether it is feasible. The condition for a position to be feasible is that all activities before it must be Precursor activities (or No direct predecessor constraint), all activities after it must be successors of j (or have no direct successor constraints with j). If the position is feasible, then the element Insert into Otherwise, continue to select the next position until a feasible position is found. Repeat this process until Is empty, so as to get the updated and its corresponding neighborhood solution For example, in one embodiment, assuming that the activity priority vector is .from Extract 2 elements from to form a vector , the remaining elements form the vector ,like Figure 6 (a) in . The repair operation is as follows: for the vector The first element in 4, in the vector There are 4 possible positions for insertion: between 1 and 2, between 2 and 3, between 3 and 5, or between 5 and 7. Randomly select position 4 (between 5 and 7) and check its predecessor and successor constraints. If there is no constraint conflict, the position is feasible, and element 4 is inserted into this position. The updated vector for ,like Figure 6 (b) in the figure. For the vector The second element 6 in There are 5 possible insertion positions in . We randomly select positions 1, 2, and 3, but find that they are not feasible. We then select position 4, which is feasible, so we insert element 6 into position 4. The updated vector for ,like Figure 6 (c) in Figure 1. This process shows how to obtain the updated activity priority vector and its corresponding neighborhood solutions.

[0163] Resource allocation plan vector Destruction - The operation is as follows: From the resource allocation plan vector Random selection Elements are destroyed. The destroyed elements will be repaired by randomly selecting one of the 10 candidate resource configuration combinations listed in Table 3 for dedicated resources. For example, in the tenth candidate configuration combination (flexible rotation), if a dedicated resource was originally scheduled to be used, there is a 50% chance that this resource will not be used in the entire next cycle, that is, it will not perform any shift tasks. In this case, the corresponding temporary resources will be called to complete the project activities, which may reduce the total cost of the entire cycle. There is another 50% chance that the dedicated resource will be rearranged during this cycle and implemented according to one of the candidate resource configuration combinations No. 1 to 9 in Table 3.

[0164] For example, in one embodiment, Figure 7 As shown, the resource allocation plan vector A destroy-repair operation was performed. In this process, we randomly selected 3 elements for destruction and subsequent repair. In the second cycle, the plan of dedicated resource 2 was changed from 3 to 7; the plan of dedicated resource 4 in the first cycle was changed from 6 to 8; the plan of dedicated resource 6 in the first cycle was changed from 3 to 10. For dedicated resource 6, if it is scheduled to use the tenth candidate schedule in the first cycle, there is a 50% probability that the candidate scheme of the entire resource allocation plan will be changed to the tenth candidate resource allocation combination scheme.

[0165] S37, merging the new neighborhood solution with the non-dominated solution set, and eliminating duplicate solutions.

[0166] S38. Execute non-dominated sorting and crowding distance calculation, and update the non-dominated solution set.

[0167] S39. Use the elite retention strategy to generate a new population and proceed to S34.

[0168] The elite retention strategy is a key technology in genetic algorithms. Its core goal is to seamlessly transfer the optimal solution in the current generation to the next generation during the iteration process. The implementation steps of this strategy can be summarized as follows:

[0169] First, merge and filter. After performing crossover and mutation operations, merge the parent and child generations. First, remove those individuals with the same decoding scheme, because simply eliminating the same individuals is not enough. Since there may be a large number of individuals in the population that are different, but the decoded project scheduling plans and resource allocation plans are the same, this limits the diversity of the population. To solve this problem, we further merge and delete individuals with the same project scheduling and resource allocation plans after decoding, so as to improve the diversity and quality of the solution.

[0170] Then, sorting and elite selection. The screened population is sorted according to non-dominated sorting and crowding distance. If the number of non-dominated solutions exceeds the population size ( ), the excess individuals are stored in an external archive set for unified processing after the iteration. When implementing the elite retention strategy, the highest non-dominated level is first identified, and then each level is processed step by step to build the next generation. If the number of individuals in a certain level is within the population limit, these individuals will be directly retained to the next generation. If the limit is exceeded, individuals are selected from this level according to the crowding distance to fill the vacancies, ensuring that those individuals with higher non-dominated levels and larger crowding distances are preferentially selected, which helps to maintain the diversity of the population.

[0171] Finally, the population is updated. The number of non-dominated solutions in the newly generated population is evaluated. If the number of non-dominated solutions in the next generation population is less than half of the A quarter of the individuals are added to enrich the population. This step ensures that the new population can maintain the diversity of high-quality solutions, thereby improving the efficiency and robustness of the algorithm when solving multi-objective optimization problems.

[0172] According to the above steps of the adaptive large neighborhood search algorithm based on the super volume contribution rate indicator, the optimal project scheduling plan and resource allocation plan are obtained.

[0173] As a second aspect of the present invention, the present invention also provides a project scheduling and resource allocation integrated optimization system considering time-resource trade-off, such as Figure 8 As shown, including:

[0174] The initialization module is used to obtain information about the project to be optimized and to propose basic assumptions based on the information. The specific contents of the basic assumptions have been described in detail in the above method and will not be repeated here.

[0175] The model building module is used to build a dual objective function model with the goal of minimizing the project duration and total cost based on the basic assumptions. The specific content of the model has been detailed in the above method and will not be repeated here.

[0176] The model solving module is used to solve the dual objective function model by using an adaptive large neighborhood search algorithm based on the super volume contribution rate indicator to generate the optimal project scheduling plan and resource allocation plan. The specific solution steps have been detailed in the above method and will not be repeated here.

[0177] In order to verify the efficiency and effect of the proposed adaptive large neighborhood search algorithm (ALNS), in addition, since the integrated optimization problem of project scheduling and resource allocation with multi-objective time-resource trade-off is a new research field, there is currently no ready-made algorithm available for solution. Therefore, the classic non-dominated sorting genetic algorithm (NSGA-II) is compared and analyzed with ALNS.

[0178] The flowchart of the non-dominated sorting genetic algorithm (NSGA-II) is shown in Fig. 9 , the basic steps include:

[0179] Step 1: Design the code according to the problem characteristics and initialize the population;

[0180] Step 2: Use the Serial Scheduling Generation Scheme with priority ) Generate a scheduling plan, decode it, and calculate the fitness value of the individuals in the population;

[0181] Step 3: Use the quick sort method to perform non-dominated sorting on the population and calculate the crowding distance;

[0182] Step 4: Determine whether the termination condition is met: If so, terminate the iteration and output the Pareto front solution; if not, go to step 5 to continue iterating.

[0183] Step 5: Use binary tournament to select suitable parents;

[0184] Step 6: Use adaptive crossover and mutation probability to perform crossover and mutation operations;

[0185] Active Mode Vector and resource allocation vector Probability of crossover: First, generate a random number and compare it with the crossover probability Compare to determine whether to perform a crossover operation. If the random number is greater than or equal to , the parent gene is directly assigned to the offspring; otherwise, a crossover operation is performed. Generate a length of A random binary matrix with each element being either 0 or 1. For each position of , if the corresponding random matrix element is 1, the elements of the two parents at that position are swapped to obtain two children. Similarly, for the resource configuration vector The same method is used to generate a A random binary matrix. If If the random matrix element corresponding to a certain position of is 1, then the elements of the two parents at that position are swapped to obtain two offspring.

[0186] Activity Priority Vector Two-point crossover: First, generate a random number and compare it with the crossover probability Compare to determine whether to perform a crossover operation. If the random number is greater than or equal to , then the parent gene is directly assigned to the offspring; otherwise, a crossover operation is performed, and two crossover points are selected. The crossover points cannot be the first or last position, nor can they be continuous. For offspring 1, first copy the elements before crossover point 1 (including crossover point 1) in parent 1 to offspring 1. Then copy the elements of parent 2 that are not in offspring 1 to offspring 1 in sequence until crossover point 2. Finally, copy the elements that have not appeared in parent 1 to offspring 1 after crossover point 2 in sequence. For offspring 2, the same crossover operation as offspring 1 is used. First, copy the elements before crossover point 1 (including crossover point 1) in parent 2 to offspring 2. Then copy the elements of parent 1 that are not in offspring 2 to offspring 2 in sequence until crossover point 2. Finally, copy the elements that have not appeared in parent 2 to offspring 2 in sequence. Through this two-point crossover method, two new offspring can be obtained.

[0187] Step 7: An elite retention strategy considering population diversity: merge the parent and child generations, remove individuals with the same decoding plan, recalculate the non-dominated sorting and crowding distance, use the elite retention strategy to get a new population, and then go to step 4.

[0188] The technical solution of the present invention is described below with specific simulation experiments:

[0189] (1) Experimental design:

[0190] This example uses the ALNS and NSGA-II algorithms to conduct multiple simulation experiments under different project parameter settings. The experiment uses the problem set of Tian et al. (2022) and varies the project size ( )、Network complexity( ) and resource availability ( ) to distinguish project features. The problem set has 27 different sub-problem sets, each set contains 100 implementation examples, and a total of 2700 implementation examples. The experiment sets a fixed running time (180 seconds) and population size (20 times the project size). The experimental parameters are shown in Table 6.

[0191] Table 6: Experimental parameter settings

[0192]

[0193] (2) Multi-objective algorithm performance evaluation indicators

[0194] Commonly used multi-objective algorithm performance evaluation indicators are used, such as the number of non-dominated solutions ( ), hypervolume ( ),spacing( )、Error rate( )、Generational distance( ) and reverse generation distance ( ) to comprehensively evaluate the convergence, diversity, and distribution of solutions of the algorithm.

[0195] The number of non-dominated solutions (abbreviated as ): refers to the number of solutions found and retained by the algorithm that do not dominate each other, which is used to measure the diversity and coverage of the solutions generated by the algorithm. Larger Values ​​usually indicate that the algorithm is able to find more diverse solutions and The frontier provides a wider range of choices and opportunities for trade-offs.

[0196] Hypervolume ): The volume occupied by the solution set generated by the measurement algorithm in the target space. The larger the value, the better the overall performance of the algorithm, reflecting the diversity and distribution of the solution set. The specific calculation method is as follows: ,in, Represents the non-dominated solution set Medium Solution With reference point The space between them forms a hypervolume, that is, and reference point The lines between them serve as diagonals to construct the volume of the hypercube.

[0197] interval( ): Measures the average distance between adjacent solutions in the generated non-dominated solution set. We hope to find a non-dominated solution set that is both diverse and uniformly distributed. The index can evaluate the distribution of each solution in the solution set. The smaller the Spacing value, the more uniform the distribution of the solution set. The specific calculation formula is as follows: ,in, Indicates Solution to Solution Set The minimum distance to other solutions in Indicates all The mean of .

[0198] Error Ratio The error rate is a measure of the proportion of solutions in the resulting Pareto front that are not part of the true Pareto front. This can provide an indication of how well the algorithm approximates the true Pareto front. ) is defined as ,in Is a collection Also in the collection The number of solutions in , Is a collection However, in practice, since the true Pareto front is usually unknown, a reference Pareto front (generated from multiple runs or all known non-dominated solutions generated by the algorithm) is used instead. .

[0199] Generational Distance ): Measures the average distance between the algorithm solution set and the reference Pareto front. It quantifies the convergence of the solution set. The smaller the value, the better the convergence of the algorithm, and the closer the solution set is to the Pareto frontier. The specific calculation method is as follows: ,in, is the set of solutions found by the algorithm, is a set of reference points sampled from the Pareto front, and Represents the solution set Points in and reference set Points in The Euclidean distance between .

[0200] Inverted Generational Distance IGD: Measures the average distance from the optimal solution of the true Pareto front in the reference set to the nearest approximate set solution. A lower IGD value indicates that the solution set is better close to the true Pareto front and has better coverage. The calculation formula is: ,in, is the reference set of optimal solutions of the true Pareto front, is the set of solutions obtained by the algorithm, Yes and The distance between.

[0201] (3) Analysis of experimental results of a single implementation example

[0202] Taking the 4th problem in the problem set 10-0.25-10 of Tian et al. (2022) as an example, the ALNS and NSGA-II algorithms are run for 180 seconds, and the performance indicators and the two endpoint values ​​are extracted as shown in Table 7.

[0203] Table 7: Comparison of the running performance and endpoint values ​​of the fourth example in the sub-problem set 10-0.25-10 of Tian et al. (2022)

[0204]

[0205] It is not difficult to see that ALNS These five performance indicators performed well. The cost and duration of ALNS at endpoint 1 and the cost at endpoint 2 are better than those of NSGA-II. In general, ALNS performs better than NSGA-II. The two algorithms are run on the embodiment for 180 seconds. Since the embodiment is small in scale, each of them has more than 800 iterations. The iteration graphs of the two algorithms on the objective function value are drawn from 800 iterations. Fig.10 and Fig.11 As shown. Fig.10 and Fig.11 It is not difficult to see that both algorithms can quickly converge to better values ​​in the first 200 generations.

[0206] (4) Analysis of algorithm performance indicators obtained from large-scale implementation example experiments

[0207] The mean calculation results of the algorithm performance indicators are presented through box plots and analyzed from four perspectives: project size, project network complexity, the impact of resource availability, and a comparison of the two algorithms.

[0208] Fig.12 It shows that the ) Six box plots comparing the performance of ALNS and NSGA-II algorithms, involving indicators including and The results show that as the number of activities increases, ALNS generally outperforms NSGA-II in all indicators. ALNS continues to produce more non-dominated solutions (higher ), and maintain more consistent spacing with fewer outliers. Although at larger problem sizes, The variability is large, but the lower The value indicates that its solution is closer to the true Pareto frontier. The value is slightly higher, indicating that the solution set distribution is not uniform, but the target space covered by the two algorithms is similar ( Overall, ALNS outperforms NSGA-II in both performance and robustness as the problem size increases.

[0209] Fig.13 It shows that the ) under the condition of ALNS and NSGA-II, the performance of ALNS and NSGA-II is better than that of NSGA-II in various indicators ( and ) on the performance comparison. The results show that as the network complexity increases, ALNS generally outperforms NSGA-II in multiple indicators. ALNS continues to produce more non-dominated solutions (higher ), and maintain more consistent spacing with fewer outliers. , but they cover a similar degree of target space. For both of them, ALNS The median and mean are slightly lower, and the two algorithms However, the The value is slightly higher, which indicates that the solution set of ALNS is not distributed uniformly enough compared with NSGA-II.

[0210] Fig.14 shows the different resource availability ( ) under different indicators ( and ). The results show that as the amount of available resources increases, ALNS outperforms NSGA-II in generating dominated solutions, which is reflected in the higher Although as the amount of available resources increases, the hypervolume ( ) are both reduced, but the two algorithms Both algorithms show similar performance in terms of coverage of the target space. The solution gap between them is reduced, but ALNS shows higher consistency and fewer outliers. All increased, but ALNS The median and mean are slightly lower. No significant changes, but ALNS The higher value indicates that the solution set of ALNS is not distributed uniformly compared with NSGA-II.

[0211] (5) Analysis of endpoint values ​​of target function extracted from scaled implementation experiment

[0212] Table 8 shows the objective function values ​​of the two endpoints of the two optimization algorithms LVNS and NSGA-II in different problem instances. These instances are calculated by parameter and Each algorithm has two objectives and Performance on the test was assessed and measured at two different endpoints.

[0213] Table 8: Comparison of endpoint values ​​solved by LVNS and NSGA-II algorithms

[0214]

[0215] (1) Performance overview: The results show that LVNS The performance on the targets is generally better than that of NSGA-II. Lower values ​​indicate better performance, and LVNS is consistently able to achieve lower This indicates that LVNS performs better in optimizing the primary objective. Objective,LVNS generally outperforms or at least performs on par with NSGA-II. However, in some instances, NSGA-II exhibits slightly better performance, indicating that although LVNS is generally more reliable, NSGA-II still has advantages in certain scenarios.

[0216] (2) Endpoint analysis: The performance of the two algorithms at their respective endpoints is basically the same, but there is some fluctuation. This fluctuation reflects the sensitivity of the solution quality to the initial conditions or specific problem characteristics. Nevertheless, the overall trend shows that LVNS continues to maintain its advantage in performance.

[0217] (3) Problem scale and parameter impact: As the problem scale increases The values ​​of both objectives generally increase with increasing , reflecting the increased complexity of larger projects. and The impact on performance is relatively small, but still not negligible. Although the larger problem instances pose challenges to both algorithms, LVNS shows greater resilience and adaptability.

[0218] The LVNS algorithm performs well in the tested optimization problems, especially in The robustness and stability of LVNS under various problem sizes and parameter conditions make it a more reliable choice. Although NSGA-II has poor performance in some specific scenarios (e.g. The performance of the endpoint 1) is slightly better, but its variability and consistency are poor under larger problem scales, which reduces its overall reliability. Therefore, it is shown that the LVNS algorithm of the present invention has better solution ability than the NSGA-II algorithm in the research problem of the present invention.

[0219] As a third aspect of the present invention, the present invention also provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the integrated optimization method for project scheduling and resource allocation considering the time-resource trade-off are implemented.

[0220] In summary, the present invention introduces the idea of ​​time-resource tradeoff into the integrated optimization of project scheduling and resource allocation problems, fully considers the flexibility of temporary resources and the potential of project duration compression, and constructs a comprehensive optimization model of project scheduling and resource allocation based on discrete time-resource tradeoff by taking project cost and duration as dual goals. This model can effectively solve project scheduling and resource allocation problems in complex, multi-mode, and resource-deficient scenarios, achieve the best balance between time-resource and time-cost, make resource allocation more reasonable, and thus significantly improve cost-effectiveness and shorten project duration.

[0221] The present invention designs an adaptive large neighborhood search algorithm (ALNS) and introduces an adaptive search mechanism based on the hypervolume contribution rate indicator. The algorithm performance is further improved by constructing three destruction-repair neighborhood structures: activity mode, activity priority, and resource allocation plan. The adaptive large neighborhood search algorithm is used to solve the model and generate the optimal project scheduling plan and resource allocation plan. The example compared with the classic non-dominated sorting genetic algorithm (NSGA-II) shows that the proposed adaptive large neighborhood search algorithm can achieve efficient project scheduling and resource allocation in complex project management, and significantly improve project execution efficiency and resource utilization.

[0222] The present invention has wide applicability and can be widely applied in the field of multi-mode resource-constrained project management that requires efficient scheduling and configuration optimization, such as the configuration of proprietary equipment or high-end technicians in emergency rescue projects, the configuration of high-end technicians in software development projects, the configuration of high-precision equipment or high-end technicians in high-end equipment projects, the configuration of advanced equipment or high-end technicians in large-scale construction projects, etc.

[0223] It should be understood that those skilled in the art can make improvements or changes based on the above description, and all these improvements and changes should fall within the scope of protection of the appended claims of the present invention.

Claims

1. A method for integrated optimization of project scheduling and resource allocation considering time-resource trade-off, characterized in that: The following steps are involved: S1. Obtain information about the project to be optimized and propose basic assumptions based on the information; S2. Based on the basic assumptions, a dual objective function model is constructed with the goal of minimizing the project duration and total cost; S3, using an adaptive large neighborhood search algorithm based on the super volume contribution rate indicator to solve the dual objective function model and generate an optimal project scheduling plan and resource allocation plan; The basic assumptions described include: Decompose the project to be optimized into a series of activities with tight preceding and following constraint relationships to form a network structure; wherein the network structure is composed of a node set and a direct precedence constraint, the node set represents an activity, including a virtual start activity and an end activity; the direct precedence constraint represents a direct precedence constraint with an end-start relationship and a lag time of 0; The resources required for the project to be optimized are divided into dedicated resources and temporary resources. After being allocated, dedicated resources are only used by the current activity until the activity is completed. Temporary resources are used by multiple activities and can be temporarily called when dedicated resources are insufficient. The allocation of resources meets the resource requirements of the activity, and the total amount of allocated resources is greater than or equal to the resource requirements of the activity. Each activity has a certain workload and has several execution modes. The product of the duration corresponding to each execution mode and the number of renewable resources required is greater than or equal to the workload of each activity. The cost of dedicated resources is calculated based on the entire project cycle, and the cost of temporary resources is calculated based on the actual usage time and resource volume. The unit cost of temporary resources is higher than the unit cost of dedicated resources. The S3 specifically includes: S31, based on the dual objectives of minimizing the project duration and the total cost, the parameters in the basic assumptions are mixedly encoded, and the population is initialized to ensure that the basic assumptions are met; S32, using the serial scheduling generation mechanism to decode, generate a project scheduling plan and a resource allocation plan, and calculate the fitness values ​​of individuals in the population; S33, performing fast non-dominated sorting and crowding distance calculation on the population to identify the non-dominated solution set; S34, checking the iteration termination condition, and outputting the Pareto front solution if it is satisfied; otherwise, continuing the iteration; the Pareto front solution is the optimal project scheduling plan and resource allocation plan; S35, calculating the hypervolume value and hypervolume contribution rate of each non-dominated solution, selecting the non-dominated solution with the highest hypervolume contribution rate as the basic solution, and performing neighborhood movement on the basic solution; S36, generating a new neighborhood solution through a destruction-repair operation; S37, merging the new neighborhood solution with the non-dominated solution set, and eliminating duplicate solutions; S38, calculating the fitness values ​​of the individuals in the population, performing non-dominated sorting and crowding distance calculation, and updating the non-dominated solution set; S39. Use the elite retention strategy to generate a new population and proceed to S34.

2. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 1 is characterized in that: The basic assumptions also include resource constraints, project deadline constraints, execution mode constraints, activity start constraints and project deadline constraints; Resource constraints include: at any time, the total number of dedicated resources and temporary resources meets the resource requirements of the project at that time; and the maximum available resource quantity constraint of dedicated resources; The project's predecessor constraints include the predecessor and successor constraints between all activities; The execution mode constraints include: only one execution mode is selected for each activity; Activity launch constraints include: each activity can only be launched once; Project deadline constraints include: the actual completion time is earlier than or equal to the specified deadline.

3. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 2 is characterized in that: The above-mentioned maximum available resource amount constraint of dedicated resources specifically includes: Agree on the minimum and maximum number of days that proprietary resources are used in each time period, the minimum and maximum number of days that proprietary resources are used continuously in each time period, and the minimum and maximum number of days that proprietary resources are continuously stopped from being used in each time period.

4. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 1 is characterized in that: In the above S35, if the non-dominated solution with the highest hypervolume contribution rate has been marked, the solution with the second highest contribution rate is selected as the basic solution.

5. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 1 is characterized in that: The S31 specifically includes: The hybrid coding includes a project scheduling plan vector and a resource allocation plan vector; wherein the project scheduling plan vector is composed of an execution mode vector and an activity priority vector; In the execution mode vector, the virtual start activity and end activity have only one execution mode, and their corresponding activity duration and resource requirements are both 0. The execution modes of other activities are randomly generated; For the activity priority vector, the priorities of the start activity and the end activity are 1 and the number of project activities respectively, and the priorities of other activities are randomly generated; If there is a priority constraint relationship between two adjacent activities, their positions are swapped to ensure the correctness of the priority order; The resource allocation plan vector represents the configuration vector of each resource. First, the time arrangement of a single dedicated resource in a cycle is generated according to the dedicated resource constraints in the dual objective function model. Each dedicated resource has several possible candidate configuration schemes in a single cycle, one of which is randomly selected to finally form a feasible resource configuration vector. The population is initialized by combining the three matrices: execution mode vector, activity priority vector and resource allocation plan vector.

6. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 1 is characterized in that: The S32 specifically includes: S321, determine the sorted activity set and the to-be-sorted alternative set for each stage: according to the activity priority, add the scheduled activities to the sorted activity set, and add other unsorted activities to the to-be-sorted alternative set; S322, selecting an activity from the set of candidates to be sorted according to the activity priority, and determining the required time and resources according to the mode; S323, check whether the current remaining resources meet the needs of the activity. If not, delay the start time of the activity until there are enough resources. If so, determine its start time and add the activity to the sorted activity set. S324. After each activity is scheduled, the number of resources is updated and their occupation and release status is reflected to ensure that the resource information for subsequent scheduling is up to date; S325. Calculate the project duration and obtain the project scheduling plan for the entire project cycle until a feasible scheduling plan is generated that covers all activities; S326. Develop a resource allocation plan and comprehensively calculate the number of dedicated resource requirements and temporary resource quantities within the project cycle to ensure that the entire resource allocation plan meets the constraints within the project cycle; S327. Using the two objective functions of project duration and total cost as fitness functions, calculate the corresponding fitness values.

7. The integrated optimization method for project scheduling and resource allocation considering time-resource trade-off according to claim 5 is characterized in that: The S36 specifically includes: S361: randomly selecting elements in the execution mode vector from all execution modes except the first and last active execution modes to destroy, and then repairing the destroyed elements using random numbers; S362: Randomly select elements in the activity priority vector for destruction and repair, specifically including: A portion of the elements are randomly selected from the activity priority vector to form a first vector, and the remaining elements form a second vector; Select an element from the first vector in turn, randomly select a position in the second vector, and determine whether the position is feasible according to the feasible condition of the position. If the position is feasible, insert the element selected from the first vector into the position of the second vector; otherwise, continue to select the next position from the second vector until a feasible position is found; Repeat the above operation until the first vector is empty, thereby obtaining the updated second vector and its corresponding neighborhood solution; S363: randomly selecting an element in the resource configuration plan vector for destruction; then, randomly selecting a candidate solution from the candidate configuration combinations in the configuration plan of a single resource in a single cycle to repair the destroyed element.

8. A project scheduling and resource allocation integrated optimization system considering time-resource trade-off, characterized by: include: The initialization module is used to obtain information about the project to be optimized and to propose basic assumptions based on the information; A model building module, used for building a dual objective function model with the goal of minimizing the project duration and total cost according to the basic assumptions; A model solving module, for solving the dual objective function model by using an adaptive large neighborhood search algorithm based on the super volume contribution rate index, and generating an optimal project scheduling plan and resource allocation plan; The basic assumptions described include: Decompose the project to be optimized into a series of activities with tight preceding and following constraint relationships to form a network structure; wherein the network structure is composed of a node set and a direct precedence constraint, the node set represents an activity, including a virtual start activity and an end activity; the direct precedence constraint represents a direct precedence constraint with an end-start relationship and a lag time of 0; The resources required for the project to be optimized are divided into dedicated resources and temporary resources. After being allocated, dedicated resources are only used by the current activity until the activity is completed. Temporary resources are used by multiple activities and can be temporarily called when dedicated resources are insufficient. The allocation of resources meets the resource requirements of the activity, and the total amount of allocated resources is greater than or equal to the resource requirements of the activity. Each activity has a certain workload and has several execution modes. The product of the duration corresponding to each execution mode and the number of renewable resources required is greater than or equal to the workload of each activity. The cost of dedicated resources is calculated based on the entire project cycle, and the cost of temporary resources is calculated based on the actual usage time and resource volume. The unit cost of temporary resources is higher than the unit cost of dedicated resources. The model solving module is specifically used for: Based on the dual objectives of minimizing the project duration and total cost, the parameters in the basic assumptions are mixedly encoded and the population is initialized to ensure that the basic assumptions are met; Decode using the serial scheduling generation mechanism, generate project scheduling plans and resource allocation plans, and calculate the fitness values ​​of individuals in the population; Perform fast non-dominated sorting and crowding distance calculation on the population to identify non-dominated solution sets; Check the iteration termination condition, and if it is satisfied, output the Pareto front solution; otherwise, continue the iteration; the Pareto front solution is the optimal project scheduling plan and resource allocation plan; Calculate the hypervolume value and hypervolume contribution rate of each non-dominated solution, select the non-dominated solution with the highest hypervolume contribution rate as the basic solution, and move its neighborhood; Generate new neighborhood solutions through destruction-repair operations; Merge the new neighborhood solution with the non-dominated solution set and eliminate duplicate solutions; Calculate the fitness values ​​of individuals in the population, perform non-dominated sorting and crowding distance calculations, and update the non-dominated solution set; The elite retention strategy is used to generate a new population, and the iteration termination condition is rechecked. If it is satisfied, the Pareto front solution is output; otherwise, the iteration continues.

9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Dual-target robust resource allocation method and system under resource exclusion and transfer perspectives

    CN111667191A

  • Resource allocation method and device, equipment and storage medium

    CN111695806A