Spiral-based chaotic chicken swarm optimization algorithm for parameters identification of photovoltaic models

Photovoltaic (PV) systems are becoming increasingly significant because they can convert solar energy into electricity. The conversion efficiency is related to the PV models’ parameters, so it is crucial to identify the parameters of PV models. Recently, various metaheuristic methods have been proposed to identify the parameters, but they cannot provide sufficient accurate and reliable performance. To address this problem, this paper proposes a spiral-based chaos chicken swarm optimization algorithm (SCCSO) including three strategies: (1) the information-sharing strategy provides the latest information of the roosters for searching global optimal solution, beneficial to improve the exploitation ability; (2) the spiral motion strategy can enable hens and chicks to move toward their corresponding targets with a spiral trajectory, improving the exploration ability; and (3) a self-adaptive-based chaotic disturbance mechanism is introduced around the global optimal solution to generate a promising solution for the worst chick at each iteration, thereby improving the convergence speed of the chicken flock. Besides, SCCSO is used for identifying different PV models such as the single-diode, the double-diode, and PV module models. Comprehensive analysis and experimental results show that SCCSO provides better robustness and accuracy than other advanced metaheuristic methods.


Introduction
With the depletion of non-renewable energy, it is more and more urgent to find clean alternative energy, and thus, people pay more attention to the utilization of renewable energy (Qais et al. 2019a). Among all renewable energy sources, solar energy is regarded as inexhaustible clean energy, which has attracted worldwide attention due to its low development cost and huge development potential (Manel et al. 2018). Solar energy can be converted into electricity through PV systems (Zhang et al. 2020b).
Nevertheless, the utilization efficiency of solar energy is greatly affected by weather and other environmental factors as PV arrays of PV systems are easily damaged in those tough conditions (Eseye et al. 2017;Zhang et al. 2020a). As a result, to control and optimize PV systems, it is significant to build accurate PV models by measured voltage-current data for evaluating the actual operation behavior of PV arrays Zaimi et al. 2019).
Several mathematical models have successfully depicted the performance and nonlinear behavior of PV systems. Among them, the single-diode model and double-diode model are widely adopted in various practical problems (Aly et al. 2019;Liu 2020). The accuracy of these PV models mainly depends on their parameters, such as photogenerated current, reverse saturation current, series resistance, and the ideal factor of the diode (Askarzadeh and Rezazadeh 2012). However, the parameters usually change and even are unavailable owing to aging, faults, and unstable operating conditions of the PV systems (Harrou et al. 2018;Jiao et al. 2020). Therefore, to effectively simulate, evaluate, and control PV systems, it is indispensable to identify the model parameters accurately and reliably.
According to the types of the chosen PV models, two different sets of parameters need to be identified: five for the single-diode model and seven for the double-diode model (Oliva et al. 2014). In essence, the parameter identification of PV models can be regarded as an optimization problem and solved by building an effective objective function. To obtain the corresponding optimal solutions, various optimal algorithms have been designed. They can be roughly divided into deterministic methods and metaheuristic methods (Abdel-Basset et al. 2021a). The deterministic methods need to be combined with several model constraints, including differentiability and convexity (Elsheikh et al. 2019). It is apt for the deterministic methods to fall into the local optimum, and their performance largely depends on their initial solutions (Gao et al. 2018;Ridha et al. 2020). In contrast, the performance of the metaheuristic methods is almost not affected by model constraints (Jordehi 2018), so they are used to solve various parameters identification of PV models (Askarzadeh and Rezazadeh 2012;Oliva et al. 2014).
As an emerging biological metaheuristic algorithm, the most notable feature of CSO is that it divides the population into three groups, establishes different iterative update strategies, and makes full use of the information of different individuals in the population to achieve an effective balance between exploration and development capabilities. This avoids the problem of premature convergence and local convergence of the algorithm (Deb et al. 2020). Furthermore, compared with other biological metaheuristic algorithms, CSO has the advantages of robust control parameters and higher search efficiency (He et al. 2020). More importantly, compared with the simulated annealing algorithm (SA) (El-Naggar et al. 2012), the genetic algorithm (GA) (Jervase et al. 2001), and the particle swarm optimization (PSO) (Ye et al. 2009), CSO can provide better parameters identification performance of PV models.
Although CSO has many advantages summarized above, it still has some shortcomings such as poor ability in jumping out from the local optimum, insufficient information utilization, and low convergence speed. Specifically, the shortcomings are given as follows: (1) the roosters in the rooster sub-flock only learn from a randomly selected rooster, which causes the information of other roosters cannot be fully utilized.
(2) The chicks neither learn from the rooster when foraging nor use the latest information in the chicken flock. Thus, they may fail to concentrate near food effectively and degenerate the convergence speed. (3) The ability of CSO to jump out of the local optimum is not strong enough, because hens and chicks also have a high probability of falling into the local optimum when roosters fall into the local optimum.
To overcome these mentioned shortcomings, this paper proposes a spiral-based chaotic chicken swarm optimization algorithm (SCCSO), which involves an informationsharing strategy, a spiral motion strategy, and a selfadaptive-based chaotic disturbance mechanism. First, an information-sharing strategy is employed for roosters to fully use their latest information about food. Two roosters are randomly selected before the update of each rooster. When updating, each rooster draws near the rooster with a better fitness value while keeps away from the other rooster with a worse fitness value, which is propitious to improve the exploitation ability. Second, the spiral motion strategy allows both hens and chicks to move to their respective targets in a spiral trajectory, which expands the searching range and improves the exploration ability. Especially, to fully use the information in the chicken flock, chicks follow roosters in early iteration stages while coming after hens in the later iteration stages. Third, a self-adaptivebased chaotic disturbance mechanism is introduced to improve the convergence speed. By imposing a certain disturbance on the global optimal solution, a new individual is generated to update the individual with the worst fitness value, which effectively improves the convergence speed. To verify the accuracy and robustness of SCCSO, it is compared with other advanced algorithms on different PV models including single-diode, double-diode, and PV module models. Experimental results show that the proposed SCCSO provides better robustness and accuracy compared with other advanced metaheuristic algorithms.
The main contributions of this paper are given as follows. (1) A new algorithm SCCSO is proposed to solve the parameters identification problems of PV models.
In SCCSO, an information-sharing strategy is designed to search for a globally optimal solution by the latest information in roosters, improving the exploitation ability of SCCSO. Specifically, each rooster obtains the position information from the leader rooster and another randomly selected rooster to update the position of each rooster in an optimal range, thus improving the information utilization and enhancing the exploitation ability. (3) In SCCSO, instead of a straight trajectory, a spiral motion strategy is proposed to expand the scope of searching for global optimal solutions and improve the exploration ability. Precisely, hens and chicks move toward the roosters with the spiral trajectory instead of a straight trajectory. Chicks have already gathered around the optimal solutions at the later iteration, so following their mothers to search for food benefits the exploitation ability. (4) A self-adaptive-based chaotic disturbance mechanism is developed by guiding the chick with the worst fitness value close to the global optimal solution, speeding up the convergence speed of the chicken flock. In detail, after sorting fitness values of chickens, the chick with the worst moves toward the leader rooster, thus accelerating the convergence speed of the chicken flock without tripping into local optimum.
The effectiveness of SCCSO is comprehensively evaluated in the parameters identification problems of various PV models.
The following is the structure of the remaining papers. Section 2 contains an overview of related work. Section 3 shows the modeling and problem formulation of the photovoltaic system. Section 4 briefly introduces the original CSO. Section 5 introduces the proposed SCCSO algorithm in detail. Section 6 analyzes and compares the experimental results. Finally, Sect. 7 concludes the article.

