Application of Artificial Bee Colony in Model Parameter Identification of Solar Cells

The identification of values of solar cell parameters is of great interest for evaluating solar cell performances. The algorithm of an artificial bee colony was used to extract model parameters of solar cells from current-voltage characteristics. Firstly, the best-so-for mechanism was introduced to the original artificial bee colony. Then, a method was proposed to identify parameters for a single diode model and double diode model using this improved artificial bee colony. Experimental results clearly demonstrate the effectiveness of the proposed method and its superior performance compared to other competing methods.


Introduction
Solar energy is one of the most promising renewable sources that are currently being used worldwide to contribute to meeting rising demands of electric power.Photovoltaic (PV) is capable of OPEN ACCESS directly converting solar energy to electricity in a quiet environment without polluting the atmosphere.It has been reported that PV is the fastest growing power-generation technology in the world, with an annual average increase of 55% between 2008 and 2014 [1].PV systems comprise of different parts centered around a solar panel that typically has arrays of interconnected solar cells.The solar cell converts the energy of photons coming from the sunlight directly into electrical energy on the basis of photovoltaic effect.Formulating an equation that describes the performance of photovoltaic cells under illumination or in dark conditions, one from which the cells' physical parameters can be restored, is of great value in the field of photovoltaic engineering.
The model of a solar cell is used to predict the behavior of a real solar cells under various environmental conditions and thereafter to generate current-voltage (I-V) and power-voltage (P-V) characteristic curves.The modeling of PV cells consists of two steps: the mathematical model formulation and the identification of their parameter values.There are two widely used nonlinear equivalent circuit models for solar cells: single diode model and double diode model [2,3].The single diode model contains five unknown parameters while the double diode model has seven unknown parameters.
Accurate identification of the parameters plays an important role in solar cell simulation, performance evaluation, design, optimization and control.Therefore, parameter determination with the help of a capable optimization technique is necessary.During the last decade, several identification methods have been reported to approximate different parameters of solar cells.Generally, the identification methods can be categorized into analytical methods, linear system identification methods and metaheuristic search methods.Dependency on the accuracy of these key points is a major deficiency of the analytical approach [4]; the measured data usually contains noise due to device inaccuracy and other electrical disturbances.By utilizing the mapping of transfer function in [5], the diode model is converted as an equivalent output of a dynamic system.Correspondingly, the dimension of the parameter space is reduced from five to one.The one parameter is then identified by a simple integral-based linear square.By performing a separation of the independent variables from the dependent ones among the five parameters of one diode model, a reduced form of the five parameter model has been obtained in [6].Compared with other methods, the methods in [5,6] have simpler operation requirements and higher accuracy.Unfortunately, [6] only discussed about the parameters identification of one diode model.The disadvantage of method in [5] that it requires the knowledge of the full I-V curve data.In addition, many metaheuristic methods were introduced in related literatures, such as the particle swarm optimization (PSO) [7], the genetic algorithm (GA) [8], the differential evolution (DE) algorithm [9] and etc.Although heuristic methods present a higher probability of obtaining a global solution in comparison with analytical ones, they have important limits.In case of GA and PSO, they maintain a trend that concentrates toward local optima, since their elitist mechanism forces premature convergence [10,11].Such a behavior becomes worse when the optimization algorithm faces multi-modal functions.The results depend on the control parameters of the DE algorithm and an inappropriate choice of these parameters may result in the DE failing to converge or in a very slow convergence to the global optimal point [12].Parameter identification of PV solar cells and modules is still a challenging problem which requires that the the obtained physical parameters match well with reality.The non-linearity and multi-modal nature of the solar cells require a high performance optimization method.
Artificial bee colony (ABC) is a new optimization algorithm developed by Karaboga in 2005 [13].It has been used to find an optimal solution in numerical optimization problems.This algorithm is inspired by the behavior of honey bees when seeking a quality food source.The performance of ABC algorithm has been compared with other optimization methods.The comparison results showed that ABC can produce a more optimal solution and, thus, it is more effective than the other methods in several optimization problems [14][15][16].However, these ABC algorithms converge slowly, especially at the middle and last stages of the search process.The main reason is that ABC is good at exploration but poor at exploitation.An ideal optimization algorithm should properly balance exploration and exploitation during the search process.In order to balance the exploration and exploitation of ABC during the search process, we propose to make major changes by introducing the best-so-far mechanism to generate a new solution with better quality and control the diversity of generations.In this paper, the improved ABC is applied to identify the optimal parameters of solar cells.
The paper is organized as follows.Section 2 describes the mathematical formulations of the problem.Section 3.1 provides the description of the employed artificial bee colony algorithm.Section 3.2 presents the ABC algorithm in solving the parameters' identification process of solar cell models.Finally, the performance of the proposed method is numerically evaluated in Section 4 while Section 5 is devoted to the concluding remarks.

