1. Introduction
Recently, the human demand for energy is increasing. At present, the environmental pollution caused by traditional fossil energy is becoming increasingly serious. The end of fossil fuel use requires alternative sources of renewable energy. Solar energy has been widely used due to its universal, clean, huge, and long-lasting characteristics. A photovoltaic power generation system (PVPS) has the advantages of no harm to the environment, long-term operation, maintenance-free, etc., and is widely considered as an extremely attractive solution [
1]. In addition, human beings are paying more and more attention to the protection of the environment. From global warming to the frequent and sudden increase in the number of haze days, people have been urged to continuously find and improve clean energy. It is imperative to gradually replace the high-carbon traditional fossil energy economic growth model with the low-carbon energy economic growth model.
First, the reserves of solar energy are quite abundant. About 130 trillion tons of solar energy converted into standard coal reaches the surface of the Earth every year, which is inexhaustible for human beings. Second, solar energy is a clean energy source that does not produce dust, carbon dioxide, or other toxic gases, nor does it cause environmental damage. At the same time, the equipment of photovoltaic power generation systems accounts for a very small part of the entire power generation system, but the growth rate has been very fast in recent years. In general, the development environment of photovoltaic power generation is quite excellent, and various factors have promoted the development of photovoltaic power generation. Therefore, the future power generation mode will take solar energy as the core of new energy-dominated power generation.
However, the current photovoltaic power generation equipment and algorithms are relatively dependent on the environment, and the utilization efficiency of solar energy is low, which will cause relatively large waste. The main reason is mainly due to the materials of photovoltaic cells and the control algorithms of photovoltaic power generation systems. However, the material performance of photovoltaic power generation is to absorb solar energy and convert it into electrical energy. To improve the material of photovoltaic cells, a large amount of manpower and time must be invested. Moreover, the effect of this improvement is not so obvious. Improving the MPPT algorithm in photovoltaic power generation systems has become the best way to significantly improve the efficiency of photovoltaic power generation systems.
The purpose of the intelligent calculation method is the same as the calculation method (or numerical analysis). Calculate a satisfactory approximate solution close to the real solution. Use this approximate solution instead of the real solution. In general, many problems have no analytical solution. At this time, calculation methods can be used to find numerical solutions. When the problem is really complicated, the calculation method is too large or it is difficult to implement the calculation method. In essence, intelligent computing methods are bionic, randomized, and empirical. Nature is random and empirical. It extracts this characteristic of nature and automatically adjusts to form experience.
At present, with the rapid development of computer technology [
2,
3,
4,
5,
6], intelligent computing is one of the important methods of intelligent science, and it is also a cutting-edge subject of information technology. The intelligent computing technologies and new methods developed in recent years have been widely used in many disciplines, and have achieved fruitful results in military, financial engineering, nonlinear system optimization, knowledge engineering, and computer-aided medical diagnosis. Intelligent computing includes neural networks [
7,
8], fuzzy logic [
9,
10,
11], and evolutionary computing [
12]. Evolutionary computing is a type of random search optimization algorithm that simulates biological evolution and genetic principles (survival of the fittest). The evolution process of the entire group can be regarded as an optimization process, but the evolution trajectory of a single individual may not be an optimization process. Evolutionary calculations include Genetic Algorithm (GA) [
13], Particle Swarm Optimization (PSO) [
14,
15,
16,
17], Grey Wolf Optimizer (GWO) [
18,
19,
20,
21], Cat Swarm Optimization [
22,
23,
24], Differential Evolution (DE) [
25,
26,
27], Ant Colony Optimization (ACO) [
28,
29,
30], Artificial Bee Colony (ABC) [
31,
32], Flower Pollination Algorithm (FPA) [
33,
34], Bat Algorithm (BA) [
35,
36,
37], QUasi-Affine TRansformation Evolutionary (QUATRE) [
38,
39,
40,
41], and Multi-Verse Optimizer (MVO) [
42,
43]. The pigeon swarm algorithm is a new meta-heuristic algorithm proposed by Duan in 2014 [
44]. This algorithm is proposed to simulate the process of pigeons returning home. The algorithm includes two operator stages, which has strong global search ability and local convergence ability.
Although PIO was proposed recently, it has achieved a lot of research results in terms of model improvement and application. Starting from the introduction of the pigeon’s autonomous homing behavior, the mechanism principle and mathematical model of the flock optimization algorithm are explained, and typical applications in the fields of drone formation [
45], control parameter optimization [
46], and image processing [
47] are introduced.
2. Related Work
Compared with traditional power generation systems, the biggest difference of photovoltaic power generation systems is that the core component is photovoltaic cells. One is a thin-film battery. The conversion efficiency of this battery is about 13% or even lower. The other is a monocrystalline silicon and polycrystalline silicon photovoltaic cell. The conversion efficiency is higher than that of a thin-film battery, which can reach about 18–20%. Thin film batteries can be combined with buildings and are inexpensive, thus they have a wide range of applications.
2.1. Basic Principles of Photovoltaic Cells
The main material of photovoltaic cells is semiconductors, which have the best photovoltaic effect, that is, they are most efficient way to convert solar energy into electricity. This is because, when the PN node in the semiconductor is illuminated by sunlight, the neutral atoms in it will lose electrons and generate electron–holes. At this time, under the action of the electric field, the electrons will be forced to move toward the N region. The hole moves in the opposite direction to reach the P area. At this time, the PN junction generates a new electric field with opposite polarity at both ends, and has the opposite polarity to the original electric field. The interaction between the two forces the P zone to be positively charged and the N zone to be negatively charged. Photogenerated electromotive forces are generated at both ends. When a load is connected to both ends of the PN junction, a photogenerated current is generated, that is, electrical energy is available for the load. The photovoltaic effect principle diagram is shown in
Figure 1.
According to the description of the photovoltaic effect, solar light can be divided into three parts: one part is the light energy used by solar cells, in which photons are absorbed by the solar PN junction; and the other two parts are light energy that cannot be used, including the light energy reflected by the photovoltaic cell and the light energy absorbed by the other parts of the photovoltaic cell except the PN junction. Therefore, this is also a reason for the low efficiency of photovoltaic cells using solar energy one.
2.2. Physical Model of Photovoltaic Cell
Because the volt–ampere characteristics of photovoltaic cells are non-linear and easily affected by the external environment, physical models and mathematical models must be established to facilitate quantitative research. In fact, the mathematical model of photovoltaic cells is extremely complicated. In engineering applications, approximate equivalent circuits are often used instead. The approximate physical model of a photovoltaic cell is shown in
Figure 2.
In
Figure 2, the relationship between the port voltage of the solar cell and the current flowing to the port can be expressed by a mathematical equation, as shown in Equation (
1).
In Equation (
1),
is the current flowing through the port,
is the current flowing to the port when the equivalent circuit is short-circuited,
is the reverse saturation current of the photovoltaic cell,
is the port voltage of the solar cell,
is the series resistance in the equivalent circuit,
is the parallel resistance in the equivalent circuit,
n is the ideal factor,
is the number of photovoltaic modules in series, and
k is the Boltzmann constant.
T is the absolute temperature of the photovoltaic cell,
q is the amount of electronic charge in the photovoltaic cell, and
is the voltage equivalent of temperature. Since
k and
q are constant values,
can be known by getting
T. For example, when the temperature T is 27 °C,
is 26 mV.
Because the output voltage of a photovoltaic cell is generally only
V, it must be connected in series and parallel to form photovoltaic modules to increase the port voltage. Therefore, the mathematical model of photovoltaic array current is shown in Equation (
2).
Among them,
is the number of photovoltaic cells connected in parallel, and other parameters are the same as those in Equation (
1). The mathematical model of the photovoltaic cell voltage is derived from the analysis of the equivalent model diagram, as shown in Equation (
3).
Therefore, the equation for photovoltaic cell output power can be obtained by multiplying Equations (
2) and (
3), as shown in Equation (
4).
Because the unit magnitude of the parameters in the formula varies widely, to facilitate the calculation and analysis, the photovoltaic cell model can be simplified. In Equation (
2), the magnitudes of the parallel resistance and the series resistance are greatly different. The unit magnitude of the parallel resistance is thousands of ohms, and the unit magnitude of the series resistance is milliohms. Thus, Equation (
2) is simplified as shown in Equation (
5).
Considering that the multiples of the diode’s reverse saturation current are exponentially distributed, the single diode reverse saturation current in Equation (
5) can be ignored, thus it is finally simplified to Equation (
6).
2.3. Maximum Power Point Tracking
When the photovoltaic power generation system is at a constant temperature and constant light intensity, the volt–ampere characteristics of the photovoltaic array remain basically unchanged, but are still non-linear, and the P–U characteristic curve always has a maximum value. When the temperature or light intensity changes, or the photovoltaic array is under complex lighting conditions, this maximum value starts to shift. At this time, the MPPT algorithm starts to work. It monitors the photovoltaic array voltage and current while changing the DC voltage control system and output power to verify that the output power is maximum.
According to the circuit theory, it can be concluded that, when the output impedance of the photovoltaic array and the impedance of the external load are the same, the output power of the photovoltaic array is the largest.
Among MPPT algorithms, the most widely used algorithm in engineering today is the Perturb and Observe algorithms (
), which is also one of the earliest algorithms. Its advantages are simple and efficient under non-complex lighting conditions, low cost, and convenient detection and calculation. The so-called disturbance is to increase or decrease a voltage increment
U from the original detected voltage. Then, the principle of
is to obtain the current and voltage values at the current time through the current and voltage detection elements, calculate the power value at the current time, and then add a perturbation to the original voltage. If it is large, then
continues to increase the perturbation comparison, otherwise it reduces one perturbation. In short, the direction of the disturbance is consistent with the direction of power increase. The flowchart is shown in
Figure 3.
is the most commonly used MPPT algorithm today because of its simplicity and versatility. This is based on the fact that the derivative of power versus voltage is zero at the maximum power point. At a working point on the
P–
V curve, if the operating voltage of the photovoltaic array is disturbed in a given direction and
, then the disturbance is known to move the operating point of the array to MPP. Then, the
algorithm will continue to disturb the PV array voltage in the same direction. If
, the change of the operating point moves the photovoltaic array away from the MPP, and the
algorithm reverses the direction of the disturbance. This paper uses a five-parameter model of a single diode to reproduce the non-linear characteristics of a photovoltaic array. Considering any point on the I–V curve, a mathematical expression by which
determines the next disturbance direction can be written.
While
decides the direction of the next perturbation based on the sign of
, the discrete form of Equation (
7) becomes Equation (
8).
where
is the discrete form of
,
, and
. The other notations have the following meaning:
,
, and
are the power, voltage, and current at the
kth (actual) sampling instance, respectively; and
,
, and
are the power, voltage, and current at the previous sampling instance, respectively.
However, according to the principle of , the system will sway back and forth near the maximum power point, i.e., oscillating, causing power loss. In addition, because the perturbation of the algorithm is a fixed value, at the beginning of the algorithm, the optimization speed is slow and cannot be changed, thus the power lost in the optimization process is large. To solve the problem that the optimization speed is slow and cannot be changed, a variable step size perturbation observation method has appeared.
4. Hybrid Parallel and Compact Pigeon-Inspired Optimization
Since photovoltaic power generation cannot reach the maximum power under cover, this paper proposes an improved PIO algorithm based on parallel and compact hybrid. The improved PIO algorithm is a progress of previous work [
19,
20], considering both parallel and compact technologies. Parallel communication strategy is used to exchange information with other groups, share computing load, and enhance the calculation of individual diversity is of great significance. Compact technology can provide a very effective way to save variable memory. Taking advantage of the population-based algorithm, an effective method is adopted to save the variable memory without the need to store the actual population solution. This paper makes use of the advantages of this population-based algorithm, and does not need to store the actual population solution, using an effective method to represent the search space solution. The compact algorithm simulates the behavior of a population-based algorithm by replacing the virtual population with a probability representation.
4.1. Parallelized Pigeon-Inspired Optimization
In meta-heuristic algorithms, parallel algorithms with communication methods often have faster convergence speeds and more accurate fitness values than native algorithms. Parallel processing is a very important way to deal with computer optimization. This is a form of calculation that runs simultaneously in the same direction. To construct a parallel structure, this paper divides the population into iterative ways, divides the entire population into several sub-populations according to a predetermined method, iterates and updates continuously according to the set target fitness value, and generates the next generation from the result. The parallel processing results proposed in this paper require constant exchange of attributes between their sub-populations, such as operations, substitution, exchange, movement, or mutation Algorithm 1 is a communication strategy proposed in this paper. The excellent solution and the poor solution in the solution space are operated, and the search is continuously performed in the search space.
Algorithm 1 A pseudo-code of a parallel with communication strategies. |
- 1:
ifthen//m is the number of pigeons in each group, and c is 0.5. - 2:
if then//Stategy1- neighboring groups - 3:
for to m do - 4:
Replace the worst () with the best in each group () - 5:
end for - 6:
end if - 7:
if then//Stategy2- the best to all - 8:
for to m do - 9:
Use the best variation in each group the worst in each group - 10:
end for - 11:
end if - 12:
end if
|
All communication strategies are substituted for all sub-populations in the population, and the best and worst among the sub-populations are updated. In the replacement process, the best pigeons of all sub-populations will migrate to each group, mutate them by replacing the worst pigeons in each group, and update them after a specified period. The strategy with neighbouring populations is to migrate the best pigeons in each population to adjacent populations, and then replace the poorer pigeons in adjacent populations.
4.2. Compacted Pigeon-Inspired Optimization
In the estimated distribution algorithm (EDA), the probabilistic representation is used to obtain fewer storage variables, and the overall population of all solutions is stored in the PIO algorithm, while still obtaining the same optimization results. Compact uses the above-mentioned EDA principle to simulate the iterative behavior of the population for meta-heuristic calculations. The probabilistic model, to represent the population-based algorithms, operate in a compact model. In this case, in the compact model algorithm, the actual population is treated as a virtual population. Virtual populations are set based on EDA’s probability density functions (PDFs). Not all solutions are stored in memory, but some new candidate solutions are generated based on the probability distribution of the solutions in memory. When a new candidate solution is generated, it is generated in a solution space with a relatively good fitness value. In the compact algorithm, the possibility of individuals and virtual populations indicates that learning from the previous generation will then affect the next generation of solutions. In this paper, the vector of the generated solution is called Perturbation Vector (PV). These principles are applied to the improvement of compact PIO memory variables.
Different from the original PIO, the compact method [
49,
50,
51,
52,
53] uses the encoded data structure of the probability vector and calls the population a virtual population. New candidate solutions are generated in the process of constantly changing probability, which affects the change of probability. The compact algorithm’s optimization processing goal is to simulate the behavior of pigeons, but its storage unit variable memory is much smaller than the original algorithm. PV continuously generates candidate solutions from vector probabilities. The updated probability vector will reflect the changing process of the solution. PV is a matrix that includes two specified parameters, average
and quasi deviation
, in the
.
t is the number of iterations,
and
values are in the range of
, and it can be defined as:
.
where
is the probability distribution function of
,
and
are two parameters of Equation (
18), which control the probability change of
. The definition of
can be found in [
37].
in this paper is achieved by constructing a polynomial cumulative distribution function (CDF) [
54].
4.3. Parallel Compact Pigeon-Inspired Optimization
This section introduces the implementation of hybrid parallel and compact PIO algorithms. Constructing a parallel method, the entire pigeon population can be divided into several sub-populations in a predetermined manner, and there is a point to stimulate when communicating between the sub-populations. This method is based on the optimization of pigeon populations, and the sub-populations are run in parallel. The independent evolutions of pigeons do not affect each other. When performing inter-group communication, for example, when the best pigeons in one sub-population are moved to another sub-population, they can be replaced with the weakest pigeons based on the measured fitness, and the subgroups are updated during this period. In the compact phase, we calculate the agreement on the sub-population based on the probability vector through competition.
New candidate solutions are generated based on the distribution of the previous generation of the samples. It can be said that the PV operation will randomly generate the position of the pigeon.
Algorithm 2 can represent the initialization PV operation as the CPIO pseudo code, and train the probability generation
based on the measured results. In the algorithm,
c is a relatively large constant, and it is often set to 10.
Algorithm 2 Initialization of CPIO. |
- 1:
Initialization of - 2:
for to do - 3:
- 4:
- 5:
end for - 6:
Initializing pigeons location Pos via PV - 7:
Initializing with the best location value: = arg minf[x].
|
The
and
variables are constantly changing. When a new solution is generated, it will be compared with the best global solution that has been generated. The better solution will become the new
, and the worse solution will become the new
. The evaluation criterion is based on the degree of fitness. Based on the above comparison,
will transfer the winner to a region in the search space that is more promising to produce a better solution. The newly selected candidate object is evaluated by the value of the fitness value. Algorithm 3 shows what is described in this paragraph.
Algorithm 3 Compete for winner and loser. |
- 1:
if fitness () > fitness () then - 2:
is set to - 3:
is set to - 4:
else - 5:
is set to - 6:
is set to - 7:
end if
|
In addition, the two vectors in the PV operation will be continuously updated according to the changes of
and
in Equations (
19) and (
20). A parameter called a virtual population does not correspond to a strict variable of a population size variable such as in a population-based algorithm.
Compare with
, and use the selected position
to evaluate the fitness function to obtain the next-generation winner solution. The update operation of PV is shown in Algorithm 4.
Algorithm 4 Updating PV for new candidates. |
- 1:
for to do - 2:
- 3:
- 4:
- 5:
end for
|
Algorithm 5 represents the pseudo code of the steps of the compact PIO. Sampling by probability model simulates the population-based iterative process of the original PIO. The virtual population is represented in its probability.
The simplified steps for Hybrid Parallel and compact PIO (PCPIO) are as follows. First, the entire population is divided into G sub-populations, and the objective function fitness of the algorithm and the communication cycle of the algorithm are set. Next, enter the compact policy and assess the results of the current to find the best solution. Finally, check whether the current number of iterations meets the setting. If it is not satisfied, go to the second step to continue the iteration; otherwise, the position of the best pigeon and the output fitness value will be recorded. Algorithm 6 shows the overall pseudo code of PCPIO, where
G is the number of sub-populations,
is the number of pigeons per group,
R is the map and compass operator, usually set to 0.2,
T is the inter-species communication cycle, and
is the compact program.
Algorithm 5 The Compact PIO (CPIO). |
- 1:
Initialization phase according to Algorithm 2 - 2:
while stop criteria are not met do - 3:
Generating by - 4:
Enter map and compass operator; - 5:
Update Pigeons via Equations ( 11) and ( 12) - 6:
Select by Compete via Algorithm 3 - 7:
[winner, loser] = compete (, ); - 8:
Fnew=f (newPos); - 9:
Update PV scheme , , via Algorithm 4 - 10:
Global best update; - 11:
[winner, loser] = complete (, ); - 12:
Update and ; - 13:
Enter landmark operator - 14:
Finding virtual pigeons with the ability to know the way according to the iterative process of the first stage - 15:
Virtual population shrinking via Equation ( 14) - 16:
Update Pigeons via Equation ( 15) - 17:
Select by Compete via Algorithm 3 - 18:
[winner, loser] = compete (, ); - 19:
Fnew=f (newPos); - 20:
Update PV scheme , , via Algorithm 4 - 21:
Global best update; - 22:
[winner, loser] = complete (, ); - 23:
Update and ; - 24:
t = t + 1; - 25:
end while
|
Algorithm 6 Pseudo code for Parallel and Compact Pigeon-Inspired Optimization (). |
- 1:
Initialization - 2:
generate subgroups, each G has pigeons - 3:
set exchanging time T, counter=1; - 4:
solutions in the j-th sub-group with m pigeons, i = 1, 2, ..., m; j = 1, 2, ..., n - 5:
while termination is not satisfied do - 6:
for to m do - 7:
according to Algorithm 5 - 8:
end for - 9:
if mod (t,T)==0 then - 10:
according to Algorithm 1 - 11:
Find the current best fitness solution - 12:
end if - 13:
t+1 - 14:
end while
|
5. Experiment with Numerical Optimization Problems
To evaluate the performance of the PCPIO algorithm proposed in this paper, the test function in [
19,
37] was used as the criterion. Detailed information about the function is given in
Table 1,
Table 2 and
Table 3, where
represents the theoretical minimum of the test function. PCPIO, PIO, PSO, and CPIO were compared.
Table 4 gives detailed experimental results. The number of iterations of PIO and its improved algorithm were 120 times in the first stage, 80 times in the second stage, and 200 times of PSO operation.
The simulation method proves that the method works well, but the lack of real photovoltaic equipment to perform the experiment will have more parameters affecting the experimental results. The experiments were performed on a system with Windows 10 and a CPU of i7-4710MQ 2.5 GHZ. The software environment was MATLAB R2016b.
The parameters of the algorithm were set as follows. The virtual population size was 120. The number of dimensions in the solution space was set according to the references. Each test function was required to run 30 times, and its average and variance were taken after the end of the run. The entire population communicates once every 20 times. PIO, CPIO, PCPIO, and PSO were compared with experiments. From the comparison results in
Figure 4,
Figure 5 and
Figure 6, PCPIO has faster convergence speed and more accurate target values in high dimensions. Comparing PCPIO with other algorithms in this paper, for the convergence speed and the optimal value reached, more than half of the test functions analyzed from the experimental results show that PCPIO is quite competitive. PCPIO has greater competitiveness.
6. Applied PCPIO Based MPPT Technique for PV Systems
Applied for PV Systems
As a new type of bionic evolutionary algorithm, the working process of the PIO algorithm is to iteratively update the parameters and finally approach the optimal solution. In addition, while the PIO algorithm optimizes global parameters, it can also identify each pigeon as a solution to solve the optimization and search problems. The solution to this problem is the result of elimination after each pigeon evolved and compared. Under complex lighting conditions, the PU characteristic curve of the photovoltaic array becomes a multi-peak state. The traditional single-dimensional algorithm cannot distinguish the difference between the extreme values, which may lead to local optimization and cause power loss.
Figure 7 and
Figure 8 show the characteristics of P–V and I–V with cover and MPP optimization using PSO and PCPIO. The results show that PCPIO is better than PSO to find the maximum power point that PCPIO and PSO can reach with cover. The basic principle of PCPIO-based MPPT can be explained as: during the iterative operation of the objective function, each pigeon records its own speed and compares with its previous position, and finds the closest position to the MPP, which is the optimal value of the group of pigeons
. After the elimination and evolution of the particles, when
reaches the MPP, the function iteration terminates.
Equation (
21) is the fitness function, while parameters
and
are the estimated equivalent losses parameters.
PCPIO performs better under complex lighting conditions, and has the following specific performances: (1) PCPIO algorithm has the ability of global optimization when comparing single-dimensional MPPT algorithm. (2) When comparing PCPIO algorithms with multi-dimensional intelligent algorithms, there are not many parameters, the equations are simple and easy to understand, and it is easy to implement in engineering. (3) In the PCPIO algorithm, setting the inertia weight and the number of particles can control the convergence speed, each particle has memory, and the solution spaces do not interfere with each other.
To conveniently analyze and study the volt–ampere characteristics and external characteristics of photovoltaic cells, we must first model the photovoltaic cells, including photovoltaic cell size, system maximum voltage value, peak power, maximum power range, open circuit voltage, short circuit current, and current and voltage values at maximum power. Using these parameters and the above equation model, a photovoltaic cell simulation model was built in MATLAB.
Figure 9 shows the MPPT algorithm model is shown.
Figure 10 shows the PCPIO-based MPPT algorithm model. The specific model parameters are shown in
Table 5.
At the installation site of the photovoltaic array, the temperature and light will inevitably change at any time. Moreover, the shadows generated by moving clouds and other parts will partially block the photovoltaic array and other similar complex lighting conditions. This situation leads to a multi-peak state of the PV characteristic curve of the photovoltaic array, which not only reduces the power generation efficiency of the photovoltaic array, but also the power oscillations it generates and it will reduce the life of the related photovoltaic elements. To solve this problem, this paper proposes PCPIO and MPPT hybrid algorithm.
MPPT was performed on photovoltaic arrays using ordinary perturbation observation methods. The array was composed of three above-mentioned modules in series. The three photovoltaic modules had a temperature of 25
C and a light intensity of 1000, 800, and 600 W/m
. The simulation model uses an algorithm that directly perturbs the duty cycle. As can be seen in
Figure 11, the power of the pure MPPT algorithm is finally stable at about
W, while the hybrid algorithm of PCPIO and MPPT is stable at about
W. Although the traditional variable-step-disturbance observation method is fast and stable, it does not have the ability of global optimization, and the PCPIO algorithm can make up for the above shortcomings.