Abstract
In this paper, a topology optimization method combining Bi-directional Evolutionary Structural Optimization (BESO) and Fast Non-dominated Sorting Genetic Algorithm II (NSGA-II) is proposed, which is called BESO-NSGA-II. To effectively fuse the two algorithms, a semi-random double-penalized crossover and mutation operator is developed. The proposed algorithm extends the traditional single-objective optimization to a double objective optimization problem, and investigates the influence of the stress norm parameters on the optimization results. To verify the effectiveness of the new method, several examples of 2D structural stiffness and stress optimization are given. At the same time, the optimization design of each model was repeated six times to demonstrate the ability of the new method to converge to a solution. Compared with BESO, BESO-NSGA-II can effectively realize the double objective optimization of stiffness and stress, and eliminate the stress concentration phenomenon on the premise of ensuring that the structure has greater stiffness.
Keywords
Introduction
Topology optimization, first proposed by Bendsøe and Kikuchi, 1 is an innovative structural optimization method that can quickly find the optimal material layout under specific conditions. After development, topology optimization has been more and more used in various fields. The most commonly used topology optimization methods include Solid Isotropic Material Interpolation Penalty (SIMP), 2 homogenization method, 1 level set method3–5 and the Evolutionary Structural Optimization (ESO) method. 6 For the common checkerboard phenomenon, gray area problem and local optimal solution phenomenon in topology optimization, 7 various scholars have proposed many effective methods, including sensitivity filtering, 8 perimeter constraint, 9 and continuous method 10 etc.
Early topology optimization design problems usually take stiffness as the optimization objective and volume as the constraint variable, however these designs tend to generate large stress concentrations, especially using the BESO algorithm. 11 Because the boundary of the optimization result is not smooth, the structure will appear stress concentration, which will cause serious damage to the structure in engineering problems. With the deepening of the research on topology optimization problems, many scholars have discussed the use of stress as the objective function or constraint, and summed up three major challenges of the stress problem: “singularity” problem, the local nature of stress and highly nonlinear stress behavior. In response to these three challenges, various scholars have proposed effective solutions.12–16 Xia et al. 17 used the BESO algorithm to optimize the design of the stress, using the P-norm stress aggregation scheme to replace the overall stress level, and adjusting the sensitivity number through the filtering scheme, which effectively avoided the three major problems of stress. Khodamorad Nabaki et al. 18 employed a modified P-norm to concentrate the local stresses in a global function and took into account the effects of artificial material interpolation schemes in the sensitivity values. Deng et al. 19 also used the P-norm to achieve an approximate measurement of global stress, and released a code for stress sensitivity analysis based on 3D model. Although the global stress measurement cannot obtain accurate stress values, it can effectively reduce the stress concentration phenomenon in the structure, so the P-norm global stress measurement is widely used in stress optimization problems.
For the optimization of stress and stiffness, Han 20 introduced Lagrange multipliers to comprehensively consider the volume constraint and von Mises stress constraint to achieve the design of maximum stiffness while reducing stress concentration. Nicola Ferro et al. 21 combined the SIMP method with anisotropic adaptive meshes. Under the mass minimization model, taking L-bracket as an example, the influence of stress constraints and stiffness constraints on the optimization results was discussed, and the importance of considering both stress and stiffness constraints on the optimization results is verified. Erik Holmberg et al. 22 proposed three optimization models for stiffness, stress and mass by using the SIMP method. Through comparison, it is proved that the simultaneous optimization of stiffness and stress can effectively reduce the stress concentration phenomenon and ensure the stiffness of the structure. However, the above studies all consider stress as a constraint. The multi-objective optimization problem of topology optimization needs to be considered when co-optimizing with stiffness and stress as objectives. In topology optimization problems, multi-objective optimization usually performs weighted calculation, and the multi-objective function values are considered globally in a single dimension through normalization processing. 23 However, determining the weight of each objective function has become a new problem, which leads to a complicated computational process. Furthermore, for classical topology optimization algorithms, the SIMP method performs a single-point optimization search based on sensitivity. The optimization result will show a local optimum to a certain extent. The BESO method may fail in addition and removal of materials in some aspects. 24 To accurately perform multi-dimensional optimization on multi-objective function problems, other optimization algorithms are needed for collaborative optimization.
In recent years, Genetic Algorithms (GA) 25 have also been developed and gradually applied to topology optimization due to their powerful global search capabilities. 26 Aguilar Madeira et al. 27 and Madeira et al. 28 made great contributions to the application of GA to topology optimization, and they developed a computational model for handling linear elastic structural topologies where multiple objective functions are required optimization. However, this method cannot remove the lowest stress element, nor can it realize the addition or deletion of elements in subsequent iterations, and there may be errors in the deletion of elements. The combination of GA with traditional optimization algorithms has also been extensively studied. The combination of GA and ESO 24 greatly improves the performance of the ESO algorithm, but material addition cannot be achieved during optimization. Zuo et al. 29 proposed topology optimization methods for GA and BESO. It implements material addition and removal in an iterative process, but remains stuck in a single-objective optimization problem. NSGA-II is developed on the basis of GA 30 and improved on the basis of the original GA. The NSGA-II algorithm mainly includes operators such as fast non-dominated sorting and crowding calculation, competitive selection and elite strategy to achieve fast optimization. For multi-objective global optimization problems, NSGA-II has greater potential and advantages than traditional genetic algorithms.
Aiming at the multi-dimensional optimization problem of von Mises stress and stiffness, in order to improve the global search ability of the optimization algorithm, a joint algorithm combining NSGA-II and BESO is proposed, called BESO-NSGA-II. This algorithm aims to reduce the maximum stress while maximizing the stiffness of the structure under the premise of satisfying the volume constraints. P-norm global stress aggregation scheme was used as an approximation to the maximum stress. A double penalty operator is proposed to ensure a “clean” topology and improve the stability and convergence of the algorithm. Finally, the effectiveness of this algorithm in double objective optimization is proved by several examples.
The arrangement of this paper is as follows. Section 2 presents design models for stress minimization and stiffness maximization. Section 3 presents the derivation and filtering scheme of the sensitivity. Section 4 introduces the specific implementation of the BESO-NSGA-II algorithm. Section 5 verifies the effectiveness of the proposed method through a series of 2D examples. The last section gives the conclusion.
Problem statements
The Classical topology optimization problem pursues the maximum stiffness under a certain volume fraction. In the convex optimization problem, the maximum value problem is usually transformed into a minimum value problem. At this time, the maximum stiffness problem can be equivalently replaced by the minimum mean compliance problem can be written as:
where
For the optimization results with the average compliance as the objective function, there is often a large stress concentration phenomenon, such as the reentrant corner of the L-bracket. So another solution is to seek to minimize the stress of the structure. The mathematical model that minimizes the P-norm global stress measure can be written as:
For the double objective optimization problem of stiffness and stress, the advantage of the BESO-NSGA-II algorithm is that the objective functions in equations (1) and (2) can be simply combined. There is also no need to normalize the target values during the sensitivity value ranking stage. Only by the fast non-dominated sorting operator in the BESO-NSGA-II algorithm, the sensitivity of the cells can be distinguished.
For the stress-based topology optimization problem, the effective stress vector model is expressed as follows 31 :
where
For the second biggest challenge of stress: the local nature of stress, here the P-norm global stress is used to measure the equivalent maximum stress:
where σ
Sensitivity numerical calculation and filter scheme
Assuming that the Poisson’s ratio is independent of the design variables, the stiffness matrix
where
For the sensitivity calculation of the P-norm global stress, according to the chain rule:
Taking the derivation of equation (5), we can get:
For the two-dimensional plane model, based on the definition of von Mises stress in equation (4), its derivative with respect to
In equation (3), the stress vector can be derived from the design variable
Assuming that the specified load vector is independent of the design variables, equation (12) is equal to 0 and can be written as:
Substituting equation (15) into equation (8), we can get:
The accompanying variable is introduced, which can be defined as:
Substituting equation (17) into equation (16), we can get:
Then the sensitivity can be expressed as:
It should be noted that the sensitivity number only exists in solid elements, and the sensitivity for hollow elements is directly set to 0. Sensitivity is corrected by a sensitivity filtering strategy. This not only effectively reduces the checkerboard phenomenon, but also enables the addition and deletion of elements by deriving the sensitivity of empty elements by filtering the sensitivity values of physical elements within the radius. The filtering strategy adopted in this paper is divided into two steps to complete. The first step is to equalize the sensitivity values of all elements associated with the node to the element sensitivity values of the node, 11 as shown in the following equation:
In the formula,
The second step uses a convergence strategy that considers historical iteration information to correct the sensitivity value. The specific operation is to calculate the average value of the sensitivity of the current iteration and the previous iteration as the update value of the sensitivity. 11
In the formula,
During the optimization process, the material redistribution and the update calculation of the objective function are continuously carried out. When the optimization reaches the specified target mass fraction and the following convergence conditions are met, the optimization process is terminated. The convergence error is mainly calculated from the objective function value. 11
In the formula, M represents the value of the objective function,
Implementation of BESO-NSGA-II
The main steps of traditional NSGA-II optimization are initialization population, objective function calculation, fast non-dominated sorting and crowding degree calculation, competition selection, crossover mutation, and elite selection strategy. Solve the optimization problem by iteratively. For the BESO-NSGA-II, the main difference from the traditional NSGA-II lies in the crossover and mutation operator and the elite selection strategy. The details are as follows.
Pre-processing process
The initial optimization model is pre-processed, the corresponding mechanical model is established according to the actual application conditions, and the load and boundary conditions are set. The finite element discretization process is performed on the structure, and the number of finite element meshes is used as the initial population number of the BESO-NSGA-II algorithm. Consider each element as an independent individual for analysis. In order to ensure that the number of individuals in the entire population is always equal to the number of elements in the design domain, the number of populations is set to remain unchanged during the iterative process. The gene of each individual is represented by a binary string of length 6. The initial string is defined in this paper as an array of all 1 s, indicating that all elements are solid-phase materials, and an array of all 0 s means that the element to be deleted in this iteration.
Fast non-dominated sorting and crowding degree calculation
Perform finite element analysis on the structure, and calculate the sensitivity value of each element according to equations (7) and (19). The stiffness and stress sensitivity values are matched for each individual and used as the basis for sorting. Traverse all individuals in the population, if all the sensitivity values of individual
In the formula,
Cross and mutation operator
The crossover mutation operator plays an extremely important role in NSGA-II, which enriches the population diversity. The crossover mutation operator proposed in this paper adopts a semi-random method, which avoids the checkerboard phenomenon and non-convergence under the fully random operator to a certain extent. The cross-mutation operator only has the transformation between 0 and 1.
The double penalty operator is mainly used in the crossover mutation operator. First, the population is divided into high-sensitivity regions and low-sensitivity regions according to the sensitivity thresholds calculated for each generation. Two individuals are randomly selected as the parents in the design domain, and two crossover positions are randomly selected to perform the crossover operation on the parents. In order to speed up the convergence, the algorithm gradually penalizes the crossover rate to a certain maximum value as the number of iterations increases during the optimization process. The mutation operator is to mutate the binary code of each individual according to a certain mutation rate. Here, a double penalty operator is proposed. In the iterative loop of the optimization algorithm, with the increase of the number of iterations, the crossover rate and the mutation rate are gradually penalized to a certain maximum value, and the maximum value is limited to 1, such as equations (25) and (26), where
In each iteration step, for the high-sensitivity region, as shown in equation (27), the mutation rate (probability of binary code mutation to 1) is gradually penalized to a certain minimum value as the sensitivity value increases from high to low. Individuals with higher sensitivity values have a greater probability of having more 1 s, which are easier to retain in the optimization process. For low-sensitivity regions, as shown in equation (28), as the sensitivity increases from high to low, the mutation rate (The probability that the binary code is mutated to 0.) is penalized to a certain maximum value. At this time, individuals with lower sensitivity values have a greater probability of having more 0 s and are more likely to be deleted in the optimization process. It is worth noting that individuals of the same rank have the same rate of variation. Through the double penalty mechanism, the fast convergence of the optimization process and a clearer and more stable topology are ensured.
In the formula,
Selection mechanism
For the traditional NSGA-II algorithm, through the elite selection strategy, the elite individuals in the parent and child are selected to form a new population. In this process, the elite individuals in the offspring will directly replace the inferior individuals in the parent. For BESO-NSGA-II, the layout of solid materials and void materials in the structure needs to be optimally designed, which means that the poor individuals in the parent generation also need to be preserved. Therefore, a selection mechanism for this optimization algorithm is proposed. Because the number of 0 s in an individual reflects the quality of the individual. Therefore, in the iterative process, the individuals whose binary codes are all 0 are assigned to hollow materials, and the rest of the individuals are saved for the subsequent optimization iterative process, which can effectively prevent the accidental deletion of elements to a certain extent. Figure 1 shows the flow chart of the algorithm implementation:

Algorithm implementation flowchart.
Numerical examples
In this section, we will demonstrate the effectiveness of our method with several two-dimensional examples. For all cases, it is assumed that the Young’s modulus of the solid material is 1.0 MPa, the Poisson’s ratio is 0.3, the volume evolution ratio ER = 0.02, and the filter radius is about one to three times of the size of one element.
11
For all cases, filter radius
Cantilever beams
This example considers the cantilever beam model shown in Figure 2. The right middle node is subjected to a downward load of 5 N. In order to eliminate the influence of local stress concentration, the load is evenly distributed on five nodes. Set the volume fraction to 30%.

Cantilever beam problem.
In order to verify the effectiveness of the double penalty operator proposed in this paper, the algorithm with the double penalty operator added and the algorithm without the double penalty operator are compared, as shown in Figure 3. The results show that the optimization results of the two algorithms are almost the same. However, the algorithm adding the double penalty operator can converge quickly, and the convergence result can be obtained in 160 generations. The algorithm without the double penalty operator needs to go through 366 iterations to get the optimal solution. Therefore, the double penalty operator is introduced in the examples in this paper to ensure the fast convergence of the results.

Algorithm comparison results.
Due to the randomness of NSGA-II results, there is no guarantee that the same results will be obtained every time, but fluctuate up and down within the optimal solution range. In order to verify the stability of the proposed algorithm, six repeated experiments were carried out on the model under the same parameters. Figure 4 shows the results of six iterations of the optimization when pl = 3. Similar results can be obtained for the material layout of the structure and the distribution of stress. The two objective functions shown in Table 1 can take close values, and there is no obvious fluctuation around the average value, which verifies the stability of the proposed algorithm. Figure 5 shows the evolution of topology optimization for two objective functions and volumes. It is proved that the algorithm can obtain convergent solutions under both stiffness and stress objectives.

