Keywords

1 Introduction

Since the first introduction of Cuckoo Search (CS) by Xin-She Yang and Suash Deb in 2009 [109], the literature of this algorithm has exploded. Cuckoo search, which drew its inspiration from the brooding parasitism of cuckoo species in Nature, were firstly proposed as a tool for numerical function optimization and continuous problems. Researchers tested this algorithm on some well-known benchmark functions and compared with PSO and GA, and it was found that cuckoo search achieved better results than the results by PSO and GA. Since then, the original developers of this algorithm and many researchers have also applied this algorithm to engineering optimization, where Cuckoo search also showed promising results.

Nowadays cuckoo search has been applied in almost every area and domain of function optimization, engineering optimization, image processing, scheduling, planning, feature selection, forecasting, and real-world applications. A quick search using Google scholar returned 440 papers, while the original paper by Yang and Deb [109] has been cited 223 times at the time of writing of this chapter. A search using Scirus returned 616 hits with 126 journal papers recorded up to July 2013. While many papers may be still in press, it is not possible to get hold of all these papers. Consequently, we will focus on the full papers we can get and thus 114 papers are included in this chapter, which may be one fraction of the true extent of the literature, but they should be representative and useful.

The aim of this chapter is to provide readers with a brief and yet relatively comprehensive list of literature in the last few years. This helps to gain insight into all the major studies concerning this hot and active optimization algorithm. The structure of this chapter is divided in four different parts. Section 2 presents all the main variants of the cuckoo search variants, including those studies that have been carried out in numerical and multi-objective optimization. Hybrid algorithms are also included in this part. Section 3 focuses on engineering optimization, while Sect. 4 summarizes all the major applications and their relevant literature. Then, Sect. 5 discusses implementation and some theoretical studies. Finally, Sect. 6 concludes with some suggestions for further research topics.

2 Cuckoo Search: Variants and Hybrids

2.1 Variants

The original cuckoo search was first tested using numerical function optimization benchmarks. Usually, this kind of problems represents a test bed for new developed algorithms. In line with this, standard benchmark function suites [33, 110] have been developed in order to make comparison between algorithms as fair as possible. For example, some original studies in this area are:

  • Cuckoo search via Lévy flights [109].

  • An efficient cuckoo search algorithm for numerical function optimization [61].

  • Multimodal function optimisation [34].

Cuckoo search can deal with multimodal problems naturally and efficiently. However, researchers have also attempted to improve its efficiency further so as to obtained better solutions than those in the literature [20], and one such study that is worth mentioning is by Jamil and Zepernick [34].

Fig. 1
figure 1

Variant of cuckoo search

Table 1 Variants of cuckoo search
Table 2 Hybrid cuckoo search

Since the first appearance of cuckoo search in 2009, many variants of the cuckoo search algorithm have been developed by many researchers. The major variants are summarized in Fig. 1 and Table 1.

2.2 Hybrid Algorithms

For many continuous optimization problems, cuckoo search can find the desired solutions very efficiently. However, sometimes, some difficulty may arise, which is true for all nature-inspired algorithms when the appropriate solutions could not be found for some other optimization problems. This is consistent with the so-called No-Free-Lunch theorem [104]. To circumvent this theorem, hybridization has been applied to optimization algorithms for solving a given set of problems. In line with this, cuckoo search has been hybridized with other optimization algorithms, machine learning techniques, heuristics, etc. Hybridization can take place in almost every component of the cuckoo search. For example, initialization procedure, evaluation function, moving function and others have all been tried. Some of the hybrid variants are summarized in Table 2.

2.3 Multi-objective Optimization

Multi-objective optimization consists of more than one objective, and these objectives may be conflicting one another. Many real-world optimization problems require design solutions according to many criteria. Single objective optimization searches for a single optimal solution, whilst multi-objective optimization requires a set of many (potentially infinite), optimal solutions, namely the Pareto front [72, 91]. Obviously, there are many issues and approaches for multi-objective optimization; however, two goals in multi-objective optimization are worth noting:

  • to obtain solutions as close to the true Pareto front as possible;

  • to generate solutions as diversely as possible on the non-dominated front.

