Stochastic Constriction Cockroach Swarm Optimization for Multidimensional Space Function Problems

The effect of stochastic constriction on cockroach swarm optimization (CSO) algorithm performance was examined in this paper. A stochastic constriction cockroach swarm optimization (SCCSO) algorithm is proposed. A stochastic constriction factor is introduced into CSO algorithm for swarm stability enhancement; control cockroachmovement from one position to another while searching for solution to avoid explosion; enhanced local and global searching capabilities. SCCSO performance was tested through simulation studies and its performance on multidimensional functions is compared with that of original CSO, modified cockroach swarm optimization (MCSO), and one of the well-known global optimization techniques in the literature known as line search restart techniques (LSRS). Standard benchmarks that have been widely used for global optimization problems are considered for evaluating the proposed algorithm. The selected benchmarks were solved up to 3000 dimensions by the proposed algorithm.


Introduction
Swarm intelligence (SI) models collective social animal behaviour.Cockroach optimization is a new development under SI paradigm; cockroach optimization algorithms [1][2][3] are inspired by collective cockroach social behaviour.
Obtaining accurate and efficient optimization algorithms with good speed is the desire of optimization research community.Global optimization algorithms have been improved upon in the literature with different techniques to be able to solve high dimension problems.Examples include an improved particle swarm optimization (IPSO) [4] that was used to evaluate problems with 100 and 150 dimensions; parallel particle swarm approach [5] that solves problems up to 128 dimensions; particle swarm optimization (PSO), genetic algorithm (GA), and line search restart (LSRS) approaches were used in [6] for high dimension problems; PSO, GA, and LSRS performances were compared from 50 to 1000 dimensions; LSRS performs better than PSO and GA.LSRS was tested further for 2000 dimensions [6].
Stochastic constriction is used in this paper to improve the performance of original cockroach swarm optimization algorithm (CSO) [2].A stochastic constriction cockroach swarm optimization (SCCSO) algorithm is presented.
The constriction factor controls cockroach movement and prevents swarm explosion; cockroach is able to exploit local neighbourhood and explore the search space.
The performance of SCCSO is investigated and compared with that of original CSO, modified cockroach swarm optimization (MSCO) [3], and LSRS [6] on high dimension problems for finding the global optimal.LSRS was considered for performance comparison with the proposed algorithm because it has been proved for high dimension in the literature [6].
The selected benchmarks are multimodal and multidimensional problems which are considered as very hard global optimization problems.The global optimization problems of the form: minimize () subject to  ∈ Ω, where  is a continuous variable vector with domain Ω ⊂ R  and () : Ω → R is a continuous real-valued function.Between the upper and lower limits of each dimension, Ω is described. * represents global solution, while ( * ) represents the corresponding function fitness value [7].The problems are described in Table 1 of this paper.
The effects of stochastic constriction factor on cockroach swarm optimization (CSO) algorithm improve its accuracy, and the algorithm solves multidimensional benchmark problems to 3000 dimensions.The organization of the remaining  Griewank: part of this paper is as follows.Section 2 presents the existing CSO, MCSO, and the proposed SCCSO models; Section 3 presents the simulation studies with the obtained results; Section 4 discusses the results of experiments; and the paper is summarised in Section 5.

Cockroach Swarm Optimization
CSO algorithm is a population based global optimization algorithm; it was introduced by ZhaoHui and HaiYan [2] and was modified by ZhaoHui [3] with the introduction of inertial weight.CSO has been applied to problems in the literature [8,9].CSO models mimic cockroach behaviours which are chase-swarming, dispersing, and ruthless behaviours.CSO [2] models are given as follows.
(1) Chase-swarming behaviour: where   is the cockroach position, step is a fixed value, rand is a random number within [0, 1],   is the personal best position, and   is the global best position.Consider where visual perception distance is a constant. = 1, 2, . . .,  and  = 1, 2, . . ., (2) Dispersion behaviour where rand(1, ) is a -dimensional random vector that can be set within a certain range.
(3) Ruthless behaviour where  is a random integer within [1, ] and   is the global best position.

Modified Cockroach Swarm Optimization. MCSO [3]
extends CSO [2] with the introduction of inertial weight in chase-swarming behaviour as shown below.Other models remain the same as in CSO [2].Chase-swarming behaviour where  is an inertial weight which is a constant.

