Multi-objective optimization apparatus based on dynamic elitist learning and dynamic environment selection

By employing a multi-objective optimization device based on dynamic elite learning and dynamic environment selection, the problem of balancing population convergence and diversity in high-dimensional multi-objective optimization is solved, resulting in more efficient optimization outcomes, particularly applicable to the planning of urban stormwater drainage systems.

CN117273055BActive Publication Date: 2026-05-05TONGJI UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TONGJI UNIV
Filing Date
2023-10-07
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing multi-objective optimization algorithms struggle to balance the convergence and diversity of populations in high-dimensional multi-objective optimization problems. This results in sparse distribution and reduced ability to distinguish dominance relationships in high-dimensional spaces, making it difficult to effectively solve high-dimensional multi-objective optimization problems.

Method used

A multi-objective optimization device based on dynamic elite learning and dynamic environment selection is adopted. The dynamic elite learning strategy promotes population convergence and improves iteration efficiency, while the dynamic environment selection strategy better balances the convergence and diversity of the population. The device includes a population iteration module, a dynamic elite learning submodule, and a dynamic environment selection submodule, and uses techniques such as convergence index and non-dominated layer generation.

Benefits of technology

It enables faster and more accurate optimization solutions in high-dimensional multi-objective optimization problems, improving population iteration efficiency and the accuracy of optimization results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117273055B_ABST
    Figure CN117273055B_ABST
Patent Text Reader

Abstract

This invention provides a multi-objective optimization device based on dynamic elite learning and dynamic environment selection, comprising: an input module for user input of m objective functions and n decision variable bounding range functions constructed according to a specified multi-objective optimization task; an initialization module for constructing and initializing a population P consisting of N individuals, and setting the iteration count G to 1; a population storage module for storing the population P; a counting storage module for storing the iteration count G and a pre-set maximum number of iterations; and a population iteration module for iteratively updating the population P based on the iteration count G, the maximum number of iterations, the decision variable bounding range functions, and the objective functions. F The output module is used to display the population P to the user. F As a preferred solution for multi-objective optimization tasks, this method can more quickly and accurately obtain the preferred solution for a given multi-objective task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of high-dimensional multi-objective optimization technology, specifically to a multi-objective optimization device based on dynamic elite learning and dynamic environment selection. Background Technology

[0002] Multi-objective optimization problems (MOPs) are optimization problems with multiple conflicting objectives. Since it is impossible to find a solution that allows all objectives to reach their optimal values ​​simultaneously, the ultimate goal of MOPs is usually to obtain a well-distributed and well-converged set of compromise solutions to approximate the Pareto Front (PF), i.e., the true optimal solution set.

[0003] Evolutionary algorithms mimic the process of biological evolution. Their basic idea is to start with a randomly generated initial population, and through simulating operations such as heredity, crossover, and mutation, generate new individuals. Then, the fitness of these individuals is evaluated using a certain assessment method. Individuals with better fitness have a greater chance of being selected as parents for the next generation, thus ensuring the continued existence and continuation of superior individuals within the population. Multi-objective evolutionary algorithms (MOEAs), with their powerful metaheuristic search capabilities and population-based framework, can effectively solve two- or three-objective MOPs.

[0004] However, due to the increase in the number of objectives, MOEAs face many challenges when used to solve high-dimensional multi-objective problems (MaOPs) with an objective dimension greater than 3. On the one hand, the ability of dominance relations to distinguish individuals weakens with the increase in the number of objectives, leading to a sharp increase in the proportion of non-dominated solutions in the population; on the other hand, the sparsity of the solution distribution in high-dimensional space makes it more difficult for MOEAs to maintain distribution.

[0005] In recent years, three main categories of high-dimensional multi-objective evolutionary algorithms have been proposed to address the challenges in high-dimensional multi-objective optimization problems: dominance-based evolutionary algorithms, index-based evolutionary algorithms, and decomposition-based evolutionary algorithms. While these three types of algorithms have addressed the challenges mentioned above to some extent, they all suffer from the problem of failing to adequately balance population convergence and diversity. This balance significantly impacts the performance of the evolutionary algorithm. Summary of the Invention

[0006] This invention is made to solve the above-mentioned problems, and aims to provide a multi-objective optimization device based on dynamic elite learning and dynamic environment selection.

[0007] This invention provides a multi-objective optimization device based on dynamic elite learning and dynamic environment selection, characterized by comprising: an input module for user input of m objective functions and n decision variable bounding range functions constructed according to a specified multi-objective optimization task; an initialization module for constructing and initializing a population P comprising N individuals and setting the iteration count G to 1; a population storage module for storing the population P; and a count storage module for storing the iteration count G and a pre-set maximum iteration count G. max The population iteration module is used to determine the number of iterations G and the maximum number of iterations G. max The population P is obtained by iteratively updating the population P using the decision variable bounding range function and the objective function. F The output module is used to display the population P to the user. F As a preferred solution for multi-objective optimization tasks, the population iteration module includes an iteration judgment submodule, a population update submodule, a dynamic elite learning submodule, and a dynamic environment selection submodule. The iteration judgment submodule is used to determine whether the iteration count G in the counting storage module is greater than the maximum iteration count G. mdx If so, then the population P in the population storage module will be used as the population P. F The input / output module is configured. If not, the population P in the population storage module is input into the population update submodule. The population update submodule is used to perform pairing, crossover, mutation, and merging operations on the input population P in sequence to obtain population S. The dynamic elite learning submodule is used to perform dynamic elite learning on population S according to the objective function and the decision variable bounding range function to obtain population S′. The dynamic environment selection submodule is used to update the population P in the population storage module according to the objective function and population S′, and increment the iteration count G in the counting storage module by 1.