Applications for metaheuristics
Inspired by nature behavior and physical phenomena, metaheuristic algorithms are developed by combining randomness and some defined principles. Since metaheuristic algorithms perform better than many traditional optimization methods in complex optimization problems, they are widely used in many scientific and engineering problems. For instance, Bernal et al. provided a comparison between the firefly algorithm (FA) and the galactic swarm optimization (GSO) method in the optimization of a fuzzy controller to find a better method for this problem (Bernal et al. 2020). Castillo et al. developed the bee colony optimization algorithm by a generalized type-2 fuzzy logic approach for the optimization of fuzzy controller design (Castillo and Amador-Angulo 2018). Olivas et al. improved the original PSO by using the interval type-2 fuzzy logic and employed it on three benchmark functions (Olivas et al. 2014). Moreover, metaheuristic algorithms are applied in other optimization problems such as spectrum allocation (Padmanaban and Sathiyamoorthy 2020), wireless sensor networks (Mann and Singh 2017), pedestrian detection (Sri Preethaa and Sabari 2020), handwritten signature verification (Hancer et al. 2021), location routing problem (Rabbani et al. 2020), and illness detection (Devarajan et al. 2020).

Approaches for PV models parameters estimation
Many metaheuristic algorithms have already been applied in PV model parameters estimation. Niu et al. (2014) proposed an improved TLBO (ITLBO) with an elite strategy to obtain parameters of PV models according to the current-voltage results of solar cells. Chen et al. developed a generalized opposite teaching learning-based optimization algorithm (GOTLBO) to solve two-parameter identification problems of solar cell models, including single-diode model and double-diode model . Yu et al. (2017a) introduced the self-adaptive teaching-learning-based optimization algorithm (SATLBO) to accurately and reliably identify the PV model parameters. Abdel-Basset et al. applied a modified teaching-learning-based optimization (MTLBO) to the accurate and efficient parameter estimation of PV models (Abdel-Basset et al. 2021b). Jaya algorithm proposed by Rao can perform effective exploration and be widely used to identify the parameters of PV models (Venkata Rao 2016). Additionally, other Jaya-based algorithms are also widely utilized in PV models' parameter identification. For instance, the new Jaya algorithm based on elite opposition (EO-Jaya) (A et al.), an improved JAYA optimization algorithm (IJAYA) (Yu et al. 2017b), and the performanceguided JAYA (PGJAYA) algorithm (Yu et al. 2019). Yu et al. (2018) designed a multiple learning backtracking search algorithm (MLBSA) for the parameter identification of different PV models. Xiong et al. (2019) proposed a modified search strategy-assisted crossover whale optimization algorithm (MCSWOA) to extract accurate parameters of PV models. Allam et al. (2016) used the moth-flame optimization algorithm (MFO) for the parameter extraction process of a three diode model, a double diode, and the modified double-diode models of the same cell/module. An improved cuckoo search optimization is presented for the parameters extraction of PV cells (Gude and Jana 2020), and a teaching-learning-based artificial bee colony (TLABC) is employed for the solar PV parameters estimation problems (Chen et al. 2018). Besides, an improved brainstorming optimization algorithm (IBSO) ) and hybrid symbiotic differential evolution moth-flame optimization algorithm (HSDEMFO) are also presented to accurately identify parameters of PV models (Wu et al. 2020). However, because the parameter identification problems of PV models possess multimodal and nonlinear features, these problems contain lots of local optimums. Most metaheuristic algorithms are not easy to sink into global optimal solutions when dealing with these problems. Therefore, it is still a challenging task to develop a competitive algorithm for identifying the parameters of different PV models accurately and reliably.