Stochastic Constriction Cockroach Swarm Optimization.
Constriction factor was introduced by Clerc and Kennedy [10] to prevent swarm explosion in particle swarm optimization (PSO); PSO is one of the existing and popular SI algorithms.They proposed a constriction as where  =  1 +  2 ,  > 4.0, 1 is the recognition factor, and 2 is the social factor.Shi described  as a constant which is approximately 0.729;  is commonly set to 4.1 [11].An algorithm with constriction constant 0.729 is equivalent to algorithm of inertia weight 0.729 with 1 = 2 = 1.49445 [11].Constriction PSO was experimentally compared with inertia weight PSO [12,13]; constriction PSO performs better than inertia weight PSO.
Similarly, a constriction factor is considered in this paper to control cockroach movement during swarming process for avoidance of swarm explosion.We use a stochastic constriction factor (SCF) instead of a constant constriction.SCF allows generation of different values as constriction factor in each iteration.
SCF helps to maintain the stability of swarm, enhances local and global search, and improves the speed and convergence of the algorithm.The algorithm utilized little cpu time in seconds to solve multidimensional problems and obtain optimal results.SCF was investigated through simulation studies; experiments and results are presented in Section 3.
The chase-swarming behaviour, (1) of CSO [2] is modified in this paper with the introduction of SCF . randomly takes values between zero and one in each iteration. controls entire cockroach movement, not only cockroach position as with inertial weight  of CSO in [3].Chase-swarming equation now becomes The algorithmic steps for SCCSO are illustrated in Algorithm 1 and its computational steps are given as follows.
(1) Initialise cockroach swarm with uniform distributed random numbers and set all parameters with values.
(6) Repeat the loop until stopping criteria is reached.The performance of the proposed algorithm on wellknown high dimension benchmarks is evaluated in Section 3.

Simulation Studies
Experiments were conducted in 2 stages to investigate the speed, accuracy, robustness, stability, and searching capabilities of SCCSO.Its performance is compared with that of existing CSO and MCSO algorithm [2,3] and LSRS approach [6] for high dimension.Table 1 of this paper shows the considered benchmarks for experiments which was adopted from the literature [2,3,6].These are a set of standard benchmarks that have the diverse characteristics which can cover various global optimization problems.SCCSO, CSO, and MCSO algorithms were implemented in MATLAB 7.14 (R2012a) and run on a system with 2.30 GHz processor with 4.00 GB of RAM.
The numerical results for SCCSO, CSO, and MCSO were obtained after implementing the algorithms in this paper, but the numerical results for LSRS were as reported [6].
Experiment parameters of [2,3] is used in this paper, perception distance visual = 5; the largest step size step = 2; experiments run 20 times with 1000 maximum iteration each; and we use swarm size 50.Global minimum values of each benchmark functions were evaluated in each experiment; best and average performance and standard deviation of the average optimal values were recorded during experiments.

Stage One Experiments and Results
. Investigation was done in this stage on the performance and comparison of the SCCSO, CSO, and MCSO for dimensions 10, 20, 30, and 40.Inertial weight  = 0.618 was adopted from [3] for MCSO.
Success rate (SRT) and computation time in seconds were recorded during experiments.
SRT of an algorithm is the number of successful runs out of predefined number of runs.A run is considered successful when algorithm finds optimal solution, when the algorithm converges to a good solution and the function value satisfies |( * ) −  min | ≤  [14]. is the desired accuracy, ( * ) is the optimum fitness value, and  min is the global minimum value.SRT = SR/TR, SR denotes number of successful runs, and TR denotes total number of runs [14].
SCCSO and MSCO algorithms have 100% SRT on benchmarks except Levy and Rosenbrock.Table 9 depicts the comparison results of SRT of CSO, MCSO, and SCCSO algorithms; CSO has low SRT for most of the benchmarks.
The computation time for each benchmark in the experiments with CSO, MCSO, and SCCSO is depicted in Table 10; more CPU time is utilized by CSO algorithm than MCSO and SCCSO algorithms in evaluating the benchmarks for dimension 10, 20, 30, and 40.SCCSO utilized minimum time in solving the selected test functions.
The performance of SCCSO, CSO, and MCSO for 10, 20, 30, and 40 dimensions, respectively, is shown in Tables 2, 3, 4, and 5 of this paper.Comparison of best performance depicted in Table 6 clearly shows that SCCSO performs better than CSO and MCSO.Table 7 gives a comparison of average performance of SCCSO, CSO, and MCSO; SCCSO algorithm performs better than others.Similarly, the comparison results of standard deviation of the average optimal shown in Table 8 reveal that SCCSO has better standard deviation than others.Bold values indicated better minimum optimal values, and "-" in Tables 7 and 8 indicated no good optimal value.SCCSO for dimensions 50, 100, 500, 1000, 2000, and 3000.SCCSO solves benchmarks to minimum values: for instance, the algorithm finds optimal value for Rastrigin function.

