International Journal of Photoenergy

International Journal of Photoenergy / 2013 / Article
Special Issue

Solar Energy and PV Systems

View this Special Issue

Research Article | Open Access

Volume 2013 |Article ID 583163 | 6 pages |

Maximum Power Point Tracking Method Based on Modified Particle Swarm Optimization for Photovoltaic Systems

Academic Editor: Adel M. Sharaf
Received09 Jun 2013
Accepted20 Sep 2013
Published06 Nov 2013


This study investigated the output characteristics of photovoltaic module arrays with partial module shading. Accordingly, we presented a maximum power point tracking (MPPT) method that can effectively track the global optimum of multipeak curves. This method was based on particle swarm optimization (PSO). The concept of linear decreases in weighting was added to improve the tracking performance of the maximum power point tracker. Simulation results were used to verify that this method could successfully track maximum power points in the output characteristic curves of photovoltaic modules with multipeak values. The results also established that the performance of the modified PSO-based MPPT method was superior to that of conventional PSO methods.

1. Introduction

The output power of photovoltaic (PV) systems is heavily influenced by irradiation and temperature. Thus, the output power of these systems presents nonlinear changes. Maximum power point tracking (MPPT) must be incorporated to stabilize the output power at maximum power points. This research topic is critical for photovoltaic power generation systems.

The voltage feedback method [1] is the simplest of conventional MPPT methods. However, this method requires prior testing of maximum power point (MPP) voltage. In addition, MPPs cannot be tracked when the photovoltaic modules deteriorate and cause the MPPs to change unless re-measurement is performed. The framework of the constant voltage tracking method [2, 3] is simple and does not require complex formulas. This method employs the extreme similarity of MPP voltages under varying amounts of irradiation, using MPP voltage under standard test conditions as reference points to set the operation of the photovoltaic module arrays at these points. However, when the amount of irradiation is low or when photovoltaic module temperatures change, the difference in values between the MPP voltage and the reference voltage becomes substantial, reducing tracking accuracy. The perturb and observe method [4] uses periodical increases or decreases in voltage to perturb the system. If these perturbations increase the output power, the same trend is used to change (i.e., increase or decrease) voltage the following time. If output power decreases, the reverse trend is used to change voltage. However, this method is unable to track MPPs accurately. In addition, the method oscillates near the MPP and increases tracking losses, thereby affecting power generation efficiency. These conventional methods only perform MPPT on module arrays with single-peak characteristic curves. When multipeak values appear in the characteristic curves, these methods frequently track local MPPs and miss global MPPs.

Recently, numerous scholars have presented intelligent MPPT methods [511] for photovoltaic module arrays, both to track MPPs accurately and to improve the dynamic and steady-state tracking performance. However, these methods are applicable only to MPPT in photovoltaic module arrays without shading. Nevertheless, the appearance of multipeak output curves because of partial module shading in photovoltaic module arrays is common. Therefore, the development of an algorithm for accurately tracking the true MPPs of complex and nonlinear output curves is crucial. Reference [12] presented a MPP tracker based on particle swarm optimization (PSO) for photovoltaic module arrays. Although this tracker was capable of tracking global MPPs of multipeak characteristic curves because fixed values were adopted for weighing within the algorithm, the tracking performance lacked robustness, causing low success rates when tracking global MPPs. Even though the MPPs were tracked successfully, the dynamic response speed was low.

Therefore, this study used PSO and added improvements, preventing it from being trapped in local MPPs (i.e., searching only local MPPs) and enabling it to track global MPPs quickly and consistently on the multipeak characteristic curves of photovoltaic module arrays.

2. PV Module Array Characteristic Analysis

Within photovoltaic power generation systems, photovoltaic modules are typically connected to form module arrays using series and parallel methods. When certain modules malfunction or are shaded, their electric current flow is impeded and hot spots occur, damaging the photovoltaic modules. Thus, bypass diodes, through which electric current circulates, are generally installed. This enables the other photovoltaic modules to operate normally. However, when some modules malfunction or are shaded, the output voltage and current of the module arrays decrease, producing multipeak values in the P-V and I-V output characteristic curves.

To find out the output characteristics of series and parallel module arrays when some modules are shaded, a four-series one-parallel photovoltaic module array consisting of HIP 2717 modules produced by Sanyo was investigated. Figures 1 and 2 show the I-V and P-V output characteristic curves of one, two, three, and four modules with 30% shading in the four-series one-parallel module array, simulated using Solar Pro software [13]. The figures show that shading on some modules within the array causes the emergence of multipeak values in the output characteristic curves. In addition, the maximum output power points showed growing declines as the number of shaded modules increased.

3. Particle Swarm Optimization