CSO for PV models parameters identification
Inspired by the foraging behavior and hierarchical order of chickens in nature, Meng et al. proposed a biological metaheuristic algorithm in 2014, namely the chicken swarm optimization algorithm (CSO), which is employed to solve lots of optimization problems in the real world (Meng et al. 2014a). In CSO, the information in the chicken flock can be fully utilized to achieve the balance between the exploration ability and the exploitation ability. Moreover, CSO can obtain better results than some classical swarm intelligence optimization algorithms such as PSO, DE, and BA when solving twelve benchmark function problems and other practical engineering problems (Meng et al. 2014a). Owing to its advantage in solving optimization problems, CSO has been applied in many aspects such as the optimal design of fuzzy controllers (Amador-Angulo et al. 2021), the collaborative beam forming in wireless sensor network (Al Shayokh and Shin 2017), the evaluation of regional water resources carrying capacity (Yu et al. 2020), the robot path planning (Mu et al. 2016), the fault detection issues (Moldovan et al. 2018), and other issues (Ahmed et al. 2018;Sanchari et al. 2018;Taie et al. 2017).

Modeling and problem formulation
Several PV models have been developed to describe the current-voltage characteristics of solar cells in the literature. Only the single-diode model and double-diode model have been put into factual optimization problems. Brief descriptions and objective functions of these models are presented in this section.

Single-diode model
The equivalent circuit of the single-diode model is shown in Fig. 1. 1 As we can see, it is composed of a current source connected in parallel with the diode, a shunt resistor representing the leakage current passing through, and a series resistor of the load current considering the related loss. According to Kirchhoff's current law (Diantoro et al. 2018), the output current is calculated by (1).
where I L is the output current, I PH is the photo-generated current, and R SH and R L are the series resistance. I D is the current through the diode obtained by the Shockley diode, and I SH is the current through the shunt resistor. Both of them are calculated by (2) and (3), respectively.
where I SD is the reverse saturation current, V L is the output voltage of the port, n is the ideal factor of the diode, and V t is the Thermal voltage calculated by (4).
where K is Boltzmann constant (1:3806503 Â 10 À23 J/K). t is the working temperature of the diode in Kelvin. q is the charge amount of meta charge (1:60217646 Â 10 À19 C). By combining (1-5), is obtained to reflect the relationship between the output current, the output voltage, and the PV model parameters.
From (5), it can be seen that five unknown parameters (I PH , I SD , R L , R SH , and n) need identifying for the singlediode model. The more accurate these parameters are identified, the better the characteristics of PV systems can be reflected. Figure 2 shows the equivalent circuit of the double-diode model.

Double-diode model
As we can see, it is formed by connecting a diode in parallel at both ends of the diode connected in parallel with the shunt resistor and current source. By combining (2) and (4), the output current can be calculated as. 1 The Figs. 1, 2, 3, and 4 were drawn with Visio.
where I D1 and I D2 are diffusion current and saturation current, respectively. I SD1 and I SD2 are reverse saturation currents of rectifier diode and compound diode, respectively. n 1 and n 2 are the ideal factors of two diodes. From (6), there are seven unknown parameters (I PH , I SD1 , I SD2 , R L , R SH , n 1 , and n 2 ) that need identifying for the doublediode model. Figure 3 provides the equivalent circuit of a single-diode PV module, which is composed of a plurality of solar cells connected in parallel and series. The output current I L is calculated by (7).

Photovoltaic module model
where N P and N S represent the number of solar cells connected in parallel and series, respectively. Here, the unknown parameters to be identified are I PH , I SD , R L , R SH , and n.

Objective function
The PV models' parameters identification problem can be transformed into optimization problems, minimizing the difference between the experimental and simulated data. The error functions of the single and double-diode models are, respectively, defined by (8) and (9): The root mean square error (RMSE) (Qais et al. 2020a) is used as the objective function of the overall difference between experimental and simulated current data: where X is the solution vector composed of the PV model parameters to be identified, and N m is the number of measured I-V data pairs, i 2 1; 2; . . .; N f g .

