1 Introduction

The problem of identifying the optimal stacking sequence in laminates, that is the optimal order of the orientations across the thickness, has been investigated for a long time. In most practical applications, the candidate materials are restricted to −45°, 0°, 45° and 90° plies, which are the conventional orientations used in aeronautics (Baker et al. 2004). In order to propose solutions relevant for industrial applications, the optimal stacking sequences must satisfy specific design rules (Liu et al. 2011; Toropov et al. 2005; Herencia et al. 2007; Liu and Krog 2008). The usual design rules require that the laminate must be balanced (i.e. the number of plies at −45° is equal to the number of plies at 45°) and symmetric; there must be no more than N max successive plies with the same orientation in the laminate (N max is often equal to 3 or 4); the transition between two plies must be at most of 45°, that is [0/90] and [45/−45] sequences are forbidden; finally, minimum and maximum percentages of each possible orientation must exist. Blending of plies (i.e. the ply compatibility/continuity between the adjacent regions in a variable thickness and stiffness composite structure) is another requirement reflecting practical manufacturing considerations (Liu et al. 2011). This last constraint is just mentioned here but not studied in this paper, since it deals with constant stiffness composite structures of constant thickness. This could however be a possible extension of the present study, which will be investigated in the future.

Even if no design rules were used, the stacking sequence optimization problem is discrete and combinatorial by nature, and is usually solved by discrete optimization methods, such as integer programming (Haftka 1992), genetic algorithm (Le Riche and Haftka 1993; Kogiso et al. 1994; Liu et al. 2000; Lin and Lee 2004), branch and bound (Todoroki and Terada 2004; Matsuzaki and Todoroki 2007), simulated annealing (Deng et al. 2005; Erdal and Sonmez 2005), Tabu search (Pai et al. 2003), ant colony (Aymerich and Serra 2008; Wang et al. 2010) or particle swarm optimization (Nan et al. 2010). Using these methods may however require large computational resources, since a large number of iterations is often required to obtain an optimal solution. Optimization methods for continuous variables have also been used, e.g. with a formulation based on the lamination parameters with orientations restricted to conventional plies, as described in Liu et al. (2004) and Diaconu and Sekine (2004): in a first step, the optimal values of the lamination parameters are determined; then a genetic algorithm is used to obtain the laminate stacking sequence that best matches the lamination parameter values (Liu et al. 2011; Autio 2000; Herencia et al. 2008). When the problem is directly tackled with continuous fiber orientations and ply thicknesses as design variables, a stacking sequence with conventional ply orientations can not be identified (Watkins and Morris 1987; Pedersen 1991; Bruyneel and Fleury 2002). For a complete survey, refer to Abrate (1994), Ghiasi et al. (2009) and Bruyneel and Diaconu (2012).

The classical topology optimization for isotropic materials (Bendsoe and Sigmund 2004) was adapted by some researchers in order to meet the specific structural composite design constraints. A transverse (i.e. “through the thickness”) topology optimization approach was used to solve the stacking sequence problem with a dedicated sequential convex programming method for discrete design variables (Beckers 1999; Beckers and Vermaut 1999; Beckers 2000). In this case, a large number of candidate plies with discrete −45°, 0°, 45° or 90° orientations is defined in the laminate, and the algorithm finally assigns a pseudo-thickness equal to 0 or 1 to the retained candidate plies, knowing that the final number of plies is a constraint of the optimization problem. In their recent work, Lund and co-workers (Stegmann and Lund 2005; Lund 2009) have proposed the Discrete Material Optimization (DMO) approach to parameterize the topology optimization problem of fiber reinforced composite structures, based on an extension of the multi-phase topology optimization (Sigmund and Torquato 2000). Here, the discrete optimization problem is replaced by a continuous approach with a penalty to exclude intermediate values of the design variables. With this parameterization, it is possible to determine the optimal orientation along with the presence or absence of plies in each region of a composite structure. However, in these approaches, the specific design rules used in aeronautics for conventional plies (Liu et al. 2011; Toropov et al. 2005; Herencia et al. 2007; Liu and Krog 2008), which constrain the transverse plies distribution, are not taken into account. Recently, Bruyneel (2011) proposed an alternative to DMO in the case of conventional orientations. This parameterization, termed SFP (Shape Functions with Penalization) proved to be competitive with DMO when it is applied to non homogeneous membrane problems, since it provides optimal plies orientations in a smaller number of iterations and with a smaller set of design variables. However, the efficiency of SFP is not demonstrated in Bruyneel (2011) for the stacking sequence optimization problem.

