# ALE-PSO: An Adaptive Swarm Algorithm to Solve Design Problems of Laminates

## Abstract

**:**

## 1. Introduction

^{n}who is a candidate to the solution of a given minimization problem), the PSO paradigm is in principle well suited to solve hard non-linear non-convex optimization problems. Its main advantage is its true simplicity: a PSO is a zero-th order algorithm, i.e. it is based upon the only knowledge of the objective function: no calculation of derivatives is needed, so that it is able to tackle problems ruled by discrete variables too. In addition, the standard algorithm is very simple and short, so that calculations are usually very quick with respect to other metaheuristics, like for instance genetic algorithms, for the same objective.

## 2. Standard PSO algorithm

- ${x}_{t+1}^{k}$: vector representing the position, in the n-dimensional problem space, of the k-th particle in a swarm of m particles, at the time-step t+1 of s total steps;
- ${u}_{t+1}^{k}$: displacement (often called velocity) of the particle ${x}^{k}$ from its position ${x}_{t}^{k}$ at the time step t to its updated position ${x}_{t+1}^{k}$ at the time-step t+1;
- ${p}_{t}^{k}$: vector recording the best position occupied so far by the k-th particle (personal best position); in a minimization problem for the objective function f(
**x**), ${p}_{t}^{k}$ is updated as follows:$${p}_{t+1}^{k}=\{\begin{array}{ll}{p}_{t}^{k},& \text{if}\hspace{0.17em}f\left({x}_{t+1}^{k}\right)\ge f\left({p}_{t}^{k}\right),\\ {x}_{t+1}^{k},& \text{if}\hspace{0.17em}f\left({x}_{t+1}^{k}\right)<f\left({p}_{t}^{k}\right);\end{array}$$ - ${p}_{t}^{g}$: vector recording the best position occupied so far by any particle in the swarm (global best position); in a minimization problem for the objective function f(
**x**), ${p}_{t}^{g}$ is updated as follows:$${p}_{t+1}^{g}\in \left\{{p}_{t+1}^{k},\hspace{0.17em}\hspace{0.17em}k=1,\dots ,m\right\}\text{suchthat}\hspace{1em}f\left({p}_{t+1}^{g}\right)=\underset{\hspace{0.17em}k=1,\dots ,m}{\mathrm{min}}f\left({p}_{t+1}^{k}\right);$$ - r
_{0}, r_{1}, r_{2}: independent random coefficients, uniformly distributed in the range [0,1]; - c
_{0}, c_{1}, c_{2}: real coefficients called respectively inertial, cognition and social parameter.

_{0}, r

_{1}, r

_{2}, together with the fact that usually the original swarm is randomly generated, gives a stochastic nature to the algorithm. Anyway, this stochastic nature is weighted, in some way, by the presence of the coefficients c

_{0}, c

_{1}, c

_{2}: their value has a paramount importance in the convergence, stability and search domain exploration of the algorithm. It has been proved in several cases that for hard minimization problems only a good choice of these parameters can determine the success of the algorithm, so their choice is of the greatest importance. Unfortunately, the best choice of these parameters is function-dependent, and sometimes it is difficult to found a suitable set of parameters. For this reason, one can think to update also the coefficients c

_{0}, c

_{1}and c

_{2}, so as to improve the convergence of the algorithm towards a global minimum by a variable compromise between the exploration and exploitation of the search space: in a first stage, exploration can be preferred, in order to improve the probability of exploring interesting parts of the search space, while in a later stage, a better exploitation of the results found so far can improve the rapidity and stability of the convergence towards good points. Generally speaking, high values of the coefficients c

_{0}and c

_{1}improve exploration capability, while increasing values of c

_{2}improves stability and rapidity of convergence. So, the basic idea is the following one: in the first steps of the computation, a wide exploration of the search domain is recommended, in order to find interesting regions (i.e. regions where f takes low values); at a later moment, when the search domain has been well explored, it is worth to concentrate the research in the interesting regions found so far, and for this purpose the exploration capability must diminish while the exploitation force must be augmented. Finally, a good strategy can be the following one: to begin the computation with high values of c

_{0}and c

_{1}and a low value of c

_{2}; then, along iterations, to decrease the values of c

_{0}and c

_{1}and to increase the value of c

_{2}. Nevertheless, some relations among these parameters must be respected in order to ensure stability and convergence; in the next sections, the way ALE-PSO updates these coefficients and how their variation can be controlled are presented.

## 3. Characteristics of the code ALE-PSO

_{0}, c

_{1}and c

_{2}with the iterations. Some other "switches" can be activated, changing actually the response of the algorithm to a given problem. All these points are briefly described below.

#### 3.1 Updating rule for the coefficients c_{0}, c_{1} and c_{2}

_{j}, j=0, 1, 2 are updated according to a power law ruled by three parameters, c

_{j}

_{,0}, c

_{j}

_{,}s and e

_{j}:

_{j}

_{,t}is the value of the coefficient c

_{j}at iteration t, c

_{j}

_{,s}at the end of the iterations (t =s) and c

_{j}

_{,0}at the beginning (t=0). The coefficients c

_{j}

_{,0}and c

_{j}

_{,s}must be chosen by the user, as well as the power e

_{j}. This last number modulates the variation of the coefficient c

_{j}along the iterations, giving the possibility to the user to increase the rapidity of the variation at the beginning or at the end of the iterations. Some basic examples are shown in Fig. 1: c

_{j}

_{,t}increases or decreases quickly at the beginning of the iterations whenever e

_{j}>1, at the end if e

_{j}<1, while the rate of change is constant during iterations if e

_{j}=1.

_{j}

_{,0}, c

_{j}

_{,s}and e

_{j}can be chosen independently for j= 0, 1 and 2, letting in this way the user the possibility to increase or decrease, and in different ways, each coefficient c

_{j}independently from the others during iterations. In addition, no restriction are given a priori to the choice of c

_{j}

_{,0}and c

_{j}

_{,s}, and they can be negative too.

#### 3.2 Updating the random coefficients r_{0}, r_{1} and r_{2}

_{0}, r

_{1}and r

_{2}can be chosen by the user; in particular, there are three options:

- opt1: r
_{0}, r_{1}and r_{2}are updated at each iteration (all the particles receive the same value of r_{0}, r_{1}and r_{2}); - opt2: r0, r1 and r2 are updated at each particle (all the components of ${u}_{t+1}^{k}$ receive the same value of r
_{0}, r_{1}and r_{2}); - opt3: r
_{0}, r_{1}and r_{2}are updated at each component of each particle (no repeated values, in principle).

#### 3.3 Fixing the random coefficient r_{0}

_{0}can be set equal to 1 for all the iterations; this gives a constant influence of the inertial parameter c

_{0}for an iteration (and for all the computation if c

_{0,0}=c

_{0,s}). The importance of the inertial parameter has been widely discussed in the literature, see for instance Shi and Eberhart [2]. In the tests performed with ALE-PSO on problems concerning laminates, this choice is not recommended, as it normally diminishes the exploration capability of the algorithm.

#### 3.4 Conservation of the position

#### 3.5 Inequality constraints

**x**

^{k})<0):