Original CSO algorithm
In 2014, inspired by the foraging behavior and hierarchy of the chicken flock in nature, Meng et al. (2014a) proposed a chicken swarm optimization algorithm (CSO), which is applied to solve various optimization problems. For simplicity, the behavior of the chicken flock is idealized by the following regulations: (1) The chicken flock is divided into rooster sub-flock, hen sub-flock, and chick sub-flock according to the fitness value of each individual in the chicken flock. The individuals with better fitness values are defined as roosters, followed by hens, and those with the worst fitness values act as chicks. Particularly, the individual with the best fitness value is defined as the leader rooster, and some of the hens are randomly selected as mother hens. The mother-child relationship is established by randomly choosing mother hens and chicks. Similarly, the spouse relationship between hens and roosters is also done by randomly selecting hens and roosters.
(2) The entire chicken flock is divided into several clusters. Each cluster consists of a rooster, some hens, and some chicks. (3) The identity of each individual is updated according to the corresponding fitness value at every G generation. When the identity of each individual is updated, the mother-child and the spouse relationship are also updated. (4) The individuals in each sub-flock search for food under the leadership of roosters and the food is defined as the global optimal solution. Specifically, hens follow their spouses for food and steal food from other hens or roosters. Chicks follow their corresponding mother hens to forage. The better the fitness values of individuals are, the more dominant the individuals are in the process of foraging or stealing food.
In CSO, the position of each individual is regarded as a candidate solution for optimization problems. N is the number of individuals in the chicken flock. Each individual searches food in D space with dimensions and updates its identity at every G generation. The range of the serial numbers of each individual is 1; 2; 3; . . .; N r ; N r þ 1; . . .; N h ; N h þ 1; . . .; N c f g , where N r , N h , and N c are the maximum serial numbers of the roosters, hens, and chicks in each sub-flock after sorting, respectively. More details are shown as follows.

Rooster foraging
Each rooster forages under the guidance of other roosters in the rooster sub-flock. The original position and the updated position of each rooster are defined, respectively, as X i;j , and X new i;j , where i 2 1; 2; 3; . . .; N r f g , j 2 1; 2; 3; . . .; D f g . Roosters with smaller fitness can forage food in a wider searching range. The foraging behaviors are expressed by (11) and (12), respectively.
where < and n 0; r 2 ð Þ is the normal distribution with the average value of 0 and the standard deviation of r 2 . f is the fitness function. f i and f n are the fitness values of the ith rooster and the nth rooster, respectively, where i; n 2 1; 2; 3; . . .; N r f g , and i 6 ¼ n. f is a number approaching 0, which is used to prevent the denominator jf i j þ f from being 0.

Hens foraging
In the chicken flock, hens can obtain food by following their spouses or stealing from other roosters and hens. The original position and the updated position of each hen are defined, respectively, as X i;j and X new i;j , where i 2 N r þ 1; N r þ 2; . . .; N h f g , j 2 1; 2; 3; . . .; D f g . X c;j is the position of a spouse, and X d;j is the position of the individual in which the ith hen wants to steal food, where c 2 1; 2; 3; . . .; N r f g , d 2 1; 2; 3; . . .N h f g . The stealing and searching abilities of hens are related to their fitness values. The smaller the fitness value is, the stronger the foraging and stealing abilities are. These foraging behaviors are described by the following (13-15): where < and is a random number ranging within 0; 1 ½ .

Chicken foraging
Chicks follow their mothers to forage food. The smaller their fitness values, the easier it for them to find food in the foraging process. The foraging behavior of the chicks is shown in (16): where X i;j and X new i;j are the original position and the updated position of each chick, respectively. For each chick, i 2 N h þ 1; N h þ 2; . . .; N m f g and j 2 1; 2; 3; . . .; D f g . X m;j is the position of the mother hen corresponding to the ith chick, where m 2 N r þ 1; N r þ 2; . . .; N h f g .
is the following probability, which indicates the probability for each chick following its mother hen to forage. Considering the differences between each chick,is randomly generated between 0 and 2.

Algorithm framework
CSO imitates the foraging behavior and hierarchy of the chicken flock in nature. In CSO, each chicken is considered as a potential solution to a specific optimization problem. The chicken flock is divided into rooster sub-flock, hen sub-flock, and chick sub-flock according to the fitness value of each individual in the chicken flock. Each subflock uses a different updating mechanism to update the position, generating new solutions. The best solution obtained at the end of the iteration is the solution to the optimization problem. The pseudocode of CSO is shown in Algorithm 1.
Here, t is the current iteration number, and T max is the maximum iteration number.

Grouping principle
In SCCSO, all individuals are rearranged according to the fitness values of all individuals in ascending order, and thus, the identity of each individual can be determined. The sorted individuals are divided into three sub-flocks: rooster sub-flock, hen sub-flock, and chicken sub-flock. Without loss of generality, SCCSO is used to search the minimum. Therefore, individuals with smaller fitness values are appointed as roosters while with the larger fitness values are chicks, and the rest are hens. Like CSO, SCCSO also follows the same regulation that the smaller the fitness value of chickens, the stronger the ability to find and search for food. The number of individuals in each sub-flock is represented by N r , N h , and N c , respectively, and their ratio is defined as with a value of 1:2:1 in this paper. The total number of individuals is N, N ¼ N r þ N h þ N c and 5.2 improved strategy