In this paper, the SFP parameterization for the solution of local stacking sequence optimization will be evaluated. Blending constraints (ply compatibility between adjacent regions in the composite structure) are not taken into account and therefore only constant stiffness structural composites with constant thickness are considered (Ghiasi et al. 2009). However, specific design rules used for the design of composite aero-structures (Liu et al. 2011; Toropov et al. 2005; Herencia et al. 2007; Liu and Krog 2008) are formulated and taken into account in the optimization problem. Figure 1 illustrates this problem, along with some forbidden configurations for the stacking sequence at the solution. The methodology is demonstrated for the maximization of the buckling load in a composite panel of constant thickness submitted to compression, since buckling is a relevant criterion for designing thin-walled structures (Starnes 1980).

Fig. 1
figure 1

Problem solved in this paper

The paper is organized as follows. In Section 2, the SFP parameterization is recalled. The specific design rules for composite plates including conventional plies are presented in Section 3, where they are expressed in terms of the SFP parameterization. That section is an adaptation of the work described in Bruyneel et al. (2010). In Section 4, the finite element approach developed with the SAMCEF finite elements code (SAMCEF, www.samtech.com) is presented, as well as the formulation of the optimization problems, which is set up in the BOSS Quattro optimization software (Radovcic and Remouchamps 2002; BOSS Quattro, www.samtech.com). These optimization problems are solved with our own implementation of the method of moving asymptotes (Svanberg 1987; Bruyneel 2006), working with inequality constraints and continuous design variables.

2 The SFP parameterization

A natural way to parameterize the material properties of composite ply k (Fig. 1) with continuous design variables consists in writing the linear anisotropic material stiffness matrix C (k) as a weighted sum over the stiffness of some candidate materials. When conventional laminates are used, and assuming that materials 1, 2, 3 and 4 correspond to fibers oriented at −45°, 0°, 45° and 90°, respectively, this matrix can be written as:

$$ {{\bf C}}^{(k)}=\sum\limits_{i=1}^{n^k} \emph{w}_i^{(k)} {{\bf C}}_i = \emph{w}_1^{(k)} {{\bf C}}_1 + \emph{w}_2^{(k)} {{\bf C}}_2 + \emph{w}_3^{(k)} {{\bf C}}_3 + \emph{w}_4^{(k)} {{\bf C}}_4 $$
(1)

with

$$ \sum\limits_{i=1}^{n^k} \emph{w}_i^{(k)} = \emph{w}_1^{(k)} + \emph{w}_2^{(k)} + \emph{w}_3^{(k)} + \emph{w}_4^{(k)} =1 $$
(2)

and

$$ 0\le \emph{w}_i^{(k)} \le 1,\quad i=1,...,n^k $$
(3)

In (1) and (2), n k is equal to 4 since 4 candidate orientations are considered. Equations (2) and (3) need to be satisfied because it is a condition to obtain physically meaningful results. At the optimum, the physical ply k should be made of one (and only one) of the candidate plies, with the material properties C 1, C 2, C 3 or C 4. In that case, one of the \(\emph{w}_i^{\left( k \right)} \) is equal to 1 while the others are null at the solution. The most difficult task consists in determining an efficient expression for the weighting factors \(\emph{w}_i^{\left( k \right)} \) in (1). This will strongly condition the shape of the design space and consequently, the complexity of the optimization problem.

In Bruyneel (2011), the weighting factors \(\emph{w}_i^{\left( k \right)}\) in (1) are calculated based on the shape functions (SF) of a first order quadrangular finite element, given in (4), and in (5) in a condensed form. By definition, this set of functions satisfies conditions (2) and (3). According to (4), the candidate materials are associated to the vertices of a square, while the two natural coordinates R and S, whose values vary between − 1 and 1, are sufficient to uniquely define a candidate material (Fig. 2).

