Nature Inspired Optimization Algorithms is a comprehensive book on the most popular optimization algorithms that are based on nature. It starts with an overview of optimization and goes from the classical to the latest swarm intelligence algorithm. Nature has a rich abundance of flora and fauna that inspired the development of nature inspired optimization techniques. The study of the intelligent survival strategies of animals, birds and insects in a hostile and ever-changing environment has led to the development of techniques emulating their behaviour. Nature provides us with simple solutions to complex problems in an effective and adaptive manner.
This book is a valuable resource for engineers, researchers, faculty and students who are devising optimum solutions to any type of problem. The problems range from computer science to economics covering diverse areas that require maximizing output and minimizing resources and this is the crux of all optimization algorithms. The book is a lucid description of fifteen of the existing important optimization algorithms that are based on swarm intelligence and superior in performance.
Features:
Detailed description of the algorithms along with pseudocode and flowchart
Easily translatable to program code that is also readily available in Mathworks website for some of the algorithms
Simple examples to demonstrate the optimization strategies have been given wherever possible that makes understanding easier
Standard applications and benchmark datasets for testing and validating the algorithms have been enumerated
This book is a reference for under-graduate and post-graduate students. It will be useful to faculty members teaching the subject on optimization. It also a comprehensive guide for researchers who are looking for optimizing resources in attaining the best solution to a problem. The nature inspired optimization algorithms are unconventional and this makes them more efficient than their traditional counterparts.
Author(s): Vasuki A.
Publisher: CRC Press
Year: 2020
Language: English
Pages: xiv+260
Cover
Half Title #2,0,-32767Title Page #4,0,-32767Copyright Page #5,0,-32767Table of Contents #6,0,-32767Preface #12,0,-32767Author
1 Introduction
1.1 Introduction
1.2 Fundamentals of Optimization
1.3 Types of Optimization Problems
1.4 Examples of Optimization
1.5 Formulation of Optimization Problem
1.6 Classification of Optimization Algorithms
1.7 Traveling Salesman Problem and Knapsack Problem
1.8 Summary
2 Classical Optimization Methods
2.1 Introduction
2.2 Mathematical Model of Optimization
2.3 Linear Programming
2.3.1 Simplex Method
2.3.2 Revised Simplex Method
2.3.3 Kamarkar’s Method
2.3.4 Duality Theorem
2.3.5 Decomposition Principle
2.3.6 Transportation Problem
2.4 Non-Linear Programming
2.4.1 Quadratic Programming
2.4.2 Geometric Programming
2.5 Dynamic Programming
2.6 Integer Programming
2.7 Stochastic Programming
2.8 Lagrange Multiplier Method
2.9 Summary
References
3 Nature-Inspired Algorithms
3.1 Introduction
3.2 Traditional versus Nature-Inspired Algorithms
3.3 Bioinspired Algorithms
3.4 Swarm Intelligence
3.5 Metaheuristics
3.6 Diversification and Intensification
3.7 No Free Lunch Theorem
3.8 Parameter Tuning and Control
3.9 Algorithm
3.10 Pseudocode
3.11 Summary
References
4 Genetic Algorithm
4.1 Introduction
4.2 Basics of Genetic Algorithm
4.3 Genetic Operators
4.4 Example of GA
4.5 Algorithm
4.6 Pseudocode
4.7 Schema Theory
4.8 Prisoner’s Dilemma Problem
4.9 Variants and Hybrids of GA
4.10 Summary
References
5 Genetic Programming
5.1 Introduction
5.2 Basics of Genetic Programming
5.3 Data Structures for Genetic Programming
5.4 Binary Tree Traversals
5.5 Genetic Programming Operators
5.6 Genetic Programming Algorithm
5.7 Pseudocode
5.8 Variants of the Algorithm
5.9 Summary
References
6 Particle Swarm Optimization
6.1 Introduction
6.2 Swarm Behavior
6.3 Particle Swarm Optimization
6.3.1 Algorithm
6.3.2 Pseudocode
6.4 Variants of the Algorithm
6.5 Summary
References
7 Differential Evolution
7.1 Introduction
7.2 Differential Evolution
7.2.1 Algorithm
7.2.2 Pseudocode
7.3 Variants of the Algorithm
7.4 Summary
References
8 Ant Colony Optimization
8.1 Introduction
8.2 Ant Colony Characteristics
8.3 Ant Colony Optimization
8.3.1 Traveling Salesman Problem
8.3.2 Algorithm
8.3.3 Pseudocode
8.4 Variants of the Algorithm
8.5 Summary
References
9 Bee Colony Optimization
9.1 Introduction
9.2 Honey Bee Characteristics
9.3 Bee Colony Optimization
9.3.1 Algorithm
9.3.2 Pseudocode
9.4 Variants of the Algorithm
9.5 Summary
References
10 Fish School Search Algorithm
10.1 Introduction
10.2 Fish School Behavior
10.3 Fish School Search Optimization
10.3.1 Algorithm
10.3.2 Pseudocode
10.4 Variants and Applications
10.5 Summary
References
11 Cuckoo Search Algorithm
11.1 Introduction
11.2 Cuckoo Bird Behavior
11.3 Levy Flights
11.4 Cuckoo Search Optimization
11.4.1 Algorithm
11.4.2 Pseudocode
11.5 Variants of the Algorithm
11.5.1 Discrete Cuckoo Search Algorithm
11.5.2 Binary Cuckoo Search (BCS) Algorithm
11.5.3 Multi-Objective Cuckoo Search Algorithm (MOCS)
11.6 Summary
References
12 Firefly Algorithm
12.1 Introduction
12.2 Firefly Behavior and Characteristics
12.3 Firefly-Inspired Optimization
12.3.1 Algorithm
12.3.2 Pseudocode
12.4 Variants and Applications
12.5 Summary
References
13 Bat Algorithm
13.1 Introduction
13.2 Behavior of Bats in Nature
13.3 Bat Optimization Algorithm
13.3.1 Algorithm
13.3.2 Pseudocode
13.4 Variants and Applications
13.5 Summary
References
14 Flower Pollination Algorithm
14.1 Introduction
14.2 Flower Pollination
14.3 Flower Pollination Optimization
14.3.1 Algorithm
14.3.2 Pseudocode
14.4 Variants of the Algorithm
14.5 Summary
References
15 Gray Wolf Optimization
15.1 Introduction
15.2 Gray Wolf Characteristics
15.3 Gray Wolf Optimization
15.3.1 Gray Wolf Encircling Prey
15.3.2 Hunting Behavior of Gray Wolves
15.3.3 Attacking of Prey by Gray Wolves
15.3.4 Gray Wolves Searching for Prey (Exploration)
15.4 Variants and Applications
15.5 Summary
References
16 Elephant Herding Optimization
16.1 Introduction
16.2 Elephant Herding Behavior
16.3 Elephant Herding Optimization
16.3.1 Algorithm
16.3.2 Pseudocode
16.4 Variants of the Algorithm
16.5 Summary
References
17 Crow Search Algorithm
17.1 Introduction
17.2 Crows in Nature
17.3 Crow Search Optimization
17.3.1 Algorithm
17.3.2 Pseudocode
17.4 Variants and Applications
17.5 Summary
References
18 Raven Roosting Optimization Algorithm
18.1 Introduction
18.2 Raven Roosting Behavior
18.3 Raven Roosting Optimization
18.3.1 Algorithm
18.3.2 Pseudocode
Flowchart
18.4 Variants of the Algorithm
18.5 Summary
References
19 Applications
19.1 Introduction
19.2 Benchmark Test Functions
19.3 Applications
19.3.1 Traveling Salesman Problem
19.3.2 Knapsack Problem
19.3.3 Graph Coloring Problem
19.3.4 Job Scheduling Problem
19.3.5 Feature Reduction Problem
19.3.6 Network Routing Problem
19.4 Summary
20 Conclusion