1 Introduction

In recent years, nature-inspired optimization methods have gathered attention of the masses. Most of the nature-inspired optimization approaches mimic a natural phenomenon or social behaviour of a group of animals. For example, Genetic Algorithm (GA) mimics the natural phenomenon of survival of the fittest (Goldberg and Holland 1988), Simulated Annealing (SA) is inspired from the process of annealing of solids (Van Laarhoven and Aarts 1987), Gravitational Search Algorithm (GSA) is inspired by the gravitational laws and interaction between the masses (Rashedi et al. 2009), Particle Swarm Optimization (PSO) mimics the phenomenon of bird flocking (Poli et al. 2007), Cuckoo Search (CS) mimics the brood parasitism of cuckoo (Yang and Deb 2009; 2014), Elephant Herding Optimization (EHO) uses the herding behaviour of elephants (Wang et al. 2015a, 2016), Earthworm Optimization (EWA) inspired by the burrowing action of earthworms in the soil (Wang et al. 2015b), Grey Wolf Optimization (GWO) mimics the hunting of grey wolf (Mirjalili et al. 2014a; Faris et al. 2018), Whale Optimization Algorithm (WOA) mimics the social behaviour of whales (Mirjalili and Lewis 2016), Artificial Bee Colony (ABC) imitates the foraging behaviour of honeybee (Karaboga and Basturk 2008), Bird Swarm Algorithm (BSA) utilizes the social interaction in a bird swarm(Meng et al. 2016), Bat Algorithm (BA) mimics the echolocation behaviour of bats (Cai et al. 2016), Harmony Search Algorithm (HSA) mimics the natural phenomenon of musicians improvization of the harmony (Gao et al. 2015), etc.

One such nature-inspired algorithm that has gained popularity in the recent years is CSO (Meng et al. 2014). CSO efficiently exploits the hierarchal order in the chicken swarm and the food-searching process of the chicken swarm. In the aforementioned algorithm, the positions of the members of the chicken swarm are regarded as the candidate solutions of the optimization problem to be solved. The chicken swarm is divided into rooster, hens, and chicks depending upon the food-searching capability. The competition between different chickens under a specific hierarchal order and mother–child relationship is also taken into account in this algorithm. A number of variants of the CSO algorithm are also available in the existing literature. Deb et al. (2019a) presented a comprehensive overview of different variants of CSO algorithm and concluded that there is still a scope for improving the algorithm. Chen et al. (2015) proposed an improved version of CSO with modified update equation of the hen. Wang et al. (2017) introduced the mutation strategy in the update phenomenon of chicks to enhance their food-searching ability. Han et al. (2017) also proposed an improved binary version of CSO where the mutation operator is applied to the population with the worst fitness value. Ahmed et al. (2017) combined chaos tent map and logistic map with CSO and used the algorithm to solve feature selection problem. Liang et al. (2016) replaced the update mechanism of roosters with the update mechanism of Bat Algorithm (BA) and proposed hybrid Bat CSO. Kumar and Veni (2018) hybridized CSO with Differential Evolution (DE) and applied the proposed algorithm for solving routing problem. Experimental results showed that the proposed algorithm performed better than the standalone algorithms as the solutions obtained by CSO were further fine-tuned by DE to avoid premature convergence. Torabi and Safi-Esfahani (2018) hybridized Improved Raven Rooster Optimization (IRRO) with CSO and utilized the proposed algorithm for solving task scheduling problems.

It is observed that in the existing literature, a number of nature-inspired algorithms are available. Despite the availability of such a wide range of nature-inspired algorithms, researchers are still trying to develop new more efficient algorithms, improve the existing algorithms by hybridization or modify some algorithmic components of the methods. The main motivation behind this lies in the No Free Lunch (NFL) theorem (Wolpert and Macready 1997). NFL theorem concludes that a single algorithm cannot perform well on all the optimization problems. Hence, there is necessity of developing new more efficient algorithms and improving the existing algorithms. The present work is also concerned with improving CSO and its hybridization with TLBO. CSO has good utilization rate of population. However, the algorithm may sometimes get trapped in local optima. Researchers have tried to overcome this inherent drawback of CSO by variety of ways (Chen et al. 2015; Wang et al. 2017; Han and Liu 2017; Liang et al. 2016; Kumar and Veni 2018; Torabi and Safi-Esfahani 2018). Some of the variants of CSO are listed in Table 1. The present work also makes an attempt to improve the basic CSO by modifying the update equation of roosters and introducing a novel constraint-handling mechanism. Further, the work also proposes synergy of the improved version of CSO (ICSO) with Teaching–Learning-based Optimization (TLBO) algorithm. The salient features of the proposed algorithm in comparison with the existing improvements of CSO are modified update equation of rooster, novel constraint-handling mechanism, and hybridization with TLBO. The contributions of the work as compared to the existing works on CSO are summarized as follows:

