International Journal of Photoenergy

International Journal of Photoenergy / 2019 / Article

Research Article | Open Access

Volume 2019 |Article ID 4692108 | 16 pages | https://doi.org/10.1155/2019/4692108

Adaptive Electromagnetic Field Optimization Algorithm for the Solar Cell Parameter Identification Problem

Academic Editor: Huiqing Wen
Received21 Jan 2019
Revised18 Apr 2019
Accepted28 Apr 2019
Published03 Jun 2019

Abstract

Solar cell parameter identification problem (SCPIP) is one of the most studied optimization problems in the field of renewable energy since accurate estimation of model parameters plays an important role to increase their efficiency. The SCPIP is aimed at optimizing the performance of solar cells by estimating the best parameter values of the solar cells that produce an accurate approximation between the current vs. voltage () measurements. To solve the SCPIP efficiently, this paper introduces an adaptive variant of the electromagnetic field optimization (EFO) algorithm, named adaptive EFO (AEFO). The EFO simulates the attraction-repulsion mechanism between particles of electromagnets having different polarities. The main idea behind the EFO is to guide electromagnetic particles towards global optimum by the attraction-repulsion forces and the golden ratio. Distinct from the EFO, the AEFO searches the solution space with an adaptive search procedure. In the adaptive search strategy, the selection probability of a better solution is increased adaptively whereas the selection probability of worse solutions is reduced throughout the search progress. By employing the adaptive strategy, the AEFO is able to maintain the balance between exploration and exploitation more efficiently. Further, new boundary control and randomization procedures for the candidate electromagnets are presented. To identify the performance of the proposed algorithm, two different benchmark problems are taken into account in the computational studies. First, the AEFO is performed on global optimization benchmark functions and compared to the EFO. The efficiency of the AEFO is identified by statistical significance tests. Then, the AEFO is implemented on a well-known SCPIP benchmark problem set formed as a result of real-life physical experiments based on single- and double-diode models. To validate the performance of the AEFO on the SCPIP, extensive experiments are carried out, where the AEFO is tested against the original EFO, AEFO variants, and novel metaheuristic algorithms. Results of the computational studies reveal that the AEFO exhibits superior performance and outperforms other competitor algorithms.

1. Introduction

Renewable energy has experienced a tremendous increase in recent decades because of the depletion of conventional sources oil, coal, or natural gas. Among various kinds of renewable energy sources such as wind, wave, nuclear, and biomass, solar or photovoltaic (PV) energy is the most important source due to its properties such as effectiveness, wide-scale availability, unlimited capacity, and safe-use [1]. Furthermore, PV, which is able to provide power for specific purposes, is an emission-free system with direct conversion from solar energy to electricity [2]. Since solar cell installation has received great attention, numerous researchers have focused to maximize the efficiency of PV systems. In order to control and optimize PV systems, it is required to accurately simulate the characteristics of the PV system before installation. The accuracy of the PV systems mainly depends on the parameters of solar cells, which are generally not provided by the cell manufacturers [3]. Therefore, it is vital to identify the parameters of solar cells or modules based on nonlinear mathematical models. Among a variety of existing models in the literature, the main ones are the single-diode model (SD), the double-diode model (DD), and the PV module model [46]. The problem of extracting the parameters of solar cells from the experimental data is called the solar cell parameter identification problem (SCPIP) in literature.

To solve the SCPIP, there exist several solution approaches in the literature, which are mainly divided into two groups: deterministic and heuristic solution approaches. Regarding the deterministic approaches, a number of methods are employed by the researchers, such as nonlinear least squares based on the Newton model [7], iterative curve fitting [8], Lambert W-function [9], and J-V model [10]. However, these deterministic solution approaches are not efficient to solve the SCPIP since they need continuity, convexity, and differentiability conditions for being applicable and involve heavy computations [4, 11]. To cope with the complexity of the SCPIP, heuristic methods are used as an alternative to deterministic solution approaches.