PSO is an optimization theory presented by Kennedy and Eberhart in 1995 [14]. The theory is an algorithm that uses collective intelligence; it belongs to a branch of evolutionary computation. The two scholars were inspired by the foraging behavior of birds and applied this phenomenon to resolve problems related to search and optimization [15, 16]. Each bird flying in a space is called a particle. All particles moving in the space have fitness values mapped by an objective function and individual velocities, which are used to determine the direction and distance of their movement. Two memory values influence the movement of the particles: and . Each particle stores the best position it is currently seeking in an individual best memory position (). Furthermore, memory intercommunication is present among the particles; the particle swarm compares individual positions to locate the best position and stores this as the swarm best position (). The particle swarm uses this method to revise the direction and velocity of its movement continuously, thereby rapidly converging toward a global optimum.

The PSO calculation process is as follows.(1)Set the number of particles, the maximum number of iterations, the weight, and the learning factors.(2)Initialize the particle swarm and randomly assign positions and velocities for each particle.(3)Substitute the initial positions into the objective function to assess the fitness values for each particle.(4)Compare the fitness values and the individual best memory positions () of each particle to select better positions and update .(5)Compare and the swarm best memory value . If is superior to , update .(6)Use the core PSO formulas to update particle velocities and positions. These formulas are shown as follows: In (1) and (2), and are the velocity and position of particle at iteration , respectively. Variables and are random number generators that generate real numbers between 0 and 1 randomly; these numbers are used to strengthen the variability of the particle swarm. is the weight; and are the learning factors; is the individual optimum of particle ; and is the swarm or global optimum.(7) Stop tracking if the stop conditions are met. Otherwise, rerun Steps 4 through 6. The stop conditions are either locating the global optimum or reaching the maximum number of iterations.

The search efficiency and success rate of PSO are determined primarily by the values assigned for the weights and the learning factors [17]. When the weight is too high, the particle search might lack accuracy because the movement step sizes are too large. However, if the weight is low, particle movement becomes slow, and the local optimum trap might be unavoidable when facing multipeak values. Thus, weighting is typically based on the objective function.

4. PSO-Based MPPT for PV Systems

Conventional PSO is fast and accurate when searching for the output characteristic curves of PV module arrays with single peak values. However, when some modules are shaded, weights in conventional PSO must be readjusted appropriately based on various multipeak curve characteristics. If this is not performed, excessively high or low weights result in tracking failure. Thus, conventional PSO-based MPPT must be modified when some of the modules in a photovoltaic module array are shaded.

To solve these problems, linear decreases in line with increasing iteration numbers were adopted in this study for the weighting of the PSO kernel formulas. The modified weighting formula is as follows: where is the maximum weight, is the minimum weight, is the maximum number of iterations, and is the current iteration number.

The physical meaning of this modified weighting formula is that greater step sizes are used to increase the particle search velocity during the initial search because the distance to the global optimum is relatively large. This prevents an excessively small step size from making local optimum traps unavoidable. However, decreases gradually as the number of iterations increases. Because the particles are now approaching the MPP, these decreases in cause the steps in the particle movements to shrink, enabling the particles to track the MPP more accurately.

In addition, the output curve of the photovoltaic module array appears only in the first quadrant. Therefore, regions with output power below zero cannot be optimum positions, and the lower limit for particle tracking is set to zero; that is, particles automatically return to zero when tracking regions with values of less than zero. This greatly reduces the time wasted by particles tracking in erroneous regions. The predicate for these conditions is as shown in (4): The value obtained in (4) is the solution of (2):

Figure 3 shows the proposed system architecture for modified PSO-based MPPT control. This system contains two major subsystems: a boost converter and a MPPT controller. The MPPT controller is used to control the duty cycle of the boost converter [18], allowing the photovoltaic module array to output maximum power despite partial shading of some modules.

5. Simulation Results