Six optimization results under the stress norm parameter pl = 3.
Comparison of six repeated optimization results.

Topology optimization evolution of cantilever beams: (a) evolution curve of volume versus mean compliance and (b) evolution curve of volume and P-norm stress.
In order to verify the effectiveness of the algorithm proposed in this paper in the double objective optimization problem, the optimization results under the same parameters are compared with the results of the classical algorithm BESO optimization. Table 2 shows the comparison results of the two algorithms. For the classical BESO optimization algorithm, when the value of the P-norm stress parameter
Comparison of BESO-NSGA-II and traditional BESO results.
Table 2 shows the optimal design results for structural stiffness and stress using the classical BESO optimization algorithm. Table 3 is a comparison of the optimization target values corresponding to the two algorithms. Compared with the stress design using the classical BESO, the maximum stress of the optimization result of the BESO-NSGA-II is 1.65, which is better than the 1.79 calculated by the BESO, and the mean compliance value of 1266.78 is also smaller than that of the BESO of 1286.47. Compared with the stiffness design using the classical BESO, the mean compliance value of the BESO-NSGA-II is higher, the increase ratio is only 1.75%, which means that the structural stiffness is reduced by 1.75%, but the stress is reduced by 37.02%. Therefore, compared with the BESO, this algorithm has certain advantages in double objective optimization. It is worth noting that this algorithm pursues the equilibrium state of the optimal solution achieved by the two objectives, so there is no need to guarantee that the target values calculated by BESO-NSGA-II are all better than the target values of the stress design and stiffness design performed by BESO.
Optimization objective function value comparison.
L-bracket design
As a classic example of stress optimization problem, L-bracket has been studied by many scholars.17,18 This example considers the optimal design of an L-shaped beam with a length of 80 mm. As shown in Figure 6, the top of the L-shaped beam is fixed, and the right end is subjected to a vertical downward size of 3 N. In order to avoid stress concentration, the load is distributed on three nodes. The volume fraction is 25%.