Information-sharing strategy
The information-sharing strategy is developed to update roosters that are individuals with smaller fitness values. Specifically, X r 1 and X r 2 are the positions of two roosters that are randomly selected from the rooster sub-flock; without loss of generality, X r 1 and X r 2 are defined as the positions of the rooster with better and worse fitness values, respectively. For each i 2 1; 2; 3; . . .; N r f g , X i is the position of the updated rooster at each iteration. It is allowed to follow X r 1 for foraging food; however, it will steal food from X r 2 . In this way, each updated rooster has access to share the information of other roosters, thus improving the exploitation ability. From the above analysis, the position of each rooster is updated by (17).
where X new i is the updated position of the ith rooster. <and n is a standard normal distribution and its mean value and the standard deviation are set to 0 and 1, respectively. If the updated position of a rooster is not good as the original position, the rooster will ignore the updated position and stays at the original position until the next update.

Spiral movement strategy
The spiral movement strategy is introduced to improve the foraging behaviors of the hens and chicks. First, for each hen, its position is defined as X i , where i 2 N r þ 1; N r þ 2; . . .; N r þ N h f g . The spouse of each hen is randomly selected from the rooster sub-flock whose position is defined as X r , where r 2 1; 2; 3; . . .; N r f g . The updated position of each hen can be obtained by the distance between the hen and its spouse with the spiral movement strategy as follows: the searching space between them. Here, b is a constant for defining the shape of the spiral movement, and it is set to À2 in this paper. l is a random number in the range À1; 1 ½ , shown in (19) as follows. Particularly, # 1 is a variable parameter and here the value is set to 4.
where <and is a random number ranging between 0; 1 ½ . u is set to -0:5. FES is the current iteration number, and FES max is the maximum iteration number.
Afterward, for each chick, its position is also defined as At the early iteration stage, each chick follows a rooster for foraging food while at the later iteration stage, it helps a mother hen to seek food and thus move toward the mother hen. Therefore, a rooster and a mother hen are first randomly selected from the rooster and hen sub-flock and their positions are, respectively, defined as X r and X m , where r 2 1; 2; 3; . . .
The updated position of each chick can be obtained by the distance between each chick and its corresponding rooster with the same spiral movement strategy at the early iteration stage: where Dis i;r indicates the distance between the ith chick and its corresponding rooster. # 2 is a variable parameter and set to 3. The setting values of the other parameters are the same as those mentioned above.
Conversely, at the later iteration stage, the updated position of each chick can be represented by the distance between each chick and its corresponding mother hen with the spiral movement strategy: where Dis i;r is the distance between the ith chick and its corresponding mother hen. In this strategy, both chicks and hens moved toward the roosters with a spiral trajectory at the early integration stage. The whole chicken flock can explore a wider searching range, and gather near the food quickly, thus improving the convergence speed. At the later iteration, chicks have almost gathered around the food. Chicks follow their mothers to search for food, which is beneficial to local exploitation.

Self-adaptive-based chaotic disturbance mechanism
The chaotic maps can create a chaotic sequence with better dynamic and statistics properties in a specific order (Ismail et al. 2019). Compared with random numbers created by imposing ordinary probability distributions, the use of chaotic sequences helps the individuals to perform searches at a higher speed (Coelho and Mariani 2008). By increasing the convergence speed and preventing sinking into the local optimum, the chaotic sequence can be used to improve the performance of the solution obtained by the individuals (Lu et al. 2014).
Due to such a fact, a self-adaptive-based chaotic disturbance mechanism is developed for guiding the movement of the individual with the worst fitness value to move toward the leader rooster at each iteration, which can improve the overall quality of the chicken flock. Assume that the position of the individual with the worst fitness value is defined as X w , and its updated position is defined as X new w . In the early iteration stage, X new w is generated by imposing a certain disturbance on the leader rooster whose position is defined as X b . And in the later iteration stage, X b may be very close to the food, so it is necessary to retain more information about X b for X new w . With the self-adaptive-based chaotic disturbance mechanism, the updating method of X w is given as follows: where <and 1 and <and 2 are different random numbers that are generated within 0; 1 ½ . k is the iteration number, C k is the value at kth chaotic iteration, and the initial value of the chaotic sequence is randomly generated within 0; 1 ½ . The result obtained by 1 À FES FES max is a self-adaptive changed value. According to the comparison between the selfadaptive changed value and <and 2 , there is no obvious boundary between pre-iteration and post-iteration so that the natural transition is realized.

Framework of SCCSO
Based on the above descriptions, the flowchart of SCCSO is shown in Fig. 4, and the pseudocode of SCCSO is summarized in Algorithm 2.
Here, D is the dimension of the searching range. Fit is the fitness function, and Fit X i ð Þ expresses the fitness value of each individual in the chicken flock. = is the constant controlling the time that the chicks follow the roosters foraging; here, it is set to 0.

Tests on benchmark functions
To confirm the performance of the proposed algorithms, they are usually tested on a set of mathematics functions with known global optima. Here, eight benchmark functions from the literature (Liang et al. 2005) including unimodal, multimodal, and composite functions are employed for comparison. The unimodal function is used for benchmarking the exploitation ability of algorithms, while the multimodal function is applied to examine the ability of exploration and local optima avoidance. Moreover, the composite functions are utilized to evaluate the performance of algorithms in balancing the exploration and exploitation ability. The searching spaces of these functions are illustrated in Fig. 5. 2 The mathematical formulations of the eight benchmark functions are listed in Table 1.