Table 1 Variants of CSO
  1. 1.

    Improvement of CSO by modifying the update equation of rooster and introduction of a novel constraint-handling mechanism.

  2. 2.

    Hybridization of ICSO with TLBO. It is expected that synergy of ICSO and TLBO will enhance the utilization rate of population and overcome the premature convergence of the algorithm.

  3. 3.

    The proposed algorithm is used for solving eight basic benchmark functions, fifteen computationally expensive benchmark functions as well as two real-world problems.

  4. 4.

    The performance of the proposed algorithm is statistically compared with other state-of-the-art algorithms like PSO and its variants, DE and its variants, GA, TLBO and its variants.

The remainder of the paper is organized as follows. Section 2, Sect. 3, and Sect. 4 illustrate the fundamentals of CSO, ICSO, and TLBO, respectively. Section 5 elaborates the hybridization of ICSO with TLBO. Section 6 and Sect. 7 illustrate the results related to the performance of the proposed algorithm on basic benchmark functions and computationally expensive benchmark functions, respectively. Section 8 discusses the computational complexity of the proposed algorithm. Section 9 illustrates the performance of the proposed algorithm on real-world problems like charging station placement and economic load dispatch problem. Section 10 presents the future direction of research on CSO. Finally, Sect. 11 concludes the work.

2 CSO

CSO is one of the latest swarm intelligence-based algorithms developed by Meng et al. in the year 2014. The hierarchal order prevalent in the chicken swarm and the collective food-searching mechanism of the swarm is mimicked by the algorithm. The entire populace of chicken in the group is segregated into dominant rooster, hens, and chicks depending upon the fitness values of the chickens. The chickens with highest food-searching ability or fitness are designated as roosters, chickens with least food-searching ability or fitness are designated as chicks, and the chickens with intermediate food-searching ability or fitness are assigned as hens. The mother–child relationship is also established randomly. The hierarchal order and mother–child relationship are updated after every G time steps. The natal behaviour of hens to go behind their group mate rooster and chicks to go behind their mother in the quest for food is utilized effectively in the algorithm. It is also presumed that the chickens would try to scratch the food found by others thereby giving rise to a competition for food in the group. The algorithm is divided into two steps, namely initialization and update.

In initialization, the population size and other related parameters of CSO like number of roosters, number of hens, number of chicks, number of mother hens, G is first defined. The fitness values of the randomly generated initial population of chicken are evaluated, and a hierarchal order is established based on this fitness value. The algorithm is based on the following assumptions:

  • The number of hens is the highest in the group

  • All the hens are not mother hens

  • The mother hens are selected randomly from the set of hens

  • The number of chicks is less than hen

There is variation in the food-searching capacity of roosters, hens, and chicks. In the update step, the fitness values of the initial population are updated depending on the food-searching capacity of the different members of the group. Food-searching capacity of rooster depends on their fitness value, and their update formula is as follows:

$$ x_{i,j}^{t + 1} = x_{i,j}^{t} \times (1 + {\text{randn}}(0,\sigma^{2} )) $$
(1)

If fi ≤ fk

$$ \sigma^{2} = 1 $$
(2)

else

$$ \sigma^{2} = \exp \left(\frac{{(f_{k} - f_{i} )}}{{\left| {f_{i} } \right| + \varepsilon }}\right) $$
(3)

where randn(0,σ2) is a Gaussian distribution function with mean 0 and standard deviation σ2. f is the fitness value of corresponding x, k is randomly selected rooster’s index.ϵ is a small constant value which is used to avoid zero division error.

Hens follow their group mate roosters in their quest for food. Moreover, there is also a tendency among the chickens to steal the food found by other chickens. The mathematical representation of their update formula is as follows:

$$ x_{i,j}^{t + 1} = x_{i,j}^{t} + S1 \times {\text{rand}} \times (x_{r1,j}^{t} - x_{i,j}^{t} ) + S2 \times {\text{rand}}(x_{r2,j}^{t} - x_{i,j}^{t} ) $$
(4)
$$ S1 = \exp \left(\frac{{f_{i} - f_{r1} }}{{abs(f_{i} ) + \varepsilon }}\right) $$
(5)
$$ S2 = \exp (f_{r2} - f_{i} ) $$
(6)

where rand is a randomly generated number between 0 and 1. \( r1 \in [1,N] \) is an index of rooster which is ith hen’s group mate, and \( r2 \in [1,N] \) is an index of rooster or hen which is randomly chosen such that r1 is not equal to r2.