**x**

^{k}. The vectors

**a**and

**b**represent the lower and upper bounds of the particles position in the n-dimensional search space. The above strategy allows respecting conditions (6) at each iteration.

**p**

^{k}and

**p**

^{g}, which must be feasible, but also for the analysis of the convergence of the swarm. In fact, an index of the effectiveness of the algorithm is the control of the average of the objective function over the whole swarm, at each iteration: a good PSO makes all the swarm, and not only the best particle, evolve towards a feasible good point. If the swarm is composed also by unfeasible particles, these can alter significantly the average of the objective, in one sense (decrease) or in the other (increase), which renders difficult to judge about the effectiveness of the algorithm.

#### 3.6 Limitation of the maximum velocity

_{max}as

## 4. Trajectory of the numerical parameters

_{0}, c

_{1}, c

_{2}. The stability and convergence of a PSO depends strongly on the choice of these parameters, along with the algorithm's trade off between exploration and exploitation.

_{0}and c

_{1}should have large values and decrease with iterations, the contrary for c

_{2}. Nevertheless, at each iteration they all should respect some conditions of convergence. Two different set of conditions established by previous researches for the convergence of a standard PSO are considered in this paper, those given by Trelea [5] and those given by Jiang et al [7].

#### 4.1 Trajectory of the parameters in the Trelea's convergence domain

_{0}=1, r

_{1}= r

_{2}=1/2) composed by a single particle. In such a case, he used the theory of dynamical systems to analyse the conditions of convergence of a particle towards an equilibrium point. He has found the following convergence necessary and sufficient conditions:

- harmonic oscillations around the equilibrium point happen if the roots λ
_{1}and λ_{2}are complex; this happens whenever$${a}^{2}+{b}^{2}-2ab-2a-2b+1<0;$$ - zigzagging around the equilibrium point happens if at least one of the roots (real or complex) has negative real part; this happens whenever$$a<0\hspace{1em}\text{or}\hspace{1em}a-b+1<0.$$

