CHAPTER 3 : THE PROPOSED GENETIC ALGORITHM
3.2 COMPUTATIONAL ALGORITHMS APPLIED IN WTDP
3.2.2 GENETIC ALGORITHMS
Genetic algorithms are the most popular evolutionary algorithms because of their
robustness and reliability. Evolutionary algorithms are less sensitive to local minima; however,
they are time consuming and constraints have to be included as a penalty term to the objective
function. Usually, evolutionary algorithms are less sensitive to local minima, but they are time
consuming and constraints have to be included as a penalty term to the objective function.
A genetic algorithm is an optimization method that mimics Darwin’s principle of the survival of the fittest over a set (population) of candidate solutions (individuals) that evolves from one generation to another. Individuals with a large “fitness” according to the specified objective function for the optimization process have a superior probability to “reproduce” in forming the new generation compared with those with a smaller fitness value. Similarly to a
DNA chain, each individual is coded in one string and uses reproduction, crossover, and
We summarize the fundamental steps of genetic algorithms in Figure 10. In genetic
algorithms, each individual (or solution vector) is encoded as an either a binary bit string or a
real-value vector, both referred to as a chromosome. The standard representation of each
individual is a binary array of bits, to facilitate the crossover and mutation operations.
An initial population is generated according to a heuristic rule or randomly. The
population size typically depends on the nature of the optimization problem. Often, the initial
population is generated in a matter to allow a larger range of possible solutions inside the given
search space. If the population size is too small, there is not enough evolution going on and
consequently there is a risk of premature convergence towards a local optimum and ultimately
extinction of the population. However, a larger population will cost more computational time
and fitness evaluations.
Genetic Algorithm Objective function 𝒇(𝒙⃗⃗ ), 𝑥 = (𝑥1, … , 𝑥𝑑)𝑇 Encode the solutions into a set of chromosomes
Generate the initial population Initialize the crossover and mutation probabilities While (t < Max number of generations OR Stopping criteria)
Evaluate fitness function of each individual Selection of the current best for the next generation
Reproduction by crossover and mutation Update 𝑡 = 𝑡 + 1
End while
Display the optimal solution 𝑥 ∗
Figure 10 : Pseudo-code of a standard genetic algorithm.
At each successive generation, a percentage of the existing population is ‘selected’ to breed a new generation, therefore ensuring the continuity of the population. Thus, a selection function chooses ‘parents’ based on a fitness-based selection process, where ‘fitter’ solutions are more likely to be selected. An individual can be selected more than once, in which case it
and mutation) on the parents selected by the selection function to generate the children.
Recombination (or crossover) is the combination of a pair of parents, analogous to biological
reproduction. Mutated children are created by a random change (or mutation) of the genes of
a single parent. Both genetic operators are essential for the success of optimization search.
Crossover enables the algorithm to preserve the best genes from different individuals and recombine them into possibly fitter children. This allows a better ‘exploitation’ of the search space. Whereas mutation increases the diversity of the population and permits a further ‘exploration’ of the search domain. The crossover probability is usually between 0.7 and 1.0, while the mutation probability is lower 0.001 ~ 0.05. Mutation probability is dependent upon the
representation type and number of genes. For instance, for an n bit representation, the
suggested mutation rate is 1/n. In natural systems, if the mutation rate is too high under a high
selection pressure, the population might go extinct. A suitable elitist selection function must be
employed to avoid loss of good solutions. Selection, crossover and mutation are iteratively
applied to the population until a stopping condition is satisfied.
The following references have applied a GA to solve their wind turbine optimization
problems (Belessis et al., 1996; Bizzarrini et al., 2011; Ceyhan et al., 2009; T Diveux et al.,
2001; Eke & Onyewudiala, 2010; Endo, 2011; Giguere & Selig, 2000; Liu et al., 2007; Méndez
& Greiner, 2006; M. S. Selig & Coverstone-Carroll, 1996; H. Wang, Wang, & Bin, 2010; L.
Wang et al., 2011; Xuan et al., 2008). In blade geometry optimization, the usefulness of a GA
is due to its robustness in the case of a multimodal design space. In addition, the population-
based search of a GA yields a population of optimum solutions, which is important in the event
that there is a large area of the design space that yields optimum results with no clear optima.
Also, GA has the advantage in exploring, non-linear, non-derivable, non-continuous domains
and they are less sensitive to the initial domain. For more details concerning genetic algorithms
in airfoil design, the reader is referred to (Bizzarrini et al., 2011; López, Angulo, & Macareno,
2008; Ribeiro et al., 2012; Shahrokhi & Jahangirian, 2007). Diveux et al. (T Diveux et al., 2001)
(Jureczko et al., 2005) formulate their discrete-continuous multi-objective problem using the ε- limitations method (Marler & Arora, 2004) and solve it by means of a genetic algorithm.
Liu et al. (Liu et al., 2007) argue that an extended compact genetic algorithm (ECGA)
gives more accurate results with smaller population size and fewer function evaluations
compared to simple genetic algorithm.
Figure 11 : Optimization scheme using a genetic algorithm (source (T Diveux et al., 2001)).
In Kusiak et al. (Kusiak et al., 2010; Kusiak & Zheng, 2010), the multi-objective
In 1996, Selig and Coverstone-Carroll (M. S. Selig & Coverstone-Carroll, 1996) and a
year later Giguère and Selig (P Giguère & Selig, 1997) developed a computer program
designed to optimize the chord and twist as well as the blade pitch for maximum annual energy
production called PROPGA. Throughout the years, PROPGA evolved and considers additional
design variables with the possibility of solving multi-objective problems, making it possible to
obtain trade-off curves between competing blade design objectives. In brief, PROPGA is an
efficient optimization tool to use prior an aeroelastic or finite element numerical simulation used
in the work of (Giguere & Selig, 2000; M. S. Selig & Coverstone-Carroll, 1996).
3.3 PROPOSED CONSTRAINT-HANDLING TECHNIQUE (VCH) – ORIGINAL