[0008] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by the present invention may also have the following features: wherein the population update submodule includes a pairing unit, a crossover unit, a mutation unit, and a merging unit. The pairing unit is used to randomly select individuals from the population P to construct N / 2 sets of parent generations, each set of parent generations including two individuals. The crossover unit is used to perform crossover operations on the N / 2 sets of parent generations respectively to obtain N offspring individuals. The mutation unit is used to perform mutation operations on the N offspring individuals respectively to obtain N updated offspring individuals. The merging unit is used to construct a population S based on the N updated offspring individuals and the N individuals in the population P.

[0009] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following features: the dynamic elite learning submodule includes a first convergence index calculation unit, a first screening unit, a random number generation unit, an acceptance probability generation unit, a second screening unit, an elite learning unit, an evaluation unit, and a population S′ generation unit. The first convergence index calculation unit is used to calculate the convergence index Con1 corresponding to each individual in the population S according to the objective function. The first screening unit is used to sort all convergence indices Con1 from smallest to largest, and take the individuals corresponding to the top 10% of convergence indices Con1 as the elite set Q. elite The individuals corresponding to the last 25% of convergence index Con1 are used as the range set Q. nadir The random number generation unit is used to generate the range set Q. nadir Each individual in the process generates a corresponding random number. The acceptance probability generation unit stores a preset acceptance probability formula, which is used to determine the acceptance probability based on the current iteration number G and the maximum iteration number G. max The acceptance probability P is calculated using the formula for acceptance probability. acp The second screening unit is used to select all random numbers less than the acceptance probability P. acp The individuals in the elite learning set are treated as an elite learning unit. Each elite learning unit stores a preset elite learning formula, which is used to apply the formula to each individual x in the elite learning set. nadir From the elite collection Q elite Randomly select an individual x elite According to the individual x nadir The individual x elite By using the formula learned from elites, the individual x can be calculated. nadir The corresponding individual x′ nadir The evaluation unit is used to evaluate each individual x′ based on the bounded range function of the decision variables. nadir Adjusting the decision variables in the data yields the corresponding individual x″. nadir The population S′ generating unit is used to generate each individual x in the population S. nadir Replace with the corresponding individual x″ nadir Thus, the population S′ is obtained.

[0010] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following feature: wherein the formula for calculating the convergence index Con1 is: In the formula, Con1(x) is the convergence index Con1 corresponding to individual x, f i Let (x) be the target value calculated by individual x according to the i-th objective function. The expression for the acceptance probability formula is: The formula for elite learning is expressed as follows: In the formula For individual x′nadir The k-th decision variable, For individual x nadir The k-th decision variable, 0.1*rand2 is the learning rate, and rand2 is a random number between 0 and 1. For individual x elite The k-th decision variable, where d is the total number of individual decision variables.

[0011] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by the present invention may also have the following features: wherein the decision variable bounding range function includes an upper limit threshold and a lower limit threshold of the corresponding decision variable, and the specific process of the evaluation unit adjusting the decision variable is as follows: determine whether the value of the decision variable is greater than the upper limit threshold of the corresponding decision variable bounding range function; if so, the upper limit threshold is used as the value of the decision variable; determine whether the value of the decision variable is less than the lower limit threshold of the corresponding decision variable bounding range function; if so, the lower limit threshold is used as the value of the decision variable.

[0012] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following features: the dynamic environment selection submodule includes an initialization unit, a second convergence index calculation unit, a non-dominated layer generation unit, and a population Q... n Generating unit, first judgment unit, population Q′ n Generating unit, population P G+1 Storage unit, population Q′ n The system comprises a storage unit, a two-level selection strategy unit, and a first update unit. The initialization unit is used to set the flag to 1 and construct an empty population P. G+1 Population Q n and population Q′ n The second convergence index calculation unit is used to calculate the convergence index Con2 for each individual in the population S′ according to the objective function. The non-dominated layer generation unit is used to perform non-dominated sorting on all individuals in the population S′ to obtain multiple non-dominated layers. The population Q n The generating unit is used to sequentially add individuals from each non-dominated layer to the population Q. n Until the total number of individuals in the next non-dominated layer equals the population Q. n If the sum of the total number of individuals in a layer is greater than N, then that non-dominated layer is designated as the key layer F. c and population Q n Input the first judgment unit, which is used to judge the population Q. n Does the total number of individuals in the population equal N? If so, then change the population size Q. n As population P G+1 Input the first update unit; if not, then change the key layer F. cAll individuals join population Q n And input the population Q′ n Generating unit, population Q′ n The generation unit stores a preset elite maintenance strategy, which is used to select from the population Q based on the elite maintenance strategy and the convergence index Con2. n Select 3m elite individuals to join the population P G+1 And store it in population P G+1 The storage unit will extract the population Q. n As population Q′ n Stored in population Q′ n Storage unit, population P G+1 The storage unit is used to store the population P G+1 Population Q′ n The storage unit is used to store the population Q′ n The two-level selection strategy unit is used to select based on population P. G+1 Population P of storage units G+1 , flag and population Q′ n For population P G+1 Update the population P. G+1 The first update unit is used to replace all individuals of population P in the population storage module with the input population P. G+1 For all individuals, increment the iteration count G in the counting storage module by 1.