Regarding the popular metaheuristic algorithms, simulated annealing algorithm [12], genetic algorithm [13, 14], particle swarm optimization algorithm [15, 16], differential evolution algorithm [1720], pattern search [21], artificial bee colony algorithm [22] are widely used for the SCPIP. In addition to these well-known heuristic algorithms, there exist several papers in the literature which consider more recent approaches, such as bacterial foraging algorithm [23, 24], teaching-learning-based optimization algorithm [2527], biogeography-based optimization algorithm [28], chaos optimization algorithm [29], artificial fish swarm algorithm [30], bird mating optimizer approach [31], artificial immune system [32], evolutionary algorithm [1], cat swarm optimization algorithm [33], moth-flame optimization algorithm [5], JAYA optimization algorithm [34, 35], chaotic whale optimization algorithm [36], imperialist competitive algorithm [37], bee pollinator flower pollination algorithm [38], shuffled complex evolution algorithm [39], memetic algorithm [40], interior search algorithm [41], collaborative swarm intelligence approach [42], and cuckoo search algorithm [43]. On the other hand, it has been proven by No-Free-Lunch theorem [44] that none of these algorithms is able to solve all type of optimization problems. As a result of No-Free-Lunch theorem, it should be denoted that a new algorithm is always likely to exhibit better performance on the SCPIP compared to the existing solution methodologies.

Based on the aforementioned motivation, this study considers electromagnetic field optimization (EFO) algorithm to solve the SCPIP. The EFO is a relatively new and effective algorithm on global optimization problems, and it has been shown that the EFO outperforms other optimization algorithms and effectively balance the exploration and exploitation performance [45]. Conversely, it is also reported that the traditional EFO tends to suffer poor exploitation performance on specific optimization problems [46]. Therefore, this study introduces an adaptive version of electromagnetic field optimization to solve the SCPIP efficiently, which is called the adaptive EFO (AEFO). The proposed AEFO adaptively controls the algorithm parameters and explores the search space effectively, especially in the early stages of the search process, whereas exploitation is emphasized in the latter phases. In addition to the adaptive control of parameters, boundary control and randomization procedures are modified in the algorithm. In computational studies, performance of the proposed algorithm is tested into two parts. First, the AEFO is performed on a recently introduced global optimization benchmark problem set and compared to the EFO solutions to identify the efficiency of the adaptive control mechanism of the proposed algorithm. In the second part, the AEFO is tested on the well-known PV models and compared to the original version of the EFO, artificial bee colony algorithm (ABC), particle swarm optimization (PSO), and differential evolution algorithm (DE) in identical test conditions. The AEFO is further tested against recent metaheuristic algorithms, which are presented to solve the SCPIP. Computational results and statistical tests show that the AEFO significantly achieves superior performance to competitor algorithms.

The main contributions of the proposed study are as follows: (i)To the best of the author’s knowledge, the EFO has not been considered in the literature to solve the SCPIP until now(ii)An adaptive version of the EFO is introduced by enriching the algorithm employing an adaptive search strategy. Additionally, modified boundary check and randomization procedures are used for the candidate solution generation. By these novel modifications, the performance of the traditional EFO is improved(iii)Detailed comparisons between the EFO and the AEFO variants and also between the AEFO and the other recent algorithms are presented. The outperforming performance of the AEFO is proved by statistical significance tests

The remainder of the paper is organized as follows. In Section 2, the SCPIP is described and the mathematical formulation of the problem is given. Section 3 presents the details of the EFO. Section 4 introduces the proposed AEFO for the SCPIP. Computational results are given in Section 5. Finally, a conclusion part with future research perspectives is provided in Section 6.

2. Problem Definition

To describe the characteristics of the solar cells, there exist several models in the literature. In this study, the SD and DD models, which are the most commonly used models since their practical usage for the solar cells, are taken into account [4, 11]. In this section, the SD and DD models are introduced, and the SCPIP based on these models is defined.

2.1. Single-Diode Model

