Stacking sequence optimization with genetic algorithm using a two-level approximation

We propose a new method for laminate stacking sequence optimization based on a two-level approximation and genetic algorithm (GA), and establish an optimization model including continuous size variables (thicknesses of plies) and discrete variables (0/1 variables that represent the existence of each ply). To solve this problem, a first-level approximate problem is constructed using the branched multipoint approximate (BMA) function. Since mixed-variables are involved in the first-level approximate problem, a new optimization strategy is introduced. The discrete variables are optimized through the GA. When calculating the fitness of each member in the population of GA, a second-level approximate problem that can be solved by the dual method is established to obtain the optimal thicknesses corresponding to the each given ply orientation sequence. The two-level approximation genetic algorithm optimization is performed starting from a ground laminate structure, which could include relatively arbitrarily discrete set of angles. The method is first applied to cylindrical laminate design examples to demonstrate its efficiency and accuracy compared with known methods. The capacity of the optimization strategy to solve more complex problems is then demonstrated using a design example. With the presented method, the stacking sequence in analytical tools can be directly taken as design variables and no intermediate variables need be adopted. S. Chen ( ) · H. An · H. Huang Beihang University, Beijing 100191, China e-mail: chenshenyan@buaa.edu.cn Z. Lin China Great Wall Industry Corporation, Beijing 100054, China C. Kong Chosun University, Gwangju 501759, Republic of Korea