[0013] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following feature: wherein the convergence index Con2 is calculated using the following formula: In the formula, Con2(x) is the convergence index Con2 corresponding to individual x, f i (x) represents the target value of individual x calculated based on the i-th objective function.

[0014] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following feature: wherein the 3m elite individuals are m boundary individuals x b m optimal convergent individuals x o and m individuals with angles x c m boundary individuals x b For population Q n Let m individuals have the smallest vector angle with each of the m coordinate axes. The formula for calculating the vector angle is: In the formula Let F be the smallest vector angle among all vector angles corresponding to individual x and unit vectors on the m coordinate axes, P be the set of unit vectors on the m coordinate axes, A(x, y) be the vector angle between individual x and individual y, and F be the smallest vector angle among all vector angles corresponding to individual x and individual y. n (x) is the standardized target vector of individual x, F n (x)·F n (y) is the inner product of the target vector of individual x and the target vector of individual y. Let x be the standardized target value of individual x, and m be the optimal convergent individuals x. o For population Q n The m individuals corresponding to the smallest convergence indices Con2, and the m angular individuals x c For population Q n The m individuals corresponding to the minimum objective value of each objective function, and the individual corresponding to the minimum objective value of the i-th objective function. The expression is: In the formula f j (x) represents the target value of individual x corresponding to the j-th objective function.

[0015] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following feature: wherein the two-layer selection strategy unit includes a computational control subunit, a vector angle computation subunit, and a population Q... c Generate sub-units, individual x s The system consists of a generation subunit, a second update subunit, and a second judgment subunit. A calculation control subunit is used to determine if the flag is 1. If it is, the control vector angle calculation subunit performs the calculation and sets the flag to 0. If not, the control population Q is... c The generation sub-unit performs calculations. The vector angle calculation sub-unit stores a preset vector angle calculation formula, which is used to calculate the population P. G+1 For any two individuals in the population, the smallest vector angle between them is taken as the minimum vector angle for that individual. The population Q is then... c The generated subunits store a preset formula for calculating the quantity K, which is used to calculate the quantity Q′ based on the population. n Calculate the population size K, and select the K individuals corresponding to the maximum values ​​from all the minimum vector angles as the population Q. c Individual x s Generating subunits is used to generate subunits from population Q c The individual with the smallest convergence index Con2 is selected as individual x. s The second update subunit is used to update individual x s Join population P G+1 and remove it from population Q′ n Delete the second judgment subunit used to judge the population Q′.n The individual and individual x in s If the vector angle is less than the minimum vector angle corresponding to the individual, then compare the individual with individual x. s The vector angle is taken as the minimum vector angle of the individual, and the population Q′ is stored separately. n and population P G+1 To population P G+1 Storage unit and population Q′ n Storage unit; if not, store population Q′ separately. n and population P G+1 To population P G+1 Storage unit and population Q′ n Storage unit.

[0016] The multi-objective optimization device based on dynamic elite learning and dynamic environment selection provided by this invention may also have the following feature: wherein the expression for the formula for calculating the quantity K is: K=ceil[|Q′ n |·r], In the formula, ceil[] is the floor function, |Q′ n |For population Q′ n The total number of individuals in the group.

[0017] The role and effect of invention

[0018] According to the multi-objective optimization apparatus based on dynamic elite learning and dynamic environment selection of the present invention, on the one hand, the dynamic elite learning submodule executes a dynamic elite learning strategy, thereby promoting population convergence and improving population iteration efficiency; on the other hand, the dynamic environment selection submodule executes a dynamic environment selection strategy, thereby better balancing population convergence and diversity. Therefore, the multi-objective optimization apparatus based on dynamic elite learning and dynamic environment selection of the present invention can obtain a more accurate and faster optimal solution for a specified multi-objective task. Attached Figure Description

[0019] Figure 1 This is a block diagram of a multi-objective optimization device in an embodiment of the present invention;

[0020] Figure 2 This is a block diagram of the population iteration module in an embodiment of the present invention;

[0021] Figure 3 The maximum number of iterations G in the embodiments of the present invention max When the probability of acceptance is 500, P acp A schematic diagram of the change curve;

[0022] Figure 4 This is a block diagram of the dynamic environment selection submodule in an embodiment of the present invention;

[0023] Figure 5 This is a schematic diagram illustrating the principle of the elite maintenance strategy in two-dimensional space in an embodiment of the present invention;

[0024] Figure 6 This is a schematic diagram illustrating the principle of the two-layer selection strategy in two-dimensional space in an embodiment of the present invention. Detailed Implementation

[0025] To make the technical means, creative features, objectives and effects of the present invention easy to understand, the following embodiments, in conjunction with the accompanying drawings, specifically illustrate the multi-objective optimization device based on dynamic elite learning and dynamic environment selection of the present invention.

[0026] This embodiment uses a multi-objective optimization device based on dynamic elite learning and dynamic environment selection to provide optimal planning schemes for urban stormwater drainage systems. It constructs an objective function for the multi-objective optimization task by collecting urban rainfall-related data, drainage network data, on-site retention and storage facility data, treatment plant data, and tributary data of receiving water bodies. This objective function includes drainage network cost, storage facility cost, treatment facility cost, expected flood damage cost, and expected economic losses due to floods. It also sets local retention and storage capacity x1, maximum processing rate x2, and maximum allowable overflow rate x3 as decision variables to construct corresponding decision variable boundary range functions. Furthermore, based on the multi-objective optimization device, it obtains multiple preferred schemes corresponding to local retention and storage capacity x1, maximum processing rate x2, and maximum allowable overflow rate x3. Finally, it plans and designs the city's stormwater drainage system according to the preferred schemes.