The SD model consists of a current source in parallel with a diode, a shunt resistor to represent the leakage current, and a series resistor to denote the losses of load current. This model has commonly used to describe the static characteristics of solar cells because of its simplicity and accuracy [34]. Figure 1 represents the equivalent circuit for the SD model, where is the terminal voltage, is the series resistance, is the shunt resistance, is the terminal current, is the photo-generated current, is the diode current, and is the shunt resistor current.

By using the Shockley equation for the diode currents, the single-diode model can be formulated as shown in equation (1), where is the ideality factor of the diode and is the reverse saturation current of the diode [22, 27, 36]. According to the Shockley equation, is the magnitude of charge on an electron ( coulombs), is the Boltzmann constant (), and is the cell temperature in Kelvin [22].

2.2. Double-Diode Model

The DD model consists of two diodes in parallel with the current source and a shunt resistance to consider the effect of recombination current loss in the depletion region [34]. The DD model provides more precise solution with regard to the consideration of this loss, especially at low voltage [27]. In Figure 2, the equivalent circuit of the DD model is represented. Similar to the SD model, the output current is described as follows: where and are, respectively, the diffusion and saturation currents, and and are, respectively, the diffusion and recombination diode ideal factors. The other parameters are the same as defined for the SD model.

2.3. Parameter Estimation Problem

Regarding the SD and DD models described above, the SCPIP can be defined as identifying the parameters of equation (1) for the SD model and equation (2) for the DD model within their lower and upper bounds. The aim of the problem is to estimate the best parameter values for the solar cell models that produce an accurate approximation between the measurements from the physical experiments and the values from the mathematical model. Hence, equations (1) and (2) can be rewritten as an error function as shown in equations (3) and (4) for SD and DD models, respectively.

In the sense of optimization problem for accurate estimation, the error function for the SCPIP can be transformed into equations (5) and (6) for the SD and DD, respectively. The in these equations represents the decision variables to be optimized for the SCPIP, where Table 1 shows the descriptions of the decision variables and their lower and upper bounds for the SD and DD models [22, 27, 36].


SD modelDD model
Solar cell parametersDecision variable vector Lover boundUpper boundSolar cell parametersDecision variable vector Lover boundUpper bound


With regard to the error functions described for the SD and DD above, the mathematical formulation of the SCPIP can be defined as follows: (1)Parameters

:Number of experiments considered for the SCPIP

:Number of solar cell parameters (5 for SD and 7 for DD models)

:Lower bound value of solar cell parameter ;

:Upper bound value of solar cell parameter ; (2)Decision variables

:Positive continuous variable and identifies the value of solar cell parameter ; (3)Model

Subject to

The objective function (7) aims to minimize (root mean square error) of the experiments, which is determined by using equation (10). The constraints (8) describe the boundaries of the decision variables. Finally, the decision variables are described in constraint (9).

3. Electromagnetic Field Optimization Algorithm

EFO is proposed by Abedinpourshotorban et al. [45], which is a relatively new population-based physics-inspired metaheuristic algorithm. EFO simulates the attraction-repulsion mechanisms between electromagnets having different polarities, where each candidate solution is associated with an electromagnetic particle (EMP) made of electromagnets. EMP is represented by a real-coded vector with a dimension of , where denotes the problem size, i.e., number of electromagnets. The quality of a solution determines the polarity of the corresponding EMP.

EFO classifies the EMP population into three groups as positive, neutral, and negative polarities according to the predetermined ratios, and the attraction-repulsion mechanisms among those EMPs will guide the population to the global optimum. The main idea behind the search mechanism of the EFO is that the negative EMPs will repel, whereas EMPs having positive polarities will attract the neutral EMPs. Furthermore, EFO employs the golden ratio to balance the attraction and repulsion forces to favor the exploitation behavior of the population [45].