$$ \begin{array}{rll} \emph{w}_1^{(k)} &=& \frac{1}{4}\left( {1-R^{(k)}} \right)\left( {1-S^{(k)}} \right) \\ \emph{w}_1^{(k)} &=& \frac{1}{4}\left( {1-R^{(k)}} \right)\left( {1-S^{(k)}} \right) \\ \emph{w}_3^{(k)} &=& \frac{1}{4}\left( {1+R^{(k)}} \right)\left( {1+S^{(k)}} \right)\\ \emph{w}_4^{(k)} &=& \frac{1}{4}\left( {1-R^{(k)}} \right)\left( {1+S^{(k)}} \right) \end{array} $$
(4)
$$ \emph{w}_i^{(k)SF} =\frac{1}{4}\left( {1\pm R^{(k)}} \right)\left( {1\pm S^{(k)}} \right) $$
(5)

In order to penalize the intermediate values of the design variables, an exponent p is applied to (5). The resulting SFP parameterization, i.e. SF with Penalization, is written in (6). This expression still satisfies (3). However, the condition (2) is violated for the intermediate values of the design variables R and S, but, satisfied at the solution. Numerical tests demonstrated that this is not an issue and that this does not penalize the convergence toward a solution when the value of the exponent p in (6) is large enough. The SFP parameterization is illustrated in Fig. 3.

$$ w_i^{(k)\it SFP} =\left[ {\frac{1}{4}\left( {1\pm R^{(k)}} \right)\left( {1\pm S^{(k)}} \right)} \right]^p $$
(6)
Fig. 2
figure 2

The principle of the SFP parameterization

Fig. 3
figure 3

The weighting factors in the SFP parameterization (p = 2)

3 Formulation of the design rules for conventional laminates

In a composite aero-structures design, specific rules must be considered as constraints in the stacking sequence optimization problem. At Airbus the following rules are applied:

  1. (R1)

    Minimum percentage of each orientation;

  2. (R2)

    Balanced lay-up (same number of plies at 45° and −45°);

  3. (R3)

    Symmetric laminate;

  4. (R4)

    No more than N max successive plies with the same angle;

  5. (R5)

    Maximum gap between two adjacent (superposed) plies is 45°;

Using the SFP parameterization, there are of course several ways of defining these design rules as a function of the design variables and/or the weighting coefficients. Some definitions are, for instance, proposed in Bruyneel et al. (2010) for SFP and DMO. However, in this paper, we work with the definitions of (7)–(13). The goal here is to show that it is possible to use a gradient-based optimization approach with continuous design variables to solve the stacking sequence problem, not to compare the merit of different potential solution procedures (DMO and SFP) or design rules definitions. Of course, additional research effort will be necessary to identify the expressions of the design rules resulting in a faster or smoother convergence history.

Assuming that the final laminate has n plies, the design rule R1 is expressed as a combination of the weighting factors, such as:

$$ \underline{\xi }\le \sum\limits_{k=1}^n {w_j^{(k)} } \le \overline \xi $$
(7)

where j = 1,2,3,4 for the candidate plies at −45, 0°, 45° and 90°, respectively. \(\underline{\xi }\) and \(\overline \xi \) are the lower and upper bounds on the proportions of each candidate orientation. For example, \(\underline{\xi }=0.1n\) and \(\overline \xi =0.5n\) would mean that at least 10% and at most 50% of each candidate orientations must be present in the laminate at the solution.

In the same way, the design rule R2 is obtained by assuming that the sum of the weighting factors associated to the candidate plies oriented at −45° must balance the sum of the weighting factors associated to the candidate plies oriented at 45°. The corresponding inequality constraint can be written as:

$$ \left( {\sum\limits_{k=1}^n {\emph{w}_1^{(k)} } -\sum\limits_{k=1}^n {\emph{w}_3^{(k)} } } \right)^2\le 0 $$
(8)

For the design rules R3, R4 and R5, expressions based on the design variables R and S are used, and are therefore specific to the SFP parameterization presented in Section 2.

For the symmetry design rule R3, optimization constraints are not defined. Instead the values of the design variables of the corresponding symmetric plies are linked to each others in the parameterization of the finite element model. It then comes that:

$$ R^{\left( {k+1} \right)}=R^{\left( {n-k} \right)}\;\mbox{and}\;S^{\left( {k+1} \right)}=S^{\left( {n-k} \right)},\;k=0,\frac{n}{2}-1 $$
(9)

The symmetry design rule is therefore not defined as an optimization constraint, and is automatically satisfied at the solution.

Knowing that the range of variation for R and S is given by the interval [−1;1], the test chosen for R4 is based on the following relation between plies k and k + 1 (10):

$$ \begin{array}{rll} R4^{\left( {k,k+1} \right)}&=&\left[ {\left( {R^{\left( k \right)}\times R^{\left( {k+1} \right)}} \right)+\left| {R^{\left( k \right)}\times R^{\left( {k+1} \right)}} \right|} \right]\\ &&\times \left[ {\left( {S^{\left( k \right)}\times S^{\left( {k+1} \right)}} \right)+\left| {S^{\left( k \right)}\times S^{\left( {k+1} \right)}} \right|} \right] \end{array} $$
(10)

Let’s assume that the two consecutive plies k and k + 1 have the same orientation, which is equal to 45°. R and S for both plies are then equal to 1. It results that the value of (10) is different from zero. If the orientations for plies k and k + 1 are different, the value of (10) is equal to zero. The value of \(R4^{\left( {k,k+1} \right)}\) for (N max  + 1) successive plies (N max  = 3 or 4 plies in practice) can be used to express the design rule R4. As showed by (11), the product of those values equals zero if no more than N max consecutive plies have the same candidate orientation. Note that relation (11) can never be negative.

$$ \prod\limits_{i=1}^{N_{\max } } {R4^{(k+i-1,k+i)}} \le 0,\;k=1,...,\frac{n+N_{\max } -1}{2} $$
(11)

An illustration of the design rule R4 is proposed in Figs. 4 and 5, if N max equals 3. In Fig. 4, three successive plies have an identical orientation, while the fourth one is different: the design rule of (11) is satisfied since the product is equal to zero. In Fig. 5, four consecutive plies have the same orientation. It turns out that (11) is violated.

Fig. 4
figure 4

Configuration for a constraint R4 satisfied (N max  = 3)

Fig. 5
figure 5

Configuration for a constraint R4 not satisfied (N max  = 3)

Figure 6 illustrates the successive tests for the R4 design rule, each one being carried out through N max  + 1 plies. Since the laminate is symmetric, the tests not only rely on the plies located on one part of the symmetric laminate (plies from 1 to n/2), but also include some plies from the other part of the laminate to avoid unfeasible sequences at the mid-plane location.

Fig. 6
figure 6

Location of the successive R4 tests through the thickness of a symmetric laminate for N max  = 3

Finally, the design rule R5 is based on (12).

$$ \begin{array}{rll} R5^{(k,k+1)}&=&\left[ {\left( {R^{(k)}\times R^{(k+1)}} \right)-\left| {R^{(k)}\times R^{(k+1)}} \right|} \right]\\ &&\times \left[ {\left( {S^{(k)}\times S^{(k+1)}} \right)-\left| {S^{(k)}\times S^{(k+1)}} \right|} \right] \end{array} $$
(12)

When the relative orientation of two successive plies k and k + 1 is equal to 90°, the value of R5 in (12) is different from zero. Note that R5 in (12) can’t be negative. The design rule can therefore be written as follows, when it is applied to the symmetric laminate:

$$ \sum\limits_{k=1}^{n/2-1} {R5^{(k,k+1)}} \le 0, $$
(13)

An illustration of the design rule R5 is proposed in Fig. 7.

Fig. 7
figure 7

Values of the R5 constraint for different successive ply orientations

4 Numerical tests

A square composite panel of constant thickness submitted to a compressive load is considered. The edge opposite to the load is clamped. Figure 8 shows the finite element model, the boundary conditions and the applied compressive load.

Fig. 8
figure 8

Finite element model, boundary conditions and loading