The natural tendency of chicks to follow their mother is mathematically formulated as follows:

$$ x_{i,j}^{t + 1} = x_{i,j}^{t} + FL \times (x_{m,j}^{t} - x_{i,j}^{t} ) $$
(7)

where \( x_{m,j}^{t} \) represents the position of ith chick’s mother. FL is a parameter which signifies that the chick would follow its mother. FL is generally chosen between 0 and 2.

The pseudocode of CSO is shown in Algorithm 1.

figure a

3 ICSO

The key features of ICSO are modification in the update mechanism of roosters and a novel constraint-handling mechanism. In the basic CSO, hens follow their group mate rooster in the food-searching process. And the chicks follow their mother hen. Thus, it is obvious that the performance of the algorithm is very much dependent on roosters. If the roosters get struck in local optima, then there is possibility of premature convergence. Hence, in order to overcome this drawback, authors have modified the update equation of roosters. The algorithm considers that the roosters would utilize its previous experience in the food-searching process. In the quest for food, each rooster can record and update its best experience from the past and the swarms’ previous best experience about food availability. Social information is shared instantaneously among the roosters. Thus, the update equation of the roosters is modified as:

$$ x_{i,j}^{t + 1} = x_{i,j}^{t} + C \times {\text{rand}} \times (p_{i,j}^{{}} - x_{i,j}^{t} ) + S \times {\text{rand}}(g_{j}^{{}} - x_{i,j}^{t} ) $$
(8)

where pi,j represents the best previous position of ith rooster, gj represents the best previous position of the swarm, C represents cognitive coefficient, and S represents social coefficient.

Another salient feature of ICSO is a novel constraint-handling mechanism. In the basic CSO, whenever the updated value of the decision variable exceeds the upper or lower limit of the decision variable, it is fixed to upper or lower limit, respectively. In ICSO, an improved efficient methodology of constraint handling is used to improve the convergence speed. This improved methodology of constraint handling is shown in Algorithm 2. The pseudocode of ICSO is shown in Algorithm 3.

figure b
figure c

4 TLBO

TLBO is a latest evolutionary algorithm introduced by Rao and Kalyankar in the year 2011. TLBO is a population-based evolutionary algorithm which mimics the interactive process of teaching and learning. A class of learners constitutes the population here. The teacher transfers his/her knowledge to the learners. The performance of the learners depends on the knowledge and capability of the teacher. The students can learn from the teacher as well as learn from each other through mutual interaction. Thus, the algorithm is divided into two parts: teacher phase and learner phase (Rao and Kalyankar 2011; Rao 2016).

In the teacher phase, the students learn from the teacher who is an erudite scholar with profound knowledge and skill. The learner having the best fitness in a randomly generated population of teachers is generally assigned the role of teacher. Each learner learns from the teacher and is modified as follows:

$$ Z_{\text{diff}} = {\text{rand}} \times (T_{k} - R_{t} m_{k} ) $$
(9)
$$ Z_{\text{new}} = Z_{\text{old}} + Z_{\text{diff}} $$
(10)

Tk represents teacher, Rt is a random number between 0 and 2, mk represents mean of the decision variable

And, the objective function value for each learner set modified by transfer of knowledge by the teacher is recalculated. If the new value of the objective function for any learner is better than the previous one, then it is replaced by the new value. Else, the old learner is kept as it is.

In the learner phase, the learner learns by mutual interaction among themselves. For each learner Zi, any learner Zj is chosen arbitrarily from the learner matrix. The objective function values are compared arbitrarily for the two aforementioned learners. If the value of the objective function of Zi is lower than the objective function of Zj, then the ith learner is modified as follows:

$$ Z_{\text{new}} = Z_{\text{old}} + {\text{rand}} \times (Z_{i} - Z_{j} ) $$
(11)

else, it is modified as

$$ Z_{\text{new}} = Z_{\text{old}} + {\text{rand}} \times (Z_{j} - Z_{i} ) $$
(12)

The pseudocode and flow chart of TLBO is shown in Algorithm 4.

figure d

5 ICSOTLBO