Introduction
Because of their high strength-to-weight and high stiffnessto-weight ratios, composite materials have been widely used in structures in the aerospace industry over recent decades. Laminated composite materials are usually fabricated from unidirectional plies of a given thickness with fiber orientations limited to a small set of angles, for example 0 • , +45 • , −45 • and 90 • . Designing such laminates for various strength and stiffness requirements involves an integerprogramming problem for selecting the best number of plies of each orientation, and then determining an optimal stacking sequence. An extensive review of the topic can be found in recent paper by Ghiasi et al. (2009Ghiasi et al. ( , 2010 and the earlier paper by Venkataraman and Haftka (1999). It showed that two main scenarios are classified: constant stiffness (the stacking sequence is uniform for the entire structure) and variable stiffness (material distribution and fiber orientation might change over the structural domain). With lower design and manufacturing costs involved, constant stiffness design is widely used in engineering and is also the focus of this paper.
For constant stiffness design problems, many composite structure optimization codes use ply thickness as a design variable with a fixed stacking sequence and perform continuous optimization. Examples are PANDA2 (Bushnell 1987), ANSYS (Giger and Ermanni 2005), Msc. Nastran (Taskinoglu and Sahin 2011), and Altair OptiStruct (Zhou et al. 2010). The continuous solution is then rounded to an integer number of plies. Because of the ease of implementation, this method has been applied to solve practical problems (Yuan et al. 2006). However, the approach is greatly affected by the pre-fixed stacking sequence, which yields sub-optimal designs.
For optimizing the stacking sequence of a laminated composite with discrete variables, GAs have been the most popular method (Venkataraman and Haftka 1999). Unfortunately, one major shortcoming of GAs is their high computational cost for the large number of objective and constraint evaluations. For this reason, several modifications to GAs have been proposed, such as parallel computing (Henderson 1994;Punch et al. 1994;Kere and Lento 2005), multi-level optimization (Punch et al. 1994), approximation methods for function evaluation (Liu et al. 1998;Gantovnik et al. 2002;Todoroki and Ishikawa 2004), as well as a combination of these methods (Park et al. 2008). Among these methods, the approximation concepts like response surface methods have been widely employed to reduce the computational cost. However, the cost of constructing the response surface becomes prohibitive as the number of design variables increases. To reduce the number of design variables used in the construction of the response surface, lamination parameters were employed as intermediate variables (Todoroki and Ishikawa 2004), which is independent to the number of layers and leads to great computational saving.
Based on lamination parameters, two-step approaches were proposed and refined by several authors (Yamazaki 1996;IJsselmuiden et al. 2009;Irisarri et al. 2011). The first step takes lamination parameters as continuous design variables to search for the optimal stiffness and thickness of the laminate. The stacking sequence of each laminate is then searched with GA based on structural approximations in the second step. This reduces the number of design variables considerably and allows easy use of approximation for changes in the stacking sequence. However, for most analytical tools, stacking sequences are required as input data whereas lamination parameters cannot be input directly.
In the present study, aiming at reducing the computational cost and implementing the stacking sequence optimization with general FE programs directly, a method incorporating a two-level approximation and GA is constructed. The original optimization strategy was proposed by Dong and Huang (2004) in solving truss topology optimization problem, which showed that the optimal solutions could be reached after an extremely few structural analyses. Considering the similarity between stacking sequence optimization problem and truss topology optimization problem, in which both discrete topology variables and continuous size variables are involved, we introduce the optimization strategy into solving the stacking sequence optimization problem. In order to increase the approximation accuracy, a branched multipoint approximation (BMA) proposed by Huang and Xia (1995) is adopted to establish the first-level approximation problem. The new method is applied to weight minimization problems of a composite cylinder and a composite cone-cylinder, for which the computational cost is demonstrated at the level of optimization calculations with only continuous variables.

Problem formulation
In the present study, the optimization model is established based on a ground stacking sequence. The ground stacking sequence and the number of layers are relatively arbitrary, which means the ply angle has been given before the calculation and the corresponding discrete {0, 1} will decide the ply should be retained or not. Besides the discrete {0, 1} variable, there is a thickness variable for each layer. The thickness variables seem redundant, however, from lots of calculations, the results of models with thickness variables are much better than models without thickness variables, which will be shown in section 4.1. The thickness variables optimization which will be solved in the second level approximation could help to approach the optimal stiffness. Based on the ground laminate sequence, the optimization problem can be formulated as follows: where X is the vector of ply thickness variables, α is the vector of discrete 0/1 variables which represent the existence of each ply, n denotes the total number of plies in the ground structure, m is the number of constraints, f (X) is the objective function, g j (X) is the j -th constraint function, x U i and x L i are the upper and lower bounds on the i-th thickness variable, respectively, and x b i is a very small value usually 0.01x L i used to represent the thickness of a removed ply. For instance, when the ground laminate is [(0/±45/90) 12 /0/45] s , the total number of plies is 100 and by considering symmetric laminate there are 50 thickness variables X = {x 1 , x 2 , . . ., x 50 } T and 50 discrete variables α = {α 1 , α 2 , . . ., α 50 } T .

Optimization algorithm
3.1 The first-level approximate problem with BMA function Investigating the former work (Huang and Xia 1995), it can be seen that an explicit approximate function g (p) j (X) was formed based on multipoint aproximation (MA) in structural optimization problems. In fact, MA is a wighted representation of the Taylor expansions with respect to intermediate variables y i = x r i . MA is shown to be of higher quality as it is used for cross-sectional size optimization, but it becomes singular and no longer effective if the design variable x k approaches to zero or is substituted by a userdefined very small value x b k , which could happen when the k-th ply is removed in laminate stacking sequence optimization. For example, if x i → 0 and r < 0, then x r i → ∞. So MA cannot be used for laminate stacking sequence optimization.
To solve this problem, a modified MA (MMA) method was proposed by Dong and Huang (2004), which is a weighted representation of the Taylor expansions with respect to intermediate variables y i = e −rxi . MMA is still effective even if some variables are removed and substituted by a small value, i.e., x k = x b k . However, the approxination accuracy of MA is generally better than MMA for complex constraint functions approximation with continuous variables. For this reason, BMA was proposed by Huang et al. (2006), which integrates MA and MMA as one function with two branches for conditions when the corresponding variable exsits or is absent respectively. Here, BMA is a piecewise function with two branches for conditions when the corresponding ply exsits or is absent respectively. Therefore, to solve problem (1), a series of first-level approximate problems are established using BMA.
In the p-th stage, the first-level approximate problems can be stated as below: where x U i(p) and x L i(p) are the move limits of x i at the p-th stage. f (p) (X) is the p-th approximate objective function created using the BMA function with the information of the primal function f (X) and its derivatives at multiple known points. If the objective is to minimize the weight of the structure, f (X) is explicit and approximating f (X) is not necessary because the weight of laminates is in proportion of the thickness of each ply. J 1 is the number of active constraints of the original problem (1), and g (p) j (X) represents the j -th approximate constraint function created by using BMA function at the p-th stage. The form of f (p) (X) and g (p) j (X) is as follows: where In (5)- (8), w (p) (X) represents the objective function f (p) (X) or the constraint function g (p) j (X), X t is the t-th known point, and H is the number of points to be counted, bounded above by H max . When the number of known points is larger than H max , only the last H max points obtained are counted in (5)-(8). w(X t ) and ∂w(X t )/∂x i are the function values and partial derivatives of w(X) at X t , and h t (X) is the weighted function. The exponents r o,t and r m,t (t = 1, . . ., H ), are adaptive parameters used to control the nonlinearity of the approximation, and can be obtained from the following equations: where r L o , r U o , r L m and r U m are the lower and upper bounds on r o,t and r m,t , respectively. If there is only one known point, r o,t and r m,t are assigned the initial values r o,t0 and r m,t 0 , respectively. In this paper, r o,t0 = −1, r m,t 0 = 3.5, r L o = −5, r U o = 5, r L m = −5 and r U m = 5. It should be noted that a ply is not deleted when its related discrete variable becomes zero, but is substituted by a special ply with a very small thickness. Thus, the objective function and structural constraint functions are still differentiable with respect to the ply thickness variables, which can be approximated by multipoint approximation.
In the first-level approximate problems, the objective function and constraint functions are made explicit by using the BMA function. Since the first-level approximate problem (2) is an optimization problem with both continuous and discrete variables, it cannot be solved by normal mathematical programming methods. If GA is used to solve this problem directly and the continuous and discrete variables are encoded simultaneously, the scale of the design variables and the computational resources required will become huge. Thus a new optimization strategy is proposed. The discrete variables representing the existence of plies are optimized through a GA and the thicknesses of existed plies are optimized using the dual method, which could significantly reduce the gene code length in the GA and improve the optimization efficiency and accuracy.

Discrete variables (0/1 variables)optimization with GA
(1) GA code Considering that the laminate is symmetrical, one string of genes is used to represent half of the laminate. The existence of each ply is indicated by a 0 or 1, with 0 representing that the ply is removed and 1 representing that the ply is kept. Thus the gene can be written as s = α 1 α 2 ...α n , where α i is a discrete 0/1 variable which represents the existence of each ply in the original problem (1). The string is the classical binary representation.
(2) Generation of the initial population Since we have no knowledge of how to choose the initial members at the first/initial calling of GA, the initial population of designs can be generated randomly. Once the optimal members of the population have been obtained, the initial population of next generation is generated according to the elite of former generations of the GA. That is to say, from the second calling of the GA, the initial population consists of three parts: 1) the optimal members of former generations; 2) members generated from those in 1) by making α i approach 0 with a greater probability if the corresponding optimal thickness is less than 1.5 times the single ply thickness; 3) members generated randomly. Here, we use N to denote the number of members in the population. (

3) Fitness function
The GA is used to solve unconstrained maximization problems, so a constrained minimization problem using an exterior penalty function is established as follows: where n c is the number of stacks violating the limitation that the number of continuous plies with the same ply angle must be less than 4 (the number of plies adjacent to the midplane of the laminate must be less than 2); φ = (10/9) 0.5 is the penalty parameter for this manufacturing constraint (Soremekun et al. 1995), which means the value of F 1 will be penalized when the number of stacks with the same ply angle exceed 4; R is the penalty factor, which is multiplied by an increasing rate r(r > 1), q denotes the penalty exponent (normally 1-5, 1 is recommended), and f (X*) and g j (X*) are the objective value and constraint values with respect to the optimal thicknesses of given stacking sequences, obtained from (16). The composite function can be then appended to the objective function F 2 , which is to be maximized as: where s is the exponent of normalization (1-3, 2 is recommended). In addition, to prevent too many copies of members with high fitness, which would induce premature convergence, a parameter P p is given to the fitness function to control the maximum number of copies of each member. We take P p = 2 in the present study. Finally, the fitness function is defined as: It can be seen that to calculate the fitness of each member in a population, further sizing optimization is needed to obtain the optimal thicknesses corresponding to a given ply orientation sequence, which is solved by the internal sizing optimization in Section 3.3. Fitnesses that have been calculated are stored in a database to shorten the computational time for optimizing the same genetic code.
(4) Reproduction operator The simulated roulette wheel selection method (Goldberg 1989) is applied to select parents for reproduction in the present work. The selection probability P i of a member, shown in (15) in the population is in proportion to its current fitness. Members with high fitness will produce more offspring, while members with low fitness may be eliminated in this process.
In (15), F itness i is the fitness of the i-th member, and P i is the selection probability of this member. Firstly, according to P i , we divide the wheel into a number of sectors equal to the number of members in the population (N ). The proportion of each sector area out of the total wheel area corresponds to the fitness of each member. We then spin the wheel N times to simulate roulette. Each time the pointer stops at a sector the corresponding member is selected.
(5) Crossover operator A one-point crossover method is used. Firstly, two members are selected randomly from the population after the reproduction operation. A random number between 0 and 1 is then drawn to determine whether the crossover is to be executed. If the number is smaller than the crossover probability P c , the crossover operator is executed, and the pair of genes is swapped at a randomly chosen point. Otherwise, the two members are reproduced directly to the child population. This process is repeated until the size of the child population is equal to the size of the parent population.
(6) Mutation operator A simple mutation method is used as the mutation operator. For each member in the population after the crossover operation, we switch a 0 to a 1 or vice versa if the number randomly generated is smaller than the mutation probability P m . Otherwise, the code in a gene is kept unchanged.

