1. Introduction
The world is constantly changing, and societies demand energy to continue growing and living. New resources are necessary in order to avoid an energetic crisis. This fact is particularly true since fossil fuels have been overexploited for decades. In this sense, it is a need to find and explore new energy sources that can maintain a balance between price and cleanness. Solar energy (also called photovoltaic (PV) energy (PVE)) has attracted the attention of the scientific community because it is present all over the world. PV modules are applied to transform solar radiation into electrical energy, and in the last decades, the use of such modules has increased based on the features of PVE. The main advantages of using PVE instead other sources are that it is emission-free, available all over the world and easy to install [
1]. However, since PVE use is focused on domestic purposes, the installation cost is expensive and also the cost of maintenance is higher. These situations occur primarily because the technology is not completely developed. Another cause is the outdoors environment that directly affects the solar modules making necessary their frequent replacement [
2]. In the same context, the efficiency of photovoltaic modules (or PV cells) depends on environmental factors such as temperature or radiation that cannot be controlled [
3,
4,
5]. This situation can be solved by including energy storage systems that increase the cost of the PV system.
Based on the drawbacks described above it is necessary to generate new alternative methods that help to increase the use of PVE. For example, to improve the performance of SCs requires an accurate method for design and modeling them. This situation has attracted the attention of researchers that are looking for new approaches that contribute to the design of efficient PV modules. This task is not trivial, but it is helpful for modeling, testing, control and simulation of PV systems [
6,
7,
8,
9].
The design process of SCs requires the definition of a relationship between the current (I) and voltage (V) considering the internal parameters of the cells. A mathematical model is then used to generate a representation of the elements that conforms this device, in practical terms, here is simulated the desired output of current vs. voltage (I–V). In the related literature, two approaches are used for to generate this output, (1) the single diode (SD) model and (2) the double diode (DD) model. Such methods involve electrical circuits that define the PV modules. The SD has five parameters, and the DD has seven parameters [
1], their values are unknown, and their proper calibration defines the performance of the SC. In this context, it is necessary to estimate the diode saturation current, the series resistance, and the diode ideality factor for both circuits. Considering this fact, the biggest problem could be summarized as developing a mechanism able to find the best configuration of the parameters that approximate the results to the experimental data from the real SC [
1].
The identification of the best parameter of PV cells can be formulated as an optimization problem. Considering the Root Mean Squared Error (RMSE) as an objective function is possible to define an algorithm to search the optimal values for the SD or DD model. The aim of using RMSE is to reduce the difference between the output of the mathematical model and an experimental dataset. It is important to notice that the experimental data is commonly obtained from measurements that involve imprecision that is reflected as noise. As a result, the optimization problem is established in a multimodal search space that contains several suboptimal solutions increasing its complexity [
10,
11]. To affront the problems of solar cells design, the use of classical deterministic methodologies has been proposed. Some of the most important approaches are:
The least squares (Newton-based approach) [
12],
The Lambert W-functions [
13],
The iterative curve fitting [
14].
Moreover, other interesting approaches like the one proposed in [
15] consider the diode models as dynamic systems to estimate the best values. The use of this kind of methods implies some drawbacks, for example, the application of differentiability and convexity [
16]. Moreover, the initialization of the candidate solutions affects their convergence, and they can be trapped in suboptimal solutions [
16].
On the other hand, stochastic techniques are a good alternative to overcome the disadvantages that the deterministic methods present. Heuristic and metaheuristic algorithms are part of stochastic approaches. They are robust techniques able to explore complex search spaces and accurately find the best solutions considering simple initial conditions [
1,
17,
18]. Some examples of these algorithms applied to modelling SCs are the following:
Particle Swarm Optimization (PSO) [
19,
20],
Artificial Bee Colony (ABC) [
21],
Bacterial Foraging Algorithm (BFA) [
22],
Simplified Teaching-Learning Based Optimization (STBLO) [
23],
Cat Swarm Optimization (CSO) [
2].
These algorithms are a good alternative to finding the best parameter configuration of SC diode models. However, based on the No-Free-Lunch (NFL) theorem a single metaheuristic algorithm cannot be used to solve all the optimization problems [
24]. In other words, depending on the complexity of the search space, the search techniques could fall into local optima. This fact affects the performance and convergence in the iterative process. However, even with these limits, metaheuristic approaches have higher probabilities of obtaining a global solution in the SC design in comparison to deterministic methods.
The Artificial Bee Colony (ABC) is a metaheuristic algorithm that mimics the behavior of honey bees [
25]. Different studies about the performance of the ABC algorithm show that it is able to obtain optimal solutions to various real-life problems [
26,
27,
28,
29,
30]. The main advantage of ABC is the absence of a local search strategy in the iterative process. Under the ABC perspective, there exist food source positions, nectar amount and different kinds of honeybees. The food sources are positions in the search space; each food source has a nectar amount value that determines its quality. The nectar amount is defined by the fitness function. ABC employs three different operators that are capable of avoiding local optimal values in complex problems. Each operator represents one of the various kinds of bees that are used on the ABC. They are the worker bees, the onlooker bees, and the scout bees. The bees represent the entire optimization process that involves the exploration and exploitation of the search space. However, like other similar approaches, ABC has some parameters that must be carefully defined to obtain a good performance [
31]. The main three parameters of ABC are the number of food sources, the limit value to determine the abandoned solutions and the number of foraging cycles. Such parameters are not random values, and they are selected depending on the implementation and problem. Considering this fact, the correct setting of these parameters is a complex task that is performed by the designer. In addition, the ABC applies the exploitation process in its search space by using onlookers and worker bees. The onlooker bee phase starts after finishing the worker bee phase depending on a probability value. In this context, the exploitation process is performed depending on this value, and it changes in each foraging cycle. In our study, we found that the selection of the probability value is a challenge and should be done carefully. Therefore, this paper uses a chaotic map to control this value.
On the other hand, non-linear dynamic systems define chaos as the behavior of a complex system, where small changes in the starting conditions can lead to very significant changes over time. Such changes can be random and unpredictable. The properties of chaotic systems have been applied to several optimization techniques to improve the accuracy of the optimization algorithm or to escape from local minima. The use of chaos instead random signals in metaheuristics considerably improve their performance [
32]. In most of the cases the chaotic versions of these optimization methods, increase the diversity of the solution and the capability to avoid local solutions in the search space.
This paper introduces the Chaotic Improved Artificial Bee Colony (CIABC) for the problem of solar cell design. In this context this article has two main goals, (1) generate an enhanced version of the ABC (CIABC); (2) apply CIABC for the parameter estimation of solar cells and photovoltaic modules. The standard ABC has been previously used for parameter estimation of SC [
21]. However, considering that SC modeling is a complex optimization problem and according to the NFL. The use of ABC does not represent the most accurate solution. CIABC employs chaotic maps instead of the random values on the onlooker bee step of the optimization process. Moreover, another improvement is introduced in the scout bee phase. It permits the use of the best solution so far to generate new elements of the population, instead of the use of random values. Based on such modifications the CIABC perseveres the information of the best option at each iteration and also enhance its performance converge using chaos. In this sense, the aim of this paper is to present an alternative improved method that accurately estimates the parameters that define the output of SC and photovoltaic (PV) panels. In this implementation, a selected dataset of measurements and the CIABC is applied over the diode models to minimize the Root Mean Squared Error (RMSE) [
33,
34]. The RMSE is the fitness function, and for this problem, it determines if the values of the SC or the PV panels designed by CIABC is close to the values from the dataset.
For experimental purposes two datasets are used in this paper. The first one is for single SC, and it was extracted for the datasheet provided by the manufacturer. The second dataset corresponds to experimental information extracted from real PV modules [
35]. The aim of using two information sources is to provide evidence of the capabilities of the CIABC for benchmark and real data. In addition, the use of the second dataset provides evidence that the proposed algorithm can work with models that include a different amount of diodes. The property of the standard ABC to work with multi-dimensional search spaces is also contained in the CIABC. An increment on the number of diodes in the model is reflected in the number of dimensions of the optimization problem. On the other hand, to show the proficiency of the CIABC, several experiments are performed and comparisons with similar algorithms selected from the state-of-the-art. Some statistical comparisons have also been conducted in order to verify the efficacy of the improvements included in the ABC. In addition, the computational effort of the CIABC is compared with the standard version of ABC. Experimental evidence indicates that CIABC is practically immune to the sensitivity generated by noisy conditions and it has a high performance regarding accuracy, robustness and preserving low computational requirements.
The remainder of the paper is organized as follows:
Section 2 describes the Preliminaries, and the problem of solar cell modeling, the standard ABC, and the chaotic map concept are introduced. In
Section 3 the proposed chaotic improved ABC is introduced.
Section 4 discusses the results of the proposed algorithm. The conclusions and the future works are examined in
Section 5.
4. Results and Discussion
This section presents the result obtained after applying the CIABC to the problem of SC design. The experiments performed are divided in two: (1) parameter estimation of a single solar cell using and (2) parameter estimation of PV modules. In order to test the performance of the proposed method, for a single SC, a set of experimental I–V data has been used [
21]. Such data is applied to determine the parameter of the photovoltaic model. For experimental purposes is considered a commercial silicon solar cell (from the R.T.C. Company, Paris, France) with a diameter of 57 mm under standard test conditions (STC). For the STC the solar cell (SC) works at 1 Sun (1000 W/m
2) with a temperature
T = 33 °C.
Under the optimization context, the search domain for the SC parameters according to the related literature [
21] is presented in
Table 1. On the other hand, Table 3 shows the values of the dataset; it consists of 23 samples that are widely used in several approaches for the design of photovoltaic models [
19,
21]. The CIABC method is configured using a number of food sources
N = 200. Meanwhile, the maximum number of iterations is set to 10,000. The experiments were performed using “Matlab 2014b” under Windows 10, 64 bit on an Intel Core2 Duo CPU with 4 GB RAM.
The results of the CIABC are compared with similar optimization algorithms. These techniques are chaos particle swarm optimization (CPSO) [
19], simulated annealing (SA) [
37], cat swarm optimization (CSO) [
2], simplified teaching-learning based optimization (STLBO) [
23], generalize depositional teaching learning-based optimization (GOTLBO) [
46], artificial bee swarm optimization [
6], harmony search (IGHS) [
1], artificial bee colony (ABC) [
21] and modified artificial bee colony (MABC) [
47].
4.1. Performance Measures
The performance of the proposed modified version of ABC is evaluated using different metrics; they are listed in
Table 2 [
21].
From
Table 2,
Itm is the measured value,
the estimated value,
(the number of all experiments). The
and
are the minimum and maximum values (respectively) of
over
.
4.2. Experimental Results of CIABC
Table 3 and
Table 4, as well as
Figure 4 and
Figure 5 illustrate the results of the CIABC method in determining the unknown parameters of SC using the single diode (SD) and the double diode (DD) models.
Table 3 displays the
and
for SD and DD models after estimating the parameters of them, in addition to the original data.
Table 4 shows the estimated values of the SD parameters which have been predicted by the CIABC model. These values are also compared with those obtained by the other selected algorithms. Comparisons illustrate that the RMSE value of the CIABC (9.8602 × 10
−4) is better than the original ABC and the MABC (9.862 × 10
−4 and 9.861 × 10
−4 respectively), that indicates the CIABC increased the performance of another version of ABC. Also, the RMSE of CIABC equals the values obtained by STLBO and CSO. In addition, CIABC outperformed all other algorithms; however, the worst value is 0.00139 for CPSO. Moreover, several methods are used to determine the parameters of SD model and it uses does not depend on the swarm. For example, in [
48] the authors proposed a method which used the reduced forms. From reference [
48], the results of the second case study (since it used the same dataset) that is listed in Table 10 are 1.1388 × 10
−2, 8.8437 × 10
−4, 8.9605 × 10
−3 and 7.7301 × 10
−4 for 2.A, 2.B, 2.C and 2.D respectively. By comparing these results with the obtained using CIABC from in
Table 4, it can be seen that the CIABC is better than 2.A and 2.C while it is less accurate than two other cases.
Table 5 illustrates the values and the corresponding RMSE obtained for the DD model parameters by the CIABC and eight different algorithms. In this table, the RMSE value of the CIABC (9.8262 × 10
−4) is smaller than those obtained by standard ABC and MABC which proves that the CIABC is indeed still better than other ABC versions in both of SD and DD models. In addition, the CIABC obtains the best performance compared with all algorithms except STLBO and CSO which yielded 9.8248 × 10
−4 and 9.8252 × 10
−4 respectively. Furthermore, in
Table 6 the results of several performance metrics are provided to analyze the accuracy of CIABC algorithm for both SD and DD models. These metrics are the mean and the standard deviation (STD) of RMSE values over 40 runs; as well as, the NRMSEMAE, NMAE, MBE and NMBE. These results prove that the CIABC algorithm is consistency and has a high efficiency to determine unknown parameters of SD and DD models.
Furthermore, the convergence performance of CIABC for SD and DD models are illustrated in
Figure 4. From this figure can be observed that the CIABC, in both models, has fast convergence; whereby it achieved an optimal value before 2000 iterations. In the same context, the proposed CIABC requires less amount of time to achieve the optimal solutions, for a single run in SD it takes 1300 s and for DD 1500 s.
Figure 5 shows the current vs. voltage and power vs. voltage at different five temperatures (33 °C, 50 °C, 75 °C and 100 °C) for the DD and SD models. It demonstrates that when the solutions yielded by CIABC are adopted, both solar cell models can accurately represent the characteristics of the solar cell. It also indicates that CIABC obtained an accurate approximation for
. However, the temperatures affect the current values in the CIABC and also in the power values.
4.3. Sensitivity Analysis
In this section the performance of Tent map is explained against different seven chaotic maps such as Chebyshev, Circle, Gauss/mouse, Logistic, Piecewise, Sine and Sinusoidal [
49].
Table 7 shows the mean and standard deviation (STD) of the RMSE values obtained using CIABC based on eight chaotic maps. From this table, is possible to conclude that Tent map has the lower mean RMSE (also the STD) compared with other maps. Also, the circle map and Piecewise map is in the second rank for dimension 5 and dimension 7, respectively.
4.4. CIABC on PV Panels
In this experimental section, another two real datasets are used to further investigate the performance of the proposed CIABC approach, where the CIABC is used to identify the parameters of PV panels that namely, a polycrystalline and monocrystalline one [
35]. In this experiment, the parameters of SC are modified as
and
in order to differentiate them from the single cell experiments.
In general, the PV panel contains
M solar cells which are interconnected in series, as well as the current of this panel
equals to
. Assuming that the same level of photon flux is received by the
M cells, then the same current and voltage are generated from these cells [
35]. The most of the related literature the SD model is used for each element of the PV panel. According to this fact, to calculate the
of the entire PV panel, the
I-V relation introduced in Equation (2) can be written as:
Based on the values of the current
(when the cells are short-circuited) and the voltage
(when the cells are open-circuited), the
I-V data is computed from each panel. The results of the proposed CIABC method are compared against two other methods called ABC and the results given in [
35].
4.4.1. The Polycrystalline PV Panel Description
For the experiments a commercial model STM6-120/36 solar panel manufactured by Schutten Solar (Nanjing, Jiangsu, China) is considered which consists of 36 polycrystalline cells (of size 156 mm × 156 mm) in series form. For this solar panel different measures are taken that represent the real data. This panel is formed by 22 points at a temperature of 55 °C;
,
and
. The entire dataset is provided in the second and third columns of
Table 8.
On the other hand,
Table 8 and
Table 9 illustrates the calculated current and the identified parameters of the PV panel. From these tables, it can be observed that the results of [
35] are better than the ABC method. However, the proposed CIABC gives the best results. Also, we can find that the proposed method is faster than the other algorithm which takes less time to reach the stable value. In other words, the modification performed over the CIABC does not affect the computational effort of its operators. Moreover,
Figure 6 shows the estimated current and power of the three methods (ABC, CIABC, and [
35]) and the measured data against the voltage. From this figure, it can be seen that the curve of the proposed CIABC method is the closest curve to the curve of the measurement data.
4.4.2. The Monocrystalline PV Panel Description
In this experiment, another solar panel model which called STM6-40/36 manufactured by Schutten Solar is used [
35]. This panel contains 36 monocrystalline cells (with size 38 mm × 128 mm) configured in series.
Table 10 shows the data that measured at a temperature of 51 °C, with
VM = 16.98 V,
ISC = 1.663 A,
VOC = 21.02 V,
IM = 1.50 A.
Table 10 and
Table 11 give the comparison results of the CIABC with the ABC and reference [
35] algorithms according to the estimated current with it absolute value for error (|Error|) and the estimated parameters, respectively. From these tables, it can be observed that the CIABC has better values in terms of |Error|, MAE and RMSE. Also, the ABC is better than the results of reference [
35]. Also, regarding the time consumption, the CIABC need a smaller amount of time to estimate the parameters than the other algorithms.
The estimated current and the estimated power, at a temperature of 51 °C, are plotted against the voltage as in
Figure 7. From this figure, it can be observed that the ABC and CIABC give better results than reference [
35].
5. Conclusions
This paper has proposed a new method to solve the photovoltaic cell design problem by estimating the parameters of solar cells. The proposed algorithm is based on improving the Artificial Bee Colony algorithm in two stages. Firstly, the chaotic Tent map is combined with the “onlooker bee” phase instead of the random number which is used to start this phase. This improvement makes ABC inherit the strength of chaos such as the ergodic and non-repetition properties and saves the computational time that may be needed if the random value is less than the probability for a long time. Secondly, instead of generating a random population using the scout bees if no improvement is made, the best solution obtained is used; that makes the ABC searche around the best value rather than random solutions.
The proposed algorithm is tested by using a dataset of experimental values. The CIABC results have been compared with eight different algorithms used in the state of the art; these algorithms are STLBO, GOTLBO, ABC, IGHS, ABSO, SA, CSO and MABC. The performance of the proposed algorithm has been evaluated based on its robustness and accuracy. The results show that the performance of the CIABC algorithm is close to the results of STLBO and CSO for SD and DD models, whereas, it is better than all other algorithms. Moreover, the effects of chaotic Tent map are compared with other different chaotic maps and its performance is better than other maps in both the SD and DD models.
In addition, the proposed CIABC was used to identify the parameters of PV panels based on polycrystalline material, and it gives results better than two other methods. In future work, we will implement other interesting models for solar cells. Also, some other modifications will be introduced, extending the use of this optimization algorithm for renewable energy problems.