## 1 Introduction  
Solar energy is a source of renewable energy, and a PVMA can convert it into electrical power available for use. Since the process of photovoltaic power generation releases hardly any greenhouse gases (GHGs) or other contaminants, the environmental impact is quite limited, which helps in mitigating global climate change as well as reducing air and water contamination. Therefore, solar energy has become an ideal source of alternative energy in recent years [1; 2]. In a photovoltaic power generation system, if the PVMA connects to the load directly, the output power of the module array is determined by the load; thus, the output power of the PVMA cannot reach the maximum value. The output characteristic curve of the PVMA is determined by the temperature and solar irradiance [3]; the two continuously change over time. Therefore, to enhance the power generation efficiency of the PVMA, an MPPT controller must be used. At present, common and conventional MPPT methods include the constant voltage method (CVM) [4; 5; 6], the power feedback method (PFM) [7; 8] and the perturb and observe method (P&O) [9; 10; 11]. A continuous change in solar irradiance and the appearance of shade will have an impact on the characteristic curve of the PVMA, and these factors could generate multiple peak values on the P-V characteristic curve [12], which could lead to failure of tracking the GMPP with the conventional MPPT method; thus, the power loss is increased and the conversion efficiency is reduced. To solve the problem of multiple peak values on the P-V characteristic curve, experts and scholars have proposed many smart MPPT methods in recent years [13]. The objective of these methods is to achieve higher power generation efficiency of a PVMA in circumstances of unstable solar irradiance and multiple peak values. The most common smart algorithms include particle swarm optimization (PSO) [14], firefly algorithm (FA) [15; 16; 17], grey wolf optimization (GWO) [18; 19], artificial bee colony (ABC) [20], and cat swarm optimization (CSO) [21]. Among them, PSO [14] is an optimization algorithm based on swarm intelligence inspired by the collective behavior of social organisms such as birds or fish in nature. Usually, PSO is implemented to solve the problem of value optimization, which enables the allocation of the global maximum value of one target function. The fundamental concept of PSO is to search for the optimum by simulating the movement of a particle (also referred to as an individual) in the search space using collaboration. Compared to other algorithms, PSO is simpler and requires fewer evolution swarms. However, PSO needs to be set with adequate initial parameters, such as particle quantity and speed range, and incorrect parameter setting might lead to a longer duration for tracking the GMPP. FA [15; 16; 17], an optimization algorithm of swarm intelligence that was proposed by [PERSON] at Cambridge University in 2008, was inspired by the flickering behavior of fireflies in nature. The algorithm mimics the behavior of fireflies in terms of mutual attraction via flashing signals. In this algorithm, the luminance of fireflies is directly proportional to the level of attraction: fireflies with higher luminance generate a greater attraction for nearby fireflies. When the luminance becomes the same, the fireflies move randomly; thus, the brightest firefly will be the optimum. The advantages of FA include fewer parameters, a more extensive range for searching, fast convergence, and more stable performance, while the disadvantage is that this algorithm might be stuck tracking the LMPP when its function has multiple peak values. GWO [18; 19], an inspired optimization algorithm based on the social behavior of grey wolves in nature, has been extensively applied to track the GMPP of a PVMA. The objective is to search for the optimal target, which means tracking the MPP of the PVMA. By simulating the collaboration and leading behavior of grey wolves, the algorithm can track the MPP at a certain moment.