Size optimization for fitness calculation
After a ply orientation sequence is given for each member by the GA, the discrete variables in the first-level approximate problem (2) are fixed. Moreover, the sizing variables of the members whose corresponding discrete variables are zero will not change and can be removed. Additionally, the deleted plies and related constraints g (p) j (X) will not exist. The retained constraints will be further selected through temporal deletion techniques. Finally, the internal sizing optimization problem can be simplified to: where X is the vector of the remaining ply thickness variables, I is the number of remaining variables, are the upper and lower bounds on the i-th remaining variable at the p-th stage, g j (X) is the retained constraint, J 2 is the number of retained constraints, and f (X) is the structure weight for the given ply orientation sequence. Problem (16) is an explicit optimization problem with continuous variables only, but it is still difficult to solve the problem due to its complicated nonlinearity. Since the number of thickness variables in the first-level problem (16) is usually much more than the number of active constraints, it is reasonable to use the dual method to efficiently solve the problem. Thus a second-level approximate problem that can be solved by the dual method is established to approach the optimum of the first-level approximate problem (16).

The second-level approximate problem
For common use, the objective function and the constraint functions in the first-level approximate problem (16) are expanded into linear Taylor series in the variable space X and its reciprocal variable space, respectively, then the second-level approximate problem is formed. In the k-th step, the approximate problem can be stated as: where f (k) X is the objective function at the k-th step, g (k) j X is the constraint function, x U i(k) and x L i(k) are the move limits of x i at the k-th step, and x U i(k) and x L i(k) are the upper and lower bounds on x i at the k-th step.
The dual problem for the approximate problem (18) can be stated as follows: , i = 1, · · · , I . The relationship between the design variables and the dual variables can be established as follows: where and After finding the optimal design variables (X and α), the thickness variables X need to be rounded to make them integer multiples of the ply thickness, and plies corresponding to a discrete variable of 0 are deleted.