Standalone Nature-Inspired Optimization (NIO) algorithms are sometimes not efficient enough to handle the uncertainty of the practical optimization problems. Hybridization of NIO algorithms offers competitive solutions than standalone NIO algorithms in case of practical problems. Also, the hybrid algorithms inherit the advantages of two standalone algorithms, eliminate the limitations of the standalone algorithms, and perform better than the standalone algorithms. A good balance between exploration and exploitation is maintained in the hybrid algorithms. Hybridization of CSO and TLBO is also presented in the work. It is expected that the grading mechanism of ICSO when introduced in TLBO, the utilization rate of population will increase. Hence, in ICSOTLBO, TLBO is performed in all the generations and ICSO is periodically invoked in some generations. The salient features of the proposed ICSOTLBO algorithm are:

  1. 1.

    In the hybridization scheme, TLBO is performed in all generations and CSO is periodically invoked.

  2. 2.

    The algorithm is expected to have good utilization rate of population due to the grading mechanism of CSO

  3. 3.

    The premature convergence that is a drawback of CSO can be avoided in ICSOTLBO because of amalgamation of CSO with TLBO

  4. 4.

    The modified update equation of CSO utilizing the best experience from the past and the swarms’ previous best experience about food availability will also enhance the performance of the algorithm

  5. 5.

    The new constraint-handling mechanism will improve the convergence speed of the algorithm

The scheme for hybridizing ICSO and TLBO is elaborated in Algorithm 5.

figure e

6 Performance of ICSOTLBO on basic benchmark functions

The proposed algorithm was first tested on eight basic benchmark functions as shown in Table 2. In Table 2, f1, f2, f3, f4, and f6 are unimodal functions and f5, f7, and f8 are a multimodal function. The detailed formulations of these benchmark functions can be found in the reference (Mirjalili 2016). The different algorithm-specific parameters of ICSOTLBO were tuned as given in Table 3. The performance of ICSOTLBO on these basic benchmark functions was compared with a number of state-of-the-art algorithms like different variants of PSO, DE, GA, etc. The results related to these comparisons are presented in the subsequent subsections.

Table 2 List of basic benchmark functions
Table 3 Algorithm-specific parameters of ICSOTLBO

6.1 Comparison of ICSOTLBO with different variants of DE

The performance of ICSOTLBO was compared with SaDE, jDE, and EPSDE on eight benchmark functions as shown in Table 2. The results of SaDE, jDE, and EPSDE were directly taken from the reference (Satapathy and Naik 2014). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Satapathy and Naik 2014). The mean and standard deviations of the errors are reported in Table 4 for each of the basic benchmark functions as shown in Table 2. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of SaDE, jDE, and EPSDE. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 4. It was observed that ICSOTLBO was always better than SaDE and jDE. And, ICSOTLBO was better than EPSDE for five benchmark functions and equivalent to EPSDE for three benchmark functions. For comparing the performance of the proposed algorithm with the variants of DE, Friedman test was performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 1. It was observed that ICSOTLBO had obtained the best rank in comparison with the different variants of DE.

Table 4 Comparison of ICSOTLBO with different variants of DE (D = 30, PN = 20)
Fig. 1
figure 1

Comparison of Friedman ranks of ICSOTLBO with different variants of DE for basic benchmark functions

6.2 Comparison of ICSOTLBO with different variants of PSO

The performance of ICSOTLBO was compared with APSO, OLPSO, and CLPSO on the benchmark functions as shown in Table 2. The results of APSO, OLPSO, and CLPSO were directly taken from the reference (Satapathy and Naik 2014). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Satapathy and Naik 2014). The mean and standard deviations of the errors are reported in Table 5 for each of the basic benchmark functions as shown in Table 2. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of APSO, OLPSO, and CLPSO. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 5. It was observed that ICSOTLBO was always better than APSO, OLPSO, and CLPSO on 6, 3, and 6 benchmark functions, respectively. ICSOTLBO performed equivalent to APSO, OLPSO, and CLPSO on 1, 2, and 1 benchmark functions, respectively. For comparing the performance of the proposed algorithm with the variants of PSO, Friedman test was also performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 2. It was observed that ICSOTLBO had obtained the best rank in comparison with the different variants of PSO.

Table 5 Comparison of ICSOTLBO with different variants of PSO (D = 30, PN = 20, FE = 2e+05)
Fig. 2
figure 2

Comparison of Friedman ranks of ICSOTLBO with different variants of PSO for basic benchmark functions

6.3 Comparison of ICSOTLBO with BPSOGSA, BGSA, and GA

The performance of ICSOTLBO was compared with BPSOGSA, BGSA, and GA on the benchmark functions as shown in Table 2. The results of BPSOGSA, BGSA, and GA were directly taken from the reference (Mirjalili et al. 2014b). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Mirjalili et al. 2014b). The mean and standard deviations of the errors are reported in Table 6 for each of the basic benchmark functions as shown in Table 2. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of BPSOGSA, BGSA, and GA. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 6. It was observed that ICSOTLBO was always better than BPSOGSA, BGSA, and GA. Further, for comparing the performance of the proposed algorithm with the BPSOGSA, BGSA, and GA, Friedman test was performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 3. It was observed that ICSOTLBO had obtained the best rank in comparison with BPSOGSA, BGSA, and GA.