Single Diode Model
Figure 1 shows the equivalent circuit for single diode model, the cell output current I is computed by where k, T and q are the Boltzmann constant, temperature, and magnitude of charge on an electron, respectively.V and IL are the output voltage of cell and reverse saturation current of the diode, respectively.The resistance Rsh in parallel with the diode represents the shunt resistance that can occur in real solar cells across the surfaces, at pin holes in the p-n junctions, or at grain boundaries.Ish is the Rsh current.The series resistance Rs accounts for all voltage drops across the transport resistances of the solar cell and its connections to a load.The current source Iph is the photocurrent from the illumination for the sun.a is the non-physical diode ideality factor.We denote θ1 by θ1 = [Rsh, Rs, IL, Iph, a] in this article.
It is clear that for such a model there is θ1 to be estimated.
Figure 1.Single diode model of solar cells.

Double Diode Model
Figure 2 shows the equivalent circuit for double diode model, the cell output current I is computed by where IL1 and IL2 are the diffusion and saturation current, respectively.a1 and a2 are the diffusion and recombination diode ideality factors, respectively.In single diode model, the diffusion and recombination currents are linearly independent, both currents are often combined together under the introduction of a non-physical diode ideality factor a. Equation ( 2) has seven unknown parameters (Rsh, Rs, IL1, IL2, Iph, a1, a2), and denote θ2 as θ2 = [Rsh, Rs, IL1, IL2, Iph, a1, a2].Consequently, the objective of parameter identification of PV solar cells is to identify the θ1 in a single diode model or θ2 in a double diode model from the I-V data measurements.

Artificial Bee Colony Algorithm
The ABC algorithm is inspired by the behavior of honey bees when seeking a quality food source.The bees are categorized into three groups: employed bees, onlooker bees, and scout bees.Employed bees are responsible from exploiting the nectar sources already explored, and they give information to the other waiting bees in the hive about the quality of the food source which they are exploiting.Onlooker bees wait in the hive and establish a food source to exploit depending on the information shared by the employed bees.Scouts search the environment in order to find a new food source depending on an internal motivation, external clues, or randomly.In ABC algorithm, the position of a food source represents a possible solution to the optimization problem.To enhance the exploitation and exploration processes, we propose to make major changes by introducing the best-so-far method.The details of the proposed algorithm are described as follows.
In the first step, randomly distributed initial food source positions are generated.Similarly with other optimization algorithms, random values between the lower and the upper boundaries of the parameters are assigned for the parameters of solutions.The process can be represented by Equation (3).
where l = 1, 2, …, NF, d = 1, 2, …, D, NF is the number of candidate solution, D is the dimension of solution.θmax(d) and θmin(d) are upper and lower bound of candidate solution d-th dimension, respectively.After initialization, the population is evaluated and is subjected to repeated cycles of the search processes of the employed bees, the onlooker bees and scout bees.
In employed bee phase, the position of the new food source is calculated by Equation (4).
where θEB is a new solution in employed bee phase.φld is a random number between [−1 1].r is uniformly distributed random integer number in the range [1 NF], r ≠ l.After producing a new solution by Equation ( 4), the algorithm applies the greedy selection rule to memorize the new candidate solution by forgetting the old one or keeps the old solution.The old solution in the employed bee's memory will be replaced by the new candidate solution if the new position has a better fitness value.
In the next step, employed bees will return to their hive and share the fitness value of their new food sources with the onlooker bees, and then onlooker bees use the information from all employed bees to make a decision on a new solution.This process is simulated by the procedure given in Equation ( 5).
best OB ] where θOB is a new solution in onlooker phase, θbest is the best-so-far solution.r1 and r2 are integer , pl is calculated by Equation (6).
where F(l)is the fitness function of l-th candidate solution.
In the third step, any food source position that does not improve the fitness value will be abandoned and replaced by a new position that is determined by a scout bee.This helps avoid suboptimal solutions.The new solution by the scout bee will be calculated by Equation (7).
where θSB is a new solution in scout bee phase.If the non-improvement number kcount(l) of the l-th solution exceeding the predetermined number klimit, the abandoned solution θ is replaced with θSB.
For clarity, the optimization mechanism of the improved ABC algorithm in this article and original ABC algorithm in [13] are shown as Figure 3, respectively.The line with arrow and dotted line with arrow represent single-and multi-iteration.It is obvious that our algorithm has a better convergence speed than the original ABC algorithm.The pseudo-code of the improved ABC algorithm is illustrated in Table 1.Initialize Phase: set maximum number of iteration k max , k limit , N F , D; Generate initial θ(l, d) by ( 3), l = 1, 2, …, while (termination criterion is met.) end