The sensitivity analysis
The sensitivities of objective function and constraint functions with respect to the thickness variables in the first-level approximation problem are derived from the results of commercial finite element program Nastran sol 200, in which semianalytical method is used. Within the second-level approximation problems, only the sensitivities of objective function (weight) are needed, which are equal to the area × density of each layer.

Flow chart and convergence criteria
The flow chart of the optimum algorithm is organized as shown in Fig. 1. The structural analysis within the procedure is implemented by Natran. In the end of the optimization procedure, the thickness variables will be rounded to the nearest integer and the layers with thickness of 0.01 t will be removed. Within the optimization calculation procedure, there are three positions need to evaluate convergence. The convergence criteria in these positions are applied as follow.

1) First-level approximation problem convergence evaluation
There are three conditions involved. a.
Where DELTA1, DELTAX and DELTAC are convergence control parameters, and LPMAX1 is the maximum iteration number of the first-level approximation problem. To evaluate the convergence, condition a, b & c should be satisfied simultaneously.
2) Second-level approximation problem convergence evaluation Three conditions are involved.
where DELTA and NMAX1 are the convergence precision and maximum iteration number of the second-level approximation problem. When any one of the three conditions is satisfied, the second-level approximation problem is converged. In the present work, DELT A1 = 0.001, DELT AX = 0.001, DELT AC = 0.005, LPMAX1 = 20, DELT A = 0.001, NMAX1 = 10.