Table 6 Comparison of ICSOTLBO with BPSOGSA, BGSA, and GA(D = 5, PN = 30, FE = 500)
Fig. 3
figure 3

Comparison of Friedman ranks of ICSOTLBO with BPSOGSA, BGSA, and GA for basic benchmark functions

7 Performance of ICSOTLBO on computationally expensive benchmark functions

The proposed algorithm was further tested on 15 computationally expensive benchmark functions as shown in Table 7. The benchmark functions reported in Table 7 were taken from the set of computationally expensive benchmark functions of various years of Congress on Evolutionary Competition (CEC). Most of the test functions reported in Table 7 are complex functions representing shifted, rotated, and expanded versions of basic benchmark functions. In Table 7, F1–F5 are unimodal functions, F6–F13 are multimodal functions, and F14, F15 are hybrid functions. The detailed formulations of these benchmark functions can be found in the reference (Suganthan et al. 2005). The different algorithm-specific parameters of ICSOTLBO were tuned as shown in Table 3. The performance of ICSOTLBO on these computationally expensive benchmark functions was compared with a number of state-of-the-art algorithms like different variants of PSO, DE, GA, TLBO and its variants, etc. The results related to these comparisons are presented in the subsequent subsections.

Table 7 List of computationally expensive benchmark functions

7.1 Comparison of ICSOTLBO with TLBO and its variants

The performance of ICSOTLBO was compared with TLBO and mTLBO on the benchmark functions as shown in Table 7. The results of TLBO were directly taken from the reference (Zhai et al. 2015; Rao and Waghmare 2013), and the results of mTLBO were directly taken from the reference (Satapathy and Naik 2014). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the references(Satapathy and Naik 2014; Zhai et al. 2015; Rao and Waghmare 2013).The mean and standard deviations of the errors are reported in Table 8 for each of the benchmark functions as shown in Table 7. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of TLBO and mTLBO. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 8. It was observed that ICSOTLBO performed better than TLBO on eight benchmark functions, worse than TLBO on five benchmark functions and equivalent to TLBO on one benchmark function. And, ICSOTLBO performed better than mTLBO on six benchmark functions, worse than TLBO on five benchmark functions and equivalent to TLBO on four benchmark functions. For comparing the performance of the proposed algorithm with TLBO and its variants, Friedman test was also performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 4. It was observed that ICSOTLBO was the second best performing algorithm in comparison with TLBO and mTLBO.

Table 8 Comparison of ICSOTLBO with TLBO and its variants (D = 30, FE = 3e+05)
Fig. 4
figure 4

Comparison of Friedman ranks of ICSOTLBO with TLBO and its variants for unimodal and multimodal computationally expensive benchmark functions

7.2 Comparison of ICSOTLBO with different variants of PSO

The performance of ICSOTLBO was compared with APSO, OLPSO, and CLPSO on the benchmark functions as shown in Table 7. The results of APSO, OLPSO, and CLPSO were directly taken from the reference (Li et al. 2015). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Li et al. 2015). The mean and standard deviations of the errors are reported in Table 9 for each of the benchmark functions as shown in Table 7. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of APSO, OLPSO, and CLPSO. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 9. ICSOTLBO performed better than APSO on seven benchmark functions, worse than APSO on seven benchmark functions, and equivalent to APSO on one benchmark function. ICSOTLBO performed better than OPSO on eight benchmark functions, worse than OPSO on five benchmark functions, and equivalent to OPSO on two benchmark functions. And, ICSOTLBO performed better than CLPSO on eight benchmark functions, worse than CLPSO on six benchmark functions, and equivalent to CLPSO on one benchmark function. For comparing the performance of the proposed algorithm with different variants of PSO, Friedman test was also performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 5. It was observed that ICSOTLBO was the best performing algorithm in comparison with different variants of PSO.

Table 9 Comparison of ICSOTLBO with different variants of PSO (− = 30, FE = 3e+05)
Fig. 5
figure 5

Comparison of Friedman ranks of ICSOTLBO with different variants of PSO for unimodal and multimodal computationally expensive benchmark functions

7.3 Comparison of ICSOTLBO with different variants of DE