Parameter Identification of Solar Cells Using Artificial Bee Colony Algorithm
We considered the problem of parameter identification as an optimization problem where the parameter set is sought that produces the best approximation to the I-V measurements obtained by the true solar cell.An objective function in Equation ( 8) was defined to evaluate the matching quality between a candidate parameter set and the experimental data.arg min ( ) where, for single diode modal, θ = θ1 and J(θ) is described as here, the subscript t of Vt and It is the discrete time index, N is the numbers of sampling point in time-domain.Whereas for the double diode model such function is described as Here θ = θ2.In Equations ( 9) and ( 10), the values of Vt and It are experimentally collected from the solar cell.The parameter identification is a process that minimizes the difference between the measured data and the calculated current by adjusting the model parameters θ.It is clear that the smaller the J(θ), the more accurate the model is.The proposed approach of parameter identification of PV solar cells encodes the parameters of the solar cell as a candidate solution.Therefore, each food source uses θ1 or θ2 as decision variables within the optimization algorithm.For clarity, the flowchart in Figure 4 illustrates the proposed method which is used to identify the optimal parameters of the solar cell models.

Experimental Section
In this section, firstly six commonly used benchmark functions are used to test the performance of the proposed improved ABC algorithm.Then, the I-V characteristic of a diameter commercial silicon solar cell is used to evaluate the efficiency of the proposed parameter identification method.All the experiments in this paper were run on the same hardware (Intel Core i3-2310 Quad with 2.1 GHz CPU and 2 GB memory).