MATLAB software [19] was used to simulate and compare the application of the conventional and modified PSO-based MPPT control methods to track photovoltaic module arrays in four shading situations. The first test situation involved one module with 30% shading and one module with 55% shading in a four-series one-parallel module array. Figure 4(a) shows this P-V characteristic curve, and Figure 4(b) shows the results of a comparison between the conventional (with a weight of 0.4) and modified PSO-based MPPT methods. The figures indicate that the P-V characteristic curve exhibited three peak values when the two modules in the same series had differing amounts of shade. In this situation, the conventional PSO-based MPPT method could track only local maxima, whereas the modified PSO method could track global MPPs. The modified PSO method also had a faster response speed than the conventional PSO method. In the second test situation, one module was shaded 25% and the other (in another series) was shaded 30% in the four-series one-parallel module array. Figure 5(a) shows the P-V characteristic curve, and Figure 5(b) shows the results of a comparison between the conventional (with a weight of 0.4) and modified PSO-based MPPT methods. Under these working conditions, the P-V characteristic curve had two peaks. The MPPT results in Figure 5(b) indicate that the conventional PSO method tracked the local optimum for the first peak and was unable to avoid the local maximum trap. In contrast, the modified PSO method successfully tracked the global MPP. In the third test situation, one module was shaded 25% and the other was shaded 30% in a two-series two-parallel module array. Figure 6(a) shows the P-V characteristic curve, and Figure 6(b) shows the results of a comparison between the conventional (with a weight of 0.4) and modified PSO-based MPPT methods. Figure 6(b) indicates that although the conventional PSO method was also able to track the true MPP successfully, its response speed was substantially slower than that of the modified PSO method. The fourth test situation involved a four-series one-parallel module array without any shading. Figure 7(a) shows the P-V characteristic curve, and Figure 7(b) shows the results of a comparison between the conventional (with a weight of 0.4) and modified PSO-based MPPT methods. The figures indicate that the modified PSO method was also able to track the true MPP accurately without the occurrence of multipeak characteristic curves. In contrast, because weighing was maintained at 0.4, the conventional PSO method was unable to track the true MPP. Figure 7(c) shows that both the conventional and the modified PSO methods could track the true MPP when the weighting of conventional PSO method was adjusted to 0.7. However, the modified PSO method still had better response performance in dynamic tracking.

The weight of the conventional PSO method tested in this study was set at 0.4, with which its tracking success rate was the highest when the modules were shaded. Without shading, because output power increased substantially, the weight of the conventional PSO method was reset to 0.7 to increase step size during tracking, thereby allowing the tracking success rate to reach 100%. Linear decreases from 0.9 to 0.4 were used for weighting the modified PSO method in both situations. For both tracking methods, the learning factors and were set to a fixed value of 2, and the maximum number of iterations was set to 100. Table 1 shows the detailed parameter settings, and Table 2 shows the comparison results for the success rates of the two methods after 100 tracking attempts. Table 2 indicates that the success rate of the modified PSO method for tracking true MPPs was significantly greater compared to the conventional PSO method regardless of whether, modules were shaded. This is because the modified PSO method employed linearly-adjusted weighting, which enabled it to track true MPPs at a 100% success rate under various shading conditions. In contrast, for the conventional PSO method to reach a 100% success rate regarding single-peak curves and no shading, appropriate weights based on output power were required. Furthermore, tracking using the conventional PSO method frequently became trapped in local MPPs when multipeak characteristic curves appeared.

MethodsParameter values
Weight ( )Learning factors ( )Maximum number of iterations

Conventional PSO method(i) 0.4 with module shading (2, 2)100
(ii) 0.7 without module shading
Modified PSO methodLinearly decreasing:  (2, 2)100
: 0.9;   : 0.4

MPPT methodsModule array configuration and shade conditions
Four-series one-parallel: one module with 30% shading and one module with 55% shading Four-series one-parallel: one module with 25% shading and one module with 30% shading Two-series two-parallel: one module with 25% shading and one module with 30% shading Four-series one-parallel: no module shading

Conventional PSO method75/100 attempts*72/100 attempts71/100 attempts(i) With weight set to 0.4: 49/100 attempts
(ii) With weight set to 0.7: 100/100 attempts
Modified PSO method100/100 attempts100/100 attempts100/100 attempts100/100 attempts

Note: Number of successes/total number of attempts.

6. Conclusion

The modified PSO-based MPPT method presented in this study is a novel algorithm based on conventional PSO. The primary feature of this method is the linear decreases used to adjust weighting, in contrast to the fixed weights adopted by conventional PSO. The modified PSO method was applied to maximum power tracking in photovoltaic module arrays, successfully solving the inability to track true MPPs because of partial module shading in photovoltaic module arrays. The tracking success rate reached 100% for the modified method, and the tracking speed was superior to that of conventional PSO. This could reduce energy loss during the MPPT process, thereby substantially enhancing the power generation efficiency of photovoltaic power generation systems.

Conflict of Interests

The authors of the paper declare that there is no conflict of interest with any of the commercial identities mentioned in the paper.