- R1: region where only condition (11) is satisfied (complex roots with positive real parts): oscillatory convergence, with a decay which depends upon the point (a, b);
- R2: region where conditions (11) and (12) are satisfied (complex roots with negative real parts): zigzag superposed to an oscillatory convergence;
- R3: region where only conditions (12) are satisfied and the real roots are both negative: symmetric zigzagging convergence;
- R4: region where only conditions (12) are satisfied and the two real roots have opposite signs: asymmetric zigzagging convergence;
- R5: region where conditions (11) and (12) are not satisfied (two real positive roots): non-oscillatory convergence.

_{0}, c

_{1}and c

_{2}determines a point (a, b) in the convergence region above (or outside it); if the values of c

_{0}, c

_{1}and c

_{2}change during iterations, the position of the point (a, b) changes too, describing, with iterations, a trajectory in the plane (a, b). The basic idea is to change the coefficients in order to respect a criterion like the one suggested above (start from region R2 or R3 and evolve towards region R4 or R5) and following a trajectory that belongs to the convergence domain. In this way, convergence conditions are respected at each iteration but the changes of the parameters carries the computation from an initial phase when exploration is preferred to a final phase when exploitation, and the rapidity of the convergence, is preferred. This constitutes a criterion for determining the power laws defining the parameters c

_{0}, c

_{1}and c

_{2}update in ALE-PSO.

_{0}, r

_{1}and r

_{2}alters the results, and it is questionable if the results found for the deterministic case are still valid. Nevertheless, one could expect that qualitatively things do not change so much, as the same Trelea affirms. The main effect of randomness introduced by coefficients r

_{0}, r

_{1}and r

_{2}is an increase of the zigzagging tendency, and hence of exploration, but globally the criterion proposed with the deterministic model can still be considered, if not as a necessary and sufficient condition of convergence, at least as guidelines for the choice of the numerical parameters.

#### 4.2 Trajectory of the parameters in the time domain

**u**is called velocity in the language of PSO's researchers). So, one can consider the changes of the parameters c

_{0}, c

_{1}and c

_{2}when they are updated during iterations t; briefly their evolution in the time domain, in the sense specified above, can be considered.

_{0}, r

_{1}and r

_{2}. They found the following conditions that can guide the choice of the parameters:

_{0}(=a) is allowed, while it is not admitted by conditions (13). In addition, as the same authors say, conditions (13) are rather difficult to be respected, i.e. they give a small admissible domain for parameters c

_{0}, c

_{1}and c

_{2}. Nevertheless, conditions (13) constitute some interesting guidelines for the updating of the parameters, and they will be considered in the following.

## 5. Formulation of optimal design problems for laminates

**N**and

**M**are the tensors of in-plane tractions and of bending moments,

**ε**

^{0}is the tensor of in-plane strains for the middle plane,

**χ**is the tensor of curvatures. The fourth order tensors

**A**and

**D**describe respectively the in- and out of-plane behaviour of the plate, while

**B**take into account coupling between them. Usually, designers look for laminates having an orthotropic behaviour, at least in extension, and uncoupled, i.e.

**B**=

**O**, but other elastic properties can also be of interest. All these properties can be taken into account by the following minimization procedure, [13]: consider the quadratic form I(

**P**) of the symmetric matrix

**H**, defined on the 18-dimensional space of the variables P

_{i}:

**P**given by

**A**,

**B**and

**D**, with μ=1 for

**A**, μ=2 for

**B**and μ=3 for

**D**; np is the number of plies in the stack and δ

_{k}is the orientation angle of the k-th ply; T

_{0k}, T

_{1k}, R

_{0k}, R

_{1k}, Φ

_{0k}and Φ

_{1k}are the polar parameters of the k-th layer. The polar parameters of an elastic plane tensor

**L**are given, in complex form, by the following functions of the Cartesian components of

**L**:

**L**is orthotropic if and only if$${\Phi}_{0}-{\Phi}_{1}=K\frac{\pi}{4},\text{\hspace{1em}}K=0,\hspace{0.17em}1;$$**L**is square-symmetric (that is, its components are invariant under rotations of π/4) if and only if$${R}_{1}=0;$$**L**is isotropic if and only if$${R}_{0}={R}_{1}=0.$$

**H**is a symmetric matrix of real coefficients: the choice of its components H

_{ij}determines the kind of problem to be treated. Several choices are possible, so several different problems can be stated in the same way, simply changing the H

_{ij}.

**H**is positive semi-definite and each problem of determining a laminate having some specified general elastic properties can be stated as follows: find an absolute minimum of (16) for a given

**H**. As