In the initialization step, the EFO generates a randomly distributed population of , which is made of electromagnets within the search space, where represents the number of the EMPs, i.e., population size. Then, the fitness of the initial population is evaluated, and the population is sorted regarding their fitness in descending order. Then, the population is classified into three groups: (i) fittest EMPs as positive part, (ii) EMPs having the lowest fitness as negative part, and (iii) the remaining EMPs as neutral part. Afterwards, one EMP is selected from each group, and a new candidate EMP is formed using the search mechanism of the EFO. In order to keep the population diversity and to improve the exploration ability of the algorithm, one electromagnet of the candidate solution has a chance to be updated in the random search phase. Last, the fitness of the candidate EMP is evaluated, and if it is better than the worst particle in the current population, then the candidate will be inserted into the population, whereas the worst EMP will be eliminated.

The main steps of the EFO are as follows:

(1):  Initialization
(2):  Fitness evaluation and sorting
(3):  Repeat
(4):   Classification
(5):   Repeat
(6):    Candidate EMP generation
(7):   Until all electromagnets are generated
(8):   Random search/Mutation
(9):   Selection and re-sorting
(10): Until termination criterion is satisfied
Algorithm 1:

In the initialization step, an initial population of EMPs is randomly generated within the search space. Let represent the ith EMP, where is the problem size. Each EMP is generated by where , . and are the lower and upper bounds for the index , respectively. Last, is a random real number within the range . Then, the fitness of the EMPs in the initial population is determined, and the population is sorted based on the fitness values in nonincreasing order.

In the classification phase of the EFO, the population is divided into three groups with different polarities. In this point, two different control parameters as and are employed in order to determine the EMPs for each group. The and represent the percentage of the allocated solution for positive and negative part, respectively. The remaining solutions form the neutral part.

The candidate solution generation step of the EFO is the most important part of the algorithm [47]. In this step, one EMP from each group is selected randomly. Then, a random number between 0 and 1 is generated. If this number is lower than the predetermined control parameter, , then the corresponding electromagnet of the candidate EMP is set as the electromagnet of the EMP from the positive field. Otherwise, the electromagnet of the candidate solution is determined as follows: where is the candidate solution and is the corresponding electromagnet (index). , , and are the indexes of the selected EMPs from positive, negative, and neutral parts, respectively. is the golden ratio constant, which is used to guide the candidate solutions towards the positive part as can be seen from equation (12); the candidate EMP is generated based on the randomly selected neutral particle, where the positive EMP will attract and the negative EMP will repel the candidate solution. The algorithm of the candidate solution generation step of the EFO is given in Algorithm 2.

(1):  set r = random real number within the range of (0,1).
(2):  for j = 1 to D do //for each electromagnet of the candidate
(3):   set p = randomly selected index of the EMP from the positive field.
(4):   set n = randomly selected index of the EMP from the negative field.
(5):   set k = randomly selected index of the EMP from the neutral field.
(6):   if rand < Ps_rate then
(7):    set v(j) as the electromagnet of the positive EMP (xp).
(8):   else
(9):    set v(j) using the Eqn. (12) //Use r as rand in Eqn. (12).
(10):  end if
(11):  Randomly Update v(j) if it is outside the boundary.
(12): end for
Algorithm 2 : Candidate solution generation

In the random search step of the EFO, the random real number is generated between 0 and 1. If the generated random number is lower than the control parameter, i.e., , then one selected electromagnet of the candidate EMP () is reinitialized within the search space randomly. The electromagnet selection in the random search follows the order of the electromagnets, which is controlled by a counter in the algorithm, and the subsequent electromagnet is updated in each random search step. If the end of the EMP is reached, then the random search starts from the beginning in the next time.

As the last step, the fitness of the is evaluated, and if it is better than the worst solution of the current population, it is inserted to the population, and the worst solution is eliminated. The processes of classification, candidate EMP generation, random search, and selection are repeated until some termination criterion is satisfied.

From the aforementioned descriptions, the following characteristics of the EFO are observed: (i)In each electromagnet generation, new EMPs are selected from each group. Therefore, EFO utilizes various information sources during the candidate solution generation(ii)The search mechanism in equation (12) shows strong exploitation characteristics. First, better solutions attract and the worse solution will repel the selected neutral particle. Second, the golden ratio is employed, where more weight is given to the attraction force. Moreover, by utilizing the parameter, candidate electromagnet has a chance to be copied directly from the positive EMP(iii)EFO generates one candidate EMP in each cycle, and the fitness of the candidate is only compared with the worst solution in the current population. If the candidate solution is not better than the worst, there will be no chance to be accepted to the population(iv)The random search part is the only process in the EFO, which is responsible for exploration

