1. Introduction
Engineering problems have become increasingly complex, making their analytical resolution practically impossible to complete in many situations. Numerical solution methods have therefore been given greater focus. Optimization, fitting into this category, has become one of the most pivotal subjects in the day-to-day of a modern engineer. Specifically, because there is not an area in engineering where optimization isn't involved in some way. The optimal design of engineering systems has therefore undergone many important developments in recent years. One of the biggest developments was the introduction of the genetic algorithm (GA) by John Holand [
1], the first evolutionary algorithm with structured operators, an event that revolutionized the entire optimization environment. Since then, the scientific community has been perfecting this method, creating a large number of proposals for new operators, based on all kinds of schemes and heuristics, all to solve optimization problems. The genetic algorithm uses some ideas from other scientific fields, such as genetics and biology, and applies them mathematically, in the form of an algorithm, to different areas of engineering. There are also other methods inspired by other areas, such as memetic algorithms (MA), which are based on biology (genetic evolution) [2] and learning processes (cultural evolution) [3] - [4], and the algorithm that will be presented in this article, Biogeography-Based Optimization (BBO).
Biogeography is the study of the distribution of species and ecosystems in geographical space over geological time. Biogeographical research combines information and ideas from different fields, from the physiological and ecological constraints on the spreading of organisms to the geological and climatological phenomena that occur on a global scale in evolutionary periods.
Biogeography-based optimization is an evolutionary algorithm (EA), introduced in 2008 by Dan Simon [5], which optimizes a function by iteratively and stochastically improving its solutions according to a quality measure, or fitness function. Typically, this method is used to study multivariate problems and, since it does not require the calculation of a gradient function, it can also be used to optimize discontinuous functions. BBO optimizes a problem by maintaining a population of candidate solutions and creating new solutions through the migration process.
The main objective of this work is to develop and implement the BBO algorithm, following the readily available literature, and, later on, modify and hybridize this method with other concepts of optimization, such as crossover and local search operators or other propositions used in other evolutionary algorithms. The BBO method will be applied to several problems and examples from the area of engineering and optimal design so that it is possible to study its behavior and the effects of the new modifications, introduced in the process of hybridization.
2. BBO Approach Model
The science of biogeography, created in the 19th century, was considered to be descriptive and historical, but in 1967 Robert MacArthur and Edward Wilson published "The Theory of Island Biogeography" [6], where they tried to describe this phenomenon in mathematical equations. These models have tried to describe how species move from one island to another, how new species appear, and how they become extinct. In this case, the term island should not be taken at face value, but as a place that is geographically isolated from other habitats. Therefore, the term habitat should be used to better describe these locations.
Sites with good life retention characteristics are associated with habitats with a high HSI (habitat suitability index). Factors such as the presence of drinking water, which are related to the HSI, are referred to as suitability index variables (SIVs). In mathematical terms, the SIV can be called the independent variables and the HSI the dependent variables. Then, the habitats with high HSI will have a lot of species, while the habitats with low HSI will have less species. In real life, the emigration of a species may not lead to its extinction, but, for this case, the emigration of a species will lead to the extinction of the species in that habitat. Low HSI habitats will have a high immigration rate, due to their lesser population numbers and a non-competitive environment. On the contrary, high HSI habitats will have a high emigration and low immigration rate.
Good solutions are associated with habitats with high HSI, while habitats with low HSI are associated with bad solutions. Solutions with high HSI are more resistant to change, so solutions with high HSI tend to share characteristics with low HSI solutions. The diversity of individuals is related to HSI, so when an individual arrives in a habitat with low HSI, the habitat's HSI tends to increase. This approach has been given the name Biogeography-Based Optimization (BBO), which was created and presented by Dan Simon [5].
Figure 1 presents the flow diagram of the method.
2.1. Mathematical Model
Figure 2 shows a model of the abundance of species in a single habitat. The emigration rate
and the immigration rate
are functions of the number of species in the habitat. Looking at the immigration curve, it is possible to note that its maximum will occur when the migration rate of the habitat is
, that happens when the number of species of the habitat reaches zero. As the number of species increases, the immigration process will become more competitive, which will lead to a decrease in the number of species able to complete the process, resulting in a reduction in the immigration rate. The maximum number of species present in a habitat is defined as
, at which point the immigration rate will be zero. The emigration curve, on the other hand, will have its maximum
when the population of the habitat reaches its maximum and will be zero when there are no more species in the habitat.
The equilibrium point,
, is obtained when the rates of emigration and immigration are equal. This point can occasionally differ due to temporary effects such as diseases.
Figure 2 represents both rates as straight lines, but in reality, they can be complex curves. However, this representation is a good approximation of the migration process.
Now let's consider a probability
that the habitat contains exactly
species. The probability changes with time, from
to
, following the equation below,
where
and
are the immigration and emigration rates when there are
species in the habitat.
Assuming that the time interval
is small enough, the probability of more than one emigration or immigration can be ignored. Using a limit in the above equation, with the time interval tending to zero, the following equation emerges,
Aiming to simplify the notation Simon [5], decided to perform the following changes,
and
. Then it is possible to write the previous equation as,
where the
matrix is given by
Considering the lines from
Figure 2 the migration rates can be described as,
The equations above can be presented in a different form if the number of species is replaced by the value calculated in the fitness function [8],
where
represents the solution in study.
Following the same ideas, the calculation of the migration rates can also be given by the ranking of the solutions, after they have been placed in descending order as [8].
Now considering the case where
, we have,
and the matrix A transforms into,
It is possible to note that zero is an eigenvalue of matrix
with the corresponding eigenvectors,
The value, in steady state, of the probability of the number of each species is given by,
computation of the probability, which depended on the migration rates, previously calculated, as shown in equation 2.16. This formulation solves a problem that restricted the number of possible initial solutions.
Simon [5] recommends the use of , and as the initial parameters for the method.
2.2. Migration Operator
Supposing that the population of solutions can be represented as a vector of integers. Each of the numbers is considered a SIV. The HSI, which is analogous to GAs fitness, can be used in other processes of optimization based on populations. High HSI solutions represent the habitats with several species and low HSI solutions represent the habitats with lesser amounts of solutions. It is possible to assume that each solution has an identical migration curve (with ), but the value of represented by the solution remains dependent only on its HSI.
The migration rates of each solution are used to, probabilistically, share information between habitats. The immigration rate is therefore used to determine whether the SIV of each solution will change. If, in a given solution
, an SIV is randomly selected to be modified, then the emigration rate of the other solutions will decide from which of the solutions an SIV, located in the same position, will migrate to solution
. This process is quite similar to other reproduction processes from GAs, but this method differs from them in a very important aspect. In the GA, reproduction by recombination is used to create new solutions, while BBO migration is used to modify existing solutions. It is therefore possible to say that, unlike the reproduction process of the GA, the migration of the BBO is an adaptive process. In algorithmic terms, the migration operator can be described in the following way:
| Algorithm 1: Migration’s Pseudocode |
| 1 |
For to do
|
| 2 |
|
If then
|
| 3 |
|
|
Select another habitat () with a probability |
| 4 |
|
|
Define |
| 5 |
|
End If |
| 6 |
End For |
where
represents the variable under study and
the size of the problem.
Normally, the use of linear models (
Figure 2 and equations 2.5-2.10) to describe the migration curves is sufficient, but there are also other different options to describe this operator. Ma [7] presented several other options for the migration operator, such as, the trapezoidal model. As described in the following equation and represented graphically in
Figure 3,
where
is the smallest integer close to
.
Ma [7] also presented some nonlinear models, such as the quadratic (equations 2.19-2.20 and
Figure 4) and sinusoidal (equations 2.21-2.22 and
Figure 5) models. These models aim to provide a more accurate simulation of real-life migration patterns, by incorporating nonlinearities.
Migration, being one of the main points of interest in the method, has been severely modified and improved. Mainly, Ma and Simon [9] presented a new hybrid algorithm, called Blended BBO (B-BBO), that uses some ideas from GAs’ crossover operators, creating a migration operator, that mixes each component of an immigrating solution (
) with the corresponding component of the emigrating solution (
), as follows,
where
is a number between
, which can be a predetermined or random value.
With the standard migration operator, it is possible to improve poor solutions by using the features of the best solutions. But the blending operator makes it possible not only to do this, but also to avoid the degradation of good solutions, since they retain some of their original properties. This operator also allows the creation of new components, promoting population diversity.
2.3. Mutation Operator
Cataclysmic events can drastically change the HSI of a natural habitat, which can make it so that the number of species varies from the equilibrium point
, with a mutation of SIV. Each element of the population has an associated probability, which indicates the probability of expecting a priori that there is a solution to the problem in question. Solutions with a very low or very high HSI are equally unlikely to mutate and solutions with a medium HSI are relatively likely. If a solution
has a low probability
, then the probability of it being mutated is high. On the other hand, a solution with a high probability will have fewer opportunities to mutate. This can be implemented, using the following formula,
where
is a parameter defined by the user, that represents the maximum mutation rate and
is the maximum of
in the population
This method makes it possible to improve solutions with low HSI. Furthermore, with the use of elitism, which guarantees that the best solutions are kept in the study space, mutation adds some guarantee that the algorithm won't get stuck in a local optimum. Algorithmically, this process can be described as shown in the pseudocode below (Algorithm 2). With and representing the upper and lower bounds of the variable, respectively.
| Algorithm 2: Pseudocode for BBO’s standard mutation |
| 1 |
For to do
|
| 2 |
|
If then
|
| 3 |
|
|
Define |
| 4 |
|
End If |
| 5 |
End For |
Recently, the mutation process has been simplified so that only habitats with low HSI can be mutated, eliminating the need to calculate the species count probability and mutation rate for each species. Like migration, the mutation operator has undergone several modifications. Hao's taxonomic mutation [10] is one of these modifications. With this operator, solutions with a high HSI are excluded from the process and the type of mutation differs if the HSI of the solutions is medium or low. For medium HSI solutions, since the solution is somewhat valuable, a differential mutation process will be used, using a crossover rate to judge how the solution will be mutated. For the solutions with low HSI a random mutation, similar to BBO’s Standard mutation, but instead of using the problem bounds ( and ) it will use the population’s best and worst solutions, will be used. For solutions with low HSI, a random mutation will be used, similar to the standard BBO mutation, but instead of using the problem limits ( and ), it will use the best and worst solutions in the population. The following algorithm (Algorithm 3) represents the pseudocode for the differential mutation.
| Algorithm 3: Pseudocode for differential mutation |
| 1 |
For to do
|
| 2 |
|
Select three solutions () and a dimension () randomly |
| 3 |
|
For to do
|
| 4 |
|
|
If then
|
| 5 |
|
|
|
If or then
|
| 6 |
|
|
|
|
|
| 7 |
|
|
|
Else |
| 8 |
|
|
|
|
|
| 9 |
|
|
|
End If |
| 10 |
|
|
Else |
| 11 |
|
|
|
If or then
|
| 12 |
|
|
|
|
|
| 13 |
|
|
|
Else |
| 14 |
|
|
|
|
|
| 15 |
|
|
|
End If |
| 16 |
|
|
End If |
| 17 |
|
End For |
| 18 |
End For |
3. Proposed Approach for BBO
3.1. Operators, Modifications and Hybridization
Initially, only the concepts presented by Dan Simon [5], such as the linear migration model and basic mutation, were used in some very basic example functions, to carry out an initial study of the method. Later, the migration models presented here by Ma [7], the taxonomic mutation operator by Hao [10], and the concept of blending in migration by Ma and Simon [9] were added. This completed the initial standard BBO algorithm, which was then applied to the first three cases presented below, allowing the algorithm's behavior to be studied further.
Once this phase had been completed, the algorithm was modified to be able to remedy some of its shortcomings. To do this, a mutation cycle, in which the mutation operators are used several times in the same generation, only allows for the addition of improved solutions. A solution injection process was also added, where the last 10 % of the population was replaced by new solutions at the end of each generation. All these processes were added in an initial iteration of the studies to improve the diversity of the algorithm's population.
Finally, in the hybridization section, two concepts from the genetic and memetic algorithms were implemented to improve the method's performance. Initially, binary crossover operators were added to improve the exchange of genetic information, something that had already been explored in the BBO world with the concept of blending [9]. For the implementation of these operators, it was also necessary to implement a binary decoder and encoder since most of the operators and heuristics of the BBO method are in the real domain. Recombination processes are based on the selection of a couple for each child that will be generated. Three operators, the single-point crossover (SP) [11], multi-point crossover (MP) [11], and the uniform crossover (U) [12], which were subjected to two different mating selection mechanisms (MSM).
The first strategy for MSM denoted by Previous Elites-based Selection (PEbS), is proceeded as follows:
The first parent is selected from the current population with a probability equal to the migration rate (proportional to rank position). The second parent is selected randomly from the best solutions stored in previous generations. Then the offspring created by crossover will be evaluated. The new population will be composed using the best solutions from the current population and the offspring. The enlarged population is sorted by fitness and the worst individuals are eliminated to restore the original size of the population.
The second strategy for MSM denoted by Independent Selection-based Fitness (ISbF), is proceeded as follows:
The current population is divided into two groups according to the fitness of each solution, the best (elite) group and the worst group of solutions [13]. Each group provides a parent, which is selected through a roulette method (equation 3.1). The two stochastic procedures are independent. Then the offspring created will all be placed in the population, replacing every solution not belonging to the elite.
where
represents the fitness value of the solution and
the size of the population.
To conclude the hybridization, it was also added a Hooke-Jeeves algorithm as a search optimizer, to improve the final generations’ local search, something that has been well documented as a flaw of the BBO method. This operator will allow for an improvement of the search velocity, allowing for the algorithm to reach the end solution with greater ease. The Hooke-Jeeves method is common in the world of optimization, since it allows for an efficient search for spaces of great dimensions, even if the objective function is very complex. This method and its parameters were altered, so that its performance and synergy with the other operators was greatly improved. The following algorithm (Algorithm 4) shows the pseudocode for the local search method.
| Algorithm 4: Hook-Jeeves local search method pseudocode |
| 1 |
Compute the step size () |
| 2 |
For to do
|
| 3 |
|
Select point (solution) to be explored, |
| 4 |
|
Perform the first step iteration (equation (3.2)) |
| 5 |
|
Evaluate the new solution, in BBO algorithm |
| 6 |
|
If is better than then
|
| 7 |
|
|
|
| 8 |
|
End If |
| 9 |
|
Save the solution information, |
| 10 |
|
/* Local search loop */ |
| 11 |
|
While stopping criteria are not verified do
|
| 12 |
|
|
Compute the new step value (equation (3.3)) |
| 13 |
|
|
Compute the new solution |
| 14 |
|
|
If is better than then
|
| 15 |
|
|
|
|
| 16 |
|
|
|
If better than then
|
| 17 |
|
|
|
|
|
| 18 |
|
|
|
End If |
| 19 |
|
|
End If |
| 20 |
|
End While |
| 21 |
End For |
The first step,
, is calculated as follows,
where
represents the dimension,
is the best solution from current population and
the worst solution. The step reduction is given by,
where
represents the number of cycles of the local search loop. It is important to mention that the steps will be subtracted and added so that a complete search can be carried out.
For the practical cases presented here, the algorithm was tested using the migration operator in the standard and blending versions and using the mutation operator in the standard and taxonomic versions. These operators were then tested with a local optimizer and a crossover operator. First, each approach separately and after using a hybrid procedure. The studies focused on the best solutions obtained and the evolution of the elite average over the generations.
3.2. Optimization Algorithm
The algorithm was implemented in FORTRAN, with the intel compiler for visual studio. Initially, the algorithm randomly creates the initial population and calculates the mutation and migration rates. After that, the algorithm will evaluate the solutions and rank them according to their fitness. Then the solutions will go through the migration process, where it was defined that the top two solutions will not receive information from other solutions, only share. Next, the algorithm moves on to the mutation operators, where all solutions can be mutated, but due to the mutation cycle, the newly generated solutions will only enter the population if they represent an improvement. At each one hundred generations, the solutions will be subjected to the crossover operators. After this procedure, the algorithm enters the local search phase. Here, the new population is classified, so that at the end of this phase the solution injection process can replace the worst solutions.
Figure 4 shows the flow diagram of the hybridized algorithm.
Figure 6.
Flow diagram of the hybridized BBO [14].
Figure 6.
Flow diagram of the hybridized BBO [14].
In terms of simulation parameters, it was used 50 initial solutions, 10% of which will represent the evaluated elite, an emigration () and immigration () values equal to one, a maximum mutation () of 0.01 and an initial number of mutation cycles of three, increased by one after every 100 generations, until to maximum value of 20.
For the Hook-Jeeves local search, it was used a constant selection probability equal to 0.1 to select solutions from BBO population, except for the two best solutions, which were always selected. The stopping criteria of Hook-Jeeves local search is based on the number of cycles, set at one hundred.
4. Case Studies
Case Study 1: Welded Beam Design
The welded beam, shown in
Figure 7, is a classical optimization problem collected from [15], where its objective is to minimize the cost of the welded joint. This is a non-linear problem, not only in its objective function but also in its constraints.
From a geometrical standpoint, the objective function can be given as,
where
and where
and,
The constraints imposed in the problem are,
where,
where
For this problem, the fitness function is defined as,
where
is the objective function
the penalty function and
and
are two constants, respectively equal to 10 and 100. The penalty function is then given as,
where
and with
defined as,
The optimal solution of [16] will be used as a reference optimal solution, which will be compared with the results obtained using the hybrid BBO method.
Results for the Case Study 1
This case was used to study and compare the performance of the algorithm and its different operators. The results were obtained after the program reached its stopping criteria, the number of generations, which was set at two thousand generations.
Starting with the analysis of the best solutions obtained,
Table 1 shows some of the best objective results for the different tests. It is possible to note that the fully hybridized algorithm, with both mating selection mechanisms of recombination, PEbS and ISbF, and the algorithm with local search can improve the optimal solution, reaching a value lower than the one used as a reference [17]. The worst results were obtained using taxonomic mutation without blending, which was expected due to the lack of diversity in the population. Indeed, since both taxonomic mutation and unblended migration use information from the rest of the population to operate, and without a guaranteed source of greater diversity, solutions tend to have a hard time leaving local optima. Furthermore, it is important to note that the impact of the crossover operator in this case was not very important, since both solutions presented here have a value similar to that obtained in the tests without crossover. In terms of migration models, the linear model was the best, having consistently reached good solutions. The other models also performed well, especially when using other operators from the hybridization.
The evolution of the elite’s average fitness is represented, graphically, in
Figure 8 and
Figure 9. Highlighting
Figure 8, it is possible to note one of the best benefits of the method, its fast global search, with the steep drop of the elite’s average in the first stages of the program. But that graph also highlights the biggest weakness of the standard BBO algorithm, its behavior at final generations. As it is possible to see, the algorithm spent a lot of generations stuck in a single, not optimal, solution. A problem that was somewhat solved by the use of the local search method, as it is possible to note in
Figure 9, the curve here presents a more common curve, that progressively evolves into the best solution, while still preserving some of the qualities from the original method, such as the steep drop in the initial generations.
In summary, the following conclusions can be drawn:
- -
Fully hybridized model shows the best results. It is even possible to obtain better results than the reference value [
17];
- -
The Hooke-Jeeves local optimizer was the inclusion with the most impact. In this example, the influence of the crossover was not very significant;
- -
Standard mutation had the best performance, with and without the use of the blending strategy in migration;
- -
Blending had an impact, also showing good synergy with the local optimizer and crossover operators;
- -
The linear migration model obtained the best performance, proving to be more consistent.
- -
It should be noted that the sinusoidal migration model also obtained good results.
Case Study 2: Welded Gusset Optimal Design
A welded Gusset with the geometry as shown in
Figure 10 is considered in this problem [15]. A profile
with a section of
, must be welded to a
thick plate so that the section of the profile can be subjected to tension in its totality. Considering that the base material is St37 steel (DIN 17100) with
and the metal deposited in the fillet welds has
.
The welding cost includes the cost of preparing the joint to be welded, the cost of the material deposited, and the cost associated with the welding technology. Supposing that the cost can be expressed as a function of the welded joint dimensions, it is obtained the following objective function.
where
is associated with the price of the manpower and materials cost,
are the lengths of the fillet welds,
are the respective widths of the projected weld throats according to the rules of the welding code design. In
Figure 10 let’s consider the following data:
;
and
.
To evaluate the normal stress caused by the bending moment it is necessary to calculate the flexural strength module,
,
The normal stresses caused by the bending moment is defined as follows,
where
.
The stress in the fillet welds (parallel to its longitudinal axis) is given as follows,
where
.
Finally, according to the Portuguese regulation code on steel structures for buildings (REAE) [18], the equivalent stress
, is given by:
The stress constraint of the welded Gusset design problem is given by,
where
is a safety factor defined according to REAE (artº77) [18] successively defined as follows,
with
The fitness function for this example is going to be calculated using the formulation from equation (4.22) but using
, so that no obtained solutions violate the constraints. The optimal reference point, obtained from [17], is:
Results for the Case Study 2
The second example used the same stopping criteria as the first example. In terms of the best solutions obtained, presented in
Table 2, it is possible to note, once again, that the best solutions are improved when compared to the reference value. In this case, the use of the fully hybridized algorithm proved to be superior to the other approaches, as it repeatedly achieved the best solutions, even when using different crossover operators. The study is also a particularly good example of the benefits of adding crossover operators, since in both cases, with and without local search, their implementation helped to improve the final solution. The local search, once again, also proved its value by significantly improving the solution. On the downside, when the blending in migration was not used, the solution fell short of all the other cases, even with the help of the local optimizer. This is more than likely due to the non-blended migration since it does not introduce any diversity to the population, by only replacing the bad solutions with the better ones. This feature, when combined with a complex function, can lead to a case, like this one, where the algorithm was led to a local optimum and was never able to create a new solution outside of that point, which led to it being stuck at that point for several generations. This aspect is one of the biggest weaknesses of standard BBO algorithms, which had already been documented by other authors, referred to as a lack of speed. Dan Simon [5], himself mentioned this lack of speed in his original paper. Hopefully, the concept of blending solves this problem, even if partially.
Using the evolution of the elite's average fitness,
Figure 11 once again shows the rapid decline in the first few generations of the algorithm. This figure, when compared with the previous figures, is also a good example of some of the problems that have occurred with the trapezoidal model, namely its inconsistency. This migration model was either one of the fastest or the slowest, the latter being more frequent. It also doesn't help that this model also shows poor synergy with the other modifications, specifically with taxonomic mutation.
Figure 12, demonstrates a little bit of the influence of the crossover operator, with the curve of the graph being completely different from what is expected from this method. The conclusions are:
- -
The fully hybridized model with the different options originally not included in the BBO continued to achieve the best results;
- -
The inclusion of the crossover operator proved to be a good option, showing good results both with and without the use of the Hooke-Jeeves local optimizer. Both strategies achieved good results;
- -
The Hooke-Jeeves local optimizer continued to be an advantage, showing several robust results;
- -
The migration model with blending was an asset. In this example, we can see its impact on synergy with the other hybridization options, especially the Hooke-Jeeves local optimizer;
- -
The linear migration model was the most prevalent in this case;
- -
Both mutations achieved good results, but the taxonomic mutation showed worse synergy when integrated with other options, slowing down the algorithm in some cases.
Case Study 3: Design of Springs and Weights System
Figure 13 shows a spring system supporting weights at the connections between the springs [19]. First, the system analysis is performed to determine the equilibrium position by minimizing the potential energy. For this, five weights and six springs were considered.
The
-th spring deformation is given by the following equation,
with
.
There are
springs, with
being the number of weights (
for this case). The stiffness of the
-th spring is,
and the weight applied at the
-th node is given as follows,
The potential energy of the system is then given by,
The design variables are the nodes position in the spring-deformed state. Therefore, the design variables are
and
, for a total of ten design variables. The fitness function used is going to be equation (4.43) and the only constraints applied to the problem will be the size constraints, so that the solution obtained ensures that no nodes interfere with each other in a physically impossible manner. The optimal solution described in the book [19] is given as,
Results for the Case Study 3
Analyzing the best solutions obtained, shown in
Table 3, it is important to note that only the fully hybridized method was able to reach the reference solution. The worst solution came, once again, from the tests without blending and with taxonomic mutation, assuming that the same reasons that plagued the two previous problems also hold true here. The addition of the crossover operators was, once again, very beneficial, their addition allowed for an improvement of solutions. Furthermore, both strategies performed well and were able to provide valuable solutions equally. The linear model of migration also seems to continue its dominance having a lot of placements, but this time the best solutions came from different models.
In terms of the evolution of the elite’s average fitness with the generations,
Figure 14 shows more of the same behavior. The steep initial drop and the intermediate and final slump, which remain in a non-optimal solution.
Figure 15 on the other hand showed a behavior similar to other GAs, this mainly shows the influence that the crossover operators had in this example, demonstrating, once again, its benefits.
However, this example highlighted a problem that affected the algorithm's performance, slowing it down. This error arose with the use of taxonomic mutation together crossover operators. In fact, in the initial generations, due to the generation of bad solutions in the recombination process, the performance of the differential taxonomic mutation worsened significantly. Using these bad solutions from the crossover worsens the quality of the population, thus reducing the convergence rate. However, this problem can be easily solved by using a solution selection process after the generation of offspring during the crossover, preventing very bad solutions from entering the new population. Or adopt a hybrid mutation strategy based on the BBO method's standard mutation in the initial generations and taxonomic mutation in the intermediate and final generations. The conclusions are:
- -
The algorithm presented more difficulties in this example, but managed to obtain solutions close to the reference value when fully hybridized;
- -
Both options included (crossover and local optimizer) had an impact, with the local optimizer being the most important;
- -
The linear model continued to have the best performance, but the other non-linear models obtained the best results in the end;
- -
Standard mutation obtained the best results, due to a problem that differential mutation had with the bad solutions coming from the crossover operators;
- -
Migration with blending has continued to be an impactful modification, and this example demonstrates it well.
Case Study 4: The 10-bar Truss
The objective of this problem is to minimize the mass of the structure by varying the cross-sectional area of the elements while respecting the limitations and restrictions based on stresses and displacements.
Figure 16 shows the geometry that is going to be studied in this example from [20].
The structure is loaded on nodes 2 and 4, by two vertical loads (one per node) of . The Young’s modulus of the material is .
The objective function of the problem is,
where
represents the density,
the length of the element and
the cross-section area of the element.
The constraint values for the stresses and displacements are (traction /compression) and , respectively. The cross-sectional areas of members must belong to the interval from to .
The reference value from [20], which was obtained using an AGA (Augmented Genetic Algorithm), is presented below,
It is also important to note that the linear equation system was solved using gaussian elimination with partial pivoting.
Results for the Case Study 4
The best solutions presented in
Table 4, show that in the majority of the tests, the algorithm did not reach a value close to the reference value, this may be due to the combination of the complexity of the problem and the limitation created by the stopping criteria, that, once again, was placed as 5000 generations. But on a positive note, there were also many results better than the reference value. In terms of migration models, it is important to note the good synergy that the linear model continues to show, having great results with all of the modifications. The sinusoidal model, which obtained the best value, and the trapezoidal model, which consistently obtained the best values for the respective test, should also be highlighted. This example also proved that with a more complex migration model, it is possible to obtain better results. On the side of the mutation operator, both operators (standard and taxonomic) were able to reach good values, but it is important to highlight that when the local search was used, the standard mutation is better. This factor, combined with the fact that linear migration is the model that behaves best with taxonomic mutation, shows some of the synergy problems that have already been exposed here. Finally, the crossover operator also proved to be a positive influence in this case, allowing for the improvement of the solutions.
Analyzing the evolution of the elite’s average fitness, presented in
Figure 17 and
Figure 18, it is possible to witness the same phenomenon mentioned before. Highlighting the first graph, it is possible to see the influence of the local search, with the steady increase in value on the trapezoidal model curve. In addition, this graph shows the dominance of the sinusoidal model, which, without that huge spike in the value of the trapezoidal model, would be the best in these tests. The second graph also shows some interesting behaviors, especially the uniform crossover (U) that shows a very steady increase in value elite’s average fitness through the generations. The curves relating to the use of the crossover operator show better algorithmic performance.
- -
The inclusion options (crossover and local optimizer) had quite an impact. The fully hybridized algorithm obtained the best results;
- -
This example has shown that for more complex problems, more complex migration models obtain better results. However, the linear model manages to overcome this advantage in some cases with its good synergy with other techniques;
- -
The model, without hybridization, struggled to achieve reasonable results;
- -
The migration model with blending maintained its good performance, especially during tests including other hybridization options;
- -
The model with standard mutation obtained the best results, but taxonomic mutation also performed well.
5. Conclusions
An evolutionary algorithm based on biogeography (BBO) was implemented to be applied to various problems in the topic of optimization of mechanical systems and to study their behavior. This work adapted not only the linear migration model from Dan Simon's original work [5] but also the trapezoidal, quadratic, and sinusoidal models presented in Ma's work [7]. In terms of mutation operators, the standard BBO mutation and Hao's taxonomic mutation were implemented [10]. The initial algorithm was later hybridized with other concepts and heuristics from other methods, such as the crossover operators Single-Point (SP), Multiple-Point (MP), and Uniform (U) used in genetic algorithms, and local search-based learning from memetic algorithm’s idea.
The standard non-hybridized BBO showed its best performance in the initial generations, due to its good global search. However, the results obtained fell short of the benchmarks in the literature using other optimization methods. This poor performance was due to the lack of diversity of solutions in the populations at the final generations of the optimization process. This feature is associated with the replacement of solutions of the migration operator an intrinsic property of BBO method. The addition of the blending strategy, applied during the migration process, introduced by Dan Simon the original author of BBO, proved to be very beneficial, improving the algorithm's performance in several respects. Even so, some of BBO's initial problems persisted. Thus, other processes, such as the injection of new solutions [21], [13] before BBO hybridization, have proved effective in improving population diversity. The results obtained after these inclusions proved to be positive.
In terms of migration, the models that stood out the most during the tests were the sinusoidal and linear models, which managed to produce several optimal results. The quadratic model, although less consistent, also managed to produce satisfactory results, outperforming the other models in some cases. The worst model, the trapezoidal model, showed reliable results but was the slowest and most inconsistent when compared to the other models. In addition, this model also showed poor synergy with the other operators implemented, such as taxonomic mutation and the local optimizer. The standard mutation and taxonomic mutation operators were able to produce good results when migration with blending was used. Standard mutation prioritized the speed of the algorithm, generating good solutions quickly, while taxonomic mutation showed greater precision, at the cost of some speed.
The hybridization process began with the implementation of the crossover operators, which required the implementation of binary coding of solutions. The three implemented crossover operators were subject to two different mating selection strategies. The inclusion of these operators proved to be positive, with an improvement in results, in general. The second mating selection strategy (ISbF) appeared to have better behavior, especially when used in conjunction with the MP (Multiple-Point) crossover operator, but the first mating selection strategy (PEbS) was also quite positive. The three crossover operators obtained satisfactory, fairly similar results and showed good synergy with the other operators and concepts, especially with blending migration.
Then, the Hooke-Jeeves local optimizer was implemented, which presented excellent results, even in the tests without the inclusion of the crossover. However, the best results were obtained when the fully hybridized algorithm was used. Thus, the algorithm was able not only to quickly reach the optimum points but also, in some cases, to surpass them.
When the algorithm was exposed to a more complex problem, it presented some difficulties, initially without the use of hybridization. However, with the inclusion of crossover operators and local search, it managed to achieve good values, albeit with some struggle. This example also showed that complex migration models have an easier time dealing with complex problems. But it also showed that the greatest advantage of the linear migration model, its great synergy with the other modifications, allowed it to compete with the more complex models.
In conclusion, the initial behavior of the BBO original method suggested that it needed some improvements to reach its true potential. With the proposal innovations, the method showed excellent results, achieving its objective with relative ease. It can be said that these innovations complement the method positively and that their inclusion should be further strengthened.
References
- Holland, J. Genetic Algorithms. Scientific American 1992, 267, 66–73. [Google Scholar] [CrossRef]
- Dawkins, R. The Selfish Gene; Oxford university Press: Oxford, 1976. [Google Scholar]
- Lamarck, J.B. Zoological Philosophy, 1914.
- Baldwin, J.M. A New Facctor in Evolution. The American Nationalist 1869.
- Simon, D. Biogeography-based optimization. IEEE Transactions on Evolutionary Computation 2008, 12, 702–713. [Google Scholar] [CrossRef]
- Wilson, E.O.; MacArthur, R. The Theory of Island Biogeography; Princeton University Press: Princeton, 1967. [Google Scholar]
- Ma, H. An analysis of the equilibrium of migration models for biogeography. Information Sciences 2010, 180, 3444–3464. [Google Scholar] [CrossRef]
- Zheng, Y.; Sueqin, L.; Zhang, M.; Chen, S. Biogeography-Based Optimization: Algorithms and Applications; Science Press: Beijing, 2019. [Google Scholar]
- Ma, H.; Simon, D. Blended biogeography-based optimization for constrained optimization. Engineering Applications of Artificial Intelligence 2011, 24, 517–525. [Google Scholar] [CrossRef]
- Hao, J.; Zhao, X.; Ji, Y. A Novel Biogeography-Based Optimization Algorithm with Momentum Migration and Taxonomic Mutation. Advances in Swarm Intelligence 2020, 83–93. [Google Scholar] [CrossRef]
- António, C.C. Optimization of Mechanical Systems; Efeitos Gráficos: Porto, 2022. [Google Scholar]
- Eshelman, L.; Caruana, A.; Schaffer, J. Biases in the crossover landscape. In Proceedings of the third international conference on genetic algorithms, 4-7 June 1989; pp. 10–19. [Google Scholar]
- Conceição António, C.A. A multilevel genetic algorithm for optimization of geometrically nonlinear stiffened composite structures. Struc. Multidisc. Optim. 2002, 24, 372–386. [Google Scholar] [CrossRef]
- Peixoto, A. Modelo de otimização biogeográfico hibridizado com algoritmos meméticos para conceção ótima de sistemas mecânicos. MSc. Thesis, Faculdade de Engenharia da Universidade do Porto, Porto, 2024. [Google Scholar]
- António, C.A.C.; Carneiro, G.M.P.N. Optimization of Mechanical Systems: Optimal Design Applications; Efeitos Gráficos: Porto, 2022. [Google Scholar]
- Help, M. Welded Beam Design Optimization. MAPLE, [Online]. Available: https://www.maplesoft.com/support/help/maple/view.aspx?path=applications%2FWeldedBeam. [Accessed Março 2024].
- Gonçalves, H.F.S. Development and implementation of memetic models for the optimal design of mechanical systems. MSc. Thesis, Faculdade de Engenharia da Universidade do Porto, Porto, 2023. [Google Scholar]
- REAE, Decreto-Lei nº 21/86, Regulamento de Estruturas de Aço para Edifícios, 1986.
- Vanderplaats, G.N. Numerical optimization with MATLAB Programming; McGraw Hill: New York, 1984. [Google Scholar]
- Aminifar, F.; Aminifar, F.; Nazarpour, D. Optimal design of truss structures via an augmented genetic algorithm. Turkish Journal of Engineering & Environmental Sciences 2013, 37, 56–68. [Google Scholar]
- António, C.A.C. A hierarchical genetic algorithm for reliability based design of geometrically non-linear composite structures. Composite Structures 2001, 54, 37–47. [Google Scholar] [CrossRef]
Figure 1.
Lowchart of the standardized BBO method.
Figure 1.
Lowchart of the standardized BBO method.
Figure 2.
Graphical representation of the linear migration model [7].
Figure 2.
Graphical representation of the linear migration model [7].
Figure 3.
Graphic representation of the trapezoidal migration model [7].
Figure 3.
Graphic representation of the trapezoidal migration model [7].
Figure 4.
Graphic representation of the quadratic migration model [7].
Figure 4.
Graphic representation of the quadratic migration model [7].
Figure 5.
Graphic representation of the sinusoidal migration model [7].
Figure 5.
Graphic representation of the sinusoidal migration model [7].
Figure 7.
Welded beam system.
Figure 7.
Welded beam system.
Figure 8.
Evolution of the elite's average fitness through two thousand generations.
Figure 8.
Evolution of the elite's average fitness through two thousand generations.
Figure 9.
Evolution of the elite's average fitness through two thousand generations, with local search (LS).
Figure 9.
Evolution of the elite's average fitness through two thousand generations, with local search (LS).
Figure 10.
Welded Gusset design problem.
Figure 10.
Welded Gusset design problem.
Figure 11.
Evolution of the elite's average fitness through two thousand generations.
Figure 11.
Evolution of the elite's average fitness through two thousand generations.
Figure 12.
Evolution of the elite's average fitness through three thousand generations, with the crossover operator.
Figure 12.
Evolution of the elite's average fitness through three thousand generations, with the crossover operator.
Figure 13.
Schematic description of a spring and weight system.
Figure 13.
Schematic description of a spring and weight system.
Figure 14.
Evolution of the elite's average fitness through two thousand generations.
Figure 14.
Evolution of the elite's average fitness through two thousand generations.
Figure 15.
Evolution of the elite's average fitness through five thousand generations, with the crossover operator, taxonomic mutation, and local search.
Figure 15.
Evolution of the elite's average fitness through five thousand generations, with the crossover operator, taxonomic mutation, and local search.
Figure 16.
The 10-bar truss structure.
Figure 16.
The 10-bar truss structure.
Figure 17.
Evolution of the elite's average fitness through five thousand generations.
Figure 17.
Evolution of the elite's average fitness through five thousand generations.
Figure 18.
Evolution of the elite's average fitness through 5000 generations, with the crossover operators (SP-single point, MP-multipoint, U-uniform) with or without blending, and taxonomic mutation.
Figure 18.
Evolution of the elite's average fitness through 5000 generations, with the crossover operators (SP-single point, MP-multipoint, U-uniform) with or without blending, and taxonomic mutation.
Table 1.
Best solutions obtained for Study Case 1.
Table 1.
Best solutions obtained for Study Case 1.
| Migration |
Blending |
Mutation |
Crossover |
Strategy |
Local search |
|
|
|
|
Objective |
| Linear |
No |
Standard |
|
|
No |
0.1793 |
4.6384 |
9.0316 |
0.2113 |
1.8761 |
| Linear |
No |
Taxonomic |
|
|
No |
1.1000 |
1.1000 |
4.1000 |
1.1000 |
4.7467 |
| Quadratic |
Yes |
Standard |
|
|
No |
0.1887 |
3.9392 |
8.8488 |
0.2138 |
1.7917 |
| Sinusoidal |
Yes |
Taxonomic |
|
|
No |
0.2225 |
3.2084 |
8.9869 |
0.2064 |
1.7428 |
| Quadratic |
No |
Standard |
|
|
Yes |
0.1923 |
3.9511 |
8.8552 |
0.2176 |
1.8252 |
| Linear |
No |
Taxonomic |
|
|
Yes |
0.1597 |
6.9744 |
9.0712 |
0.2083 |
2.1033 |
| Trapezoidal |
Yes |
Standard |
|
|
Yes |
0.2118 |
3.3365 |
9.0278 |
0.2057 |
1.7192 |
| Trapezoidal |
Yes |
Taxonomic |
|
|
Yes |
0.2117 |
3.3369 |
9.0281 |
0.2057 |
1.7192 |
| Linear |
Yes |
Taxonomic |
MP |
PEbS |
No |
0.2115 |
3.3289 |
9.0875 |
0.2090 |
1.7487 |
| Quadratic |
Yes |
Taxonomic |
MP |
ISbF |
No |
0.2084 |
3.4617 |
8.8805 |
0.2116 |
1.7501 |
| Trapezoidal |
Yes |
Standard |
SP |
PEbS |
Yes |
0.2117 |
3.3377 |
9.0269 |
0.2057 |
1.7192 |
| Sinusoidal |
Yes |
Taxonomic |
SP |
ISbF |
Yes |
0.2115 |
3.3425 |
9.0269 |
0.2057 |
1.7192 |
Table 2.
Best solutions obtained for Case Study 2.
Table 2.
Best solutions obtained for Case Study 2.
| Migration |
Blending |
Mutation |
Crossover |
Strategy |
Local search |
|
|
|
|
Objective |
| Linear |
No |
Standard |
|
|
No |
5.152 |
5.446 |
383.299 |
240.904 |
3286.891 |
| Linear |
No |
Taxonomic |
|
|
No |
5.433 |
5.833 |
385.931 |
220.302 |
3382.000 |
| Linear |
Yes |
Standard |
|
|
No |
5.333 |
5.285 |
377.282 |
240.724 |
3284.266 |
| Sinusoidal |
Yes |
Taxonomic |
|
|
No |
5.272 |
5.256 |
383.589 |
242.931 |
3299.102 |
| Linear |
No |
Standard |
|
|
Yes |
5.162 |
4.751 |
400.000 |
250.000 |
3252.320 |
| Linear |
No |
Taxonomic |
|
|
Yes |
5.370 |
4.460 |
400.000 |
248.257 |
3255.336 |
| Linear |
Yes |
Standard |
|
|
Yes |
4.957 |
4.935 |
399.908 |
249.939 |
3215.531 |
| Quadratic |
Yes |
Taxonomic |
|
|
Yes |
5.144 |
5.144 |
385.182 |
246.330 |
3248.703 |
| Quadratic |
Yes |
Standard |
SP |
PEbS |
No |
5.265 |
5.262 |
382.206 |
238.214 |
3266.031 |
| Quadratic |
Yes |
Standard |
U |
ISbF |
No |
5.243 |
5.241 |
382.236 |
240.257 |
3263.141 |
| Linear |
Yes |
Standard |
U |
PEbS |
Yes |
4.945 |
4.945 |
400.000 |
250.000 |
3214.375 |
| Linear |
Yes |
Standard |
MP |
ISbF |
Yes |
4.945 |
4.945 |
400.000 |
250.000 |
3214.375 |
Table 3.
Best solutions obtained for Case Study 3.
Table 3.
Best solutions obtained for Case Study 3.
| Migration |
Blending |
Mutation |
Crossover |
Strategy |
Local search |
|
|
|
|
|
|
|
|
|
|
Objective |
| Linear |
No |
Standard |
|
|
No |
10.661 |
21.662 |
32.472 |
42.576 |
52.798 |
-1.074 |
-6.640 |
-8.149 |
-8.245 |
-6.338 |
-2672.011 |
| Linear |
No |
Taxonomic |
|
|
No |
9.693 |
20.007 |
32.468 |
41.354 |
50.033 |
-5.157 |
-5.452 |
-8.277 |
-4.353 |
-1.409 |
1365.146 |
| Linear |
Yes |
Standard |
|
|
No |
10.687 |
21.898 |
32.099 |
42.324 |
51.633 |
-4.513 |
-8.426 |
-11.010 |
-9.361 |
-5.726 |
-4092.193 |
| Quadratic |
Yes |
Taxonomic |
|
|
No |
9.623 |
21.124 |
31.305 |
41.743 |
51.953 |
-6.019 |
-9.242 |
-10.971 |
-9.279 |
-6.374 |
-3823.344 |
| Linear |
No |
Standard |
|
|
Yes |
10.661 |
21.662 |
32.472 |
42.576 |
52.798 |
-1.074 |
-6.640 |
-8.149 |
-8.245 |
-6.338 |
-2672.01 |
| Trapezoidal |
Yes |
Standard |
|
|
Yes |
10.331 |
21.037 |
31.642 |
42.043 |
51.727 |
-4.289 |
-7.907 |
-9.817 |
-9.330 |
-5.954 |
-4415.8 |
| Trapezoidal |
Yes |
Taxonomic |
|
|
Yes |
10.260 |
20.769 |
31.299 |
41.583 |
51.383 |
-4.159 |
-7.885 |
-9.418 |
-8.652 |
-5.501 |
-4354.79 |
| Linear |
Yes |
Standard |
U |
PEbS |
No |
10.260 |
20.769 |
31.299 |
41.583 |
51.383 |
-4.159 |
-7.885 |
-9.418 |
-8.652 |
-5.501 |
-4354.79 |
| Linear |
Yes |
Standard |
MP |
ISbF |
No |
10.138 |
21.365 |
31.552 |
41.634 |
51.231 |
-4.565 |
-6.713 |
-8.980 |
-8.843 |
-5.249 |
-4151.46 |
| Quadratic |
Yes |
Standard |
SP |
PEbS |
Yes |
10.347 |
21.076 |
31.679 |
42.082 |
51.764 |
-4.292 |
-7.914 |
-9.860 |
-9.390 |
-6.003 |
-4416.36 |
| Sinusoidal |
Yes |
Standard |
U |
ISbF |
Yes |
10.349 |
21.078 |
31.679 |
42.080 |
51.766 |
-4.286 |
-7.892 |
-9.840 |
-9.377 |
-6.005 |
-4416.36 |
Table 4.
Results for Case Study 4, the 10-bar Truss example.
Table 4.
Results for Case Study 4, the 10-bar Truss example.
| Migration |
Blending |
Mutation |
Crossover |
Strategy |
Local search |
|
|
|
|
|
|
|
|
|
|
Objective |
| Trapezoidal |
No |
Standard |
|
|
No |
0.0156 |
0.0166 |
0.0224 |
0.0183 |
0.000108 |
0.00548 |
0.0135 |
0.02 |
0.00635 |
0.0225 |
4221.072 |
| Linear |
No |
Taxonomic |
|
|
No |
0.0226 |
0.0226 |
0.0226 |
0.0129 |
0.000315 |
0.0226 |
0.0226 |
0.0226 |
0.00374 |
0.0226 |
5189.495 |
| Trapezoidal |
Yes |
Standard |
|
|
No |
0.0205 |
0.000506 |
0.0212 |
0.0141 |
0.000407 |
0.0106 |
0.00353 |
0.0204 |
0.0173 |
0.0214 |
3946.545 |
| Linear |
Yes |
Taxonomic |
|
|
No |
0.0215 |
0.0154 |
0.0177 |
0.0224 |
0.00825 |
0.00695 |
0.0225 |
0.0209 |
0.00915 |
0.021 |
4974.689 |
| Quadratic |
No |
Standard |
|
|
Yes |
0.00536 |
0.000065 |
0.0226 |
0.0226 |
0.0000645 |
0.0000645 |
0.00531 |
0.0199 |
0.0000645 |
0.0226 |
3002.792 |
| Linear |
No |
Taxonomic |
|
|
Yes |
0.0205 |
0.0226 |
0.0223 |
0.013 |
0.0000645 |
0.0073 |
0.0225 |
0.00992 |
0.0203 |
0.0226 |
4873.072 |
| Trapezoidal |
Yes |
Standard |
|
|
Yes |
0.000397 |
0.000065 |
0.0195 |
0.0114 |
0.0000645 |
0.000398 |
0.00353 |
0.0158 |
0.000567 |
0.0197 |
2226.827 |
| Sinusoidal |
Yes |
Taxonomic |
|
|
Yes |
0.00098 |
0.000065 |
0.0179 |
0.0213 |
0.0000645 |
0.00476 |
0.00437 |
0.0226 |
0.0000645 |
0.0222 |
2908.027 |
| Linear |
Yes |
Taxonomic |
MP |
PEbS |
No |
0.000213 |
0.000065 |
0.0197 |
0.00961 |
0.0000645 |
0.00032 |
0.00352 |
0.0188 |
0.00185 |
0.0171 |
2234.67 |
| Linear |
Yes |
Taxonomic |
SP |
ISbF |
No |
0.000065 |
0.000065 |
0.0158 |
0.0132 |
0.0000645 |
0.000509 |
0.00366 |
0.0203 |
0.00186 |
0.0168 |
2280.885 |
| Sinusoidal |
Yes |
Standard |
U |
PEbS |
Yes |
0.000725 |
0.000066 |
0.0226 |
0.0108 |
0.0000651 |
0.000925 |
0.00346 |
0.0166 |
0.00152 |
0.0144 |
2182.267 |
| Quadratic |
Yes |
Standard |
MP |
ISbF |
Yes |
0.000684 |
0.000065 |
0.0215 |
0.0141 |
0.0000677 |
0.00101 |
0.00348 |
0.0146 |
0.00138 |
0.0152 |
2190.475 |
|
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).