3) Convergence evaluation of GA
When the number of total evolution generations is larger than the maximum number of generations, the GA iterations will stop.

Structural analysis and sensitivity analysis
First-level converged?

Yes No
Return the optimal X* Initial design X

Numerical examples
Two numerical examples are presented to illustrate the capabilities of the optimization procedure. The calculations are conducted in a computer with CPU3.30 GHz/ RAM8.00G.

Example 1
Consider a composite cylinder with a radius of 100 mm and a length of 400 mm. One end of the cylinder is fixed. The composite material properties are: Young's modulus in two directions E 1 = 128 Gpa, E 2 = 13 Gpa; shear modulus G 12 = 6.4 Gpa; Poisson's ratio ν 12 = 0.3; ply thickness  A: after rounding, B: before rounding; c the first-frequency in the ref., d the first-order frequency given by Nastran t = 0.127 mm; density ρ = 1600 kg/m 3 . The stacking sequence for the cylinder is symmetric, and the 0 • fiber The objective is to minimize the weight of the cylinder. The constraint is f 1 ≥ 492.93 Hz, where f 1 is the first-order frequency of the cylinder. Due to the restrictions on the manufacturing process, which is that the thickness of one layer could not be lower than t, the lower and upper bounds on ply thickness are set as x L i = t and x U i = 4t, and the thickness of a removed ply is x b i = 0.01t. The upper bound on the number of known points is H max = 5.
Eight optimization cases were conducted. In each case, the optimization without thickness variables, which means there is only first-level approximation and GA involved in the optimization procedure, was also implemented to verify the necessity of thickness variables. The number of layers in the ground laminates is given from 30 to 100 to test the optimum searching capability of the present optimization strategy. The optimum stacking sequence will be affected by optimization control parameters, such as the number of members in the population N , the maximum number of generations MaxG, the crossover probability P c , the mutation probability P m , and the maximum delete percentage FITP. The optimization control parameters of the selected results are listed in Table 1, the initial penalty factor is R = 0.05, and the increasing rate is r = 2.
The optimization results are shown in Table 2. The value of weights and frequencies listed in Table 2 are actual weights and frequencies obtained from the finite element program Nastran. The results of Ref. (Wang 2008) and Ref. (Tang et al. 2004) are also shown as comparison. The algorithm performance is also evaluated with the reliability in researching the best solution. Taking the case 1 as an instance, we assume that feasible designs with layers less than 18 (the number of layer of the best known design is 16) are acceptable and we denote them as practical optima. The reliability is 80 % with 10 structural analyses on average through 200 tests.
From the results listed in Table 2, it can be seen that the present optimization procedure is able to find relatively good stacking sequences which are close to the results in published literatures. Starting from different ground stacking sequences, which are varied from 30 layers to 100 layers, the present optimization procedure can all approach practical optima efficiently. Comparing the results of that with thickness variables (a) and that without thickness variables (b) for the studied cases, the weight of (b) is higher than that of (a), and the iterations of (b) is less than that of (a), which means that the second-level approximation can help the GA to approach the optimum and avoid to convergence prematurely at local optimums. In addition, it showed that relatively low number of iterations were needed in each case, and the computational time are all less than 100 s, which showed that the computational expense of the present optimization procedure is not too sensitive to the number of design variables. The iteration history of structural weight in case 1, 6 and 8 during the optimization process is shown in Table 3.