Numerical Experiments and Results
Unimodal and multimodal benchmark functions as shown in Equations ( 11)-( 16) were used in this experiment.The aim is to minimize fi(β), I = 1, 2, …, 6.We validate the performance of improved ABC algorithm (IABC) by comparing it with the origin ABC algorithm in [14], DE in [12], and PSO in [16].The control parameters in these algorithms are given in Table 2. Figure 5 shows the comparison of the convergence speed of four different optimization algorithms.Table 3 presents the mean and standard deviation of the 20 runs of the four optimization algorithms on the six functions.The "Mean" column is the average output values of benchmark functions.The "Std" column shows the standard deviation of the results.Moreover, "Best", "Median" and "Worst" of solutions obtained in the 20 runs by each algorithm.
Sphere function: ) (  β (11) where the range of β is [−100 100] D , D = 30.The global minimum of the Sphere function is 0, and its characteristic is unimodal and separable.
Griewank function: where the range of β is [−600 600] D , D = 30.The global minimum of the Griewank function is 0, and its characteristic is multimodal and non-separable.
Ragstrigin function: where the range of β is [−5.12 5.12] D , D = 4.The global minimum of the Ragstrigin function is 0, and its characteristic is multimodal and separable.Rosenbrock function: where the range of β is [−30 30] D , D = 30.The global minimum of the Rosenbrock function is 0, and its characteristic is unimodal and non-separable.Ackley function: where the range of β is [−32 32] D , D = 2.The global minimum of the Ackley function is 0, and its characteristic is multimodal and non-separable.
Schaffer function: where the range of β is [−100 100] D , D = 2.The global minimum of the Schaffer function is 0, and its characteristic is multimodal and non-separable.
In Table 3, we compare the results using the same number of iterations.The Mean is relatively low, which implies faster convergence speed among experimental runs.The Std is relatively low, which implies higher consistency among experimental runs.The Best, Median and Worst are relatively low, which implies a better quality solution than other algorithms among experimental runs.The results in Figure 1 and Table 3 that indicates that the IABC can converge to the optimal solution more quickly on almost all benchmark functions when it is compared with the other algorithms.The results show the proposed algorithm gives better solutions than other algorithms in all cases of benchmark functions.

Parameter Identifications and Results
In order to prove the performance of the proposed method, it has been tested using the I-V characteristic of a 57 mm diameter commercial silicon solar cell [17,18].The experimental data has been collected from the system under one sun (1000 W/m 2 ) in standard test conditions.Table 4 reports experimental values of voltage and current.The experiment presents the results of five different algorithms when they are employed to identify the cell parameters considering the single and double diode models.For parameter identification, the control parameters for IABC, ABC, DE and PSO are the same as those in Table 2.In addition, the control parameters artificial bee swarm optimization (ABSO) in [19] is the same with those in [19] as given by Equation (17).During the optimization process, the objective function is minimized with respect to the parameters' range.The upper and lower bounds of the parameters are shown in Table 5.The identified parameters are employed to reconstruct the I-V characteristic.The relative error e(t) in Equation ( 17) is used to further confirm the accuracy of the identified model.Figures 6 and 7 illustrate the results comparison of four methods for both the single and the double diode models.
where Ic(t) is a current calculated by the respective model.The smaller e(t) is, the higher accuracy the identified model demonstrates.
Figures 6 and 7 are the average of 20 independent experiments.Figures 6a and 7a indicate that the I-V characteristic found by IABC is in good agreement with the experimental data.The smaller e(t) value in Figures 6 and 7 mean that our proposed method provides better accuracy.Comparing the proposed method outcomes with other methods results in the above experiments, the proposed method clearly outperformed other competing methods.To further investigate the quality of the identified parameters, we put them into the power vs. voltage (P-V) characteristic which is reconstructed.The P-V characteristic resulted from the identified model along experimental data is shown in Figures 8 and 9, respectively.The similarity between the model results and the performance of the real system proves the superiority of the proposed method.Recently, a deterministic approach was used to solve the problem of parameter identification for solar cells, such as [5,6,20], etc.Firstly, the comparison between the proposed method, the method in [20] (see 2.D) and the method in [5] is made in terms of computational cost.The computational cost of the proposed method is as follows: operation.In the standard condition, the optimal parameter value of three different methods is summarized in Table 6.The nstep of the proposed method are 603 and 932 for the single and double diode models, respectively.The nstep of the proposed in [5] is 23 while the nGuess and nstep of the method in [20] are 147 and 178.Note that the value of nGuess and nstep are different from [20] because we and [20] chose different initial values for the independent parameters Rs and a.In the subsequence, we made a comparison between the proposed method, the method in [20] (see 2.D) and the method in [5] by conducting an experiment under nonstandard test conditions.The Rmse index defined by Equation ( 19) is used to measure accuracy of different methods.The experiment results of one diode model was summarized in Table 7, while the experiment results of two diode models was summarized in Table 8 The result comparison for single diode model is shown in Table 7.The Rmse is relatively low, which also implies higher accuracy among experiments.The Rmse of the proposed method is slightly bigger than the result of the method in [20] at T = 25 °C, T = 50 °C and T = 75 °C, and only smaller than the result of the method in [20] at T = 100 °C.From the results comparison shown in Table 7, the method in [20] yields the better result in terms of Rmse than the proposed method in some cases.In general, [20] has benefit in that they utilize reduced forms to decrease the dimension of the parameter space.The method in [5] further reduces the dimension of the parameter space to one.However, the method in [5] usually returns precise results only when a high number of points on the I-V curve are available.It may be why the Rmse of the proposed method is smaller than the result of the method in [5] shown in Table 8.The method in [20] has deficiencies: (1) a different solution can be achieved if different reduced forms are used; (2) not directly applicable to multi-diode model parameter identification due to the limitation of Lambert W function formalism.The ABC algorithm is very suitable for the search for a global optimal solution, such as model parameter identification of solar cells in this paper.Unique solutions are achieved if the algorithm converges to the same value, so the first drawback of [20] can be avoided.It can also be used for the multiple-diode model.
To examine the noise impacts for the distinct performance of the proposed method, in the last experiment, the measured data V is added with varied white Gaussian noise of varying SNR (signal to noise ratio, SNR) from 10 to 35 dB.Moreover, we compared the single diode model with the double diode model.The estimate performance is evaluated by Equation (19). Figure 10 shows the comparison of results of two models.According to the result in Figure 10, the single diode model demonstrates a better performance for noise robustness than the double diode model when SNR is below 15 dB.However, the double diode model displays better performance for noise robustness than the single diode model when SNR exceeds 15 dB.

Conclusions
In this paper, an improved artificial bee colony algorithm had been proposed to identify the parameters in the complex nonlinear solar cell models.We propose to make major changes by introducing the best-so-far mechanism to generate a new solution with better quality and control the diversity of generations.In the numerical benchmark experiments, it is shown that improved ABC can effectively find better solutions than the original ABC and the other two commonly used algorithms.After the validation of the algorithm, improved ABC had been employed to identify the unknown values of solar cell parameters from the experimentally measured I-V characteristics.For solar cell models, the experiment results of double and single models show that the proposed method gives comparable performance to other conventional methods.As a result, the proposed method can be a good candidate to solve the identified problems with parameters of complex nonlinear solar cell models.

Figure 2 .
Figure 2. Double diode model of solar cells.

Figure 3 .
Figure 3. Optimization mechanism of different ABC algorithms: (a) original ABC algorithm; (b) improved ABC algorithm.

Figure 4 .
Figure 4. Flowchart of the proposed method.

Figure 6 .
Figure 6.The comparison of the results of four methods for the single diode model: (a) comparison between the I-V characteristics generated using our proposed method and the measured data; (b) relative error for each measured value based on the identified parameters using IABC algorithm; (c) relative error for each measured value based on the identified parameters using ABC algorithm; (d) relative error for each measured value based on the identified parameters using DE algorithm; (e) relative error for each measured value based on the identified parameters using PSO algorithm; (f) relative error for each measured value based on the identified parameters using ABSO algorithm.

Figure 7 .
Figure 7.The comparison of the results of four methods for the double diode model: (a) comparison between the I-V characteristics generated using our proposed method and the measured data; (b) relative error for each measured value based on the identified parameters using IABC algorithm; (c) relative error for each measured value based on the identified parameters using ABC algorithm; (d) relative error for each measured value based on the identified parameters using DE algorithm; (e) relative error for each measured value based on the identified parameters using PSO algorithm; (f) relative error for each measured value based on the identified parameters using ABSO algorithm.

Figure 8 .
Figure 8.Comparison between the P-V characteristics resulting from the experimental data and the single diode model.

Figure 9 .
Figure 9.Comparison between the P-V characteristics resulting from the experimental data and the double diode model.

Figure 10 .
Figure 10.Robustness of the two different models against noise.

Table 1 .
Pseudocode of the improved ABC algorithm.
Selecting the best-so-far solution best θ from θ , and calculate p l by (6);

Table 3 .
Comparison of testing result of different optimization algorithms.

Table 5 .
Upper and lower range of the solar cell parameters.

Table 6 .
Identified parameters after applying different methods.

Table 7 .
. Results obtained by different methods for the single diode model in nonstandard test conditions.

Table 8 .
Results obtained by different methods for the double diode model in nonstandard test conditions.