Mindlin shell elements of the SAMCEF library are used. In order to avoid the computation of the transverse stiffness matrix (often written K) and the discussions associated to it, only thin laminates are considered here. In our applications, only 20 plies are therefore taken into account. This amount of plies is sufficient to demonstrate the capability of the approach proposed in this paper and eases the interpretation of the results. The laminates studied here are symmetric (design rule R3), so the coupling stiffness matrix B is null. The stiffness matrices A and D are computed based on the SFP material parameterization of Section 2. The base material is C12K/R6376 Graphite/epoxy prepreg. With these properties, the material stiffness matrices for the candidate plies at 0°, 45°, 90° and −45° are computed. The material stiffness of each ply k is then obtained with (1), and is used for the evaluation of A and D. For this application, p is equal to 6 in the SFP parameterization of (6). The sensitivity analysis is carried out by finite differences.

The optimization problem including the whole set of constraints is written as follows:

Design variables::

\( R=\left\{ {R^{(k)},k=1,...,10} \right\}; S = \left\{ {S^{(k)},k=1,...,10} \right\} \)

OBJ::

\( \mathop{\max}\limits_{\left\{ {\bf R}, {\bf S} \right\}} \lambda_1 \left( {{\bf R}, {\bf S}} \right)\)

R1::

\( \underline{\xi }\le \sum\limits_{k=1}^{n/2} {w_i^{(k)} } \le \overline \xi ,\;i=\)-45°,0°,45°,90°

R2::

\( \left( {\sum\limits_{k=1}^{n/2} {w_1^{(k)} } -\sum\limits_{k=1}^{n/2} {w_3^{(k)} } } \right)^2\le 0\)

R3::

\( R^{(k+1)}=R^{(n-k)},\;k=0,\frac{n}{2}-1;\;S^{(k+1)}=S^{(n-k)},\;k=0,\frac{n}{2}-1\mbox{;}\;n=\mbox{20}\)

R4::

\( \prod\limits_{i=1}^{N_{\max } } {R4^{(k+i-1,k+i)}} \le 0,\;k=1,...,\frac{n+N_{\max } -1}{2}\)

R5::

\( \sum\limits_{k=1}^{n/2-1} {R5^{(k,k+1)}} \le 0\)

where λ 1 is the first buckling load factor of the composite plate, obtained with a linear buckling analysis (solution of an eigen-value problem). The objective is the maximization of this buckling load factor. This problem includes 20 design variables.

Since only symmetric solutions are considered, the design rule R3 is always satisfied. Sixteen different optimization problems are solved, combining the effects of the design rules R1, R2, R4 and R5. For the design rule R1, the minimum and maximum percentage of candidate plies are equal to 10% and 40%, respectively. For the design rule R4, N max is equal to 3. The initial values of the design variables in each ply correspond to R = S = 0. The optimal design is presumed to be obtained when, for a feasible design, the relative variation of the design variables between two successive iterations becomes lower than 0.01%. The results are presented in Table 1.

Table 1 Solutions for different sets of the design rules

Even if a formulation working with continuous design variables is used, discrete values of the orientations are obtained at the end of the optimization process. In the final stacking sequences, the orientations are clearly identified among the set of 0°, 45°, 90° and −45° candidate plies, meaning that there are no intermediate values of the design variables at the solution and that no rounding technique is required to obtain final discrete values.

The optimal stacking sequence without any design rules (test case 1 of Table 1) is very simple since it includes only 0° fiber orientations, with all the fibers oriented in the direction of the compressive load. For this configuration, the largest value of the optimized buckling load is obtained. This solution is reached in a very small number of iterations (see Fig. 9, where R_[j] and S_[j] are the values of the design variables for ply j). This specific optimized stacking sequence is also obtained for the test cases 3, 5 and 10 of Table 1. It can be checked that for these problems, the design rules that are taken into account are not violated. Since the presence of different design rules in the optimization problem will change the shape of the design space, these solutions may however be obtained in a different number of iterations.

Fig. 9
figure 9

Evolution of the objective function and of the design variables over the iterations for problem 1 of Table 1 (no design rules)

It is clear from the results that when all the design rules are taken into account in the optimization problem (test 16 of Table 1), a very small value of the optimized buckling load is obtained. Moreover, a larger number of iterations is necessary to obtain the solution (Figs. 10 and 11). In Fig. 10, the coefficients WjT are the sums of the weighting coefficients expressed in (7), where j = 1, 2, 3, 4 stand for the plies oriented at −45°, 0°, 45° and 90°, respectively; the values 2 and 8 in the ordinate axis correspond to \(\underline{\xi }=0.1n\) and \(\overline \xi =0.4n\).