Example 2
The composite cone-cylinder structure shown in Fig. 2 consists of two composite parts: the conic part and the cylindrical part. The dimensions are: r = 60 mm, R = 100 mm, a = 100 mm, b = 200 mm. The two ends of the structure are fixed, and the outer surfaces are under a pressure of 0.3 Mpa. The material is same as that in Example 1. The stacking sequence for this structure is symmetric, and the 0 • fiber direction is along the longitudinal direction of the cone and cylinder. The objective is to minimize the structural weight. The first constraint is λ 1 ≥ 6, where λ 1 is the critical buckling factor of the structure. The second constraint is f 1 ≥ 1700 Hz, where f 1 is the first-order frequency of the structure. In composite materials, it is usually required that the number of +45 • plies equals to the number of −45 • plies, which is called the balanced constraint. In the present work, the balanced constraint is enforced by linking the thickness variables of adjacent +45 • and −45 • plies. Two kinds of calculation are investigated: (1) considering the balanced constraint (BC); (2) not considering the balanced constraint (NBC). The optimization parameters are: 01t, H max = 5, R = 0.05, r = 2. N , MaxG, P c , and P m are different in studied cases for results comparison. Table 4 gives three groups of results with varied ground stacking sequences: 1) 40 layers in both conic and cylindrical part; 2) 60 layers in both conic and cylindrical part; 3) 60 layers in conic part and 100 layers in cylindrical part. It can be seen that the optimization calculations can converge to the optimal results from different ground stacking sequences with a small number of iterations. Comparing the results of BC and NBC, it showed that the structural weight of BC in three groups are a little lower than that of NBC, which might be caused by fewer variables in BC than that in NBC. It also showed that present procedure can conduct stacking sequence optimization problem with multiple parts. The iteration history of structural weight in the group 1 and 3 during the optimization process is shown in   Table 5 are a little higher than that in Table 4, which is caused by the results rounding.

Conclusions
An efficient stacking sequence optimization strategy for composite structures is presented in this paper. This strategy is based on a two-level multi-point approximation and GA. The procedure starts with a ground stacking sequence and both continuous size variables (thicknesses of plies) and discrete variables (0/1 variables that represent the existence of each ply) are included. The genetic solver is run to deal with the discrete variables based on the first-level approximation, and the fitness calculation of each member is obtained by solving a second-level approximation problem for thickness variables optimization. The structural and sensitivity analyses are only required before constructing first-level approximate problem. The data of the critical responses and their gradients in each iteration must be stored for the next iteration. This procedure only requires a very small part of computational time. The numerical tests demonstrate that the present method can rapidly and in a stable manner reach the solution under a given 0.1 % weight precision. The effectiveness of the method is comparable with up-to-date existing methods (Irisarri et al. 2011), but the stacking sequence in analytical tools can be directly taken as design variables and no intermediate variables need be adopted. The extension of this work to the general case with stress constraints is currently under investigation.