Design domain and support conditions for L-bracket.
As shown in Figure 7, in order to verify the stability of the algorithm, the same model was optimized six times under the condition of pl = 3. It can be observed that the layout of materials and the distribution of stress are highly similar in the six optimization results. Table 4 shows the objective function values of the six optimization results. It can be noticed that all the values are relatively close, and there is no obvious deviation near the average value, which verifies the stability of the proposed algorithm. Figure 8 shows the corresponding optimization iteration curve. It can be seen that all objectives can converge to a stable solution.

Six optimization results under the stress norm parameter pl = 3.
Comparison of six repeated optimization results.

Topology optimization evolution of L-bracket: (a) evolution curve of volume versus mean compliance and (b) evolution curve of volume and P-norm stress.
Table 5 compares the results between BESO-NSGA-II and traditional BESO. It can be observed that under the L-bracket model, the
Comparison of BESO-NSGA-II and traditional BESO results.
As shown in Table 6, compared with the stress design using BESO, the optimization result of BESO-NSGA-II achieves the minimum stress when pl = 8, and its value is 1.63, which is 12.37% lower than that calculated by BESO, and the corresponding mean compliance value decreased by 8.58%. Compared with the stiffness design using BESO, the mean compliance value of BESO-NSGA-II increased by 15.32%, but decreased by 34.27% for stress. Khodamorad 18 also conducted an optimization study on the stress and stiffness of the L-bracket, and the compliance increased by 17%–25% under the condition that the stress was reduced by 25%–37%. For literature,34,35 optimization is performed with stress as a constraint, constraining the structural stress value below a specified value. There is no guarantee that the stress level of the structure will always be at the optimal solution. Therefore, the currently proposed optimization algorithms can provide better solutions in double objective optimization.
Optimization objective function value comparison.
Conclusion
In this paper, a topology optimization method combining BESO and NSGA-II is proposed, which realizes the double objective optimization design of stress minimization and stiffness maximization. Due to the discrete nature of the proposed algorithm, the “singularity” problem in the stress optimization problem is avoided. The locality of stress and the high degree of nonlinearity are addressed through P-norm global stress measurements, filtering schemes, and calculation of sensitivity numbers. This method theoretically avoids three major challenges in stress optimization problems. Due to the influence of the algorithm of NSGA-II, the algorithm has a certain randomness. After six repeated designs for each 2D example, highly similar results can be obtained, which proves the stability of the algorithm. The implementation of the double penalty operator enables the algorithm to obtain a convergent and clean topology. Compared with the single objective optimization problem, the proposed algorithm can effectively achieve a balance between the stiffness optimization and the stress optimization, and can not only improve the stiffness of the structure but also reduce the maximum stress. This algorithm provides theoretical support for multi-objective optimization problems and is expected to be extended to three-dimensional structural optimization problems. In addition, this algorithm is also expected to be extended to the optimal design of two-scale lattice structures to reduce stress concentration on the basis of improving structural stiffness.
Footnotes
Handling Editor: Chenhui Liang
Authors’ contributions
Shuo Feng: Revised the article critically for professional knowledge content. Xing Wu: Proposed a new joint algorithm, drafted this manuscript. Jun Qi: Participated in the experiment of this manuscript. Qidong Han: Participated in the experiment of this manuscript. Zhi He: Revised the article critically for professional knowledge content.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the National Natural Science Foundation of China [12102065], the Fundamental Research Funds for the Central Universities [300102258113].
Code availability
Custom code