Fig. 10
figure 10

Evolution of the objective function and of the design rules R1 for problem 16 of Table 1 (all the design rules are considered)

Fig. 11
figure 11

Evolution of the design variables for problem 16 of Table 1 (all the design rules are considered)

The influence of the number of design rules taken into account on the number of iterations needed to find a solu tion is difficult to determine. However a general trend is that most of the time working with a larger number of design rules tends to increase the number of iterations needed to reach a solution.

Using the design rule R1 penalizes a lot the final design, as it can be observed by comparing in Table 1 the optimized value of the buckling load for problem 2 to the ones obtained for problems 3, 4 and 5; problem 10 to problems 6, 7, 8, 9 and 11; and problem 15 to problems 12, 13, 14 and 16. This loss of structural performance seems logical since R1 imposes the use of orientations which are not necessary for the structural performance (especially since the overall best solution consists of only 0° plies, i.e. [010] s laminate).

For the solution of the test case 2 in Table 1, since only the design rules R1 and R3 are considered in the optimization problem, the design rules R4 and R5 are not satisfied. Indeed, 4 successive plies at 0° (and at 90°, as well) are obtained, and a transition between 0° and 90° plies (and 45 and −45°, as well) is observed. A similar observation can be done, for instance, for test case 10, where the design rules R1 and R4 were not taken into account in the optimization problem and happen to be not satisfied in the optimized stacking sequence.

Since a gradient-based optimization method is used, there is no guarantee that the global optimum is obtained. For instance, when the design rules R1, R3 and R5 are taken into account (problem 8 in Table 1), a better solution could be [04/−45/90/45/03] S (with a value of 0.85 instead of 0.83 for the normalized buckling load factor), even if changing the orientation of the plies close the mid-plane has only a small influence on the flexural behavior of the laminate and consequently on the maximization of the buckling load factor.

From Figs. 11 and 12, it is seen that the speed of the optimization process strongly depends on the stabilization of the values for the design variables 8, 9 and 10. Those design variables correspond to the plies located close to the mid-plane, which are less sensitive to the maximization of the buckling load factor since they contribute poorly to the flexural stiffness of the laminate.

Fig. 12
figure 12

Evolution of the objective function and of the design variables over the iterations for problem 15 of Table 1 (design rules R2, R3, R4 and R5)

When few design rules are considered in the problem, oscillations may occur during the iterative process. This is the case for problem 11 of Table 1, where only the design rules R3, R4 and R5 are taken into account (Fig. 13). Introducing the design rules R1 and R2 in the problem seems to stabilize the optimization process (Figs. 10 and 11). When R1, R2 and R3 are taken into account, oscillations are less prone to occur (Fig. 14). This observation suggests that the design space is simpler for these design rules, compared to the one with the design rules R4 and R5. A different formulation of the constraints R4 and R5 might provide a faster and smoother convergence.

Fig. 13
figure 13

Evolution of the objective function and of the design variables over the iterations for problem 11 of Table 1 (design rules R3, R4 and R5)

Fig. 14
figure 14

Evolution of the objective function and of the design variables over the iterations for problem 6 of Table 1 (design rules R1, R2 and R3)

5 Conclusions

This paper focused on the optimization of the stacking sequence with conventional ply orientations for laminates of constant stiffness. An extension of the continuous topology optimization approach was used. The material properties of each ply are defined as a weighted sum of the candidate material properties corresponding to plies oriented at −45, 0, 45 and 90°. The SFP (Shape Functions with Penalization) is used to parameterize the problem. Specific design rules commonly used in aeronautics were taken into account. Those rules constrain the transverse distribution of plies and are functions of the design variables and/or of the weighting coefficients used to parameterize the material properties with SFP. The formulation was tested for the optimization of a composite panel submitted to buckling. Results demonstrated that continuous design variables can be used to solve the stacking sequence optimization problem including design rules. Future research will concentrate on the extension to variable stiffness laminates, mixing the material distribution problem (topology optimization problem, i.e. presence or absence of some plies through the thickness) and the selection of optimal orientations.