Tests on unimodal and multimodal benchmark functions
To test the performance of SCCSO on unimodal and multimodal benchmark functions, it is compared with the original CSO and PSO. Their crucial parameters are set according to literature (Meng et al. 2014b;Ye et al. 2009) as follows. In the original CSO, the number of the roosters, hens, chickens, and mother hens are set as 0.2*N, 0.6*N, 0.2*N, and 0.1*N, where N represents the population size. The updating frequency G is 10, and the following rate FL ranges in [0.5, 0.9]. In PSO, the acceleration coefficients c1 and c2 are both 1.49445, and the inertia weight x is 0.729. For the compared algorithms, the population size and maximum iteration are set to 50 and 500, respectively. Table 2 shows the average values and standard deviation values of the three compared algorithms on unimodal and multimodal benchmark functions with 50, 100, and 500 dimensions. To show the statistical results clearly, the overall best and second-best results of the three compared algorithms are underlined in bolditalic and bold, respectively. From Table 2, we can see that SCCSO shows better performance compared with CSO and PSO in solving the high-dimensional unimodal problem and the multimodal problem with the three different dimensions. CSO has better performance than PSO in the multimodal problem with the three different dimensions. However, SCCSO is not good as PSO in solving the unimodal problems with 50-dimension and 100-dimension. According to the no free lunch theorem (Wolpert and Macreadym 1997), no algorithm is suitable for solving all optimization problems. Note that the PV model parameters identification problem is a multi-mode problem. This is also our motivation to

Tests on composite benchmark functions
To verify the effectiveness of SCCSO on solving complex problems, it is employed to optimize six composite benchmark functions in Table 1. The key parameters of CSO and PSO are set the same as in Sect. 5.6.1. Comparative results of the three algorithms are tabulated in Table 3.
In Table 3, SCCSO obtains the best performance on F18-F22 among the three compared algorithms. This confirms the effectiveness of SCCSO on solving complex problems. PSO obtains the best results on F23. Compared with the original CSO, SCCSO can achieve better optimization results and robustness, which proves the effectiveness of the designed improving strategies from SCCSO.

Experiments on PV models and discussion
To verify the effectiveness of SCCSO, it is applied to the parameters identification of different PV models, such as a single-diode, double-diode, and PV module models. The current and voltage data of various solar cells and modules originate from reference (Easwarakhanthan et al. 1986), which has been vastly applied in various techniques of PV models' parameters identification Gong et al.;Niu et al. 2014;Oliv et al. 2017;Yu et al. 2017b). In   Table 4 (Sheng et al. 2019). For fairness, the maximum evaluation time and run number of each algorithm in each experiment are set to 50,000 and 30, respectively. Furthermore, the mentioned seven algorithms except for CSO all have been employed to solve the parameter identification problem of PV models, so their crucial parameters can be set according to the corresponding references in Table 5. Since the original CSO has never been used to solve the problem, we adjust its parameters through several experiments and obtain the best parameters for this problem. The parameter configuration of the involved algorithms is shown in Table 5.
In the following sections, comparisons are conducted first on the performance of each algorithm about accuracy, robustness, and convergence speed by analyzing experimental results and convergence curves. Next, comparisons are made for the best RMSE values gained by the abovementioned algorithms for 30 runs. Additionally, analysis is performed on the sensitivity of crucial parameters. Then, authentication and discussion are made about the effectiveness of the strategies proposed in SCCSO. To show the statistical results clearly, the overall best and second-best results of RMSE are underlined in bolditalic and bold, respectively.