It is well known that the compromise between exploration and exploitation throughout a run is critical to the success of a metaheuristic algorithm. Exploration means the ability of an algorithm to search for unvisited points in the search region, whereas exploitation is the process of refining those points within the neighborhood of previously visited locations to improve the solution quality. In a word, it can be concluded from the above observations that the EFO algorithm is good at exploitation but may have poor exploration behavior. Therefore, an adaptive version of the EFO is presented in this study.

4. Proposed Algorithm

In this section, an adaptive version of traditional EFO, which is named AEFO, is presented. In the AEFO, two main algorithmic parameters, i.e., and , are updated adaptively at run time to improve the balance of exploration and exploitation. As mentioned in the previous section, favors exploration whereas is responsible for the exploitation. In the EFO, and are determined at time = 0 and not updated throughout the search process. However, in the AEFO, has increased adaptively from to during the search, where and represent the minimum and maximum allowable values for , respectively. Similarly, is decreased from to as the algorithm proceeds. In other words, AEFO achieves better exploration performance, specifically in the early phases of the search, whereas favors exploitation in the latter phase. As increases from to , the candidate EMPs will more likely to move towards better solutions, i.e., positive field in the latter phases of the search process. At the end of each iteration, and are updated according to equations (13) and (14), respectively. In equations (13) and (14), depicts the current value of termination criterion, and represents the maximum value of termination criterion.

Second, the boundary control and randomization procedures of the traditional EFO are modified. In the AEFO, electromagnets that become higher or lower than the limits are set back to corresponding limits, instead of the random generation within the search limits. Additionally, in the random search step of the proposed AEFO, a randomly selected electromagnet is regenerated within limits instead of a sequence-based approach.

Algorithm 3 summarizes the main steps of the AEFO, which also presents the main change of the proposed algorithm as adaptive control mechanism of and (line: 35) and the modified boundary check and randomization procedures (line: 26 and line: 28) are shown in Algorithm 3.

(1):  set Popsize = Number of EMPs
(2):  set N_var = Number of variables in the problem //number of electromagnets
(3):  set Termination condition
(4):  set R_rate_max = Maximum probability of random search
(5):  set R_rate_min = Minimum probability of random search
(6):  set Ps_rate_max = Maximum probability of selecting the electromagnet from positive field
(7):  set Ps_rate_min = Minimum probability of selecting the electromagnet from positive field
(8):  set R_rate = R_rate_max //R_rate will decrease from R_rate_max to R_rate_min
(9):  set Ps_rate = Ps_rate_min //Ps_rate will increase from Ps_rate_min to Ps_rate_max
(10): set UB and LB = Upper and lower bounds of electromagnets
(11): set phi = Golden ratio
(12): set P_field = ratio of the positive field
(13): set N_field = ratio of the negative field
(14): Generate initial population as pop. //use Eqn (11)
(15): Evaluate initial population //calculate fitness of the initial population
(16): Sort population according to the fitness values
(17): do while Termination condition is not satisfied //Main loop
  // Candidate EMP generation //
  //v will be the candidate EMP, the size of v is N_var
(18):  for i = 1 to N_var do //for each electromagnets of the generated particle
(19):   Determine positive_index, negative_index and neutral_index randomly
(20):   if rand(0,1) ≤ Ps_rate then
(21):    v(i) = pop(positive_index,i) //generated EMPs electromagnet will be equal to positive field EMP
(22):   else
(23):    Determine v(i) using Eqn (12)
(24):   end if
(25):  end for
(26):  Check the boundary limits. //if v is outside of the boundary values, set the corresponding electromagnets to the boundary values
  // Random search //
