Skip to main content

2019 | Buch

Metaheuristics: Outlines, MATLAB Codes and Examples

insite
SUCHEN

Über dieses Buch

The book presents eight well-known and often used algorithms besides nine newly developed algorithms by the first author and his students in a practical implementation framework.
Matlab codes and some benchmark structural optimization problems are provided. The aim is to provide an efficient context for experienced researchers or readers not familiar with theory, applications and computational developments of the considered metaheuristics.
The information will also be of interest to readers interested in application of metaheuristics for hard optimization, comparing conceptually different metaheuristics and designing new metaheuristics.

Inhaltsverzeichnis

Frontmatter
Chapter 1. Introduction
Abstract
Optimization is a part of nature and, inevitably, an integral part of human life. Any decision we make is an attempt to process an optimal or almost optimal situation. From a general point of view, any optimization problem can be considered as a decision-making problem, and the question is whether or not there is any better solution to the problem than the one we have found. In other words, optimization means to reach a solution as good as possible to lead us to a better performance of the system under consideration. According to the description of Beightler et al. [1], optimization is a three-step decision-making process: (1) modeling the problem based on the knowledge of the problem, (2) finding measures of effectiveness or the objective function, and (3) the optimization method or optimization theory. It is valid to say that the entire field of optimization, especially the latter step, merely benefited by the development and improvement of computers which started in the mid-1940s.
Ali Kaveh, Taha Bakhshpoori
Chapter 2. Preliminaries and Frameworks
Abstract
This chapter provides the required preliminaries and presents the frameworks needed to understand the subsequent chapters. After presenting the most basic notions of the MATLAB program as well as definitions and notations from metaheuristics for constrained optimization problems, a simplified standard template for metaheuristics is presented. Then the presentation and evaluation frameworks of the considered algorithms are described.
Ali Kaveh, Taha Bakhshpoori
Chapter 3. Artificial Bee Colony Algorithm
Abstract
Swarm intelligence and group behavior of honey bees was the inspiration basis of some metaheuristics. The first one is the Artificial Bee Colony (ABC) algorithm which was introduced by Karaboga in 2005 [1] based on the foraging behavior of honey bees. Other algorithms such as bee colony optimization [2] and bees algorithm [3] were also developed which are not the purpose of this chapter.
Ali Kaveh, Taha Bakhshpoori
Chapter 4. Big Bang-Big Crunch Algorithm
Abstract
Inspired by the energy dissipation in the form of transformation from an ordered state to a disordered or chaos state, a novel and simple nature-based or physics-based metaheuristic has been developed by Erol and Eksin [1]. The algorithm named as Big Bang-Big Crunch (BB-BC) is taken from the prevailing evolutionary theory for the origin of universe: the Big Bang Theory. According to this theory, in the Big Bang phase, particles are drawn toward irregularity by losing energy, while in the Big Crunch phase, they converged toward a specific direction. Like other population-based metaheuristics, BB-BC starts with a set of random initial candidate solutions, as the initial Big Bang. In fact, each Big Bang phase is preceded with a Big Crunch phase except the first population which should be generated randomly within the search space. After each Big Bang phase, a Big Crunch phase should take place to determine a convergence operator by which particles will be drawn into an orderly fashion in the subsequent Big Bang phase. The convergence operator can be the weighted average of the positions of the candidate solutions or the position of the best candidate solution. These two contraction (Big Crunch) and dispersing (Big Bang) phases are repeated in the cyclic body of the algorithm in succession to satisfy a stopping criteria with the aim of steering the particles toward the global optimum.
Ali Kaveh, Taha Bakhshpoori
Chapter 5. Teaching-Learning-Based Optimization Algorithm
Abstract
Teaching-learning-based optimization (TLBO) algorithm was first developed in 2011 by Rao et al. [1] based on the classical school learning process. This algorithm consists of two stages: effect of a teacher on learners and the influence of learners on each other. TLBO initialized with a population of random solutions, named students or learners. The best learner or the smartest student with the best objective function is assigned as the teacher in each iteration of the algorithm. Students are updated iteratively to search the optimum within two phases: based on the knowledge transfer from a teacher first (teacher phase) and then from interaction with other students (learner phase). In TLBO the performance of the class in learning or the performance of teacher in teaching is considered as a normal distribution of marks obtained by the students. The main difference of two normal distributions is in their mean value, i.e., a better teacher teaches students with higher average scores. In this regard, TLBO improves other students in the teacher phase by using the difference between the teacher’s knowledge and the average knowledge of all the students. The knowledge of each student is obtained based on the position taken place by that student in the search space. In a class, students also improve themselves via interacting with each other after the teaching is completed by the teacher. In the learner phase, TLBO improves each student by the knowledge interaction between that student and another randomly selected one.
Ali Kaveh, Taha Bakhshpoori
Chapter 6. Imperialist Competitive Algorithm
Abstract
This chapter presents imperialist competitive algorithm (ICA) proposed by Atashpaz-Gargari and co-workers [1, 2] which is a socio-politically motivated optimization algorithm. ICA was firstly used by Kaveh and Talatahari [3] for steel structural optimization. Like other population-based metaheuristics, ICA starts with a set of random initial candidate solutions, as the initial countries. A specific number of best countries are considered as the emperors which take a number of remaining countries as their colonies based on competency. Therefore, the countries are categorized into emperors and colonies and collectively form empires or imperialist states. ICA has two main mechanisms who are the basis of the ICA: improving the colonies of each empire by intrinsic learning of colonies from their emperor and imperialistic competitions among empires. First one results in powering empires themselves. In this way each colony has opportunity to take the role of emperor of that empire. During imperialistic competitions among empires, weakest empires lose their weakest colonies, and powerful empires take possession of them until the weakest empire collapses. The power of each imperialist or empire not only depends on the quality or position of its emperor and colonies but also depends on the number of its colony. Colonies improvements and imperialistic competitions direct the search process toward the powerful imperialists or the optimum points. These are repeated in the cyclic body of the algorithm in succession to satisfy a stopping criteria with the aim of collapsing all the empires except the most powerful one which will have all the countries under its control.
Ali Kaveh, Taha Bakhshpoori
Chapter 7. Cuckoo Search Algorithm
Abstract
Cuckoo Search (CS) algorithm was developed by Yang and Deb [1, 2] as an efficient population-based metaheuristic inspired by the behavior of some cuckoo species in combination with the Lévy flight. It is also used in steel structural optimization problems by Kaveh and Bakhshpoori [3, 4]. Cuckoos are fascinating birds because of their special lifestyle and aggressive reproduction strategy. These species lay their eggs in the nests of other host birds with amazing abilities like selecting the recently spawned nests and removing existing eggs that increase the hatching probability of their eggs. The host takes care of the eggs presuming that the eggs are its own. However, some of host birds are able to combat with this parasites behavior of cuckoos and throw out the discovered alien eggs or build their new nests in new locations. Metaheuristics update the candidate solutions repetitively using the step sizes generated in the search space based on the inspired mechanisms or formulations. The randomization plays an important role in both exploration and exploitation in meta-heuristic algorithms. Therefore, these step sizes combined also with a series of consecutive random steps. In fact, the randomization part of the step sizes can vary according to a known distribution. A very special case can be achieved when the step length obeys the Lévy distribution and is called Lévy flight. The cuckoo breeding analogy combining with the Lévy flight behavior is the essence of the CS. Each solution represents a nest or an egg or a bird. Like other metaheuristics CS starts from randomly generated initial candidate solutions. These are the eggs of host birds. In the cyclic body of the algorithm, cuckoos aim to improve the quality of the solutions by generating new eggs with step sizes toward the best known solution in combination with the Lévy flight and intruded them to the nests of host birds. Moreover, in each iteration, after generating the new eggs by cuckoos, host birds have a chance to determine the alien eggs, abandon them, and generate new ones in the search space. Discovering the cuckoo’s eggs and building new nests instead of them can take place with different mechanisms. For example, it can take place for a fraction of eggs.
Ali Kaveh, Taha Bakhshpoori
Chapter 8. Charged System Search Algorithm
Abstract
Charged System Search (CSS) algorithm was developed by Kaveh and Talatahari [1, 2] as an efficient population-based metaheuristic using some principles from physics and mechanics and was applied successfully to various types of structural optimization problems [3–7]. CSS utilizes the governing Coulomb laws from electrostatics and the Newtonian laws of mechanics. In this algorithm each agent is a charged particle with a predetermined radius. The charge of magnitude of particles is considered based on their quality. Each particle creates an electric field, which exerts a force on other electrically charged objects. Therefore, charged particles can affect each other based on their fitness values and their separation distance. The quantity of the resultant force is determined by using the electrostatics laws, and the quality of the movement is determined using Newtonian mechanics laws.
Ali Kaveh, Taha Bakhshpoori
Chapter 9. Ray Optimization Algorithm
Abstract
Kaveh and Khayatazad [1] developed the Ray Optimization (RO) algorithm as a novel population-based metaheuristic conceptualized based on Snell’s light refraction law when light travels from a lighter medium to a darker medium. RO applied successfully to some of the structural optimization problems [2–5].
Ali Kaveh, Taha Bakhshpoori
Chapter 10. Colliding Bodies Optimization Algorithm
Abstract
Colliding Bodies Optimization (CBO) algorithm is a new metaheuristic search algorithm developed by Kaveh and Mahdavi [1]. CBO is inspired based on the physics laws of momentum and energy that govern the collisions accrued between solid bodies. The CBO is simple in concept and does not depend on any internal parameters. In this regard, it has been used to solve a wide variety of optimization problems encountered in practice. CBO also has been used extensively in the field of structural optimization problems [2–8].
Ali Kaveh, Taha Bakhshpoori
Chapter 11. Tug of War Optimization Algorithm
Abstract
Kaveh and Zolghadr [1] developed a novel population-based metaheuristic algorithm inspired by the game tug of war. Utilizing a sports metaphor, the algorithm, denoted as tug of war optimization (TWO), considers each candidate solution as a team participating in a series of rope pulling competitions. The teams exert pulling forces on each other based on the quality of the solutions they represent. The competing teams move to their new positions according to Newtonian laws of mechanics. Unlike many other metaheuristic methods, the algorithm is formulated in such a way that considers the qualities of both of the interacting solutions. TWO is applicable to global optimization of discontinuous, multimodal, non-smooth, and non-convex functions. Viability of the TWO in solving engineering COPs currently is examined using some structural optimization problems [2–4]. It should be noted that TWO has a very simple structure and the available studies indicate its potential to be used for many real-size COPs.
Ali Kaveh, Taha Bakhshpoori
Chapter 12. Water Evaporation Optimization Algorithm
Abstract
Inspiring by evaporation of a tiny amount of water molecules on the solid surface with different wettability which can be studied by molecular dynamic simulations, Kaveh and Bakhshpoori [1] developed a novel metaheuristic called Water Evaporation Optimization (WEO). Until today WEO is used successfully in solving some engineering COPs [2–6].
Ali Kaveh, Taha Bakhshpoori
Chapter 13. Vibrating Particles System Algorithm
Abstract
Vibrating Particles System (VPS) algorithm is a new metaheuristic search algorithm developed by Kaveh and Ilchi Ghazaan [1]. VPS is motivated based on the free vibration of single degree of freedom systems with viscous damping. VPS has been used to solve some problems in the field of structural optimization, and the obtained results show its viability in convergence and accuracy [2–5].
Ali Kaveh, Taha Bakhshpoori
Chapter 14. Cyclical Parthenogenesis Algorithm
Abstract
This chapter presents Cyclical Parthenogenesis Algorithm (CPA) proposed by Kaveh and Zolghadr [1]. CPA is inspired by reproduction and social behavior of some zoological species like aphids, which can reproduce with and without mating. It is applied by Kaveh and Zolghadr [2–4] successfully for some structural optimization problems.
Ali Kaveh, Taha Bakhshpoori
Chapter 15. Thermal Exchange Optimization Algorithm
Abstract
Based on Newton’s law of cooling, Kaveh and Dadras [1] introduced a new metaheuristic named Thermal Exchange Optimization (TEO) algorithm. TEO is in early stages of its use and is utilized to solve a few structural optimization problems [2, 3]. Newton’s law of cooling states that the rate of heat loss of a body is proportional to the difference in temperatures between the body and its surroundings. TEO considers each of its particles as a cooling or heating object, and by associating another agent as the environment, a heat transferring and thermal exchange happens between them. The new temperature of the object is considered as its next position in the search space.
Ali Kaveh, Taha Bakhshpoori
Metadaten
Titel
Metaheuristics: Outlines, MATLAB Codes and Examples
verfasst von
Prof. Dr. Ali Kaveh
Prof. Dr. Taha Bakhshpoori
Copyright-Jahr
2019
Electronic ISBN
978-3-030-04067-3
Print ISBN
978-3-030-04066-6
DOI
https://doi.org/10.1007/978-3-030-04067-3

    Marktübersichten

    Die im Laufe eines Jahres in der „adhäsion“ veröffentlichten Marktübersichten helfen Anwendern verschiedenster Branchen, sich einen gezielten Überblick über Lieferantenangebote zu verschaffen.