The performance of ICSOTLBO was compared with SaDE, jDE, and EPSDE on 15 benchmark functions as shown in Table 7. The results of SaDE, jDE, and EPSDE were directly taken from the reference (Satapathy and Naik 2014). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Satapathy and Naik 2014). The mean and standard deviations of the errors are reported in Table 10 for each of the basic benchmark functions as shown in Table 7. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of SaDE, jDE, and EPSDE. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 10. ICSOTLBO performed better than SaDE on five benchmark functions, worse than SaDE on seven benchmark functions, and equivalent to SaDE on three benchmark functions. ICSOTLBO performed better than jDE on eight benchmark functions, worse than jDE on six benchmark functions, and equivalent to jDE on one benchmark function. And, ICSOTLBO performed better than EPSDE on six benchmark functions, worse than EPSDE on seven benchmark functions, and equivalent to EPSDE on two benchmark functions. For comparing the performance of the proposed algorithm with different variants of DE, Friedman test was also performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 6. It was observed that jDE was the best performing algorithm followed by SaDE, and the rank of ICSOTLBO was equivalent to EPSDE.

Table 10 Comparison of ICSOTLBO with different variants of DE (D = 30, FE = 3e+05)
Fig. 6
figure 6

Comparison of Friedman ranks of ICSOTLBO with different variants of DE for unimodal and multimodal computationally expensive benchmark functions

7.4 Comparison of ICSOTLBO with SPC-PNX and CMA-ES

The performance of ICSOTLBO was compared with SPC-PNX and CMA-ES on 15 benchmark functions as shown in Table 7. The results of SPC-PNX and CMA-ES were directly taken from the references (Ballester et al. 2005; Satapathy and Naik 2014). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Ballester et al. 2005; Satapathy and Naik 2014). The mean and standard deviations of the errors are reported in Table 11 for each of the basic benchmark functions as shown in Table 7. Further, Wilcoxon rank sum test was conducted at 0.05 significance level between ICSOTLBO and each of SPC-PNX and CMA-ES. The results of the Wilcoxon rank sum test are reported in the last three rows of Table 11. It was observed that ICSOTLBO performed better than SPC-PNX on seven benchmark functions, worse than SPC-NX on seven benchmark functions, and equivalent to SPC-NX on one benchmark function. And, ICSOTLBO performed better than CMA-ES on six benchmark functions, worse than CMA-ES on seven benchmark functions, and equivalent to CMA-ES on two benchmark functions. For comparing the performance of the proposed algorithm with SPC-PNX and CMA-ES, Friedman test was also performed. The ranks of the different algorithms obtained by Friedman test are shown in Fig. 7. It was observed that CMA-ES was the best performing algorithm, and the rank of ICSOTLBO was equivalent to SPC-PNX.

Table 11 Comparison of ICSOTLBO with SPC-PNX and CMA-ES (D = 30, FE = 3e+05)
Fig. 7
figure 7

Comparison of Friedman ranks of ICSOTLBO with SPC-PNX and CMA-ES for unimodal and multimodal computationally expensive benchmark functions

8 Computational complexity of ICSOTLBO

The complexity of the proposed ICSOTLBO algorithm was compared with other state-of-the-art algorithms like basic PSO, TLBO, GA, and DE. The details related to the evaluation criterion of computational complexity of algorithms used in the present work can be found in the reference (Suganthan et al. 2005). The proposed algorithms were tested in MATLAB 2016a software installed on a computer with the processor of 64 bit Intel i7 CPU. The results related to the computational complexity of the aforesaid algorithms are presented in Table 12. In Table 12, T0 represents the computing time of the base program given by CEC. T1 represents the computing time of F3 for 2e+05 function evaluations. T2 represents the mean of the computing time of F3 for 2e+05 function evaluations obtained by running the program 5 times. From Table 12, it can be observed that the computational complexity of ICSOTLBO is less than TLBO and GA but more than PSO and DE. It must be noted that the computational complexity of the algorithm increase with the increasing size of the data set. Thus, the computational complexity of all the algorithms may increase if we increase the value of D.

Table 12 Computational complexity of ICSOTLBO, PSO, TLBO, and GA(D = 30, FE = 2e+05)

9 Performance of ICSOTLBO on real-world problems

The performance of the proposed ICSOTLBO algorithm was further tested on real-world problems like charging station placement problem and economic load dispatch problem. The performance of ICSOTLBO on these real- world problems is illustrated in this section.

9.1 Performance of ICSOTLBO on charging station placement problem