[0027] Figure 1 This is a block diagram of a multi-objective optimization device in an embodiment of the present invention.

[0028] like Figure 1 As shown, the multi-objective optimization device 100 of this embodiment includes an input module 10, an initialization module 20, a population storage module 30, a count storage module 40, a population iteration module 50, an output module 60, and a control module 70 for controlling the above modules.

[0029] The input module 10 is used for user input of m objective functions and n decision variable bounding range functions constructed according to the specified multi-objective optimization task. The decision variable bounding range functions include the upper limit threshold and lower limit threshold of the corresponding decision variables.

[0030] In this embodiment, the m objective functions and the bounding function of the n decision variables are the MaF1 test function. This test function is a multi-objective optimization problem function in which both the number of decision variables and the number of objectives can be adjusted. The expressions for the m objective functions of the MaF1 test function are as follows:

[0031]

[0032]

[0033] In the formula, M = m is the total number of objective functions, f M Let (x) be the Mth objective function, where x = (x1, x2, ..., xn). D Let x be the decision vector, D be the total number of decision variables, and x be the decision vector. D Let be the Dth decision variable.

[0034] The expression for the bounded range function of the n decision variables in the MaF1 test function is:

[0035] 0≤x i ≤1, i=1,2,...j,

[0036] In the formula x i Let be the i-th decision variable, and j be the total number of decision variables.

[0037] In this embodiment, the expression of the MaF1 test function can reflect a general multi-objective optimization problem. Based on the specified multi-objective optimization task and the MaF1 test function, an objective function and a decision variable bounding range function suitable for the specified multi-objective optimization task can be constructed as the multi-objective task function. Therefore, the objective function and decision variable bounding range function of the optimal planning scheme of the urban stormwater drainage system in this embodiment are as follows:

[0038]

[0039] g1(x)=0.00139 / (x1x2)+4.94x3-0.08≤1,

[0040] g2(x)=0.000306 / (x1x2)+1.082x3-0.0986≤1,

[0041] g3(x)=12.307 / (x1x2)+49408.24x3-40581.02≤50000,

[0042] g4(x)=2.098 / (x1x2)+8046.33x3-696.71≤16000,

[0043] g5(x)=2.138 / (x1x2)+7883.39x3-705.04≤10000,

[0044] g6(x)=0.417 / (x1x2)+1721.26x3-136.54≤2000,

[0045] g7(x)=0.164 / (x1x2)+631.13x3-54.48≤5.50.

[0046] The initialization module 20 is used to construct and initialize a population P consisting of N individuals, and to set the iteration number G to 1.

[0047] Population storage module 30 is used to store population P.

[0048] The counting storage module 40 is used to store the number of iterations G and the preset maximum number of iterations G. max .

[0049] The population iteration module 50 is used to determine the number of iterations G and the maximum number of iterations G. max The population P is obtained by iteratively updating the population P using the decision variable bounding range function and the objective function. F .

[0050] Figure 2 This is a block diagram of the population iteration module in an embodiment of the present invention.

[0051] like Figure 2 As shown, the population iteration module 50 includes an iteration judgment submodule 501, a population update submodule 502, a dynamic elite learning submodule 503, a dynamic environment selection submodule 504, and a population iteration control submodule 505 for controlling the above submodules.

[0052] The iteration judgment submodule 501 is used to determine whether the iteration number G in the counting storage module 40 is greater than the maximum iteration number G. max If so, then the population P in the population storage module 30 will be used as the population P. F If not, input the population P in the population storage module 30 into the population update submodule 502.

[0053] The population update submodule 502 is used to perform pairing, crossover, mutation and merging operations on the input population P in sequence to obtain the population S.

[0054] The population update submodule 502 includes a pairing unit 5021, a crossover unit 5022, a mutation unit 5023, and a merging unit 5024.

[0055] The pairing unit 5021 is used to randomly select individuals from the population P to construct N / 2 parent groups, each parent group consisting of two individuals.

[0056] Crossover unit 5022 is used to perform crossover operations on N / 2 parent generations respectively to obtain N offspring individuals.

[0057] Mutation unit 5023 is used to perform mutation operations on N offspring individuals to obtain N updated offspring individuals.

[0058] The merging unit 5024 is used to construct a population S based on N updated offspring individuals and N individuals in the population P.

[0059] The dynamic elite learning submodule 503 is used to perform dynamic elite learning on the population S based on the objective function and the bounding range function of the decision variables to obtain the population S′.

[0060] The dynamic elite learning submodule 503 includes a first convergence index calculation unit 5031, a first screening unit 5032, a random number generation unit 5033, an acceptance probability generation unit 5034, a second screening unit 5035, an elite learning unit 5036, an evaluation unit 5037, and a population S′ generation unit 5038.

[0061] The first convergence index calculation unit 5031 is used to calculate the convergence index Con1 corresponding to each individual in the population S according to the objective function. The formula for calculating the convergence index Con1 is as follows:

[0062]