Various variants have been developed to extend the standard cuckoo search into multi-objective cuckoo search. The following list presents some main variants on multi-objective optimization using CS.

  • Multi-objective CS [112].

  • Multi-objective scheduling problem [9].

  • Multi-objective cuckoo search algorithm for Jiles-Atherton vector hysteresis parameters estimation [14].

  • Pareto archived cuckoo search [32].

  • Hybrid multiobjective optimization using modified cuckoo search algorithm in linear array synthesis [68].

  • Multi-objective cuckoo search for water distribution systems [103].

3 Engineering Optimization

Among the diverse applications of cuckoo search, by far the largest fraction of literature may have focused on the engineering design applications. In fact, cuckoo search and its variants have become a crucial technology for solving problems in engineering practice as shown in Fig. 2. Nowadays, there are applications from almost every engineering domain. Some of these research papers are summarized in Table 3.

Fig. 2
figure 2

Engineering optimization

Table 3 Cuckoo search in engineering optimization
Fig. 3
figure 3

Cuckoo search in applications

Table 4 Cuckoo search in applications

4 Applications

Obviously, engineering optimization is just part of the diverse applications. In fact, cuckoo search and its variants have been applied into almost every area of sciences, engineering and industry. Some of the application studies are summarized in Fig. 3 and also in Table 4.

5 Theoretical Analysis and Implementation

As we have seen, the applications of cuckoo search are very diverse. In contrast, the theoretical studies are very limited. This brief summary may highlight the need for further research in theoretical aspects of cuckoo search.

5.1 Theory and Algorithm Analysis

It may be difficult to decide if a study should be classified into a theoretical category or not because the contents may sometime include both simulations and some analysis of the algorithm. So the following categorization may not be rigorous. Even so, some theoretical studies about cuckoo search in the current literature can be summarized, as follows:

  • A conceptual comparison of the cuckoo-search, particle swarm optimization, differential evolution and artificial bee colony algorithms [13].

  • Enhancing the performance of cuckoo search algorithm using orthogonal learning method [47].

  • Starting configuration of cuckoo search algorithm using centroidal Voronoi tessellations [75].

  • Reduced order mesh optimisation using proper orthogonal decomposition and a modified cuckoo search [94, 97].

  • Bat algorithm and cuckoo search: a tutorial [106, 107].

  • Metaheuristic algorithms for inverse problems [105, 108, 111].

  • Markov model and convergence analysis of cuckoo search [100].

  • Towards the improvement of cuckoo search algorithm [76].

5.2 Improvements and Other Studies

As mentioned earlier, it is not always clear how to classify certain papers. Many research studies concern the improvements of the standard cuckoo search algorithm. So we loosely put some papers here and thus summarized them as follows:

  • Tsallis entropy [1].

  • Improved scatter search using cuckoo search [2].

  • Cuckoo search via Lévy flights for optimization of a physically-based runoff-erosion model [23].

  • Improved differential evolution via cuckoo search operator [55].

  • Cuckoo search with the conjugate gradient method [73].

  • Cuckoo search with PSO [98].

5.3 Implementations

Whatever the algorithms may be, proper implementations are very important. Yang provided a standard demo implementation of cuckoo search.Footnote 1 Important implementations such as object-oriented approach and parallelization have been carried out, which can be summarized as follows:

  • Object oriented implementation of CS [4, 5].

  • Parallelization of CS [37].

6 Conclusion

In this brief review, a relatively comprehensive bibliography regarding cuckoo search algorithm has been presented. References have been systematically sorted into proper categories. The rapidly expanding literature implies that cuckoo search is a very active, hot research area. There is no doubt that more studies on cuckoo search will appear in the near future.

From the above review, it is worth pointing out that there are some important issues that need more studies. One thing is that theoretical analysis should be carried out so that insight can be gained into various variants of the cuckoo search algorithm. In addition, it may be very useful to carry out parameter tuning in some efficient variants and see how parameters can affect the behaviour of an algorithm. Furthermore, applications should focus on large-scale real-world applications.