Stage Two Experiments and Results. Stage two experiments investigate the performance of the proposed algorithm
The performance of SCCSO is compared with that of LSRS which has been tested for dimensions 50, 100, 500, 1000, and 2000 [6].The best and average performance, and standard deviation of average optimum values of SCCSO and LSRS is shown in Tables 11, 12, 13, 14, and 15 respectively.Performance of SCCSO for 3000 dimensions is shown in Table 16.
To determine the significant difference of SCCSO and LSRS average performance, test statistics of analysis of variance (ANOVA) was used.Average performance of SCCSO and LSRS is shown in   Levy is 0.076; Rosenbrock is 0.078; Schwefel is 0.320; Sphere is 0.145; Sum square is 0.345; and Rastrigin  value cannot be determined because both LSRS and SCCSO have same optimal values. values for all tested functions are greater than the literature threshold value of 0.05.This means, there is no significant difference in the average performance of LSRS and SCCSO for the selected test problems.Figure 1 show graphical illustration of the ANOVA test.

Discussions
Stages one and two experiments investigated the performance of the proposed algorithm and compared its performance with existing algorithms for high dimension.Stage one compared three types CSO based algorithms: CSO with no inertial weight [2]; CSO with inertial weight [3]; and the proposed CSO with stochastic constriction factor.The  Total number of good standard deviations: CSO (0); MCSO (8); SCCSO (36).
stochastic constriction factor enhances the performance of proposed algorithm for solving high dimension problems as clearly shown in the results of experiments conducted.The comparison results of stage one experiments for dimensions 10, 20, 30, and 40 clearly show that proposed algorithm outperforms CSO and MCSO.The proposed algorithm results show better best optimal results, better average optimal results and better standard deviation of mean optimal, and better execution time than CSO and MCSO in Tables 6, 7, 8, and 10, respectively.Both MCSO and SCCSO have similar SRT as shown in Table 9.
SCCSO has been shown to be better than CSO and MCSO for high dimension problems to 40 dimension in the experiments conducted in this paper; it was investigated further on benchmarks up to 3000 dimensions.SCCSO performance was compared with that of LSRS in stage two experiments for 50, 100, 500, 1000, and 2000 dimensions.The statistical analysis conducted on the results revealed that Total number of good success rate: CSO (7); MCSO (28); SCCSO (28).SCCSO algorithm has similar performance with the existing LSRS algorithm.

Conclusion
The effect of stochastic constriction on characteristics of cockroach swarm optimization algorithm is shown in this paper.Simulation results revealed that the algorithm has good convergence capability.Constriction factor enables the algorithm to maintain swarm stability and enhances local and global searches which resulted in improved convergence and speed of the algorithm.The proposed algorithm runs fast, solving benchmark problems up to 3000 dimensions; without modifying the algorithm, it can evaluate higher number of variables above 3000 dimensions.Comparisons results of SCCSO with the existing CSO and MCSO show its superiority.Comparison of SCCSO with LSRS shows its ability to compete with known global optimization technique.SCCSO algorithm application to discrete problems will be investigated in further research.

Figure 1 :
Figure 1: A graph showing ANOVA test computed using CSO, MCSO, and SCCSO average performance on test functions.Numbers 1 and 2 on the -axis denote LSRS and SCCSO, respectively.
STD denotes standard deviation.Time denotes execution time in seconds.
STD denotes standard deviation.Time denotes execution time in seconds.
Table 17; and the results of ANOVA test is in Table 18 with the  values shown in the last column of the table. value for Ackley is 0.309; Quadric is 0.346,
STD denotes standard deviation.Time denotes execution time in seconds.

Table 8 :
Comparison of standard deviation of mean optimal for CSO, MCSO, and SCCSO.

Table 9 :
Comparison of success rate of CSO, MCSO, and SCCSO.

Table 10 :
Comparison of execution time (in seconds) for CSO, MCSO, and SCCSO.

Table 11 :
Perfomance of LSRS and SCCSO for dimension 50.

Table 12 :
Perfomance of LSRS and SCCSO for dimension 100.

Table 13 :
Perfomance of LSRS and SCCSO for dimension 500.

Table 14 :
Perfomance of LSRS and SCCSO for dimension 1000.

Table 15 :
Perfomance of LSRS and SCCSO for dimension 2000.

Table 17 :
Average perfomance of LSRS and SCCSO.

Table 18 :
ANOVA test of the average performance of SCCSO and LSRS algorithms on benchmarks.