Analysis of data and convergence curves
In this section, we evaluated the performance of all advanced algorithms including accuracy, robustness, and convergence speed by analyzing experimental data and convergence curve. Experimental data are shown in Table 6, where the minimum (Min) and average (Mean) value of RMSE reflects the accuracy and average accuracy of algorithms, respectively. The standard deviation of RMSE (SD) is related to the reliability of algorithms. Additionally, the Wilcoxon signed-rank test with a significant level of 5% (Alcalá-Fdez 2008) is introduced to estimate the difference between SCCSO and other  n, n 1 ,n 2 1 2 1 5 0 algorithms. '' ? '' and ''&'' represent that the performance of SCCSO is significantly better than or similar to that of other algorithms, respectively. In Table 9, the results obtained by SCCSO on the three models are superior to the other seven advanced algorithms in accuracy and reliability. More specifically, in the singlediode model, besides SCCSO, PGJAYA and IBSO also obtain the best Min, and IMFO gains the second best. Although PGJAYA also gets the best Mean, its reliability is inferior to SCCSO. In the double-diode model, SCCSO also performs best as it gets the best in all aspects except for a small gap between SD and the best SD. In the PV module model, SCCSO also achieves the best results in all aspects. Besides, IBSO and PGJAYA obtain the best Min,  (Sheng et al. 2019) N ¼ 100; m ¼ 4; P ¼ 0:4 IJAYA (Yu et al. 2017b) N ¼ 20 PGJAYA (Yu et al. 2019) N ¼ 20 IBSO  N ¼ 50; M ¼ 5; r 1 ¼ r and; p r1 ¼ 0:8 and IBSO ranks second in accuracy and reliability. Obviously, the Wilcoxon signed-rank test results show the superior performance of SCCSO on all mentioned PV models to other competitive algorithms. Furthermore, boxplots are applied to visually show the distribution of results obtained by every algorithm in 30 independent runs on three models, as shown in Fig. 6. Note that the symbol '' 1 '' represents the disordered values. Comparing the span of solution distributions, we can see that SCCSO performs better in accuracy and robustness than other advanced algorithms.
To investigate the computational efficiency of SCCSO, Fig. 7 4 shows the average computational time of all algorithms on three models in 30 runs. For each algorithm, the CPU time is obtained on a PC Intel Core 7 Duo 1.80 GHz with 8 GB RAM that runs on Windows 10 with MATLAB R2018a implementation. From Fig. 7, the proposed algorithm and PGJAYA consume the lowest computational overhead among all algorithms. This indicates that SCCSO can obtain superior results under the condition of limited computational overhead.
According to the average RMSE values obtained by each algorithm, the convergence curves are drawn and shown in Fig. 8. Note that the average RMSE values obtained by PSO are beyond the upper limitation of 0.1, so its convergence curves are not presented in those pictures. By amplifying the curves, it is obvious that SCCSO performs excellently in convergence speed as it gets a fast speed and obtains the best convergence values in the end among all algorithms.
To summarize, the above analysis and comparisons of experimental results show that SCCSO performs better in robustness, accuracy, and convergence speed compared with the other competitive algorithms.

Detailed experimental results analysis
In this section, the best RMSE values and the related parameters identified by different algorithms in 30 independent runs are analyzed detailedly. Table 7 presents the analyzed experimental results on the single-diode model, including the adjusted five parameters and the related RMSE values. We can observe that SCCSO, PGJAYA, and IBSO acquire the best RMSE value (9.8602E-04), while IMFO achieves the second-best value (9.8603E-04), followed by IJAYA, MFO, CSO, and PSO. Although the difference of RMSE value corresponding to each algorithm is not much different, a slight difference can improve the accuracy of adjusted parameters significantly for the objective function. Besides, Table 8 shows the individual absolute errors (IAE) between the   experimental data and simulated data (Easwarakhanthan et al. 1986). All the IAE values of current are no more than 0.02152687 while those of power is less than 0.00873078, which shows the accuracy of the adjusted five parameters. Additionally, the best-adjusted parameters obtained by SCCSO are applied to construct the I-V and P-V curves in Fig. 9 4 . The simulated data acquired by SCCSO (blue fivepointed stars) are extremely unanimous with the experimental data (purple lines) within the whole voltage range. Table 9 lists the compared results of the adjusted seven parameters as well as the related RMSE values. Among all algorithms, SCCSO obtains the best RMSE value (9.8248E-04) while MFO gains the second-best value (9.8287E-04), followed by PGJAYA, IMFO, IJAYA, IBSO, CSO, and PSO. Table 10 presents the IAE values of current and power, which are less than 0.02127523 and 0.00877664, respectively. Thus, we can conclude that SCCSO can achieve high accuracy parameters.

Double-diode model
From the I-V and P-V curves presented in Fig. 10 4 , the experimental and simulated data almost coincide with each other within the whole voltage range. Table 11 presents the five adjusted parameters and related RMSE values. Interestingly, SCCSO and PGJAYA obtain the best RMSE value (2.42507E-03), while the secondbest RMSE value (2.42508E-03) is obtained by IBSO. As mentioned above, the slight difference in objective function has a significant impact on the accuracy of the adjusted parameters. Hence, SCCSO has strong competitiveness in the accuracy of parameter adjustment. Table 12 displays the IAE values of current and power, which are no more than 0.04892368 and 0.51688808, respectively.

Photovoltaic module model
Furthermore, Fig. 11 shows the I-V and P-V curves, and we can see that the simulated data are in great agreement with the experimental data within the whole voltage range.

Sensitivity analysis of crucial parameters
As discussed in Sect. 4, and are crucial to improve the performance of SCCSO.
is the ratio of individuals in each sub-flock, and is the constant controlling when the chicks follow the rooster foraging. In this section, to investigate the sensitivity of and, some experiments are conducted without changing other experimental settings. In    From Table 13, the variants all obtain the best results on the single-diode model and PV module models, but only SCCSO achieves the best results on the double-diode model with the best stability. Hence, by comparing the results with the combinations, we can conclude that the combination of = 1:2:1 and = 0.4 is a suitable choice for SCCSO.