**H**is positive semi-definite, these minimums are zero-valued (except in the case of k=1 orthotropy). Clearly, to solve such a problem means to find a vector

**P**satisfying the above statement. As

**P**=

**P**(δ

_{k}), cfr. eqns. (17) and (18), the true design variables of the problem are the orientations δ

_{k}. Eqns. (18) are highly non-linear and non convex with respect to the δ

_{k}, so also function (16) is non-linear and non-convex.

_{i}generalise the concept of lamination parameters introduced by Miki, [18,19], and successively widely used by several authors, but unlike these they have some advantages: they are based upon tensor invariants linked to elastic symmetries, so their use allows a very simple statement of problems concerning these symmetries and in addition they make directly appear the orientation of the reference or material frame.

## 6. Numerical examples

- the population size is constant, m=100;
- the number of generations has been fixed to s=300;
- the original population has been sorted randomly once and for all for all the tests, i.e. the tests have been performed on the same starting population for all the cases;
- the option opt3 has been chosen for the updating of the random coefficients, cfr. § 3.2, also for r
_{0}(it is not fixed to 1); - there is no limit on the highest velocity, but the position of a particle is controlled to remain in the domain [−90°, 90°]
^{n}(the design variables are the orientation angles of the layers).

_{0}, c

_{1}, c

_{2}, whose values have been suggested by Clerc and Kennedy [4], test T1, and by Trelea [5], test T2. The three others tests have been done with a trajectory of adaptive parameters; the data for the parameters are summarized in Tab. 1. In addition, the variations and trajectories of the tests T3, T4 and T5 are presented in Fig. 3 and Fig. 4. Tests T1 and T2 reduces to points in the Trelea's domain, and in horizontal lines (not traced in Fig. 3) in the time domain. It can be noticed that only the test T5 respects both the conditions by Trelea and by Jiang et al. (for test T1, φ = −0.384, while for test T2 φ = −0.328). Actually, it is very difficult to respect all the conditions proposed by Jiang et al, especially the condition φ>0; in fact, to respect this condition it is important to use low values for c

_{0}, but this limits, especially in the first part of the calculation, the exploration of the domain, as it results from a long series of numerical tests.

**Figure 3.**Time-domain trajectories of parameters c

_{0}(=a), c

_{1}, c

_{2}, b, φ and φ

_{1}for the tests T3, T4 and T5.

Test | c_{0,0} | c_{0,s} | e_{0} | c_{1,0} | c_{1,s} | e_{1} | c_{2,0} | c_{2,s} | e_{2} |

T1 | 0.729 | 0.729 | 0 | 1.490 | 1.490 | 0 | 1.490 | 1.490 | 0 |

T2 | 0.600 | 0.600 | 0 | 1.700 | 1.700 | 0 | 1.700 | 1.700 | 0 |

T3 | 1.000 | 0.500 | 0.5 | 5.000 | 1.500 | 0.5 | 1.000 | 1.800 | 2 |

T4 | 0.800 | 0.000 | 0.5 | 2.000 | 1.400 | 0.2 | 1.400 | 2.000 | 0.2 |

T5 | 0.400 | 0.000 | 0.5 | 2.000 | 1.400 | 0.2 | 1.400 | 2.000 | 0.2 |

E_{1} | E_{2} | G_{12} | ν_{12} | Q_{11} | Q_{22} | Q_{66} | Q_{12} | T_{0} | T_{1} | R_{0} | R_{1} | Φ_{0} | Φ_{1} |

181.00 | 10.30 | 7.17 | 0.28 | 18 1.81 | 10.35 | 7.17 | 2.89 | 26.88 | 24.74 | 19.71 | 21.43 | 0° | 0° |

#### 6.1 Example 1

**P**) reduces to

_{i}must be computed through eq. (18), the problem is hence strongly non-convex, the design variables being the angles δ

_{k}.

_{eval}of the objective function to obtain the quantity's mean value.

^{−2}for this problem can be considered as technically acceptable, i.e. the final laminate with a value of I(

**P**)~10

^{−2}can be considered very close to be fully isotropic, under a practical point of view. In Fig. 5, for instance, the case of a laminate with I(

**P**)= 0.023 is shown; it corresponds to the best particle in test T3, whose stacking sequence is [−16.43°, −70.38°, 66.70°, 31.97°, 31.76°, −59.02°, 78.65°, −12.13°, −12.34°, −47.06°, −90.00°, 36.06°]. The directional diagrams of the normalised Cartesian components A

_{xx}*= A

_{xx}/h, B

_{xx}*=2 B

_{xx}/h

^{2}and D

_{xx}*=12 D

_{xx}/h