[0063] In the formula, Con1(x) is the convergence index Con1 corresponding to individual x, f i (x) represents the target value of individual x calculated based on the i-th objective function.

[0064] The first screening unit 5032 is used to sort all convergence indices Con1 from smallest to largest, and select the top 10% of individuals corresponding to convergence indices Con1 as the elite set Q. elite, The individuals corresponding to the convergence index Con1 in the last 25% are taken as the range set Q. nadir .

[0065] The random number generation unit 5033 is used for the range set Q nadir Each individual in the process generates a corresponding random number.

[0066] The acceptance probability generation unit 5034 stores a preset acceptance probability formula, which is used to generate the acceptance probability based on the current iteration number G and the maximum iteration number G. max The acceptance probability P is calculated using the formula for acceptance probability. acp The expression for the acceptance probability formula is:

[0067]

[0068] Figure 3 The maximum number of iterations G in the embodiments of the present invention max When the probability of acceptance is 500, P acp A schematic diagram of the change curve.

[0069] like Figure 3As shown, the horizontal axis represents the current iteration number, and the vertical axis represents the acceptance probability P corresponding to the current iteration number. acp The solid line represents the acceptance probability curve P. acp The dashed line represents the reference curve, from which the acceptance probability P can be seen. acp In the early stages of iteration, the decay is relatively slow, meaning that individuals with poor convergence in the population have a higher probability of participating in elite learning. In the middle stages of iteration, the acceptance probability P... acp It begins to decline rapidly, thus avoiding the impact of elite learning on population diversity in the later stages.

[0070] The second screening unit 5035 is used to select all random numbers that are less than the acceptance probability P. acp Individuals are collected as an elite learning group.

[0071] Elite learning unit 5036 stores preset elite learning formulas, which are used to apply to each individual x in the elite learning set. nadi r, from the elite collection Q elite Randomly select an individual x elite According to the individual x nadir The individual x elite By using the formula learned from elites, the individual x can be calculated. nadir The corresponding individual x′ nadir The formula for elite learning is expressed as follows:

[0072]

[0073] In the formula For individual x′ nadir The k-th decision variable, For individual x nadir The k-th decision variable, 0.1*rand2 is the learning rate, and rand2 is a random number between 0 and 1. For individual x elite The k-th decision variable, where d is the total number of individual decision variables.

[0074] Evaluation unit 5037 is used to evaluate each individual x′ based on the decision variable bounding range function. nadir Adjusting the decision variables in the data yields the corresponding individual x″. nadir .

[0075] The specific process by which the evaluation unit adjusts decision variables is as follows:

[0076] First, determine whether the value of the decision variable is greater than the upper threshold of the corresponding decision variable bounding range function. If so, use the upper threshold as the value of the decision variable. Second, determine whether the value of the decision variable is less than the lower threshold of the corresponding decision variable bounding range function. If so, use the lower threshold as the value of the decision variable.

[0077] Population S′ generation unit 5038 is used to generate each individual x in population S nadir Replace with the corresponding individual x″ nadir Thus, the population S′ is obtained.

[0078] The dynamic environment selection submodule 504 is used to update the population P in the population storage module 30 according to the objective function and the population S′, and to increment the iteration count G in the counting storage module 40 by 1.

[0079] Figure 4 This is a block diagram of the dynamic environment selection submodule in an embodiment of the present invention.

[0080] like Figure 4 As shown, the dynamic environment selection submodule 504 includes an initialization unit 5041, a second convergence index calculation unit 5042, a non-dominated layer generation unit 5043, and a population Q... n Generation unit 5044, first judgment unit 5045, population Q′ n Generation unit 5046, population P G+1 Storage unit 5047, population Q′ n The system includes a storage unit 5048, a two-layer selection strategy unit 5049, a first update unit 5040, and a dynamic environment selection control unit 5050 for controlling the above modules.

[0081] Initialization unit 5041 is used to set the flag to 1 and construct an empty population P. G+1 Population Q n and population Q′ n .

[0082] The second convergence index calculation unit 5042 is used to calculate the convergence index Con2 corresponding to each individual in the population S′ according to the objective function.

[0083] The non-dominated layer generation unit 5043 is used to perform non-dominated sorting on all individuals in the population S′ to obtain multiple non-dominated layers. In this embodiment, the non-dominated layer generation unit 5043 determines the dominance relationship of all individuals based on the individual's target value, thereby realizing non-dominated sorting.

[0084] Population Q n Generation unit 5044 is used to sequentially add individuals from each non-dominated layer to population Q. nUntil the total number of individuals in the next non-dominated layer equals the population Q. n If the sum of the total number of individuals in a layer is greater than N, then that non-dominated layer is designated as the key layer F. c and population Q n Input the first judgment unit 5045.

[0085] The first judgment unit 5045 is used to judge the population Q. n Does the total number of individuals in the population equal N? If so, then change the population size Q. n As population P G+1 Input the first update unit 5040; otherwise, set the key layer F. c All individuals join population Q n And input the population Q′ n Generation unit 5046.

[0086] Population Q′ n The generation unit 5046 stores a preset elite maintenance strategy, which is used to generate elites from the population Q according to the elite maintenance strategy. n Select 3m elite individuals to join the population P G+1 And store it in population P G+1 Storage unit 5047 will extract the population Q. n As population Q′ n Stored in population Q′ n Storage unit 5048.

[0087] Among them, the 3m elite individuals are the m boundary individuals x b m optimal convergent individuals x o and m individuals with angles x c .

