Calculation method and system for solving super-multi-objective optimization problem
By using the combination of genetic operators and differential evolution operators in the super-multi-objective optimization problem, the problem that existing methods are difficult to solve in the super-multi-objective optimization problem is solved, and effective consideration of multiple goals and intuitive display of optimization effects is achieved.
Patent Information
- Application Number
- CN202411840396.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-13
- Publication Date
- 2025-03-28
AI Technical Summary
Existing methods are prone to dominance and resistance when facing the optimization problem of many targets and are difficult to effectively solve, especially when there are many targets, the screening efficiency is reduced, resulting in some optimization goals being unable to be taken into account.
A calculation method is proposed, including generating initialized populations and establishing a normalized target space, generating new offspring populations using strategies of genetic operators and differential evolution operators, calculating overdosity and evaluating convergence and diversity, and screening individuals through overdosity and angular distances to enhance the convergence potential of the population.
The dominance and resistance problem of many target optimization problems is effectively solved, and the effective solution to problems with up to 20 optimization goals is achieved, reducing the risk that the target cannot be taken into account, and the optimization results are displayed through intuitive image output.
Smart Images

Figure CN119720782A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the fields of computer application, algorithm theory and artificial intelligence technology, and in particular to a computing method and system for solving multi-objective optimization problems. Background Art
[0002] Multi-objective optimization problems are a common type of optimization problem in scientific research and engineering applications. This type of problem requires taking into account multiple optimization objectives at the same time and requires the algorithm to be able to provide a set of optional solutions that can make different trade-offs among multiple optimization objectives. For example, when asking the navigation software to provide a navigation route, it is necessary not only to consider whether the journey is the shortest, but also to consider multiple objectives such as the time spent on the journey, road conditions, and travel costs (such as avoiding toll stations). This requires the algorithm to comprehensively consider multiple objectives and provide multiple routes for users to choose from, so that users can decide which route to choose based on their actual needs.
[0003] The multi-objective optimization system process mainly includes three components: evolutionary operator, problem evaluation, and environmental selection. The evolutionary operator usually uses a genetic algorithm or a differential evolution algorithm to generate a new offspring population based on the current population. The problem evaluation is to calculate the value obtained by each individual in the population on each target through the constructed objective function. The environmental selection is to evaluate the value obtained by the individual on the target and delete some solutions with poor quality. After the environmental selection, the remaining population will generate a new offspring population through the evolutionary operator again and enter a new cycle until the number of cycles reaches the preset requirement. After the cycle ends, the remaining population is the solution that meets our requirements.
[0004] Generally speaking, when the number of objectives to be optimized for a problem is less than or equal to three, we call it a multi-objective optimization problem, and when the number of objectives to be optimized exceeds three, we call it a super-multi-objective optimization problem. Compared with multi-objective optimization problems, the optimization difficulty of super-multi-objective optimization problems is significantly increased. Since super-multi-objective optimization problems need to take into account more optimization objectives, it becomes very difficult to judge the pros and cons of solutions in the population. The consequence of failing to effectively eliminate inferior solutions is evolutionary stagnation and failure to further converge to a direction with better objective values. This phenomenon is also called the "dominance resistance" phenomenon.
[0005] Currently, there is a solution to this problem based on the combination of non-dominated sorting method and reference vector method. The solution is to first screen the population through the non-dominated sorting method, and then establish a set of reference vectors in the target space, use the reference vectors to guide the distribution of the population in the target space, and further screen the population according to the Euclidean distance of each individual relative to the reference vector, so as to obtain a set of populations that can effectively take into account various optimization objectives.
[0006] The main problems with this method are:
[0007] 1. The screening efficiency of the method based on non-dominated sorting will decrease rapidly when facing a multi-objective optimization problem. Therefore, when facing a problem with a large number of optimization objectives (with more than 8 objectives), its performance will be seriously degraded.
[0008] 2. The reference vector method it adopts screens the population according to the Euclidean distance of each individual relative to the reference vector. This will result in some solutions that are close to the origin of the reference vector but have a large angle deviation being selected, while some solutions that have a small angle deviation but are far away from the origin are eliminated, greatly increasing the risk that some goals cannot be taken into account.
[0009] Therefore, we propose a computational method and system for solving multi-objective optimization problems. Summary of the invention
[0010] The purpose of the present invention is to propose a computational method and system for solving super-multi-objective optimization problems in the background technology, in view of the fact that the existing methods are prone to dominant resistance and are difficult to solve effectively due to the large number of objectives that need to be taken into account.
[0011] First aspect: The present application provides a computational method for solving a multi-objective optimization problem, comprising the following steps:
[0012] S1. Generate an initial population that meets the requirements of the problem according to the input parameters and the input problem, and establish a normalized target space, in which a reference vector is generated to guide the evolution direction of the population;
[0013] S2, based on the strategy of genetic operators and differential evolution operators, a new offspring population is generated based on the current population;
[0014] S3, calculate the super-dominance degree of each individual in the population, evaluate the convergence of each individual in the population, and delete some individuals with poor convergence;
[0015] S4, evaluate the diversity of each individual in the population according to the angular distance between the reference vector and each individual in the population, and delete some individuals with poor diversity;
[0016] S5. A new round of selection is conducted on the remaining population after environmental selection according to its superdominance, increasing the probability of individuals with greater superdominance entering the next generation of population and enhancing the population's convergence potential;
[0017] S6. Output the variable data and target value data of the population obtained after the optimization is completed, and display the optimization effect.
[0018] Optionally, in S2, a new offspring is generated in a random manner using a genetic operator and a differential evolution operator with the same probability.
[0019] Optionally, in S3, the specific method is:
[0020] S301, using the super-dominance calculation formula to compare and calculate each individual in the population, and calculate their relative super-dominance;
[0021] S302, after the comparison calculation of all individuals is completed, the lowest relative super dominance of each individual is taken as its final super dominance;
[0022] S303, according to the current super-dominance threshold, deleting individuals whose final super-dominance is lower than the threshold from the population;
[0023] S304: As the optimization proceeds, the super-dominance threshold is increased.
[0024] Optionally, the specific method of calculating the superdominance degree formula and the corresponding formula parameters includes:
[0025] Assume that the target values of two individuals are x i , x j , then the relative superdominance calculation formula is:
[0026]
[0027] Among them, H(x i ,x j ) is x i Relative to x j The relative superdominance of .
[0028] Optionally, in S302, the specific method is:
[0029] Assuming that the population contains n individuals, the final super-dominance degree calculation method is:
[0030] hd i =min(H(x i ,x i ),H(x i ,x2),…,H(x i ,x n ))
[0031] Among them, hd i represents the final super-dominance degree of the i-th individual in the population.
[0032] Optionally, the specific method of increasing the super-dominance threshold as the optimization proceeds is:
[0033] Super dominance threshold raising method: In the super dominance threshold raising method, the initial threshold is set to 0, the final threshold is set to 0.05, and the threshold is linearly increased as the iteration proceeds. The calculation formula is:
[0034]
[0035] Among them, T i It represents the super-dominance threshold of the system at the i-th iteration, MaxT represents the final threshold, and MaxIts represents the maximum number of iterations for system optimization.
[0036] Second aspect: The present application provides a system for solving multi-objective optimization problems, comprising:
[0037] Initialization module, offspring generation module, overdominance screening module, environment selection module, population regeneration module and result output module;
[0038] The initialization module is used to generate an initialization population that meets the requirements of solving the problem according to the input parameters and the input problem and to establish a normalized target space, and to generate a reference vector therein for guiding the evolution direction of the population;
[0039] The offspring generation module is used to generate a new offspring population based on the current population based on the strategies of the genetic operator and the differential evolution operator;
[0040] The super dominance screening module is used to calculate the super dominance of each individual in the population, evaluate the convergence of each individual in the population, and delete some individuals with poor convergence;
[0041] The environment selection module is used to evaluate the diversity of each individual in the population according to the angular distance between the reference vector and each individual in the population, and delete some individuals with poor diversity;
[0042] The population regeneration module is used to conduct a new round of selection on the remaining population after environmental selection according to its superdominance, increase the probability of individuals with greater superdominance entering the next generation population, and enhance the convergence potential of the population;
[0043] The result output module is used to output the variable data and target value data of the population obtained after the optimization is completed, and display its optimization effect. Optionally, the environment selection module is used to calculate the angular distance between each individual in the population and each vector in the reference vector, and count the individuals with the smallest angular distance for each reference vector in turn, retain the individuals with the smallest angular distance for each reference vector and delete other individuals.
[0044] Optionally, the population regeneration module adopts a tournament selection method to select individuals in the population in turn and compare the superdominance value with another randomly selected individual. After each comparison, the individual with a higher superdominance value between the two compared individuals is selected to enter the next generation population.
[0045] Optionally, the result finally output by the result output module is the population after environmental selection and before population regeneration, and the result output module generates an image to display the values of the individuals obtained on various targets, and the generated image includes a two-dimensional graph, a three-dimensional graph and a line graph.
[0046] In summary, the present application includes at least one of the following beneficial technical effects:
[0047] The present invention proposes a calculation method and system for solving super-multi-objective optimization problems based on the MATLAB platform, which can effectively solve super-multi-objective optimization problems with up to 20 optimization objectives, and solves the problem that the existing methods are prone to encounter dominant resistance and are difficult to effectively solve when facing super-multi-objective optimization problems.
[0048] Furthermore, the environment selection module evaluates the diversity of individuals based on the angular distance between the reference vector and the individual, and retains the individuals with the smallest angular distance, which can more effectively take into account various optimization objectives and avoid the problem that some solutions that are close to the origin of the reference vector but have a large angular deviation are selected, while some solutions that have a small angular deviation but are far from the origin are eliminated due to the use of Euclidean distance screening, thereby reducing the risk of not being able to take all objectives into account.
[0049] The generated images of the result output module in the present invention include two-dimensional graphs, three-dimensional graphs and line graphs, which realize the display of optimization results in an intuitive way, including drawing target value data, saving variables and target value data, etc., providing assistance for users to make decisions. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Figure 1 A flow chart of a calculation method for solving a multi-objective optimization problem of the present invention is provided;
[0051] Figure 2 The final optimized target value data display diagram when the target number is 2 in the present invention;
[0052] Figure 3 The final optimized target value data display diagram when the target number is 3 in the present invention;
[0053] Figure 4 This is a graph showing the final optimized target value data when the target number is 10 in the present invention. DETAILED DESCRIPTION
[0054] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions 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. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0055] This application provides a computational method for solving multi-objective optimization problems, such as Figure 1 As shown, the following steps are included:
[0056] Firstly, an initial population that meets the requirements of the problem is generated according to the input parameters and the input problem, and a normalized target space is established, in which a reference vector is generated to guide the evolution direction of the population.
[0057] Then, based on the strategies of genetic operators and differential evolution operators, a new offspring population is generated on the basis of the current population. The specific method of generating a new offspring population on the basis of the current population is to use a random method to use genetic operators and differential evolution operators to generate new offspring with the same probability;
[0058] Furthermore, the super-dominance degree of each individual in the population is calculated, the convergence of each individual in the population is evaluated, and some individuals with poor convergence are deleted. The specific method is:
[0059] Furthermore, the relative superdominance degree of each individual in the population is calculated by comparing them with each other through the superdominance degree calculation formula. The specific method of the superdominance degree calculation formula and the corresponding formula parameters includes:
[0060] Assume that the target values of two individuals are x i , x j , then the relative superdominance calculation formula is:
[0061]
[0062] Among them, H(x i ,x j ) is x i Relative to x j The relative superdominance of
[0063] After the comparison calculation of all individuals is completed, the lowest relative super dominance of each individual is taken as its final super dominance. The specific method is:
[0064] Assuming that the population contains n individuals, the final super-dominance degree calculation method is:
[0065] hd i =min(H(x i ,xi ),H(x i ,x2),…,H(x i ,x n ))
[0066] Among them, hd i represents the final super-dominance degree of the i-th individual in the population.
[0067] According to the current super-dominance threshold, individuals whose final super-dominance is lower than the threshold are deleted from the population;
[0068] As the optimization progresses, the super-dominance threshold is increased. The specific method is as follows:
[0069] Super dominance threshold raising method, in the super dominance threshold raising method, the initial threshold is set to 0, the final threshold is set to 0.05, and the threshold is linearly increased as the iteration proceeds. The calculation formula is:
[0070]
[0071] Among them, T i It represents the super-dominance threshold of the system at the i-th iteration, MaxT represents the final threshold, and MaxIts represents the maximum number of iterations for system optimization.
[0072] Then, the diversity of each individual in the population is evaluated based on the angular distance between the reference vector and each individual in the population, and some individuals with poor diversity are deleted;
[0073] A new round of selection is conducted on the remaining population after environmental selection according to its superdominance, increasing the probability of individuals with greater superdominance entering the next generation of population and enhancing the population's convergence potential;
[0074] The variable data and target value data of the population obtained after the optimization is completed are output, and the optimization effect is displayed.
[0075] In a second aspect, the present application provides a system for solving multi-objective optimization problems, comprising:
[0076] Initialization module, offspring generation module, overdominance screening module, environment selection module, population regeneration module and result output module. Each module is described in detail below.
[0077] The initialization module is used to generate an initialization population that meets the requirements of the problem to be solved according to the input parameters and the input problem, and to establish a normalized target space, in which a reference vector is generated to guide the evolution direction of the population;
[0078] The offspring generation module is used to generate a new offspring population based on the current population based on the strategies of both genetic operators and differential evolution operators;
[0079] The super-dominance screening module is used to calculate the super-dominance of each individual in the population, evaluate the convergence of each individual in the population, and delete some individuals with poor convergence;
[0080] The environmental selection module is used to evaluate the diversity of each individual in the population based on the angular distance between the reference vector and each individual in the population, and delete some individuals with poor diversity;
[0081] The population regeneration module is used to conduct a new round of selection on the remaining population after environmental selection according to its superdominance, increase the probability of individuals with larger superdominance entering the next generation of population, and enhance the convergence potential of the population. Among them, the population regeneration module adopts the tournament selection method to select individuals in the population in turn and compare the superdominance value with another randomly selected individual. After each comparison, the individual with a higher superdominance value among the two compared individuals is selected to enter the next generation of population.
[0082] The result output module is used to output the variable data and target value data of the population obtained after the optimization is completed, and display the optimization effect. Optionally, the environment selection module is used to calculate the angular distance between each individual in the population and each vector in the reference vector, and count the individuals with the smallest angular distance for each reference vector in turn, retain the individuals with the smallest angular distance for each reference vector, and delete other individuals. In addition, the final output result of the result output module is the population before population regeneration after environmental selection. The result output module generates images to display the values of the individuals obtained on each target, and the generated images include two-dimensional graphs, three-dimensional graphs, and line graphs.
[0083] The following is a further explanation of the system working process for solving multi-objective optimization problems.
[0084] To run the system, first start Matlab, enter the directory where the system is located, enter HEA_main() in the command line window, and enter a series of parameters and problem functions in the brackets. The inputs are: population size, number of optimization targets, number of variables to be optimized, problem function, and maximum number of iterations.
[0085] After the input is completed, press the enter key, and the system starts running. Whenever the running progress is completed by 10%, a prompt "Current progress XX%" will pop up, where 'XX%' represents the current progress completion percentage (such as 10%, 20%, 30%). When the system ends, a prompt "Current progress 100%" will pop up, and the variable data of the final output population will be saved in the dec.mat file, and the target value data of the final output population will be saved in the obj.mat file. The save path of this file is the same as the directory where the system is located. You can double-click it to load it into the matlab workspace, and then open it from the workspace for viewing;
[0086] During the system operation, it will first enter the initialization module. In the initialization module, the system will perform the following operations in sequence:
[0087] 1. According to the number of variables of the input problem function and the number of populations, a population is randomly generated, where the number of variables of each individual in the population is the same as the number of variables of the input problem function, and the upper limit of the variables is uniformly set to 1 and the lower limit is uniformly set to zero;
[0088] 2. Establish a normalized space according to the target number of the input problem function, and generate a series of reference vectors in the normalized space according to the population number;
[0089] 3. Calculate the corresponding target value of each individual in the population through the problem function in turn;
[0090] 4. Calculate the maximum and minimum points of the target space based on the target value of each individual in the population;
[0091] 5. Set the initial super-dominance threshold of the algorithm to 0, the maximum super-dominance threshold to 0.05, and the threshold increase to the maximum super-dominance threshold divided by the number of iterations.
[0092] After the initialization is completed, the optimization module is entered. In the optimization module, the system will use the offspring generation module, the overdominance screening module, the environment selection module, and the population regeneration module to optimize the population. In the offspring generation module, the system will perform the following operations in sequence:
[0093] 1. Generate a random number r between 0 and 1;
[0094] 2. Determine whether r is less than 0.5;
[0095] 3. If r is greater than 0.5, the genetic algorithm is used to generate offspring, otherwise the differential evolution algorithm is used to generate offspring;
[0096] 4. Calculate the target value of the offspring population through the problem function;
[0097] 5. Merge the offspring population with the population retained in the previous iteration to generate a new population.
[0098] After entering the over-dominance screening module, the system will perform the following operations in sequence:
[0099] 1. Establish a normalized space based on the maximum and minimum points of the target space;
[0100] 2. Normalize the target values of all individuals in the population;
[0101] 3. Compare each individual in the population pairwise, according to the formula:
[0102]
[0103] Calculate and record the degree of superdominance of each individual;
[0104] 4. According to the final superdominance calculation formula:
[0105] hd i =min(H(x i ,x i ),H(x i ,x2),…,H(x i ,x n ))
[0106] The lowest super dominance degree obtained by each individual is taken as its final super dominance degree;
[0107] 5. All individuals whose final superdominance is lower than the superdominance threshold are removed from the population.
[0108] 6. According to the following formula:
[0109]
[0110] Update the superdominance threshold.
[0111] After entering the environment selection module, the system performs the following operations in sequence:
[0112] 1. Recalculate the maximum point of the target space based on the target value of each individual in the population;
[0113] 2. Establish a normalized space based on the maximum and minimum points of the target space;
[0114] 3. Normalize the target values of all individuals in the population;
[0115] 4. Calculate the angular distance between each individual in the population and each reference vector;
[0116] 5. For each reference vector, save the individual with the smallest angular distance to it into the new population.
[0117] After entering the population regeneration module, the system performs the following operations in sequence:
[0118] 1. Select individuals from the population one by one in order, and randomly select another individual from the population;
[0119] 2. Compare the superdominance of the two individuals;
[0120] 3. Put the individuals with higher superdominance into the new generation population until the entire population is traversed;
[0121] 4. Output a new generation of population.
[0122] Finally, the system will determine whether the current number of iterations has reached the maximum number of iterations. If not, the system will return to the offspring generation module and use the current population as the parent of the offspring for a new cycle until the current number of iterations reaches the maximum number of iterations. After reaching the maximum number of iterations, the system will enter the result output module and perform the following operations in sequence:
[0123] 1. Draw the target value data of the output population;
[0124] 2. Save the variable data of the final output population in the dec.mat file;
[0125] 3. Save the target value data of the final output population in the obj.mat file;
[0126] 4. Exit the system program.
[0127] When the system is finished, a pop-up window will be displayed showing the final population data at the target value. When the target number is 2, the final optimized target value data will be displayed in a two-dimensional graph as shown in the attached figure. Figure 2 , where the two axes represent the values obtained on the two targets respectively. When the number of targets is 3, the final optimized target value data is displayed in a three-dimensional graph as shown in the attached figure. Figure 3 , where the three axes represent the values obtained on the three targets respectively. When the number of targets exceeds 3, the final optimized target value data is displayed in a line chart as shown in the attached figure. Figure 4 , where the horizontal axis represents the target number and the vertical axis represents the value on the target.
[0128] The calculation method and model code of the present invention are as follows:
[0129]
[0130]
[0131]
[0132]
[0133]
[0134]
[0135]
[0136]
[0137] The above specific embodiments are only several optional embodiments of the present invention. Based on the technical solutions of the present invention and the relevant inspirations of the above embodiments, those skilled in the art can make various alternative improvements and combinations to the above specific embodiments.
Claims
1. A computational method for solving multi-objective optimization problems, characterized in that: The following steps are involved: S1. Generate an initial population that meets the requirements of the problem according to the input parameters and the input problem, and establish a normalized target space, in which a reference vector is generated to guide the evolution direction of the population; S2, based on the strategy of genetic operators and differential evolution operators, a new offspring population is generated based on the current population; S3, calculate the super-dominance degree of each individual in the population, evaluate the convergence of each individual in the population, and delete some individuals with poor convergence; S4, evaluate the diversity of each individual in the population according to the angular distance between the reference vector and each individual in the population, and delete some individuals with poor diversity; S5. A new round of selection is conducted on the remaining population after environmental selection according to its superdominance, increasing the probability of individuals with greater superdominance entering the next generation of population and enhancing the population's convergence potential; S6. Output the variable data and target value data of the population obtained after the optimization is completed, and display the optimization effect.
2. A computational method for solving multi-objective optimization problems according to claim 1, characterized in that: In S2, a new offspring is generated in a random manner using a genetic operator and a differential evolution operator with the same probability.
3. A computational method for solving multi-objective optimization problems according to claim 1, characterized in that: In S3, the specific method is: S301, using the super-dominance calculation formula to compare and calculate each individual in the population, and calculate their relative super-dominance; S302, after the comparison calculation of all individuals is completed, the lowest relative super dominance of each individual is taken as its final super dominance; S303, according to the current super-dominance threshold, deleting individuals whose final super-dominance is lower than the threshold from the population; S304: As the optimization proceeds, the super-dominance threshold is increased.
4. A computational method for solving multi-objective optimization problems according to claim 3, characterized in that: The specific method of calculating the superdominance formula and the corresponding formula parameters includes: Assume that the target values of two individuals are x i , x j , then the relative superdominance calculation formula is: Among them, H(x i ,x j ) is x i Relative to x j The relative superdominance of .
5. The calculation method for solving multi-objective optimization problems according to claim 3, characterized in that: In the S302, the specific method is: Assuming that the population contains n individuals, the final super-dominance degree calculation method is: hd i =min(H(x i ,x i ),H(x i ,x2),…,H(x i ,x n )) Among them, hd i represents the final super-dominance degree of the i-th individual in the population.
6. A computational method for solving multi-objective optimization problems according to claim 3, characterized in that: The specific method of increasing the super-dominance threshold as the optimization proceeds is: Super dominance threshold raising method: In the super dominance threshold raising method, the initial threshold is set to 0, the final threshold is set to 0.05, and the threshold is linearly increased as the iteration proceeds. The calculation formula is: Among them, T i It represents the super-dominance threshold of the system at the i-th iteration, MaxT represents the final threshold, and MaxIts represents the maximum number of iterations for system optimization.
7. A system for solving multi-objective optimization problems, characterized in that: include: The initialization module is used to generate an initialization population that meets the requirements of the problem to be solved according to the input parameters and the input problem, establish a normalized target space, and generate a reference vector in it to guide the evolution direction of the population; The offspring generation module is used to generate a new offspring population based on the current population based on the strategies of both genetic operators and differential evolution operators; The super-dominance screening module is used to calculate the super-dominance of each individual in the population, evaluate the convergence of each individual in the population, and delete some individuals with poor convergence; The environmental selection module is used to evaluate the diversity of each individual in the population based on the angular distance between the reference vector and each individual in the population, and delete some individuals with poor diversity; The population regeneration module is used to conduct a new round of selection on the remaining population after environmental selection according to its superdominance, increase the probability of individuals with larger superdominance entering the next generation of population, and enhance the population's convergence potential; The result output module is used to output the variable data and target value data of the population obtained after the optimization is completed, and to display the optimization effect.
8. A system for solving multi-objective optimization problems according to claim 7, characterized in that: The environment selection module is used to calculate the angular distance between each individual in the population and each vector in the reference vector, count the individuals with the smallest angular distance for each reference vector in turn, retain the individuals with the smallest angular distance for each reference vector and delete other individuals.
9. A system for solving multi-objective optimization problems according to claim 7, characterized in that: The population regeneration module adopts the tournament selection method to select individuals in the population in turn and compare the superdominance value with another randomly selected individual. After each comparison, the individual with the higher superdominance value among the two compared individuals is selected to enter the next generation population.
10. A system for solving multi-objective optimization problems according to claim 7, characterized in that: The result finally output by the result output module is the population after environmental selection and before population regeneration. The result output module generates images to display the values of the individuals obtained on various targets. The generated images include two-dimensional graphs, three-dimensional graphs and line graphs.