A project scheduling rule mining method and system based on gene expression programming
By improving the gene expression programming algorithm to optimize project scheduling rules, the problem of resource-constrained project scheduling being difficult to achieve optimality in existing technologies is solved, efficient resource utilization and cost control are achieved, and the scheduling needs of different production environments are adapted.
Patent Information
- Application Number
- CN202310099032.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-03
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2043-02-03
AI Technical Summary
The heuristic algorithms based on scheduling rules in existing technologies usually find it difficult to achieve optimal scheduling results when dealing with resource-constrained problems. Most of them can only provide near-optimal solutions and cannot meet the efficient resource utilization requirements of large-scale project scheduling.
An improved gene expression programming algorithm is adopted, combined with unsupervised learning and multiple neighborhood structure operators. Through backward traversal decoding and rule mining perturbation mechanism, project scheduling rules are optimized, meta-heuristic scheduling rules are generated, and the scheduling order and resource allocation of tasks are determined by using project and resource attributes, thus realizing the mining of project scheduling rules.
In large-scale project scheduling, it can generate scheduling plans that are closer to the optimal one, improve resource utilization, shorten project duration and save costs, and adapt to the specific needs of different production environments.
Smart Images

Figure CN116070761B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of project scheduling, and more specifically, relates to a project scheduling rule mining method and system based on gene expression programming. Background Art
[0002] The Multi-Skill Resource-Constrained Project Scheduling Problem (MS-RCPSP) is a management discipline worthy of study. It is an extension of the Resource-Constrained Project Scheduling Problem (RCPSP). The MS-RCPSP has long been proven to be NP-hard, leading many scholars to employ intelligent algorithms to achieve an acceptable solution. For small-scale problems, exact algorithms can often yield an optimal solution in a relatively short time. However, for large-scale problems, obtaining a feasible solution using exact algorithms typically requires a significant time cost, which is unacceptable to managers. Metaheuristic algorithms, when solving large-scale problems, can often yield near-optimal solutions in a shorter time.
[0003] Due to the resource limitation problem of the project, the limited supply of resources cannot meet all the executable tasks at the same time. Therefore, a reasonable task scheduling solution can maximize the efficient utilization of resources while minimizing or maximizing one or more goals, such as minimizing the project completion time C. max , maximizing resource utilization, etc. Heuristic algorithms based on scheduling rules are often used in combination with scheduling generation mechanisms to generate scheduling strategies to deal with resource constraints. Combined with parallel scheduling mechanisms, a large number of scheduling rules have been proposed, such as shortest processing time (SPT), minimum slack time (SLK), and earliest job deadline (ODD). Combining these scheduling rules can often obtain a scheduling solution in the shortest time. Although these scheduling solutions are not necessarily optimal, most of them can obtain near-optimal solutions and are easy for managers to use, but they cannot achieve the optimal scheduling effect. Summary of the Invention
[0004] In response to the shortcomings of the existing technology, the purpose of the present invention is to provide a project scheduling rule mining method and system based on genetic expression programming, aiming to solve the problem that the heuristic algorithm based on scheduling rules in the existing technology is usually used to combine with the scheduling generation mechanism to generate scheduling strategies to deal with resource constraints. It can provide some scheduling solutions, but most of the scheduling solutions are near-optimal solutions and cannot achieve the optimal scheduling effect.
[0005] To achieve the above objectives, in a first aspect, the present invention provides a project scheduling rule mining method based on gene expression programming, comprising the following steps:
[0006] Determine the project's task set, resource set, and skill set; the task set includes multiple tasks, each corresponding to an execution start time and duration; the resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are divided into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to execute, and the resource executing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level;
[0007] Executing the project using the resource set, whereby when the project is completed, each task in the project is executed, wherein each task can only be executed once, and each resource can be used to schedule tasks repeatedly, but each resource can only execute one task at a time;
[0008] Determine the project completion time based on the start time and duration of each task, and determine the total cost required to complete the project based on the time spent by each resource performing the task.
[0009] Taking the project completion time and the total cost required for project completion as two optimization objectives, the two objective values are minimized with balanced reference. Based on the improved gene expression programming algorithm, an unsupervised learning method is used to train and obtain the meta-heuristic scheduling rules for the project. According to the meta-heuristic scheduling rules and the multiple attributes of each task, the scheduling order of each task and the resources used to execute each task are determined, thereby obtaining the corresponding project scheduling scheme as the mined project scheduling rule. The improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the spatial complexity of decoding, and adds multiple neighborhood structure operators in the evolution process to improve the efficiency of searching for frontier solutions. A rule mining perturbation mechanism is also added in the evolution process to prevent the evolution process from falling into local optimality. Finally, an improved ENS hierarchical sorting method is used in the solution evaluation process to reduce the number of solution traversals. Individuals are selected to enter the new population based on the dominance and dominance relationship between solutions. The selection criteria are: individuals with lower non-dominated levels have higher priorities. Secondly, for individuals in the same non-dominated level, individuals with larger crowding distances are selected to enter the new population to increase the genetic diversity of the new population and optimize the project scheduling rule mining capability.
[0010] In an optional example, the two objective functions corresponding to the two optimization objectives are:
[0011] min C max =max(s j +d j ),j∈T,
[0012]
[0013] Among them, C max is the project completion time, W is the total project cost, d j T j Duration, T j represents task j, T is the task set, s j T j The start time, x jr is the decision variable, determining T j Is an R assigned? r , x jr ={0,1},w r R r The time spent on each unit of task execution, R r Represents resource r, where R is a resource collection.
[0014] In an optional example, the various attributes of each task specifically include: duration, number of predecessor tasks, number of successor tasks, number of preceding tasks, number of subsequent tasks, maximum skill level requirement, remaining path length, number of remaining path tasks, latest end time, task slack time, and number of optional resources.
[0015] In an optional example, the process of solving the objective function based on the improved gene expression programming algorithm includes:
[0016] Coding process: Combine the task set and resource set of the project, and randomly generate the initial population of the project scheduling rule according to the set population size and individual head length;
[0017] Decoding process: First, the chromosome is divided into several sub-bodies of the same length according to the length of the sub-body head and the shared tail. Each font gene is read and decoded one by one, and then the decoding results of several sub-bodies are summed up. Among them, the backward traversal decoding method is used to read and decode each sub-body gene one by one, and the read elements are placed in a double list. All elements of each sub-list in the list can correspond to all elements of each depth of the expression tree. The function value of each root node in the double list is calculated. After calculating the function value corresponding to each root node, the child node corresponding to the root node is deleted to reduce the space complexity of decoding.
[0018] In an optional example, the process of solving the objective function based on the improved gene expression programming algorithm further includes:
[0019] Iteratively evolve the initial population and finally obtain the Pareto frontier solution set;
[0020] In the iterative evolution process, several basic evolutionary operators including mutation, sequential insertion transposition, root transposition, single-point recombination and two-point recombination are adopted, and a rule mining perturbation mechanism is adopted to break the local optimum, and a variety of neighborhood structures are introduced to improve the efficiency of searching for frontier solutions. The rule mining perturbation mechanism is as follows: according to the preset rule mining perturbation preset value d_value, judgment is made. If the Pareto frontier solution set F0 does not change within d_value iterations, a chromosome to be perturbed is selected for each individual in population A according to a certain perturbation probability, and then each selected chromosome is randomly initialized. The various neighborhood structures introduced include: gene position exchange, gene forward insertion, gene backward insertion and gene fragment reversal operation.
[0021] In an optional example, the improved ENS hierarchical ranking method used in the evaluation process of the solution of the objective function based on the improved gene expression programming algorithm is specifically:
[0022] The new population A obtained after iteration new and the old population A before iteration old Population A all The objective function value is evaluated for the 2N individuals in the model, and the dominance relationship between the individuals is established. Finally, the 2N individuals are decomposed into L non-dominated layers. The solution in the same non-dominated layer is a non-dominated relationship. The relationship between different layers is as follows:
[0023] F1>...>F z >...>F L ,
[0024] In the above formula, F z is the set of individuals in the zth non-dominated layer, z={1,2,...,L}, in F z All individuals in F z-1 One or several individuals dominate;
[0025] For the optimization problem of two objective functions, the dominance relationship between individuals is determined by the size of all objective function values between individuals; the two objective function value matrices are sorted from small to large according to the value of a certain objective function. After this process, it can be guaranteed that the individual sorted later cannot dominate each individual in front of it; then, L loops are traversed, and each time the size of the remaining objective function value of the individual whose dominance level has not been determined is compared with all individuals in front of it with the current maximum dominance level to determine their dominance relationship, until the dominance level is established for all individuals; among them, for each sorted individual, the size of the remaining objective function value is compared with all individuals in front of it to determine the maximum dominance level of all its dominated individuals. Assuming that the maximum level of the dominated individuals of this individual is l, the dominance level of this individual is determined to be l+1;
[0026] From population A all The new population is selected one by one according to priority until the new population size N is reached.
[0027] In an optional example, the crowding distance calculation method used in the evaluation process of the solution of the objective function based on the improved gene expression programming algorithm is:
[0028]
[0029] In the above formula, D n represents the crowding distance of individual n, n∈F z , M is the set of objective functions, f m,k is the normalized value of the dispatch rule corresponding to individual k under the objective function m, n+1 and n-1 are the non-dominated layer individual sets F z The n+1th and n-1th individuals after all individuals in are sorted.
[0030] In a second aspect, the present invention provides a project scheduling rule mining system based on gene expression programming, comprising:
[0031] A project information determination unit is configured to determine a task set, resource set, and skill set for a project; the task set includes multiple tasks, each task corresponding to an execution start time and duration; the resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are classified into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to execute, and the resource executing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level;
[0032] a project execution setting unit, configured to execute the project using the resource set, wherein when the project is completed, each task in the project is executed, wherein each task can only be executed once, and each resource can be used to repeatedly schedule tasks, but each resource can only execute one task at a time;
[0033] The project optimization target determination unit is used to determine the project completion time based on the execution start time and duration of each task, and to determine the total cost required to complete the project based on the unit time spent by each resource when executing the task;
[0034] The project optimization target solving unit is used to take the project completion time and the total cost required for project completion as two optimization targets, and to balance the minimization of the two target values with reference to the situation. Based on the improved gene expression programming algorithm, an unsupervised learning method is used to train and obtain the meta-heuristic scheduling rule of the project, and the scheduling order of each task and the resources used to execute each task are determined according to the meta-heuristic scheduling rule and multiple attributes of each task, so as to obtain the corresponding project scheduling scheme as the mined project scheduling rule. The improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the spatial complexity of decoding, and adds multiple neighborhood structure operators in the evolution process to improve the efficiency of searching for frontier solutions. A rule mining perturbation mechanism is added in the evolution process to prevent the evolution process from falling into a local optimum. Finally, an improved ENS hierarchical sorting method is used in the solution evaluation process to reduce the number of solution traversals, and individuals are selected to enter a new population based on the dominance and dominance relationship between solutions. The selection criteria are: individuals with lower non-dominated levels have higher priorities. Secondly, for individuals in the same non-dominated level, individuals with larger crowding distances are selected to enter the new population to improve the genetic diversity of the new population and optimize the project scheduling rule mining capability.
[0035] In an optional example, the two objective functions corresponding to the two optimization objectives determined by the project optimization objective determination unit are:
[0036] min C max =max(s j +d j ),j∈T,
[0037]
[0038] Among them, C max is the project completion time, W is the total project cost, d j T j Duration, T j represents task j, T is the task set, s j T j The start time, x jr is the decision variable, determining T j Is an R assigned? r , x jr ={0,1},w r R r The time spent on each unit of task execution, R r Represents resource r, where R is a resource collection.
[0039] In an optional example, the improved ENS hierarchical ranking method used by the project optimization target solving unit in the evaluation process of solving the target function based on the improved gene expression programming algorithm is specifically:
[0040] The new population A obtained after iteration new and the old population A before iteration old Population A all The objective function value is evaluated for the 2N individuals in the model, and the dominance relationship between the individuals is established. Finally, the 2N individuals are decomposed into L non-dominated layers. The solution in the same non-dominated layer is a non-dominated relationship. The relationship between different layers is as follows:
[0041] F1>...>F z >...>F L ,
[0042] In the above formula, F z is the set of individuals in the zth non-dominated layer, z={1,2,...,L}, in F z All individuals in F z-1 One or several individuals dominate;
[0043] For the optimization problem of two objective functions, the dominance relationship between individuals is determined by the size of all objective function values between individuals; the two objective function value matrices are sorted from small to large according to the value of a certain objective function. After this process, it can be guaranteed that the individual sorted later cannot dominate each individual in front of it; then, L loops are traversed, and each time the size of the remaining objective function value of the individual whose dominance level has not been determined is compared with all individuals in front of it with the current maximum dominance level to determine their dominance relationship, until the dominance level is established for all individuals; among them, for each sorted individual, the size of the remaining objective function value is compared with all individuals in front of it to determine the maximum dominance level of all its dominated individuals. Assuming that the maximum level of the dominated individuals of this individual is l, the dominance level of this individual is determined to be l+1;
[0044] From population A all The new population is selected one by one according to priority until the new population size N is reached.
[0045] In a third aspect, the present invention provides an electronic device, comprising: a memory and a processor;
[0046] The memory is used to store computer programs;
[0047] The processor is configured to implement the method provided in the first aspect above when executing the computer program.
[0048] In a fourth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the method provided in the first aspect is implemented.
[0049] In general, the above technical solutions conceived by the present invention have the following beneficial effects compared with the prior art:
[0050] Currently, decisions during software project development are largely based on manager experience or the allocation of tasks according to a single, classic scheduling rule. However, because scheduling rules are highly targeted, the effectiveness of a single scheduling rule in different specific production environments often varies significantly. The method of the present invention can generate specific hybrid scheduling rules based on the specific environment by acquiring some past production data. These scheduling rules are often able to effectively match the current production environment, achieving satisfactory results for a series of production schedules in the current environment, enabling the orderly progress of projects, shortening project durations, and saving project costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] Figure 1 This is a flow chart of a method for mining project scheduling rules based on gene expression programming provided by an embodiment of the present invention;
[0052] Figure 2 This is a schematic diagram of the chromosome conversion ORF expression process provided by an embodiment of the present invention;
[0053] Figure 3 Schematic diagram of an improved ENS layering method provided by an embodiment of the present invention;
[0054] Figure 4 This is a schematic diagram of the main flow of the IGEP algorithm provided by an embodiment of the present invention;
[0055] Figure 5 The embodiment of the present invention provides a schematic diagram of the genotype, expression tree, and ORF expression of Rule 1;
[0056] Figure 6 This is a schematic diagram of a solution set for a case provided by an embodiment of the present invention;
[0057] Figure 7 This is an architecture diagram of a project scheduling rule mining system based on genetic expression programming provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0058] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. The following description of at least one exemplary embodiment is actually only illustrative and is in no way intended to limit the present invention and its application or use. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0059] This paper proposes a project scheduling rule mining method based on gene expression programming (GEP) to solve the multi-objective optimization problem of multi-skill, resource-constrained project scheduling. During the solution process, previous project information is used as training data. Project and resource information are integrated to extract various decision-making features. These attributes, combined with several basic mathematical operators, form the genetic source of soft chromosomes. Each soft chromosome represents a hybrid scheduling rule, which, when used as a decision-making mechanism for task execution order, yields a specific scheduling solution. The improved GEP algorithm (IGEP) proposed in this paper employs a backward traversal decoding mechanism to discover new scheduling rules. This strategy improves algorithmic efficiency in fitting the linear relationship between employee and project attributes and determining the priority of employee task assignments. Furthermore, the improved ENS ranking method uses a specific mathematical technique to rapidly rank two objective values (shortest project completion time and minimum project cost) among various scheduling rules, determining the dominant relationship between the various scheduling rules and facilitating the rapid selection of optimal individuals during the algorithm iteration process.
[0060] The present invention aims to solve the problem of staffing and task scheduling in software companies during the software development process. This problem belongs to the multi-skill resource-constrained project scheduling problem (MS-RCPSP) in management science. Staffing is a resource scheduling process whose purpose is to reasonably assign tasks to limited resources (employees) in a project with multiple tasks to achieve the goal of balancing the total project completion period and total project cost. It is assumed here that the total cost of the project only includes the salaries of all employees, and the employees' salaries are only related to the time it takes to complete their tasks.
[0061] This paper proposes a rule discovery method based on gene expression programming to solve the multi-objective optimization problem of multi-skill, resource-constrained project scheduling. During the solution process, previous project information is used as training data. Project and resource information are integrated to extract various decision-making feature attributes. These attributes are then combined with several basic mathematical operators to form the genetic source of soft chromosomes. Each soft chromosome represents a hybrid scheduling rule, which, when used as a decision-making mechanism for task execution order, yields a specific scheduling solution.
[0062] Figure 1 Flowchart of the project scheduling rule mining method based on gene expression programming provided by an embodiment of the present invention; Figure 1 As shown, the following steps are included:
[0063] S101, determining a task set, resource set, and skill set for a project; the task set includes multiple tasks, each task corresponding to an execution start time and duration; the resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are divided into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to execute, and the resource executing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level;
[0064] S102, executing the project using the resource set. When the project is completed, all tasks in the project are executed. Each task can only be executed once. Each resource can be used to schedule tasks repeatedly, but each resource can only execute one task at a time.
[0065] S103, determining the project completion time based on the execution start time and duration of each task, and determining the total cost required to complete the project based on the unit time spent by each resource when executing the task;
[0066] S104, taking the project completion time and the total cost required for project completion as two optimization objectives, and balancing the minimization of the two objective values, based on the improved gene expression programming algorithm, adopting an unsupervised learning method, training to obtain a meta-heuristic scheduling rule for the project, and determining the scheduling order of each task and the resources used to execute each task based on the meta-heuristic scheduling rule and multiple attributes of each task, thereby obtaining a corresponding project scheduling solution as the mined project scheduling rule; wherein, the improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the spatial complexity of decoding, and adds multiple neighborhood structure operators in the evolution process to improve the efficiency of searching for frontier solutions, and adds a rule mining perturbation mechanism in the evolution process to prevent the evolution process from falling into a local optimum, and finally, uses an improved ENS hierarchical sorting method in the solution evaluation process to reduce the number of solution traversals, and selects individuals to enter a new population based on the dominance and dominance relationship between solutions, and the selection criteria are as follows: individuals with lower non-dominated levels have higher priorities, and secondly, for individuals in the same non-dominated level, individuals with larger crowding distances are selected to enter the new population, so as to improve the genetic diversity of the new population and optimize the project scheduling rule mining capability.
[0067] Specifically, Gene Expression Programming (GEP) is an efficient evolutionary algorithm that inherits the advantages of both Genetic Algorithm (GA) and Genetic Programming (GP). It combines the simplicity of GA's "fixed-length linear string" with the search capabilities of GP's "dynamic tree structure." Research results on the application of Gene Expression Programming in supervised machine learning have shown that it is well suited for solving classification and complex functional relationship problems. The research presented in this paper can be summarized as exploring the complex functional relationships between task attributes, thereby determining the priority of each task and obtaining an optimal scheduling solution. Therefore, using GEP to train hybrid scheduling rules for solving MS-RCPSP is a relatively efficient option.
[0068] MS-RCPSP can be described as follows: a project contains a task set T = {T0, T1, T2, ..., T J ,T J+1}, each task T j (j=0,1,2,...,J,J+1) all have a start time s j and task duration d j , tasks T0 and T J+1 Is a virtual task (a virtual task refers to a task duration d j = 0, has no actual meaning, and exists to connect other tasks), which are the first and last tasks in the task sequence. There is a close-before constraint between tasks, which means that each task T j Can not be in its immediate predecessor task set Pj The project also has a resource set R = {R1, R2, ..., R K} and skill set S={S1,S2,...,S N}, and each resource R r (r=1,2,...,K) are proficient in several skills with different proficiency levels. Each task T j (j=1,2,...,J) requires only one resource R r To execute, and R r Need to be proficient in T j Required skills k (k=1,2,...,N), and R r For skill S k Proficiency level G rk Must be no less than the execution T j Required skills k Proficiency level n jk In the project, each task must be executed and can only be executed once. Each resource can be assigned tasks repeatedly, but each resource can only execute one task at a time. In addition, the project also considers the salary issue of each resource performing tasks, such as resource R r The cost per unit time of executing the task is w r The present invention balances the project completion time C max The required total cost W is the target. The relevant symbols for the multi-skill resource constrained project scheduling problem are described in Table 1.
[0069] Table 1 Symbols for multi-skill resource constrained project scheduling problem
[0070]
[0071]
[0072] min C max =max(s j +d j ),j∈T, (1)
[0073]
[0074] stf j =s j +d j ,j∈T, (3)
[0075]
[0076]
[0077]
[0078]
[0079]
[0080]
[0081]
[0082]
[0083] Equations (1)-(11) describe the objectives and related constraints of MS-RCPSP respectively. Equations (1) and (2) are objective functions, reflecting the problem goal of balancing the project completion time C. max and the total project cost W. Equations (3) to (11) are constraint expressions. Equation (3) ensures that the task is continuous and cannot be interrupted. Equation (4) represents the immediate task constraint of the project, which can be described as: j , if task T j It is task T i If the task is in the set of immediate predecessor tasks, then task T i Start time s i Must not be less than task T j End time f j Formula (5) and formula (6) are the decision variables x jr and y jrt The value range of x jr =1, it means that the task T j Assign to resource R r , otherwise when x jr =0, it means that task T is not j Assign to resource R r Similarly, y jrt =1, it means that at time t, the resource R r In the execution of task T j , otherwise when y jrt = 0, it means that at time t, the resource R r Do not execute task T j Constraint (7) expresses that for each task T in the task set j , there is only one resource that will perform the task. Formula (8) indicates that each resource can perform at most one task at a time. Formula (9) ensures that each task can only be performed once. Formula (10) expresses the skill level constraint, that is, for the resource that performs the task, the types of skills it is proficient in must cover the types of skills required by the task, and the skill proficiency level G of the skill must be rkMust be no less than the skill proficiency level n required for the task jk Constraint (11) is to ensure that the start time and execution time of each task are not less than zero.
[0084] A specific embodiment of the present invention is as follows:
[0085] 1. Multi-skill resource-constrained project scheduling method based on improved gene expression programming algorithm
[0086] To realize the whole scheduling process of multi-skill resource-constrained project scheduling problem, this paper uses an improved gene expression programming algorithm (IGEP) and adopts an unsupervised learning method to train and obtain meta-heuristic scheduling rules. Then, according to the scheduling rules and the various attributes of each task, the scheduling order of each task is determined to obtain the corresponding scheduling solution and achieve balanced project completion time C. max and the total cost W. The algorithm is trained based on project data, so the obtained meta-heuristic scheduling rules can be efficiently applied to projects, allowing project managers to make decisions quickly.
[0087] 1.1 Encoding and Decoding
[0088] 1.1.1 Coding
[0089] The way scheduling rules participate in project scheduling is to calculate the priority based on the selected attributes, and then select the task with the highest priority for scheduling. In this scheduling process, each scheduling rule is an operation expression, which requires the establishment of corresponding function symbol sets and attribute sets. The function symbol set selects 7 commonly used binary functional operators, namely F = {+, -, *, / , Q, max, min}. After analyzing the multi-skill resource-constrained project scheduling problem and reading relevant literature, 11 basic priority attributes were extracted from the task perspective, resource perspective, and project perspective. Since different attributes may have differences in dimension and order of magnitude, a normalization method was designed for all basic attributes. The basic attributes and normalization methods are shown in Table 2, where j is the task number, attribute j Represents the current row attributes of task j.
[0090] Table 2 Priority attribute table and normalization method
[0091]
[0092] The encoding process is to generate an initial population A based on the set population size and individual head length 3*h * , population A * All genes of each chromosome chrom are derived from the function symbol set F and the attribute set T. The length of chromosome chrom is determined by h and the maximum number of elements of the function symbol set F, t.max Determine, the calculation formula is: l = 3*h + h*t max -1, each chromosome can be decomposed into three heads of length h and a length h*t max -1 tail, these three heads share one tail, thus we can get three sub-expressions, and we can get the ORF expression corresponding to chrom by taking the sum of these three sub-expressions. Figure 2 The head gene of chrom is randomly selected from the function symbol set F and the attribute set T, while the tail gene can only be randomly selected from the attribute set T.
[0093] 1.1.2 Decoding
[0094] In the basic GEP algorithm, a feasible solution is usually represented by a genotype-coded individual in the form of a string, and all its genes are derived from the function symbol set F = {f1, f2, ..., f FN} and the attribute set T = {τ1,τ2,...,τ TM}, and each chromosome has a corresponding expression tree and ORF expression.
[0095] A new decoding method, namely the backward traversal decoding method, is designed in the IGEP algorithm. First, the chromosome is divided into several sub-bodies of the same length according to the length of the sub-body head and the shared tail, and then the decoding results of the several sub-bodies are summed up, thus realizing the entire decoding process. In this process, it is also necessary to read the genes of each sub-body one by one, but unlike the traversal tree construction of basic GEP decoding, the backward traversal decoding places the read elements in a double list, and all elements of each sub-list in the list can correspond to all elements of each depth of the expression tree. The evaluation process of the backward traversal decoding adopts the calculation-deletion method, that is, after calculating the function value corresponding to a root node, the child node corresponding to the root node is deleted. This method can reduce the space complexity of subsequent root node calculations. The total time complexity of the backward traversal decoding is O (h) * The time complexity of the basic GEP decoding process is O (h) However, as the post-order traversal decoding and evaluation process proceeds, the elements in the list are gradually reduced, so its space complexity S (h) * Much smaller than S (h) .
[0096] 1.2 Evolutionary Methods
[0097] The main idea of the present invention's IGEP algorithm is to first randomly generate an initial population and then make the population iterative evolution, and finally obtain a Pareto frontier solution set, i.e., several meta-heuristic scheduling rules (Meta-rules) that do not have a dominant relationship between each other in the evaluation process. The IGEP algorithm has adopted several basic evolutionary operators such as mutation, sequential insertion transposition, root transposition, single-point recombination and two-point recombination in the process of iterative evolution. In addition, the GEP algorithm easily falls into local optimum, and adopting rule mining disturbance helps to break the local optimum, so in IGEP, a rule mining disturbance mechanism is added. In addition, four kinds of neighborhood structures are introduced, which can greatly improve the efficiency of searching for the frontier solution.
[0098] S1: Rule Mining Perturbation. Rule mining perturbation is based on a preset rule mining perturbation value, d_value. Specifically, if the Pareto frontier solution set F0 remains unchanged within d_value iterations, a perturbed chromosome is selected for each individual in population A according to a certain perturbation probability. Each selected chromosome is then randomly initialized. Rule mining perturbation can effectively break local optima and enrich the genetic diversity of population A.
[0099] S2: Mutation operation. Mutation operation is a very common evolutionary operator in intelligent evolutionary algorithms. Mutation operation refers to selecting chromosome chrom from population A according to a certain mutation probability, and then randomly selecting a gene chrom from chrom. (a) , randomly select an element from the function symbol set F or attribute set T and replace chrom with this element (a) . Note that if chrom (a) If it is a tail gene, only elements in the attribute set T can be selected for replacement.
[0100] S3 and S4: Sequential insertion transposition (IS-transposition) and root transposition (RIS-transposition). Both the sequential insertion transposition and root transposition select chromosome chrom from population A according to a certain probability, then randomly select two gene positions a and b and a head gene position c from chrom, and then transfer all genes {chrom (a) ,chrom (a+1) ,...,chrom (b) After replication, the gene is inserted before gene position c. The original head gene position c and all subsequent head genes are sequentially shifted backward, and genes that exceed the head length are discarded. The difference between sequential insertion transposition and root transposition lies in the selection of the head gene position c; in sequential insertion transposition, c can be selected at any head gene position except the first gene position, while in root transposition, c can only be selected at the first gene position.
[0101] S5 and S6: Single-point recombination and two-point recombination. The recombination operator is to select two paternal chromosomes chrom1 and chrom2 from population A. When performing the single-point recombination operation, a gene node a is randomly selected, and the gene node a and the previous gene fragment {chrom1 (0) ,chrom1 (1) ,...,chrom1 (a)} and {chrom2 (0) ,chrom2 (0) ,...,chrom2 (a)}, when performing two-point recombination operation, two gene position nodes a and b are randomly selected, and then all genes {chrom1 (a) ,chrom1 (a+1) ,...,chrom1 (b)} and {chrom2 (a) ,chrom2 (a+1) ,...,chrom2 (b)} is replaced, and after single-point recombination or two-point recombination, two new offspring chromosomes chrom1 will be obtained. new and chrom2 new , and replace the parent chromosomes chrom1 and chrom2 in population A with chrom1 new and chrom2 new .
[0102] S7: Gene position exchange. The chromosome chrom to be exchanged is selected according to a certain probability, and then two genes chrom at different positions in the chrom are randomly selected. (a) and chrom (b) To exchange positions. Note that in order to avoid the generation of illegal chromosomes, it is necessary to restrict position b. If chrom (a) is an element in the function symbol set F, then chrom (b) Only the individual head gene can be selected, otherwise chrom (b) Select from the elements of the set of individual non-function symbols.
[0103] S8: Gene forward insertion. The chromosome chrom for gene forward insertion is selected according to a certain probability, and then two non-first gene positions of the gene chrom are randomly selected. (a) and chrom (b) , and then the gene chrom at the back position (b)Insert chrom (a) Note that in order to avoid the generation of illegal chromosomes, if chrom (a) is the gene at the head position, and the last gene at the head position is an element in the function symbol set F, then chrom (b) Only genes at the head position can be selected.
[0104] S9: Gene backward insertion. The chromosome chrom for gene backward insertion is selected according to a certain probability, and then two non-first gene positions of the gene chrom are randomly selected. (a) and chrom (b) , and then the gene chrom (a) Insert chrom (b) Note that in order to avoid the generation of illegal chromosomes, if chrom (a) is the gene at the head position, then chrom (b) Only genes at the head position can be selected.
[0105] S10: Gene fragment reverse operation. The chromosome chrom to be reversed is selected according to a certain probability, and then the gene chrom of two gene positions is randomly selected. (a) and chrom (b) , and then all genes at positions a to b {chrom (a) ,chrom (a+1) ,...,chrom (b)} to sort in reverse order. Note that in order to avoid the generation of illegal chromosomes, if chrom (a) is the gene at the head position, then chrom (b) Only genes at the head position can be selected.
[0106] 1.3 Evaluation Method
[0107] In order to make the IGEP algorithm suitable for solving multi-objective problems, the present invention combines the non-dominated solution stratification and crowding distance calculation of NSGA-II to evaluate the iterative population. Here, the non-dominated solution stratification adopts an efficient non-dominated sorting method provided by Zhang XY and Y. Tian's team, the ENS method, and improves it.
[0108] The NSGA-II non-dominated solution layer will be composed of the new population A obtained after iteration new and the old population A before iteration old Population A allThe objective function value is evaluated for the 2N individuals in the model, and the dominance relationship between the individuals is established. Finally, the 2N individuals are decomposed into L non-dominated layers. The solution in the same non-dominated layer is a non-dominated relationship. The relationship between different layers is as follows:
[0109] F1>...>F z >...>F L , (12)
[0110] In the above formula, F z is the set of individuals in the zth non-dominated layer, z={1,2,...,L}, in F z All individuals in F z-1 Dominated by one or several individuals.
[0111] For multi-objective optimization problems, the dominance relationship between individuals is determined by the size of all objective function values between individuals. For example, the objective function value sets of individual a and individual b are {f 1,a ,f 2,a ,...,f |M|,a} and {f 1,b ,f 2,b ,...,f |M|,b}, if f m,a ≤f m,b , and Individual a is considered to dominate individual b, denoted as a>b. In the entire population, the non-dominated layer F1 with the lowest dominance level is the Pareto frontier solution set of the current population. Each individual in F1 is not dominated by other individuals in the population.
[0112] In the evaluation process, in order to unify the standards, each objective function value of each individual in each case is normalized, and the relative deviation value is used as the normalization method. The calculation formula is as follows:
[0113]
[0114] In the above formula, f m,r It represents the normalized value of the dispatch rule corresponding to individual r under the objective function m. i,m,r and RPD i,m,r are the mth objective function value and relative deviation value of rule r under case i, maxvalue i,m and minvalue i,m They represent the maximum and minimum values of the mth objective function value of case i under the rules corresponding to all individuals.
[0115] The ENS method advocates first sorting the entire objective function value matrix from small to large according to the value of a certain objective function m. After this process, it can be guaranteed that the individuals in the latter order cannot dominate each individual in front of them. Then, L loops are traversed. In each traversal, the size of the remaining |M|-m objective function values of the individual whose dominance level has not been determined is compared with all individuals in front of it with the current maximum dominance level, and their dominance relationship is determined until the dominance level is established for all individuals. In the present invention, a new method for traversing and determining the dominance level is proposed, that is, for each sorted individual, the size of the remaining |M|-m objective function values is compared with all individuals in front of it, and the maximum dominance level of all its dominated individuals is determined. Assuming that the maximum level of the dominated individuals of the individual is l, the dominance level of the individual can be determined to be l+1. This new method for determining the dominance level reduces the number of traversals to search for individuals, saves computer resources, and improves the efficiency of the process.
[0116] Figure 3 The following is an example of an improved ENS layering method, from a to b, showing a 1,r The process of sorting is carried out, so the individuals arranged at the top will not be dominated by other individuals, and at the same time, the dominance level of individual 2 can be determined to be l = 1; from c to d, due to f 2,1> f 2,2 , indicating that individual 1 will not be dominated by other individuals; from e to h, satisfying f 2,r< f 2,5 , the individuals with r={2,1,4} are 1 and 4, which means that the individuals dominated by individual 5 are {1,4}. At the same time, it can be determined that the maximum level of domination of individual 5 is 1, so the dominance level of individual 5 is l=2; similarly, the dominance levels of all individuals can be determined, and the final result of the non-dominated solution stratification is shown in j.
[0117] Calculating the crowding distance is a common method for determining the superiority and inferiority of individuals in the same non-dominated layer. Individuals with larger crowding distances tend to have greater diversity, and selecting individuals with larger crowding distances to enter a new population is beneficial for increasing the genetic diversity of the new population. Calculating the crowding distance after normalization based on different objective functions requires first calculating the objective function value for each individual according to its corresponding priority rule, and then calculating the crowding distance using the following formula:
[0118]
[0119] In the above formula, n∈F z , M is the set of objective functions, f m,k is the normalized value of the dispatch rule corresponding to individual k under the objective function m, n+1 and n-1 are the non-dominated layer individual sets F z The n+1th and n-1th individuals after all individuals in are sorted.
[0120] The new population is obtained from population A all The population size N is selected one by one according to the priority until the new population size N is reached. According to the selection rule of NSGA-II, the individuals with lower non-dominated levels are better, and the individuals with larger crowding distances among individuals with the same non-dominated levels are better. Therefore, the crowding distance calculation only requires F z Calculate the individual in F z Because not all of them can be selected into the new population A new non-dominated layer.
[0121] 1.4 IGEP Algorithm Framework
[0122] Figure 4 The figure shows a flowchart of the IGEP algorithm, which can be roughly divided into four steps. The first step is to set parameter values, such as the length of the genotype individual code and the probability of mutation, to determine the function symbol set and attribute set elements. The second step is to divide the dataset into a training set and a test set in a ratio of 2:3. The third step is to train the data from the training set, ultimately obtaining a set of Pareto frontier solutions, i.e., a set of metaheuristic rules. Training is a process of iterative evolution of the initial population. The fourth step is to test the metaheuristic rules obtained in the third step using the test set data to evaluate the quality of the metaheuristic rules and verify the effectiveness of the IGEP algorithm.
[0123] 2. Example verification
[0124] To evaluate the performance of the IGEP algorithm for solving the MS-RCPSP, experiments were conducted using the new Intelligent Multi-Objective Project Scheduling (iMOPSE) environment benchmark case set created by B. Myszkowski et al. in 2015. The algorithm was demonstrated using Python 3.10, and the experiments were conducted on a personal computer with an R7-5800H processor at 3.2 GHz and 16 GB of RAM. The case set contains 36 instances, 18 each of which have task sizes of 100 and 200. The number of resources in each case ranged from 5, 10, 20, and 40, respectively. In the task network graph, the number of pairs of tasks with direct predecessor relationships ranged from 22 to 376. Furthermore, the number of skill types in the skill pool varied from 9, 14, and 15, respectively. The experimental parameters for the IGEP algorithm are shown in Table 3.
[0125] Table 3 IGEP algorithm parameter settings
[0126]
[0127] Specifically, the project data used in the intelligent multi-objective project scheduling (iMOPSE) environment benchmark case set employed in the above-mentioned embodiments is an internationally standardized iMOPSE dataset, adapted from actual project data completed by a software company. The dataset contains information such as task information (task number, predecessor tasks, task duration, required skill types and proficiency levels), and resource information (employee number, salary, and employee skills and proficiency levels).
[0128] In the population assessment process in the above-mentioned specific embodiment, the currently arrangable tasks are first determined based on the completion of the preconditions of the tasks. Then, in combination with the optional resources (employees) of these optional tasks and the currently idle resources, tasks are assigned to the resources that can be assigned tasks. The priority of the assigned tasks is determined according to the scheduling rules, and tasks with higher priority values are assigned first. This process is repeated until all tasks are assigned and completed, and the entire scheduling process is determined. Each task also has a start time, end time, and its assigned resources. The project manager can assign tasks based on the time and resource allocation information in this specific plan. The method proposed in the present invention is mainly used to determine the priority of assigned tasks, because the specific plans obtained by different methods of determining priorities have obvious differences, and this gap is mainly reflected in the total project cycle and total cost.
[0129] The performance of the scheduling rules is evaluated by performance ranking. That is, all the objective function values of all scheduling rules are ranked in all cases, and then the average ranking of each scheduling rule is taken to measure the performance of the scheduling rule, as shown in the following formula:
[0130]
[0131] In the above formula, RK r Represents the comprehensive performance ranking value of rule r. |I| represents the number of cases in item set I, |M| represents the number of objective functions, and rk i,m,r Represents the ranking value of rule r in scheduling target m under case i. This ranking value should not be greater than the number of rules participating in the ranking, that is, rk i,m,r ≤|rule|.
[0132] like Figure 4 As shown in the flowchart, the IGEP algorithm is used to run and obtain a set of Pareto frontier solutions. This solution set is a set of meta-heuristic scheduling rules, and the performance ranking is compared with the existing 20 classic priority scheduling rules. Table 4 shows the performance ranking results. Rule 1 to Rule 20 in the table are the 20 meta-heuristic scheduling rules obtained in this training. The coding gene chromosome, tree structure and ORF expression of Rule 1 are shown in Figure 4. Figure 5 As shown. A case is randomly selected from the benchmark case set as input data. The objective function values of the 20 classic priority scheduling rules and the 20 meta-heuristic scheduling rules are as follows: Figure 6 shown.
[0133] Table 4 Performance ranking of classic priority scheduling rules and metaheuristic scheduling rules
[0134]
[0135]
[0136] As can be seen from Table 4, the metaheuristic scheduling rules trained by the IGEP algorithm generally rank higher than classic priority scheduling rules. The table shows that the performance of 17 metaheuristic scheduling rules, except for Rules 18-20, ranks higher than all classic priority scheduling rules. LRCP and MINSLK are the best-performing classic priority scheduling rules. This proves that the present invention can train metaheuristic scheduling rules that outperform existing priority rules in solving MS-RCPSP. While maintaining the advantage of fast response, it also improves the optimization capabilities that priority scheduling rules lack.
[0137] In summary, for solving the multi-skill resource-constrained project scheduling problem, the improved Genetic Expression Programming algorithm proposed in this paper incorporates a backward traversal decoding method, incorporates four neighborhood structure operators and a rule mining perturbation mechanism, and improves the ENS ranking method used in the solution evaluation process. This significantly improves algorithm performance and the efficiency of exploring the frontier solution set. The resulting meta-heuristic rule set can be easily applied to real projects and production environments.
[0138] The method proposed in the present invention can automatically mine scheduling rules that are highly compatible with a series of projects in different production environments. Using these scheduling rules, a series of frontier solution sets with the goal of minimizing the total project cycle and total cost can often be obtained in a very short time. These frontier solution sets correspond to specific scheduling plans, and project management can select specific implementation plans to manage projects according to specific needs.
[0139] Figure 7 This is a diagram of the project scheduling rule mining system architecture based on gene expression programming provided by an embodiment of the present invention. Figure 7 Shown, including:
[0140] The project information determination unit 710 is configured to determine the task set, resource set, and skill set of the project; the task set includes multiple tasks, each task corresponding to an execution start time and duration; the resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are divided into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to execute, and the resource executing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level;
[0141] A project execution setting unit 720 is configured to execute the project using the resource set. When the project is completed, all tasks in the project are executed. Each task can only be executed once. Each resource can be used to schedule tasks repeatedly, but each resource can only execute one task at a time.
[0142] The project optimization target determination unit 730 is used to determine the project completion time based on the execution start time and duration of each task, and to determine the total cost required to complete the project based on the unit time spent by each resource when executing the task;
[0143] The project optimization target solving unit 740 is used to take the project completion time and the total cost required for project completion as two optimization targets, and to balance the minimization of the two target values with reference to the improved gene expression programming algorithm. It adopts an unsupervised learning method to train and obtain the meta-heuristic scheduling rules of the project, and determines the scheduling order of each task and the resources used to execute each task according to the meta-heuristic scheduling rules and the various attributes of each task, thereby obtaining the corresponding project scheduling scheme as the mined project scheduling rule; wherein, the improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the decoding The spatial complexity is reduced, and a variety of neighborhood structure operators are added in the evolution process to improve the efficiency of searching for frontier solutions. A rule mining perturbation mechanism is added in the evolution process to avoid the evolution process falling into local optimality. Finally, the improved ENS hierarchical sorting method is used in the solution evaluation process to reduce the number of traversal solutions, and individuals are selected to enter the new population based on the dominance and dominated relationship between solutions. The selection criteria are: individuals with lower non-dominated levels have higher priority. Secondly, for individuals in the same non-dominated level, individuals with larger crowding distance are selected to enter the new population to improve the genetic diversity of the new population and optimize the project scheduling rule mining capability.
[0144] It is understandable that the detailed functional implementation of each of the above units can be found in the introduction of the aforementioned method embodiment, and will not be repeated here.
[0145] In addition, an embodiment of the present invention provides an electronic device, which includes: a memory and a processor; the memory is used to store a computer program; and the processor is used to implement the method in the above embodiment when executing the computer program.
[0146] In addition, the present invention also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the method in the above embodiment is implemented.
[0147] The method steps in the embodiments of the present application can be implemented by hardware or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, mobile hard disks, CD-ROMs or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC.
[0148] It will be easily understood by those skilled in the art that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A project scheduling rule mining method based on gene expression programming, characterized in that: The following steps are involved: Determine a task set, resource set, and skill set for the project; the task set includes multiple tasks, each task corresponding to an execution start time and duration; The resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are divided into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to perform, and the resource performing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level; Executing the project using the resource set, whereby when the project is completed, each task in the project is executed, wherein each task can only be executed once, and each resource can be used to schedule tasks repeatedly, but each resource can only execute one task at a time; Determine the project completion time based on the start time and duration of each task, and determine the total cost required to complete the project based on the time spent by each resource performing the task. The project completion time and the total cost required for project completion are taken as two optimization objectives, and the two objective values are minimized with balanced reference. Based on the improved gene expression programming algorithm, an unsupervised learning method is used to train and obtain the metaheuristic scheduling rule of the project. According to the metaheuristic scheduling rule and the multiple attributes of each task, the scheduling order of each task and the resources used to execute each task are determined, thereby obtaining the corresponding project scheduling scheme as the mined project scheduling rule. The improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the spatial complexity of decoding, and adds a variety of neighborhood structure operators in the evolution process to improve the efficiency of searching for frontier solutions. A rule mining perturbation mechanism is added in the evolution process to prevent the evolution process from falling into a local optimum. Finally, an improved ENS hierarchical sorting method is used in the solution evaluation process to reduce the number of solution traversals. Individuals are selected to enter the new population based on the dominance and dominance relationship between solutions. The selection criteria are: individuals with lower non-dominated levels have higher priorities. Secondly, for individuals in the same non-dominated level, individuals with larger crowding distances are selected to enter the new population to increase the genetic diversity of the new population and optimize the project scheduling rule mining capability. The improved ENS hierarchical ranking method used in the evaluation process of the solution to solve the objective function based on the improved gene expression programming algorithm is as follows: The new population obtained after iteration A new and the old population before iteration A old The population A all 2 of 2 N The objective function value is evaluated for each individual, and the dominant relationship between individuals is established, and finally 2 N Individuals are decomposed into L There are non-dominated layers. The solutions in the same non-dominated layer are non-dominated relations. The relationships between different layers are as follows: F 1> ...> F z > ...> F L , In the above formula, F z For the z The set of individuals in the non-dominated layer, z ={1, 2, ..., L },exist F z All individuals in F z-1 One or several individuals dominate; For the optimization problem of two objective functions, the dominance relationship between individuals is determined by the size of all objective function values between individuals. The two objective function value matrices are sorted from small to large according to the value of a certain objective function. After this process, it can be guaranteed that the individuals in the latter order cannot dominate each individual in front of them. Then, L The loop is traversed. Each time, the individual with undetermined dominance rank is compared with all individuals with the current maximum dominance rank in front of it, and the remaining objective function value is determined to determine its dominance relationship until the dominance rank is established for all individuals. Among them, for each ranked individual, the remaining objective function value is compared with all individuals in front of it, and the maximum dominance rank of all its dominated individuals is determined. Assume that the maximum rank of the dominated individuals of this individual is l , then the dominance level of the individual is determined to be l +1; From the population A all Select one by one according to priority to enter the new population until the new population size is reached N .
2. The method according to claim 1, characterized in that The two objective functions corresponding to the two optimization objectives are: in, C max The project completion time, W is the total project cost, d j for T j duration, T j Indicates a task j , T For the task set, s j for T j The start time, x jr is the decision variable, T j Is it arranged R r , x jr ={0, 1}, w r for R r The time spent on executing the task per unit, R r Represents a resource r , R A collection of resources.
3. The method according to claim 1, characterized in that The various attributes of each task include: duration, number of predecessor tasks, number of successor tasks, number of previous tasks, number of subsequent tasks, maximum skill level requirement, remaining path length, number of remaining path tasks, latest end time, task slack time, and number of optional resources.
4. The method according to any one of claims 1 to 3, characterized in that The process of solving the objective function based on the improved gene expression programming algorithm includes: Coding process: Combine the task set and resource set of the project, and randomly generate the initial population of the project scheduling rule according to the set population size and individual head length; Decoding process: First, the chromosome is divided into several sub-bodies of the same length according to the length of the sub-body head and the shared tail. Each font gene is read and decoded one by one, and then the decoding results of several sub-bodies are summed up. Among them, the backward traversal decoding method is used to read and decode each sub-body gene one by one, and the read elements are placed in a double list. All elements of each sub-list in the list can correspond to all elements of each depth of the expression tree. The function value of each root node in the double list is calculated. After calculating the function value corresponding to each root node, the child node corresponding to the root node is deleted to reduce the space complexity of decoding.
5. The method according to claim 4, characterized in that The process of solving the objective function based on the improved gene expression programming algorithm also includes: Iteratively evolve the initial population and finally obtain the Pareto frontier solution set; In the process of iterative evolution, several basic evolution operators such as mutation, sequential insertion transposition, root transposition, single-point recombination and two-point recombination are used. A rule mining perturbation mechanism is used to break the local optimum and introduce a variety of neighborhood structures to improve the efficiency of searching for frontier solutions. The rule mining perturbation mechanism is as follows: according to the preset rules, the preset value of the perturbation is mined. d_value Make a judgment, if d_value Pareto frontier solution set within iteration F 0 does not change, then the population A Each individual in the algorithm selects the chromosome to be disturbed according to a certain perturbation probability, and then randomly initializes each selected chromosome; the various domain structures introduced include: gene position exchange, gene forward insertion, gene backward insertion, and gene fragment reversal operation.
6. The method according to claim 1, wherein The crowding distance calculation method used in the evaluation process of the solution of the objective function based on the improved gene expression programming algorithm is: , In the above formula, D n Represents an individual n The crowding distance, n∈F z , M is the set of objective functions, f m,k For individuals k The corresponding scheduling rules are in the objective function m The normalized value of the function value under n +1 and n -1 represents the set of individuals in the non-dominated layer F z After all individuals are sorted n +1 and n -1 individual.
7. A project scheduling rule mining system based on gene expression programming, characterized in that: include: A project information determination unit, used to determine the task set, resource set, and skill set of the project; The task set includes a plurality of tasks, each task corresponding to an execution start time and duration; The resource set includes multiple resources, each resource is proficient in several skills of different proficiency levels, and the skills proficient in each resource are divided into proficiency levels according to their proficiency levels; the skill set includes multiple skills; each task requires only one resource to perform, and the resource performing the task must be proficient in the skills required for the task, and the proficiency level of the required skills must be greater than a preset level; a project execution setting unit, configured to execute the project using the resource set, wherein when the project is completed, each task in the project is executed, wherein each task can only be executed once, and each resource can be used to repeatedly schedule tasks, but each resource can only execute one task at a time; The project optimization target determination unit is used to determine the project completion time based on the execution start time and duration of each task, and to determine the total cost required to complete the project based on the unit time spent by each resource when executing the task; The project optimization target solving unit is used to take the project completion time and the total cost required for project completion as two optimization targets, and to balance the minimization of the two target values with reference to the situation. Based on the improved gene expression programming algorithm, an unsupervised learning method is used to train and obtain the meta-heuristic scheduling rule of the project. The scheduling order of each task and the resources used to execute each task are determined according to the meta-heuristic scheduling rule and the multiple attributes of each task, thereby obtaining the corresponding project scheduling scheme as the mined project scheduling rule. The improved gene expression programming algorithm adopts a backward traversal decoding method in the decoding process to reduce the spatial complexity of decoding, and adds multiple neighborhood structure operators in the evolution process to improve the efficiency of searching for frontier solutions. A rule mining perturbation mechanism is added in the evolution process to prevent the evolution process from falling into a local optimum. Finally, an improved ENS hierarchical sorting method is used in the solution evaluation process to reduce the number of solution traversals. Individuals are selected to enter a new population based on the dominance and dominance relationship between solutions. The selection criteria are: individuals with lower non-dominated levels have higher priorities. Secondly, for individuals in the same non-dominated level, individuals with larger crowding distances are selected to enter the new population to increase the genetic diversity of the new population and optimize the project scheduling rule mining capability. The improved ENS hierarchical sorting method used by the project optimization target solving unit to solve the target function in the solution evaluation process based on the improved gene expression programming algorithm is specifically: The new population obtained after iteration A new and the old population before iteration A old The population A all 2 of 2 N The objective function value is evaluated for each individual, and the dominant relationship between individuals is established, and finally 2 N Individuals are decomposed into L There are non-dominated layers. The solutions in the same non-dominated layer are non-dominated relations. The relationships between different layers are as follows: F 1> ...> F z > ...> F L , In the above formula, F z For the z The set of individuals in the non-dominated layer, z ={1, 2, ..., L },exist F z All individuals in F z-1 One or several individuals dominate; For the optimization problem of two objective functions, the dominance relationship between individuals is determined by the size of all objective function values between individuals. The two objective function value matrices are sorted from small to large according to the value of a certain objective function. After this process, it can be guaranteed that the individuals in the latter order cannot dominate each individual in front of them. Then, L The loop is traversed. Each time, the individual with undetermined dominance rank is compared with all individuals with the current maximum dominance rank in front of it, and the remaining objective function value is determined to determine its dominance relationship until the dominance rank is established for all individuals. Among them, for each ranked individual, the remaining objective function value is compared with all individuals in front of it, and the maximum dominance rank of all its dominated individuals is determined. Assume that the maximum rank of the dominated individuals of this individual is l , then the dominance level of the individual is determined to be l +1; From the population A all Select one by one according to priority to enter the new population until the new population size is reached N .
8. The system according to claim 7, characterized in that The two objective functions corresponding to the two optimization objectives determined by the project optimization objective determination unit are: in, C max The project completion time, W is the total project cost, d j for T j duration, T j Indicates a task j , T For the task set, s j for T j The start time, x jr is the decision variable, T j Is it arranged R r , x jr ={0, 1}, w r for R r The time spent on executing the task per unit, R r Represents a resource r , R A collection of resources.
Citation Information
Patent Citations
Improved genetic programming algorithm optimization method for resource-constrained multi-project scheduling
CN110866586A
Product assembly scheduling method, device and equipment
CN114677028A