^{3}are shown; actually, B

_{xx}*~0 (almost a dot in the centre of the plot), which confirms that the laminate is uncoupled, while A

_{xx}*~D

_{xx}* and they describe a curve very close to a circle of radius T

_{0}+2T

_{1}=76.36 GPa, as it must be for isotropy.

Test | Run’s best | Mean value | Standard deviation | Best value | Worst value | n_{eval} |

T1 | average | 0.203 | 0.194 | 0.091 | 0.686 | 23830 |

particle | 0.104 | 0.077 | 0.023 | 0.310 | 29860 | |

T2 | average | 0.209 | 0.185 | 0.024 | 0.569 | 27110 |

particle | 0.114 | 0.081 | 0.023 | 0.310 | 29980 | |

T3 | average | 0.211 | 0.028 | 0.023 | 0.860 | 27030 |

particle | 0.061 | 0.022 | 0.023 | 0.090 | 30000 | |

T4 | average | 0.102 | 0.072 | 0.034 | 0.243 | 29900 |

particle | 0.075 | 0.023 | 0.034 | 0.097 | 29940 | |

T5 | average | 0.186 | 0.225 | 0.024 | 0.800 | 29140 |

particle | 0.126 | 0.097 | 0.024 | 0.383 | 29980 |

**Figure 5.**Directional diagrams of A

_{xx}*, D

_{xx}*, almost superposed, and B

_{xx}*, reduced to a dot in the centre (GPa).

#### 6.2 Example 2

_{0}. So, the objective function is still I(

**P**), but now ${H}_{ii}=1,\hspace{0.17em}\hspace{0.17em}i=\hspace{0.17em}9,\hspace{0.17em}10,\hspace{0.17em}17\text{,}\hspace{0.17em}18,$ so that

_{pq}(

**P**) of the mode having p and q half waves respectively along x and y, is given by, see [23],

_{j}being

_{11}≥ ω

_{0}= 150 s

^{−1}; the mass of the plate per unit of area is σ =2.4 kg/m

^{2}(12 plies of carbon-epoxy T300-5208). The best result is obtained with the trajectory T3: [−66.15°, 66.53°, 44.83°, −36.44°, 48.52°, −5.68°, 77.57°, −89.94°, −84.48°, 38.45°, 57.48°, −46.03°]. For this sequence, the objective function is very close to zero (7.20×10

^{−35}) and the frequency ω

_{11}=162.72 s

^{−1}. The elastic properties of this laminate are shown in Table 5 and in Fig. 6; they show that the laminate is really uncoupled (all the polar components of

**B**are practically null) and K=1 orthotropic in bending, with orthotropy axes at 0° and 90° (Φ

_{0}=45°, Φ

_{1}=90°); in addition, the extension behaviour is completely anisotropic, as a result of the fact that no requirement on

**A**has been formulated.

Test | Run’s best | Mean value | Standard deviation | Best value | Worst value | n_{eval} |

T1 | average | 9.78×10^{−3} | 4.69×10^{−3} | 4.50×10^{−3} | 1.80×10^{−2} | 25510 |

particle | 1.04×10^{−18} | 1.25×10^{−18} | 8.00×10^{−21} | 3.30×10^{−18} | 29800 | |

T2 | average | 1.37×10^{−2} | 8.14×10^{−3} | 4.50×10^{−3} | 3.20×10^{−2} | 26540 |

particle | 1.47×10^{−18} | 3.32×10^{−18} | 8.80×10^{−29} | 9.90×10^{−18} | 29760 | |

T3 | average | 1.14×10^{−2} | 4.58×10^{−2} | 4.50×10^{−2} | 2.10×10^{−2} | 26040 |

particle | 1.83×10^{−31} | 4.74×10^{−31} | 7.20×10^{−35} | 1.50×10^{−30} | 29670 | |

T4 | average | 1.18×10^{−2} | 5.24×10^{−3} | 6.60×10^{−3} | 2.20×10^{−2} | 25840 |

particle | 3.00×10^{−9} | 9.49×10^{−9} | 1.30×10^{−34} | 3.00×10^{−8} | 27800 | |

T5 | average | 9.33×10^{−3} | 3.97×10^{−3} | 1.20×10^{−3} | 1.30×10^{−2} | 24640 |

particle | 2.24×10^{−18} | 6.60×10^{−18} | 5.70×10^{−34} | 2.10×10^{−17} | 27990 |

E_{x} | E_{y} | G_{xy} | ν_{xy} | C_{xx} | C_{yy} | C_{ss} | C_{xy} | C_{xs} | C_{ys} | |