The performance of the proposed ICSOTLBO algorithm was appraised by applying it on solving the complex and demanding problem of charging station placement for Electric Vehicles (EVs). EVs are an environment friendly alternative to gasoline fuelled vehicles. However, the limited driving range is one of the drawbacks of EVs. The EVs need to recharge their batteries in the charging stations after travelling certain distance. These charging stations augment the load of the power grid (Deb et al. 2018a, 2019b). Thus, the charging station placement must take into consideration security of the power distribution network as well as EV user’s convenience. There are different formulations of charging station placement present in the existing literature (Deb et al. 2018b). In this work, the charging station placement problem present in the reference (Deb et al. 2017) was solved by ICSOTLBO. The decision variables of the charging station placement problem were:

  • Position where charging stations will be placed, b

  • Number of fast charging stations placed at b, NFb

  • Number of slow charging stations placed at b, NSb

It was considered that the charging stations would be placed at the superimposed nodes (TS) of the road and distribution network. Also, it was assumed that the charging stations would only be placed at the strong nodes (S) of the distribution network that was not prone to voltage instability.

The optimization aimed at minimization of the overall cost associated with charging stations. Moreover, the cost was divided into the direct and indirect costs. Direct cost considered the installation and operation cost associated with charging stations. Indirect cost considered the penalty paid by the utilities for violating the safe limits of distribution network parameters like voltage profile, reliability, and the travelling distance cost from point of charging station to point of placement of charging station.

The objective function is

$$ J = {\text{Min}}(C_{\text{installation}} + C_{\text{operation}} + C_{\text{penalty}} + C_{\text{travel}} ) $$
(13)

where Cinstallation represents installation cost of chargers, Coperation represents operating cost of the charging stations, Cpenalty represents the penalty paid by utility for violating safe limits of voltage profile and Average Energy Not Served (AENS), and Ctravel represents the travelling distance cost from point of charging station to point of placement of charging station.

Subject to

$$ 0 < N_{Fb} \le n_{\text{fastCS}} $$
(14)
$$ 0 < N_{Sb} \le n_{\text{slowCS}} $$
(15)
$$ S_{\hbox{min} } \le S_{i} \le S_{\hbox{max} } $$
(16)
$$ L \le L_{\hbox{max} } $$
(17)

where nfastCS and nslowCS represent the maximum number of fast and slow charging stations that can be placed, Smin and Smax represent lower and upper limits of reactive power flow of each bus, Lmax represents the loading margin of the network.

Apart from the aforementioned constraints, the power balance equation must also be considered as an equality constraint while solving the charging station placement problem (Deb et al. 2017).

The charging station placement problem was solved for superimposed IEEE 33 bus distribution network and 25 node road network. The details of the test system and the input parameters of the charging station placement problem can be found in the reference (Deb et al. 2017).

The performance of ICSOTLBO on solving the charging station placement problem was also compared with other state-of-the-art algorithms like GA, DE, PSO, CSO, TLBO, and CSOTLBO. The different algorithm-specific parameters of the aforesaid algorithms are listed in Table 13. For fair comparison, the population and iteration are fixed to 10 and 50, respectively, for all the aforesaid algorithms. The optimal value of the decision variables for minimization of the overall cost and the best value of the fitness function are reported in Table 14. It was observed that the best fitness value obtained by ICSOTLBO was 1.3605 that was better than CSOTLBO, TLBO, CSO, GA, DE, and PSO. A statistical comparison of the quality of solution was performed for all the algorithms, the results of which are reported in Table 15. The results reported in Table 15 demonstrate the superiority of ICSOTLBO over CSO, TLBO, CSOTLBO, GA, PSO, and DE in solving the complex charging station placement problem. The convergence curve of ICSOTLBO and the aforesaid algorithms for the best fitness value is shown in Fig. 8.

Table 13 Algorithm-specific parameters of different state-of-the-art algorithms for charging station placement problem
Table 14 Optimal placement of charging stations by ICSOTLBO and other state-of-the-art algorithms
Table 15 Statistical comparison of ICSOTLBO with other algorithms in solving charging station placement problem
Fig. 8
figure 8

Convergence curve of different algorithms for the best fitness value of charging station placement problem

9.2 Performance of ICSOTLBO on economic load dispatch problem

Economic load dispatch is considered as one of the complex power system optimization problems. The main objective of economic load dispatch is to minimize the net cost of generation under a set of operating constraints. Both convex and non-convex formulations of economic load dispatch problem are available in the existing literature (Bhattacharjee et al. 2014a, b, c). In the present work, economic load dispatch problem with quadratic fuel cost function along with operating limits was solved by ICSOTLBO. The objective function is expressed as:

$$ J = {\text{Min}}\sum\limits_{i = 1}^{N} {(a_{i} } + b_{i} P_{i} + c_{i} P_{i}^{2} ) $$
(18)

where N is the total number of generators in the system, ai, bi, and ci are the cost coefficients of the ith generator, Pi is the output power of ith generator.

Subject to