[0088] m boundary individuals x b For population Q n The m individuals are defined as having the smallest vector angle with the unit vectors on the m coordinate axes respectively. In this embodiment, the unit vectors on the m coordinate axes are (1, 0, ..., 0), (0, 1, ..., 0), ... (0, 0, ..., 1).

[0089] The formula for calculating the vector angle is:

[0090]

[0091]

[0092] In the formula Let F be the smallest vector angle among all vector angles corresponding to individual x and unit vectors on the m coordinate axes, P be the set of unit vectors on the m coordinate axes, A(x, y) be the vector angle between individual x and individual y, and F be the smallest vector angle among all vector angles corresponding to individual x and individual y. n(x) is the standardized target vector of individual x, F n (x)·F n (y) is the inner product of the target vector of individual x and the target vector of individual y. Let x be the standardized target value for the i-th individual.

[0093] m optimal convergent individuals x o For population Q n The individuals corresponding to the smallest m convergence indices Con2.

[0094] m individuals with angles x c For population Q n The m individuals corresponding to the minimum objective value of each objective function, and the individual corresponding to the minimum objective value of the i-th objective function. The expression is:

[0095]

[0096]

[0097] In the formula f j (x) represents the target value of individual x corresponding to the j-th objective function.

[0098] Figure 5 This is a schematic diagram illustrating the principle of the elite maintenance strategy in two-dimensional space in an embodiment of the present invention.

[0099] like Figure 5 As shown, the horizontal axis represents the individual's target value after the second standardization. The ordinate represents the individual's target value after the first standardization. Y1, Y2, Y3, Y4, X1, X2, X3, and X4 are all populations Q. n In the population P, the black solid lines represent the contour lines of the convergence index Con2. Therefore, Y1 and Y4 are both boundary individuals and corner individuals, while Y2 and Y3 are the optimal convergent individuals. Thus, they are added to the population P. G+1 The elite individuals include Y1, Y2, Y3, and Y4.

[0100] Population P G+1 Storage unit 5047 is used to store population P G+1 .

[0101] Population Q′ n Storage unit 5048 is used to store population Q′ n .

[0102] The two-layer selection strategy unit 5049 is used to select based on population P G+1 Population P of storage units G+1 , flag and population Q′n For population P G+1 Update the population P. G+1 Enter the first update unit 5040.

[0103] The two-layer selection strategy unit 5049 includes a calculation control subunit 5051, a vector angle calculation subunit 5052, and a population Q. c Generate subunit 5053, individual x s Generation subunit 5054, second update subunit 5055, and second judgment subunit 5056.

[0104] The calculation control subunit 5051 is used to determine whether the flag is 1. If it is, the control vector angle calculation subunit 5052 performs the calculation and sets the flag to 0. If not, the control population Q is controlled. c Subunit 5053 is generated for calculation.

[0105] The vector angle calculation subunit 5052 stores a preset vector angle calculation formula, which is used to calculate the population P. G+1 The vector angle between any two individuals is used to obtain the smallest vector angle for each individual. In this embodiment, the vector angle between individuals x and y obtained by the vector angle calculation formula is A(x, y).

[0106] Population Q c The generation subunit 5053 stores a preset formula for calculating the quantity K, which is used to calculate the population Q′. n Calculate the population size K, and select the K individuals corresponding to the maximum values ​​from all the minimum vector angles as the population Q. c The expression for the formula to calculate the quantity K is:

[0107] K = ceil[|Q′] n |·r],

[0108]

[0109] In the formula, ceil[] is the floor function, |Q′ n |For population Q′ n The total number of individuals in the group.

[0110] Individual x s Generating subunit 5054 is used to generate subunit Q from population Q c The individual with the smallest convergence index Con2 is selected as individual x. s .

[0111] The second update subunit 5055 is used to update individual x s Join population P G+1 and remove it from population Q′n Delete it.

[0112] The second judgment subunit 5056 is used to judge the population Q′ n The individual and individual x in s If the vector angle is less than the minimum vector angle corresponding to the individual, then compare the individual with individual x. s The vector angle is taken as the minimum vector angle of the individual, and the population Q′ is stored separately. n and population P G+1 To population P G+1 Storage unit 5047 and population Q′ n Storage unit 5048, if not, then store population Q′ respectively. n and population P G+1 To population P G+1 Storage unit 5047 and population Q′ n Storage unit 5048.

[0113] Figure 6 This is a schematic diagram illustrating the principle of the two-layer selection strategy in two-dimensional space in an embodiment of the present invention.

[0114] like Figure 6 As shown, the x-axis of (a) and (b) represents the individual's target value after the second standardization. The vertical axis represents the individual's target value after the first standardization. The solid black line represents the contour lines of the convergence index Con2. The two individuals connected by the arrow curve are the pairs of individuals with the smallest vector angle. The target population size N is 5 and the population P... G+1 Since there are already four individuals in the population, namely Y1, Y2, Y3, and Y4, it is necessary to select one more individual from the population Q′n that matches the population P. G+1 The individual with the smallest vector angle is added to population P. G+1 That is, select one individual from X1, X2, X3, and x4 to join the population P. G+1 There are two scenarios: (a) is the early stage of iteration, and (b) is the later stage of iteration. In (a), according to the formula for calculating the number K, K = 3. Therefore, the three individuals with the larger minimum vector angles, x1, X2, and X3, are added to the population Q. c X1 showed the best convergence, therefore X1 was added to the population P. G+1 In (b), according to the formula for calculating the quantity K, K = 1. Therefore, only the individual X3 with the largest minimum vector angle is added to the population Q. c Therefore, X3 was chosen to join population P. G+1 .