A* | 42.39 | 81.15 | 29.11 | 0.26 | 49.38 | 96.79 | 30.17 | 25.89 | 3.94 | 9.91 |

B* | - | - | - | - | −7.3×10^{−4} | −8.5×10^{−4} | 4.6×10^{−3} | 4.6×10^{−3} | 3.8×10^{−3} | −1.2×10^{−2} |

D* | 27.38 | 68.38 | 36.42 | 0.34 | 38.21 | 95.43 | 36.43 | 32.15 | 0 | 0 |

T_{0} | T_{1} | R_{0} | R_{1} | Φ_{0} | Φ_{1} | |

A* | 26.88 | 24.74 | 4.44 | 6.86 | −34.43° | 74.85° |

B* | 0 | 0 | 9.3×10^{−6} | 2.3×10^{−6} | - | - |

D* | 26.88 | 24.74 | 9.55 | 7.15 | 45° | 90° |

#### 6.3 Example 3

_{x}≥E

_{1}=90 GPa and E

_{y}≥E

_{2}=90 GPa. In addition, it is required that the orientation angles take values each 5°, i.e. 0°, 5°, 10° and so on. The objective function is the same of example 2, but now the constraints to be satisfied are, see [25],

Test | Run’s best | Mean value | Standard deviation | Best value | Worst value | n_{eval} |

T1 | average | 8.30×10^{−3} | 2.38×10^{−3} | 4.80×10^{−3} | 1.30×10^{−2} | 25140 |

particle | 6.25×10^{−4} | 9.45×10^{−5} | 5.70×10^{−6} | 2.40×10^{−4} | 9510 | |

T2 | average | 1.66×10^{−2} | 1.25×10^{−2} | 1.70×10^{−3} | 3.70×10^{−2} | 25010 |

particle | 8.91×10^{−4} | 1.35×10^{−3} | 2.20×10^{−6} | 3.70×10^{−3} | 3320 | |

T3 | average | 8.88×10^{−3} | 3.63×10^{−3} | 4.30×10^{−3} | 1.50×10^{−2} | 25480 |

particle | 7.11×10^{−4} | 1.19×10^{−4} | 1.00×10^{−6} | 3.40×10^{−4} | 4910 | |

T4 | average | 3.59×10^{−3} | 5.31×10^{−3} | 2.50×10^{−6} | 1.80×10^{−2} | 22150 |

particle | 8.32×10^{−4} | 8.34×10^{−4} | 2.50×10^{−6} | 2.50×10^{−3} | 5710 | |

T5 | average | 1.23×10^{−3} | 1.88×10^{−3} | 1.10×10^{−4} | 6.40×10^{−3} | 21400 |

particle | 4.55×10^{−4} | 5.65×10^{−4} | 8.50×10^{−5} | 2.00×10^{−3} | 2980 |

^{−6}, E

_{x}= 112.31 GPa and E

_{y}=66.21 GPa. The elastic properties of this laminate are shown in Table 6 and in Fig. 7; the same remarks made on example 2 can be done again, but now the value of the components of

**B***are larger, as a consequence of the fact that orientations are not continuous variables and that the layers number is smaller. Nevertheless, when compared with the corresponding components of

**A***and

**D***, they are still negligible, i.e. the solution is technically acceptable. In addition, now

**A***and

**D***are both K=0 orthotropic, consequence of the anti-symmetry of the stack.

## 7. Comments and conclusions

**B**null increases when the number of plies decreases, and in addition the requirement that the plies can take only discrete values diminishes the number of solutions. For example 1, as already said, the objective is so difficult that it is taken as a sort of benchmark in problems of laminate design. Nevertheless, several solutions have been found, in a very short computing time: all the examples run for no more than 3.5 seconds on a common laptop (the author and co-workers had used in the past a genetic algorithm to treat analogous problems, and example 1 was solved using a population of 2000 individuals and 3000 iterations, for a time of about 30 minutes to be solved with the same order of magnitude of the residual; the best solution found by ALE-PSO has used a population of 100 particles and 300 iterations, i.e. 200 times less evaluations of the objective function; for more details on the use of genetic algorithms in the global design of laminates, see [15], [21].

Example | Expected value | Best value | ||

average | particle | average | particle | |

1 | T4 | T3 | T3 | T3 |

2 | T5 | T3 | T5 | T3 |

3 | T5 | T5 | T4 | T3 |

_{0}, 1.49 for c

_{1}and c

_{2}) that it is doubtful their effectiveness for the whole objective functions.

**Figure 8.**Convergence diagrams of I(

**P**) for the three examples (in small, the diagrams in log-scale).

^{−2}÷10