This work was supported by the National Science Council, Taiwan, Republic of China, under the Grant NSC 102-ET-E-167-001-ET.


  1. A. Barchowsky, “A comparative study of MPPT methods for distributed photovoltaic generation,” in Proceedings of the IEEE Innovative Smart Grid Technologies Conference, pp. 1–7, January 2012. View at: Google Scholar
  2. M. A. S. Masoum, H. Dehbonei, and E. F. Fuchs, “Theoretical and experimental analyses of photovoltaic systems with voltage- and current-based maximum power-point tracking,” IEEE Transactions on Energy Conversion, vol. 17, no. 4, pp. 514–522, 2002. View at: Publisher Site | Google Scholar
  3. Y. S. Xiong, S. Qian, and J. M. Xu, “Research on constant voltage with incremental conductance MPPT method,” in Proceedings of the Power and Energy Engineering Conference, March 2012. View at: Google Scholar
  4. N. Femia, D. Granozio, G. Petrone, G. Spagnuolo, and M. Vitelli, “Predictive and adaptive MPPT perturb and observe method,” IEEE Transactions on Aerospace and Electronic Systems, vol. 43, no. 3, pp. 934–950, 2007. View at: Publisher Site | Google Scholar
  5. K. H. Chao and Y. H. Lee, “A maximum power point tracker with automatic step size tuning scheme for photovoltaic systems,” International Journal of Photoenergy, vol. 2012, Article ID 176341, 10 pages, 2012. View at: Publisher Site | Google Scholar
  6. R. Ramaprabha, V. Gothandaraman, K. Kanimozhi, R. Divya, and B. L. Mathur, “Maximum power point tracking using GA-optimized artificial neural network for solar PV system,” in Proceedings of the 1st International Conference on Electrical Energy Systems (ICEES '11), pp. 264–268, Newport Beach, Calif, USA, January 2011. View at: Publisher Site | Google Scholar
  7. A. H. Besheer, “Ant colony system based PI maximum power point tracking for stand alone photovoltaic system,” in Proceedings of the IEEE International Industrial Technology Conference, pp. 693–698, March 2012. View at: Google Scholar
  8. M. Adly, “An optimized fuzzy maximum power point tracker for stand alone photovoltaic systems: ant colony approach,” in Proceedings of the 7th IEEE Industrial Electronics and Applications Conference, pp. 113–119, July 2012. View at: Google Scholar
  9. K. H. Chao and C. L. Chiu, “Design and implementation of an intelligent maximum power point tracking controller for photovoltaic systems,” International Review of Electrical Engineering, vol. 7, no. 2, pp. 3759–3768, 2012. View at: Google Scholar
  10. H. T. Yau and C. U. Wu, “Comparison of extremum-seeking control techniques for maximum power point tracking in photovoltaic systems,” Energies, vol. 4, no. 12, pp. 2180–2195, 2011. View at: Publisher Site | Google Scholar
  11. H. Zazo, E. del Castillo, J. F. Reynaud, and R. Leyva, “MPPT for photovoltaic modules via newton-like extremum seeking control,” Energies, vol. 5, pp. 2653–2666, 2012. View at: Google Scholar
  12. L. R. Chen, C. H. Tsai, Y. L. Lin, and Y. S. Lai, “A biological swarm chasing algorithm for tracking the PV maximum power point,” IEEE Transactions on Energy Conversion, vol. 25, no. 2, pp. 484–493, 2010. View at: Publisher Site | Google Scholar
  13. K. H. Tang, K. H. Chao, Y. W. Chao, and J. P. Chen, “Design and implementation of a simulator for photovoltaic modules,” International Journal of Photoenergy, vol. 2012, Article ID 368931, 6 pages, 2012. View at: Publisher Site | Google Scholar
  14. J. Kennedy and R. C. Eberhart, “Particle swarm optimization,” in Proceedings of the IEEE International Conference on Neural Networks, vol. 4, pp. 1942–1948, December 1995. View at: Google Scholar
  15. R. C. Eberhart and J. Kennedy, “A new optimizer using particle swarm theory,” in Proceedings of the 6th International Symposium on Micro Machine and Human Science, pp. 39–43, October 1995. View at: Google Scholar
  16. D. Srinivasan, W. H. Loo, and R. L. Cheu, “Traffic incident detection using particle swarm optimization,” in Proceedings of the IEEE Swarm Intelligence Symposium, pp. 144–151, April 2003. View at: Google Scholar
  17. W. H. Han, P. Yang, H. Ren, and J. Sun, “Comparison study of several kinds of inertia weights for PSO,” in Proceedings of the 1st IEEE International Conference on Progress in Informatics and Computing (PIC '10), pp. 280–284, Shanghai, China, December 2010. View at: Publisher Site | Google Scholar
  18. M. Elshaer, A. Mohamed, and O. Mohammed, “Smart optimal control of DC-DC boost converter in PV systems,” in Proceedings of the IEEE/PES Transmission and Distribution Conference and Exposition: Latin America (T and D-LA '10), pp. 403–410, Sao Paulo, Brazil, November 2010. View at: Publisher Site | Google Scholar
  19. MATLAB Official Website,

Copyright © 2013 Kuei-Hsiang Chao et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

2603 Views | 1509 Downloads | 15 Citations
 PDF  Download Citation  Citation
 Download other formatsMore
 Order printed copiesOrder