Authentication of strategy effectiveness
To verify the effectiveness of the proposed strategies, it is essential to conduct several experiments. In this section, three variants are proposed based on SCCSO, which are SCCSO without the information-sharing strategy instead of the original rooster optimization equation in CSO (denoted as SCCSO-1), SCCSO without spiral motion trajectory equation instead of the original update equation of hen and chicks (denoted as SCCSO-2), and SCCSO without the self-adaptive-based chaotic disturbance mechanism (denoted as SCCSO-3). In the experiments, the parameter (a) (b) Fig. 11 Comparisons between experimental data and simulated data obtained by SCCSO on PV module: a I-V characteristic, b P-V characteristic settings stay the same as mentioned. Table 14 presents the experimental results of SCCSO and its three variants on PV models in 30 independent runs. The results obtained by SCCSO perform better in all PV models than SCCSO-1.
Although SCCSO-2 obtained the best results on the singlediode model and PV module models, the results on the double-diode model are not as good as the results obtained by SCCSO. As for SCCSO-3, it obtains the best results on the single-diode model, but the performance of the other two models is not as good as SCCSO. Comparisons indicate the extraordinary performance of SCCSO in s, accuracy, and avoiding local optimal. As a consequence, using a single strategy is insufficient to achieve satisfactory results, but combining all proposed strategies leads to the best results.

Discussion
The above experimental results indicate that compared with the advanced algorithms, SCCSO obtains better performance on robustness and accuracy. The reason is due to the three strategies we used in SCCSO, covering the information-sharing strategy, the spiral motion strategy, and the self-adaptive-based chaotic disturbance mechanism. The specific discussion shows as follows: (1) The information-sharing strategy is developed to overcome the shortness of low utilization of the information. In CSO, roosters only learn from a randomly selected rooster so that the information of other roosters cannot be fully utilized. By the information-sharing strategy, the roosters get information from the leader rooster and another randomly selected rooster. Then, the roosters update their positions in an optimal range in the chicken flock, thus improving the information utilization and ensuring the exploitation ability.
(2) The spiral motion strategy is designed to decrease the probability of falling into the local optimum. In CSO, when the cock falls into the local optimum, the hens and the chicks are affected by the rooster and have a high probability of falling into the local optimum. By the spiral motion strategy, the searching range for hens and chicks is expanded, which is favorable to get rid of the local optimum and balance the early exploration and the later exploitation. Specifically, hens and chicks move to the roosters with the spiral trajectory, so the whole chicken flock can gather near roosters at a fast speed, accelerating the convergence speed. When at the later iteration, chicks have already gathered around the food. At this time, chicks follow their mothers to search for food benefits the exploitation ability. (3) The self-adaptive-based chaotic disturbance mechanism is used to accelerate the convergence speed of the chicken flock. In CSO, chicks neither learn from rooster when foraging nor use the latest information in the chicken flock. Thus, they may fail to concentrate near food effectively, degenerating the convergence speed of the chicken flock. By the selfadaptive-based chaotic disturbance mechanism, the worst chick moves to the position of the leader rooster directly. After sorting fitness values of chickens, the new worst chick also moves to the new leader rooster, thus accelerating the convergence speed of the chicken flock without tripping into local optimum.
In summary, SCCSO is an effective choice to solve the problem of nonlinear multimodal PV model parameter identification. However, according to the no free lunch theorem (Wolpert and Macreadym 1997), SCCSO is not suitable for solving all optimization problems. When it is used to solve complex optimization problems with high dimensions, the results are not satisfied enough, and the population diversity needs to be improved. Thus, our future work focuses on rationally introducing evolutionary operators to increase the diversity of the chicken flock, improving the performance of SCCSO.

Conclusion
It is crucial to determine accurate and reliable PV model parameters for the evaluation and optimization of PV systems. However, the parameter identification problems of PV models have multimodal and nonlinear features so that most existing metaheuristic algorithms fail to obtain globally optimal solutions. To overcome this problem, this paper proposed a spiral-based chaos chicken swarm optimization algorithm (SCCSO) to identify the parameters of PV models. The experimental results show that SCCSO performs better in robustness and accuracy than other advanced metaheuristic algorithms on the single-diode, double-diode, and PV module models. The reasons behind the fact are (1) SCCSO develops the information-sharing strategy to provide the latest information of roosters for exploring local optimal solutions, which is beneficial to improve the exploitation ability; (2) SCCSO develops the spiral motion strategy to expand the searching range of hens and chicks, improving the exploration ability; (3) SCCSO introduces the self-adaptive-based chaotic disturbance mechanism to update the worst chick based on the global optimal solution, improving the convergence speed of the chicken flock; (4) SCCSO rationally combines the above three strategies and thus achieves satisfactory results. Thus, the proposed SCCSO is a promising candidate technique for the parameter identification problems of PV models.
In the future, we plan to use SCCSO for solving other multi-objective and constrained optimization problems in the power system, such as the fault ride-through improvement and the maximum power point tracking of speed wind generators (Qais et al. 2019b(Qais et al. ,2020b.
Author contributions ML was involved methodology, software, formal analysis, writing-original draft. CL helped in funding acquisition, writing-review and editing, supervision. ZH contributed to methodology, validation, writing-review and editing. JH was involved in conceptualization, writing-review and editing. GW helped in writing-review and editing, supervision. PXL contributed to writing-review and editing, supervision. Data availability All data generated or analyzed during this study are included in this published article.
Code availability My manuscript has data included as electronic supplementary material.

Declarations
Conflict of interest The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Informed consent Written informed consent for publication was obtained from all participants.