^{−3}, it can be a problem to determine the best choice of the parameters for a given problem, or, which is the same, how much changes of these parameters condition the result? So, the choice to use evolving parameters can be a better strategy, as the fact that their value changes along the iterations do not force the user to a precise choice and ensures him to have a good compromise between exploration and exploitation.

_{0}, c

_{1}and c

_{2}can be found for each problem to push the convergence log-diagrams towards linearity. This should be a guideline for users in the search of a good trajectory for a given problem.

## APPENDIX: NUMERICAL TESTS ON THE ROSENBROCK’S FUNCTION

^{n}, it is located at [1]

^{n}and its value is 0. In the tests performed, n=5 the size of the swarm is m=50 and the number of iterations is s=1000. The results of the numerical tests are shown in Tab. 8.

Test | Run’s best | Mean value | Standard deviation | Best value | Worst value | n_{eval} |

T1 | average | 8.053 | 3.077 | 4.680 | 13.939 | 7580 |

particle | 0.009 | 0.001 | 0.007 | 0.011 | 99950 | |

T2 | average | 6.447 | 2.905 | 2.835 | 12.337 | 5990 |

particle | 0.007 | 0.003 | 0.003 | 0.013 | 99970 | |

T3 | average | 1.650 | 2.268 | 0.003 | 7.887 | 34130 |

particle | 0.002 | 0.005 | 6×10^{−7} | 0.016 | 100000 | |

T4 | average | 2.228 | 1.505 | 0.019 | 4.566 | 41790 |

particle | 2.228 | 1.505 | 0.019 | 4.566 | 40110 | |

T5 | average | 1.612 | 1.105 | 0.184 | 3.932 | 39020 |

particle | 1.612 | 1.105 | 0.184 | 3.932 | 37600 |

_{eval}of evaluations of the objective function for which the mean value of the best average or of the best particle is obtained. For trajectory T3, the mean for the best average is obtained for n

_{eval}=34130 while for the best particle n

_{eval}=100000, i.e., the algorithm still improves the best particle after 1000 iterations. Hence, for this trajectory the gap between n

_{eval}of, respectively, the best particle and the best average is Δn

_{eval}=65870: the trajectory allows for a wide exploration of the search domain, because the best average is obtained after a great number of iterations (341.3 in the mean), which allows to the algorithm a good selection of the swarm and this, in turn, allows for a good improvement of the best particle.

_{eval}show: there is a close negative gap between the values of n

_{eval}of the best particle and of the best average: Δn

_{eval}=−1680 for trajectory T4 and Δn

_{eval}=−1420 for trajectory T5. This means that, for these trajectories, the best particle is obtained always before the best average, and that it closely forces the dynamics of the whole swarm. In addition, n

_{eval}in the two cases are not sufficiently large, which means that the algorithm stops too quickly to improve both the best particle and the swarm. The final result is that there is not a sufficient exploration of the search domain and the final values, especially of the best particle, are not as good as for trajectory T3.

_{eval}is low for the mean of the best average and high for that of the best particle, and Δn

_{eval}is positive and takes large values, respectively Δn

_{eval}=92370 and Δn

_{eval}=93980. In practice, in these cases the best particle does not drive sufficiently the swarm, which in turn does not give to the best particle sufficient information to improve decisively its position, though the results for the best particle are better than for trajectories T4 and T5.

## References

