# Applications of Artificial Intelligence to Photovoltaic Systems: A Review
## 3 Artificial Intelligence Applied to PV Systems
### Maximum Power Point Tracking (MMPT)
#### 3.2.2 Metaheuristics  
Metaheuristics [47] are algorithmic approaches specialized in solving problems that are not possible to directly find the best solution in a feasible amount of time. They will search the solution space in order to identify the best solution that they can find. In this section, the most important metaheuristics applied to this problem are reviewed. These kinds of algorithms can be used alone or with the aid of other algorithms. One of the most common classifications for metaheuristics [47] is the differentiation between the algorithms that try to imitate the behavior of animals or things of nature (ants, bees, particles, etc.) and the algorithms which are focused on imitating the basis of genetics. \begin{table}
\begin{tabular}{l l} \hline \hline
**Method** & **Features** \\ \hline \multirow{6}{*}{FLC [22; 23; 24; 26; 46]} & FLC systems provide quick responses to changes and low oscillations near MPPT that reduce the power loss compared with traditional systems. The combination with FCN or the initial estimation of the MPP voltage further improves the results. \\ \cline{2-3}  & Type-2 FL provides the methods to model and handle uncertainties, boosting the robustness of the system and hence its results. \\ \hline \multirow{6}{*}{T-S [35; 36; 37]} & The parallel distributed control provided by the T-S FL further improves the results of FL systems, having an acceptable settling time, less oscillations and an accurate output. \\ \cline{2-3}  & Combined with other methods [40; 41; 42; 43; 44; 45] & Other methods can take advantage of the benefits of FLC systems to improve their results in MPPT. \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Fuzzy Methods for MPPT. Genetic Algorithms (GA) [48] are one of the most important genetic metaheuristics because of their capacity to find great solutions to many problems, commonly used as a way to improve the performance of other Artificial Intelligence techniques. In [49], GA are used to optimize the training data for an ANN of 5 hidden nodes. The objective of the GA was to produce a smaller and more effective input dataset. The GA is used to remove the unnecessary data, reducing the error at the end of the network training. This technique can be also used with other techniques, as it is independent of the model that is applied afterward. In [50], a GA is used to determine the number of neurons of an ANN. The number of hidden neurons is one of the key problems of optimizing an ANN since it can improve its performance but can also slow its training. Three different objective functions were tried on the GA. The best neural network was found with 5 hidden nodes. In [51], they are used to optimize the membership functions on an FLC system. The chromosomes decode the shape of these functions; the algorithm will try to minimize the quadratic function based on the error between the desired power and the maximum power delivered by the system. The results show faster convergence and a more stable tracking, which leads to reduced oscillations. Behavior-oriented metaheuristics can also be used to solve MPPT. Particle Swarm Optimization (PSO) [52] is also used for this. Each particle is initialized with a value in the voltage search interval. Each particle is evaluated by the inverse of the PV power; after that, each particle will have its position and velocity updated. Finally, a new evaluation will be performed until all iterations have been carried out. Ref. [53] showed a better performance than other methods, being able to operate even on rapidly changing atmospheric conditions. The work by [54] proposed the use of an Accelerated PSO. This algorithm combines PSO and Permute and Observe to accelerate MPP searching. It also offers a higher convergence speed and better dynamic response compared with PSO. Another important metaheuristic is the Firefly Algorithm (FA), developed by [55] for solving multimodal problems, and it has also been used to solve MPPT. The algorithm mimics how fireflies interact with each other using their lights.