$$ \sum\limits_{i = 1}^{N} {P_{i} } - P_{D} = 0 $$
(19)
$$ P_{i}^{\hbox{min} } \le P_{i} \le P_{i}^{\hbox{max} } $$
(20)

where PD represents net power demand of the system, Pmini and Pmaxi represent lower and upper power limits of ith generator.

The economic load dispatch problem with quadratic cost function and operating constraints elaborated by Eqs. (18)–(20) was solved by ICSOTLBO. The test system considered was a 38 generator test system. The details of the test system and the input parameters were same as in the reference (Bhattacharjee et al. 2014a, b, c). The performance of ICSOTLBO algorithm in solving economic load dispatch problem was compared with other algorithms like RCCRO, TLBO, and DE. The results of RRCO and DE were taken from (Bhattacharjee et al. 2014c), and the results of TLBO were taken from (Bhattacharjee et al. 2014b). For fair comparison, the population size and number of function evaluations of ICSOTLBO were kept same as in the reference (Bhattacharjee et al. 2014b, c). The different algorithm-specific parameters of ICSOTLBO were same as in Table 13; only the value of INV is changed to 10. The mean of the cost function over 50 trials obtained by the aforesaid algorithms is reported in Table 16. The results reported in Table 16 demonstrate the superiority of ICSOTLBO over TLBO, RRCRO, and DE in solving the economic load dispatch problem. The convergence curve of different algorithms for the best fitness value is shown in Fig. 9.

Table 16 Statistical comparison of ICSOTLBO with other algorithms in solving economic load dispatch problem
Fig. 9
figure 9

Convergence curve of different algorithms for the best fitness value of economic load dispatch problem

10 Future directions of work

The work proposes improvement of basic CSO algorithm and its hybridization with TLBO. The proposed algorithm performs satisfactorily on basic, computationally expensive benchmark problems as well as real-world problems. However, still there is a scope for improving the algorithm and using the algorithm for complex optimization problems. Future works that can be undertaken on the proposed algorithm are listed below:

  1. 1.

    Development of adaptive CSO–CSO has a number of algorithm-specific parameters. Improper tuning of these parameters sometimes causes slow convergence of the algorithm. Also, the tuning of these parameters is done by trial and error method that is very much time-consuming. Hence, development of an adaptive version of CSO is a promising area of research.

  2. 2.

    Solution of complex real-world optimization problems by ICSOTLBO: There are many complex real-world optimization problems that are difficult to solve by conventional algorithms. The proposed ICSOTLBO algorithm can be utilized to solve real-world complex problems such as optimization of vehicle-to-vehicle frontal crash model (Munyazikwiye et al. 2017), predictive control of nonlinear processes (Bououden et al. 2015), microgrid control (Goodarzi and Kazemi 2017), optimal configuration of microgrid (Deb et al. 2016; Ghosh et al. 2017).

  3. 3.

    Improvement of the algorithm with information feedback models: The proposed ICSOTLBO algorithm does not fully utilize the information available from previous iterations. If the information from the previous iterations can be utilized properly, then it is expected that the quality of the solutions will significantly improve. Thus, introduction of the feedback models suggested by Wang and Tan (2017) in the proposed ICSOTLBO algorithm is a promising area of research.

  4. 4.

    Hybridization of CSO with other nature-inspired algorithms: Standalone Nature-Inspired Optimization (NIO) algorithms are sometimes not efficient enough to handle the uncertainty of the practical optimization problems. Hybridization of NIO algorithms offers competitive solutions than standalone NIO algorithms in case of practical problems. Also, the hybrid algorithms inherit the advantages of two standalone algorithms, eliminate the limitations of the standalone algorithms, and perform better than the standalone algorithms. A good balance between exploration and exploitation is maintained in the hybrid algorithms. There is a scope for hybridizing CSO with other NIO algorithms. Hybridization of CSO with other NIO algorithms such as Jaya algorithm and Sine Cosine Algorithm is a promising area of research.

11 Conclusions

The work proposes improvement of basic CSO algorithm and its hybridization with TLBO. The performance of the proposed algorithm is investigated on basic benchmark functions as well as computationally expensive functions. It is observed that the proposed algorithm outperforms many of the state-of-the-art algorithms like PSO, DE, and GA. Further, the proposed algorithm is used for solving the complex problem of charging station placement and economic load dispatch problem. The superiority of the proposed algorithm in solving complex real-world problems like charging station placement and economic load dispatch problem is also clearly revealed in the work. Our future work will focus on further improvement of CSO, development of adaptive CSO, hybridization of CSO with other evolutionary algorithms, and solution of complex power system optimization problems by CSO.