- Eberhart, R. C.; Kennedy, J. Particles swarm optimization. In Proc. of IEEE International Conference on Neural Networks, Piscataway, NJ, 1995; pp. 1942–1948.
- Shi, Y.; Eberhart, R. C. Parameter selection in particle swarm optimization. In Proc. of 7
^{th}Annual conference on Evolution Computation, New York, NY, 1998; pp. 591–601. - Ozcan, E.; Mohan, C. K. Particle swarm optimization: surfing the waves. In Proc. of IEEE Congress on Evolutionary Computation, Washington DC, 1999; pp. 1939–1944.
- Clerc, M.; Kennedy, J. The particle swarm: explosion, stability and convergence in a multi-dimensional complex space. IEEE Transactions on Evolutionary Computation
**2002**, 6, 58–73. [Google Scholar] [CrossRef] - Trelea, I. C. The particle swarm optimization algorithm: convergence analysis and parameter selection. Inform Proc Lett.
**2003**, 85, 317–325. [Google Scholar] [CrossRef] - Liu, H.; Abraham, A.; Clerc, M. Chaotic dynamic characteristics in swarm intelligence. Appl Soft Comp.
**2007**, 7, 1019–1026. [Google Scholar] [CrossRef] - Jiang, M.; Luo, Y. P.; Yang, S. Y. Stochastic convergence analysis and parameter selection of the standard particle swarm optimization algorithm. Inform Proc Lett.
**2007**, 102, 8–16. [Google Scholar] [CrossRef] - Hu, X.; Eberhart, R. C. Adaptive particle swarm optimization: detection and response to dynamic systems. In Proc. of IEEE Congress on Evolutionary Computation, Hawaii, 2002; pp. 1666–1670.
- Yasuda, K.; Ide, A.; Iwasaki, N. Adaptive particle swarm optimization using velocity information of swarm. In Proc. of IEEE International Conference on Systems, Man & Cybernetics, The Hague, Netherlands, 2004; pp. 3475–3481.
- Yamaguchi, T.; Iwasaki, N.; Yasuda, K. Adaptive particle swarm optimization using information about global best. Elect Engin in Japan
**2007**, 159, 270–276. [Google Scholar] [CrossRef] - DeBao, C.; ChunXia, Z. Particle swarm optimization with adaptive population size and its application. Appl Soft Comp.
**2009**, 9, 39–48. [Google Scholar] - Vannucci, P. Designing the elastic properties of laminates as an optimisation problem: a unified approach based on polar tensor invariants. Int J of Struct and Multid Optim.
**2006**, 31, 378–387. [Google Scholar] [CrossRef] - Verchery, G. Les invariants des tenseurs d'ordre 4 du type de l'élasticité. In Proc. of Euromech 115; 1979. Published by Editions du CNRS: Paris, 1982; pp. 93–104. [Google Scholar]
- Vannucci, P.; Vincenti, A. The design of laminates with given thermal/hygral expansion coefficients: a general approach based upon the polar-genetic method. Compos Struct.
**2007**, 79, 454–466. [Google Scholar] [CrossRef] - Vannucci, P. A special planar orthotropic material. Jnl of Elast.
**2002**, 67, 81–96. [Google Scholar] [CrossRef] - Vannucci, P. Plane anisotropy by the polar method. Meccanica
**2005**, 40, 437–454. [Google Scholar] [CrossRef] - Miki, M. Material design of composite laminates with required in-plane elastic properties. In Proc. of ICCM 4, Tokio, 1982; pp. 1725–1731.
- Miki M. Design of laminated fibrous composite plates with required flexural stiffness. In Recent advances in composites in the USA and Japan; Vinson, J. R.; Taya, M. (Eds.) ASTM STP 864; ASTM: Philadelphia, 1985; pp. 387–400.
- Tsai, S. W.; Hahn, H. T. Introduction to Composite Materials; Technomic: Basel, 1980. [Google Scholar]
- Vincenti, A.; Vannucci, P.; Verchery, G. Design of composite laminates as an optimization problem: a new genetic algorithm approach based upon tensor polar invariants. In Proc. of WCSMO 5 (Fifth World Congress on Structural and Multidisciplinary Optimization), Lido di Jesolo, Italy, 2003.
- Grédiac, M. A procedure for designing laminated plates with required stiffness properties. Application to thin quasi-isotropic quasi-homogeneous uncoupled laminates. J. Composite Mat.
**1999**, 33, 1939–1956. [Google Scholar] [CrossRef] - Vannucci, P. Influence of invariant material parameters on the flexural optimal design of thin anisotropic laminates. Int Jnl of Mech Sci.
**2009**, 51, 192–203. [Google Scholar] [CrossRef] - Valot, E.; Vannucci, P. Some exact solutions for fully orthotropic laminates. Compos Struct.
**2005**, 69, 157–166. [Google Scholar] [CrossRef] - Vannucci, P. Exact optimal flexural design of laminates. To appear in Compos Struct.; 2009. [Google Scholar] [CrossRef]

© 2009 by the authors; licensee Molecular Diversity Preservation International, Basel, Switzerland. This article is an open-access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

## Share and Cite

**MDPI and ACS Style**

Vannucci, P. ALE-PSO: An Adaptive Swarm Algorithm to Solve Design Problems of Laminates. *Algorithms* **2009**, *2*, 710-734.
https://doi.org/10.3390/a2020710

**AMA Style**

Vannucci P. ALE-PSO: An Adaptive Swarm Algorithm to Solve Design Problems of Laminates. *Algorithms*. 2009; 2(2):710-734.
https://doi.org/10.3390/a2020710

**Chicago/Turabian Style**

Vannucci, Paolo. 2009. "ALE-PSO: An Adaptive Swarm Algorithm to Solve Design Problems of Laminates" *Algorithms* 2, no. 2: 710-734.
https://doi.org/10.3390/a2020710