[0115] The first update unit 5040 is used to replace all individuals of population P in the population storage module 30 with the input population P. G+1For all individuals, increment the iteration count G in the counting storage module 40 by 1.

[0116] The dynamic environment selection control unit 5050 stores a computer program for controlling the operation of each constituent unit of the dynamic environment selection submodule 504.

[0117] The population iteration control submodule 505 stores a computer program for controlling the operation of each constituent submodule of the population iteration module 50.

[0118] Output module 60 is used to display population P to the user. F As a preferred solution for multi-objective optimization tasks.

[0119] The control module 70 stores a computer program for controlling the operation of each component module of the multi-objective optimization device 100.

[0120] The role and effect of the embodiments

[0121] According to the multi-objective optimization device based on dynamic elite learning and dynamic environment selection involved in this embodiment, on the one hand, the dynamic elite learning submodule executes a dynamic elite learning strategy, thereby promoting population convergence and improving population iteration efficiency; on the other hand, the dynamic environment selection submodule executes a dynamic environment selection strategy, thereby better balancing population convergence and diversity. In summary, this method can obtain a more accurate optimal solution for a specified multi-objective task more quickly.

[0122] The above embodiments are preferred embodiments of the present invention and are not intended to limit the scope of protection of the present invention.

Claims

1. A multi-objective optimization device based on dynamic elite learning and dynamic environment selection, used to provide optimal planning schemes for urban stormwater drainage systems, characterized in that, include: The input module is used for user input based on a specified multi-objective optimization task. The objective function and A function defining the bounded range of decision variables. The objective function is constructed by collecting urban rainfall-related data, drainage network data, on-site retention and storage facility data, treatment plant data, and DC data from receiving water bodies. The objective function includes sorting Water network costs, storage facility costs, treatment facility costs, anticipated flood damage costs, and anticipated economic losses due to flooding. The decision variable bounding range function includes local lingering storage capacity, maximum processing rate, and maximum allowable overflow rate; The initialization module is used to build and initialize components including... Population of individuals And set the number of iterations. =1; Population storage module, used to store the population ; A counting storage module is used to store the number of iterations. and the pre-set maximum number of iterations ; The population iteration module is used to determine the number of iterations. The maximum number of iterations The decision variable bounding range function and the objective function for the population The population is obtained through iterative updates. ; The output module is used to display the population to the user. As a preferred solution for the aforementioned multi-objective optimization task, The population iteration module includes an iteration judgment submodule, a population update submodule, a dynamic elite learning submodule, and a dynamic environment selection submodule. The iteration judgment submodule is used to determine the number of iterations in the counting storage module. Is it greater than the maximum number of iterations? If so, then the population in the population storage module will be... As the population And input to the output module; if not, then input the population from the population storage module. Input the population update submodule, The population update submodule is used to update the input population. The population is obtained by performing pairing, crossover, mutation, and merging operations in sequence. , The dynamic elite learning submodule is used to train the population based on the objective function and the decision variable bounding range function. Dynamic elite learning is used to obtain a population. , The dynamic environment selection submodule is used to select the target function and the population based on the objective function. For the population in the population storage module Update the count and store the iteration count in the counting module. Add 1, The dynamic elite learning submodule includes a first convergence index calculation unit, a first screening unit, a random number generation unit, an acceptance probability generation unit, a second screening unit, an elite learning unit, an evaluation unit, and a population. Generating unit, The first convergence index calculation unit is used to calculate the population based on the objective function. Convergence indices for each individual , The first filtering unit is used to filter all convergence indices. Sort the convergence indices from smallest to largest, and select the top 10% as convergence indices. The corresponding individuals form an elite group. The convergence index of the last 25% The corresponding individuals are the set of range points. , The random number generation unit is used to generate the set of extreme points. Each individual in the process generates a corresponding random number. The acceptance probability generation unit stores a preset acceptance probability formula, which is used to generate the acceptance probability based on the current iteration number. The maximum number of iterations The acceptance probability is calculated using the aforementioned acceptance probability formula. , The second filtering unit is used to ensure that all the random numbers are less than the acceptance probability. Individuals as an elite learning collective, The elite learning unit stores preset elite learning formulas, which are used to learn from each individual in the elite learning set. From the elite set Randomly select an individual According to the individual The individual The individual is calculated using the elite learning formula. Corresponding individuals , The evaluation unit is used to evaluate each individual based on the decision variable bounded range function. Adjusting the decision variables in the data yields the corresponding individual. , The population The generation unit is used to generate the population Each of the individuals mentioned in Replace with the corresponding individual The population was obtained. , The expression for the objective function is as follows: , , In the formula The total number of objective functions. For the first One objective function, Let be the decision vector. The total number of decision variables, For the first One decision variable.

2. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 1, characterized in that: in, The population update submodule includes pairing units, crossover units, mutation units, and merging units. The pairing unit is used to select from the population The individuals are randomly selected to construct Each parent generation group comprises two individuals. The cross unit is used for... Perform crossover operations on the parent and child groups respectively to obtain Individual offspring The mutation unit is used for... Each offspring individual undergoes a mutation operation to obtain... One updated offspring individual, The merging unit is used to, according to the Updated offspring individuals and the population In Individuals construct the population. .

3. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 1, characterized in that: in, The convergence index The calculation formula is: , In the formula For individuals Corresponding convergence index , For individuals According to the The target value is calculated using one objective function. The expression for the acceptance probability formula is: , The expression for the elite learning formula is: , In the formula For individuals The One decision variable, For individuals The One decision variable, For learning rate, A random number between 0 and 1 For individuals The One decision variable, This represents the total number of individual decision variables.

4. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 1, characterized in that: in, The decision variable bounding range function includes the upper and lower threshold values ​​of the corresponding decision variable. The specific process by which the evaluation unit adjusts the decision variables is as follows: Determine whether the value of the decision variable is greater than the upper threshold of the corresponding decision variable bounding range function. If so, use the upper threshold as the value of the decision variable. Determine whether the value of the decision variable is less than the lower limit threshold of the corresponding decision variable bounding range function. If so, use the lower limit threshold as the value of the decision variable.

5. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 1, characterized in that: in, The dynamic environment selection submodule includes an initialization unit, a second convergence index calculation unit, a non-dominated layer generation unit, and a population... Generation unit, first judgment unit, population Generating unit, population Storage unit, population Storage unit, two-level selection strategy unit, and first update unit. The initialization unit is used to set the identifier. Set the value to 1 and construct an empty population. Population and population , The second convergence index calculation unit is used to calculate the population based on the objective function. Convergence indices for each individual , The non-dominated layer generation unit is used for the population All individuals are sorted into multiple non-dominated layers. The population The generation unit is used to sequentially add individuals from each of the non-dominated layers into the population. Until the total number of individuals in the next non-dominated layer is equal to the population. The sum of the total number of individuals in the group is greater than Then the non-dominated layer is designated as the key layer. and the population Input the first judgment unit. The first determination unit is used to determine the population. Is the total number of individuals equal to If so, then the population will be... As the population Input the first update unit; if not, then the key layer... All individuals join the population And input the population Generating unit, The population The generation unit stores a preset elite maintenance strategy, used to generate units based on the elite maintenance strategy and the convergence index. From the population Extract An elite individual joins the population. And stored in the population The storage unit will contain the extracted population. As the population Stored to the population Storage unit, The population The storage unit is used to store the population. , The population The storage unit is used to store the population. , The two-layer selection strategy unit is used to select based on the population. population of storage units The identifier and the population For the population Update the population and provide the updated population data. Input the first update unit. The first update unit is used to update the population in the population storage module. All individuals are replaced with the input population. All individuals, and the number of iterations in the counting storage module. Add 1.

6. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 5, characterized in that: in, The convergence index The calculation formula is: , In the formula For individuals Corresponding convergence index , For individuals According to the The target value is calculated using an objective function.

7. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 5, characterized in that: in, elite individuals individual at the boundary , The optimal convergent individual and Individual , The individual at the boundary For the population China and The unit vector on each coordinate axis has the smallest vector angle. For each individual, the formula for calculating the vector angle is: , , In the formula For individuals and The smallest vector angle among all vector angles corresponding to a unit vector on each coordinate axis. for A set of unit vectors on each coordinate axis For individuals and individuals The vector angle, For individuals The standardized target vector, For individuals Target vector and individual The inner product of the target vectors, For individuals No. A standardized target value, The The optimal convergent individual For the population The smallest corresponding to the middle Convergence Indicators individuals, The Individual For the population The values ​​of the objects that have the minimum objective value for each of the aforementioned objective functions are respectively... The individual, the first The individual corresponding to the minimum objective value of each objective function The expression is: , , In the formula For individuals With the The target value corresponding to each objective function.

8. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 5, characterized in that: in, The two-layer selection strategy unit includes a computational control subunit, a vector angle calculation subunit, and a population. Generate sub-units and individuals Generation subunit, second update subunit, and second judgment subunit. The calculation control subunit is used to determine the identifier. If the value is 1, then control the vector angle calculation subunit to perform the calculation and set the identifier. Set to 0; otherwise, control the population. Generate sub-units for calculation. The vector angle calculation subunit stores a preset vector angle calculation formula, which is used to calculate the population. The smallest vector angle between any two individuals is taken as the smallest vector angle for that individual. The population The generated sub-units are stored in a preset number. Calculation formula, used based on the population Calculated quantity Select from all minimum vector angles The individuals corresponding to the maximum values ​​are used as the population. , The individual Generating subunits is used from the population Select the one with the smallest convergence index. The individual as an individual , The second update subunit is used to update the individual Join the population and remove it from the population Delete, The second judgment subunit is used to judge the population. The individuals in the and the individuals mentioned above If the vector angle is less than the minimum vector angle corresponding to the individual, then the individual is compared with the individual. The vector angle is taken as the minimum vector angle of the individual, and the population is stored accordingly. and the population To the population Storage unit and the population Storage units, or if not, respectively store the population. and the population To the population Storage unit and the population Storage unit.

9. The multi-objective optimization device based on dynamic elite learning and dynamic environment selection according to claim 8, characterized in that: in, The quantity The expression for the calculation formula is: , , In the formula It is a rounding function. For population The total number of individuals in the group.

Citation Information

Patent Citations

  • Workflow scheduling method and system oriented to cloud environment

    CN114595914A

  • Reservoir group multi-target scheduling cooperative search method and system

    CN116108982A