(27):  if rand(0,1) ≤ R_rate then
(28):   Update randomly selected electromagnet of v within limits randomly
(29):  end if
(30):  set fitv = fitness value of the generated EMP
(31):  if fitv is better than the worst EMP in pop then
(32):   Delete the worst EMP and insert v to the pop
(33):   Re-sort the pop according to the fitness values
(34):  end if
(35):  Update Ps_rate and R_rate using the Eqn (13) and Eqn (14)
(36):  Save necessary information // Memorize global best
(37): end while
Algorithm 3 : AEFO algorithm

Since the SCPIP is a global optimization problem, the proposed AEFO is easily adapted to solve the SD and DD models by integrating equation (10) to the algorithm as the cost function. The decision variables of both the SD and DD models are defined as the electromagnets of the EMPs. On the other hand, the lower and upper limits of the solar cell parameters are set as the boundary values of the electromagnets. With regard to this solution representation, the RMSE value of any solution vector represents the fitness value of the EMP. Figure 3 represents the flowchart of the parameter estimation process for the SD and DD models by the proposed AEFO.

5. Computational Results

In order to validate the performance of the proposed AEFO, computational experiments are performed into two main parts. First, the AEFO is tested on a recently introduced global optimization benchmark functions and compared to the EFO. In the second part of the computational studies, a well-known SCPIP benchmark problem set is used. This part initially presents the effects of the parameter values on the algorithm performance. Then, the AEFO is compared to the EFO and also three well-known metaheuristic algorithms: ABC, PSO, and DE. Finally, the results of the proposed AEFO are compared to ten state-of-the-art SCPIP optimizers. For the experimental studies, the AEFO and other competitor algorithms (EFO, ABC, PSO, and DE) are implemented using Matlab 8.1 and executed on the same computer with Intel Xeon CPU (2.67 GHz) and 16 GB of memory.

5.1. Results on Benchmark Functions

In the first part of the computational studies, the proposed AEFO is tested on recently introduced CEC 2017 benchmark functions [48]. CEC 2017 benchmark problem set consists of 30 minimization functions () including 2 unimodal, 7 multimodal, 10 hybrid, and 10 composition test functions. However, is excluded because it shows unstable behavior. The test suite includes four versions based on the problem size (i.e., ), where the search space is in all test functions. In this study, 30, 50, and 100 dimensional versions are taken into account for the experiments.

To show the efficiency of the adaptive control mechanism of the AEFO, the proposed algorithm is compared to the original version of the EFO. In order to make a fair comparison between the EFO and the AEFO, the control parameters of the EFO is set as , , , and [45]. For the AEFO, the parameter values of and are the same as in the EFO, while , , , and . Since these values are the lower and upper limits of and in the EFO, the AEFO with these parameter values are called hereafter as “AEFO_Standard.” Additionally, the population sizes and termination criteria of the algorithms are set to 50 and maximum function evaluation number, respectively. With regard to these parameter settings, 30 independent runs are performed for each test function.

Tables 24 show the results of algorithms for 30, 50, and 100 dimensional versions of the benchmark functions, respectively. To analyze the obtained results, best, worst, mean, and standard deviation () of the runs are presented of the algorithms. Furthermore, the last column of the tables shows the statistical significance of the differences between the AEFO and the EFO, which are determined using -tests with a significance level of 0.05, where the symbols indicate that the AEFO is significantly better than the EFO , significantly worse than the EFO , and no significant difference between the AEFO and the EFO . Results of the statistical comparisons show that the proposed AEFO obtains significantly better results than the EFO for most of the benchmark functions over all dimensions. In particular, 17 better results are obtained by the AEFO for both 30 and 50 dimensional versions. On the problems with , the EFO outperforms the AEFO for only one while the AEFO shows significantly better performance than the EFO for 11 benchmark functions. On the other hand, it should be noted that the AEFO reaches better average results with smaller deviations compared to the EFO, which demonstrates the robustness of the proposed AEFO.


Func.EFOAEFO-test
BestWorstMeanBestWorstMean