Optimized Fuzzy Controller Based on Cuckoo Optimization Algorithm for Maximum Power-Point Tracking of Photovoltaic Systems

The performance of a photovoltaic (PV) array depends on temperature, radiation, shading and load size. Conventional maximum power point tracking (MPPT) methods have acceptable efﬁciencies under uniform conditions (irradiance = 1000 W/m 2 and temprature = 25 ◦ C), but in dynamic weather conditions, load changes, and also in partial shading conditions due to the presence of several local maximum power points (MPP) in the P-V characteristic, the conventional tracking method does not work well in ﬁnding the main MPP. To extract maximum power in all conditions, many algorithms have been proposed, all of which have limitations in terms of convergence speed, output power ripple and efﬁciency. This research proposes an optimized Fuzzy Logic Controller (FLC) based on the Cuckoo Optimization Algorithm (COA) for MPPT under uniform conditions, dynamic weather conditions, partial shading and under load changes. Finally, the research compared the simulation results with four other popular methods. According to the simulation observations and the result, COA-FLC overcomes the mentioned limitations such as low convergence speed, output power ripple and low tracking efﬁciency in all conditions. Simulations are performed with MATLAB / Simulink software.


I. INTRODUCTION
Global energy demand has increased exponentially in the last decade and a further substantial rise is expected in the next few decades [1]- [3]. The factors behind are the economic and industrial growth and the expected increase in the world population. The widespread use of fossil fuels is an undeniable fact in modern industrial life and today, with the reduction of fossil fuel resources and their harm to the environment, the need for renewable energy sources has increased. Meanwhile, the solar energy which is available in abundance is free of pollution and it is one of the options that has received a lot of attention [4]- [6]. PV power The associate editor coordinating the review of this manuscript and approving it for publication was Hisao Ishibuchi . generation relishes many paybacks such as pollution-free, maintenance-free, limitlessness and noiselessness. Along with other benefits, the PV systems have some drawbacks as well such as low efficiency between (9-16) %, high installation costs and dependency on weather conditions i.e., radiation intensity and atmospheric temperature, etc. Due to variation in weather conditions and consequently fluctuating irradiance levels, PV systems are facing many challenges to increase output power [7]. The characteristics curves of the PV systems, i.e., current Vs voltage (I-V) and Power Vs Voltage (P-V) possess a nonlinear behavior [8], [9], where at a unique point called maximum power point (MPP), the PV system extracts maximum power at this point and operates at the highest efficiency. The solar energy received by solar cells must be converted in such a way that it can be transferred to VOLUME 10, 2022 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ local and grid loads, which is done using power converters. It is necessary to use converters with high efficiency and low fixed initial cost [10], [11]. The number of MPPT algorithms proposed is enormous [12]. These algorithms vary in cost and complexity, range of effectiveness, required sensors, convergence speed, and hardware implementation. Furthermore, the concept of microgrid in power systems can influence in the various types of converters and MPPT methods. For example, DC or AC types of microgrids can use different types of converters [13], [14]. Among these techniques, hill climbing algorithm, Incremental Conductance (IC) and Perturb and Observe (P&O) are the most common and efficient. P&O, tracks MPP, via sampling the voltage or current of the solar array at regular intervals and then comparing the current PV output power with the previously sampled output power. The purpose of presenting the IC algorithm was to solve P&O problems. This algorithm decides based on the slope of the P-V curve. P&O output power ripples are greater and loses the correct tracking path in the face of rapid climate change and partial shading conditions [15], which has been resolved in IC. The IC algorithm is much more complex than the P&O method. IC technique, has the ability to determine the relative distance to reach the MPP because this technique uses the P-V curve slope to track the maximum power point where the slope size is closer to zero at points closer to the MPP, so it can be determined when the MPP Is achieved. Also, this algorithm has the ability to track the MPP with better accuracy in highly variable weather conditions. The basis of the Hill Climbing method is the disturbance in the work cycle of the converter, which causes disturbances in voltage and current. Simple implementation is the main advantage of these techniques, but these techniques also have problems such as losing track during climate change and low efficiency or low convergence speed [16]. In order to solve these problems, the advanced version of algorithms, such as, improved InC, adaptive InC [17], SPInC [18], improved P&O and self-Adaptive P&O [19] were investigated. Based on studies, it has been observed that upto an extent the advanced versions have resolved the issue of conventional tracking algorithms (conventinal P&O and InC and Hill Climbing). Other MPPT techniques based on neural network, FLC, open circuit voltage and short circuit current method, etc., are also widely used. These methods also have drawbacks and need further improvement. The use of Fuzzy Logic Control (FLC), has become popular in recent times because it can cope with uncertain inputs do not require a precise mathematical model and can handle nonlinear behavior. In FLC algorithm, it is very important to determine the exact parameters of membership functions. Since last few years, the main focus of the researchers in this area is to improve the fuzzy logic algorithm. The authors have proposed the MPPT algorithm based on optimized FLC using Manta Ray Foraging (MRF) optimization algorithm for thermoelectric generation systems [20]. Researchers have optimized fuzzy logic controller parameters using Particle Swarm optimization technique [21]. In a stand-alone PV system, Metaheuristic techniques are used to optimize FLC [22]. The PV efficiency is further improved by the research work on Firefly Optimization Algorithm [23]- [26], Gray Wolf Algorithm [27]- [29], Grasshopper Algorithm [30], Ant Colony Optimization algorithm [30], Genetic Optimization Algorithm [32], [33] and many other algorithms, optimization techniques are also used in the optimal selection of FLC parameters [34]. Ultra-innovative algorithms for determining the output step size and tracking the MPP, have been used in many popular articles such as in [35], the authors have used the cuckoo search algorithm for MPPT.
In this investigation, an FLC algorithm for MPPT is presented and then, the Cuckoo Optimization Algorithm COA, is used to optimize the parameters of the fuzzy system. Despite the high capability of fuzzy systems, most of them have an obvious drawback. In fact, most controllers are designed by trial and error rather than a systematic approach. But in this paper, the method of MPPT using a fuzzy intelligent controller is presented. The parameters of this controller are optimized using the cuckoo algorithm to reduce power fluctuations around the MPP and receive maximum power under different environmental conditions. The reason for the popularity of COA is the efficient use of random search, its simplicity and the smaller number of parameters than other methods. BOOST converter is used as DC-DC converter, which has a simpler design and high efficiency. Finally, COA-FLC is compared with the P&O [17], the genetic algorithm -fuzzy logic controller (GA-FLC) [30], conventional (FLC) and the PV system without MPPT. According to simulation results, the COA-FLC overcomes limitations and is better than other techniques in terms of convergence speed, output power ripple and tracking efficiency under different environmental conditions. All simulations are performed with MATLAB/Simulink software. The COA, is inspired by the Cuckoo bird lifestyle, which has shown good efficiency in solving optimization problems [34].
The rest of this paper is managed as follow: the II section has introduced the PV system. Section III discusses the MPPT algorithm and explains the conventional logical fuzzy controller system. The section three describes the various steps of the cuckoo algorithm and explains how to optimize the FLC parameters. Section IV shows the simulation results of COA-FLC. Section V shows the simulation results under partial shading conditions. Finally, section VI concludes the paper. The advantages of this investigation are listed below: 1. The MPPT method is presented using a COA-optimized fuzzy intelligent controller instead of a trial and error method. 2. BOOST converter is used as DC-DC converter, which has a simpler design and high efficiency. 3. In the proposed COA-FLC, the value of the parameters of the membership functions, the output and input gains and the (FLC) rules are determined as the best possible value to receive the maximum power with the least output ripple. 4. The proposed COA-FLC, is studied under uniform conditions, dynamics, partial shading and load chenges. 5. COA-FLC, can have high efficiency in MPPT, without slowing down the convergence speed and in all conditions it does not lose the correct tracking path.

II. PV SYSTEM A. PV MATHEMATICAL MODEL
A PV module is made of a combination of PV cells connected in various configurations depend on the output current and voltage requirement of a specific system. Among the various models intended for the solar cell, the single diode model is more common. Figure 1, shows a PV cell model.The current obtained from light radiation depends linearly on the radiation, the following equation expresses this relationship: where I scr is the solar cell short-circuit current, G is solar irradiation and G ref is the amount of irradiation at reference conditions in W /m 2 , T and T ref respectively are PV cell temperature in working conditions and at reference conditions in • C, k i is cell's short-circuit current temperature coefficient in A/ • C. The current passing through the diode is also expressed as follows: where I D and v D are the current and voltage of the diode respectively, I O is the saturation current of the diode. V T and T also defined as follows: Applying KCL on the circuit of Figure 1, results in the solar cell current equation as expressed below: Equation (8), determines the relationship between temperature and radiation changes on the cell output current. Table 1, shows the specifications of Green Energy Technology GET-100A-1 module.

B. DC/DC BOOST CONVERTER
The boost converter is based on switching to change the voltage level. The operation of the boost converter in Discontinuous Conduction Mode (DCM) and Continuous Conduction Mode (CCM) modes depends on the switching frequency, the size of the load and the amount of energy stored in the inductor. Converters are typically designed to work in one mode, and in this research, the boost converter is designed to work in CCM mode. Figure 2, shows the boost converter circuit, where it has two modes of operation.
In mode 1, Q is on and d is off: In mode 2, Q is off and d is on: Multiply D by Equation (9), as: Multiply (1-D) by Equation (11), as where adding the equation (13) by (14), one has: Multiply D by Equation (10), as: Multiply (1-D) by Equation (12) as: where subtracting Equation (16) from (17), one has Equations (15) and (18) describe the state-space mathematical modeling of the boost converter. The boostconverter is modeled and simulated based on Equations (15) and (18).     Figure 3 shows the schematic of PV system. This system has three main parts: the PV module, the converter and the control unit: 1. PV module: A Green Energy Technology GET-180B module is used for the simulation. Table 1 shows specification of this PV module. Figures 4 and 5 show the I -V and P -V curves of the module at 25 • C and different radiation levels, respectively. When the radiation level decreases, the MPP also decreases. Figures (6) and (7), show the (I-V) and (P-V) curves of the module at 1000 W/m 2 and different temperature levels, respectively. According to these figures, as the temperature decreases, the MPP) increases.   2. Converter: The connection between the power supply and the load is established by the converter. The DC-DC Boost converter in this paper is an energy conversion unit. By selecting the appropriate PWM signal, the maximum power is transmitted from the solar cell to the load. Boost converter in this research modeled and simulated based on Equations (15) and (18). 3. Control unit: the control unit is responsible for sending the PWM signal to the converter for MPPT.

III. MPPT SYSTEM A. CONVENTIONAL FLC MPPT TECHNIQUE
Fuzzy Logic Controller (FLC), has no complex mathematical operations and is able to control nonlinear processes. The controller behavior depends on the precise setting of the FLC parameters and these parameters are determined by trial and error. The design and implementation of fuzzy logic control is based on three steps:   After defining the set of fuzzy rules and determining the membership functions of the input variables, the fuzzy inference engine must be determined to produce the variable D which is the rate of change of PWM operation period. For this purpose, Mamdani inference method for fuzzy decision making is used (which is used in the implementation of fuzzy controller more than other inference methods).
The output of fuzzy controller is a fuzzy set that contains linguistic variables that must be returned from fuzzy to crisp value to use and apply to the system, which is called defuzzification. For this purpose, the crime center method is used, which is one of the most famous and widely used methods of defuzzification.
The fuzzy controller used to run the MPPT algorithm that has two inputs and one output. The two input variables of fuzzy controller are error E and error changes E, which are  defined by the following equations: where P(k) and V (k) are the instantaneous values of power and voltage of the PV array, respectively. The variable E(k) is the ratio of power changes to voltage changes and indicates that the operating point is located to the right or left of the MPP of the P-V characteristic curve. E(k) is the rate of change of E(k) and indicates the direction of movement of the working point. Figure (10), shows the FLC system while Table 2, shows the fuzzy rules. Properly adjusting the fuzzy rules affects the efficiency of the FLC, the membership functions and the inputs and output gain. So, it is important to determine these parameters accurately. These parameters are found by trial and error. For this reason, in dynamic conditions such as changes in radiation and temperature, conventional FLC does not work well. To improve its performance, the cuckoo algorithm is used to determine the optimal size of FLC parameters.

B. FUZZY CONTROLLER OPTIMIZATION USING CUCKOO ALGORITHM
This paper proposes, the use of the Cuckoo algorithm to optimize the FLC parameters. In the optimization problem, the algorithm looks for the best answer that has the least cost function. The cost function is a function that receives an answer to a problem as input and generates the cost of that answer as output. The Cuckoo algorithm is fully described in VOLUME 10, 2022 reference. As mentioned, a fuzzy control system consists of several parts that we can optimize: • Optimization of membership functions (input/output) • Fuzzy Rule Database optimization • Gain optimization (input/output) In Mamdani fuzzy systems, there are membership functions at both the input and output. These functions are defined by a set of parameters that must determine the optimal values of these parameters. To determine the rules in the fuzzy rules database, the best value of each of these rules is determined by optimization.
Each input enters the conventional FLCwith a gain and the output enters the main system with a gain, the value of which is optimized using the Cuckoo algorithm. The most important part that must be determined in optimization with Cuckoo algorithm is the definition of the objective function. The objective function determines what our goal of optimization is, to minimize system error or to maximize system efficiency. In this paper, the objective function is to minimize the cost function or system error. To measure the cost function (f c ), the Integral of the Square Error (ISE) is used, which is obtained from the following equations: where P max is the maximum power of the panel and P(t) is the output power of the system at any time. The optimization of the input membership functions (E(K ) and E(K )) has been shown as: • Minimize FLC-Cost-Value (dP-PB, dP-PS, dP-ZE, dP-NS, dP-NB) with the conditions (dP-PB > dP-PS > 0, 0 > dP-NS > dP-NB, dP-PB<POS max , dP-NB > NEG max ) The optimization of the output membership function (D) is provided as: • Minimize FLC-Cost-Value (dP-PB, dP-PM, dP-PS, dP-ZE, dP-NS, dP-NM, dP-NB) with the conditions (dP-PB > dP-PM > S dP-PS > 0, 0 > dP-NS > dP-NM > dP-NB, dP-PB<POS max , dP-NB > NEG max ) There are five membership functions for each of the inputs and seven membership functions are provided for the output in order to be able to consider more details. In order to fully implement the Cuckoo algorithm in optimizing the parameters of membership functions input/output and Fuzzy rule database optimization and Gain optimization input/output, the following steps must be performed: Step 1 (Algorithm Parameters Selection): The cuckoo algorithm, like all optimization algorithms, consists of an initial population in which each cuckoo has a place in the problem space. If the number of Cuckoos is more, then the optimization results will be more accurate. the large number of cuckoos slows down the convergence rate. But because parameter optimization is done offline, it has no effect on convergence speed. Therefore, the number of cuckoos that are to lay eggs must first be determined.
The number of cuckoos is considered N CS = 10. During the implementation of the algorithm the number of cuckoos changes because each of these cuckoos goes and lays eggs in the nest of the host birds and some of these eggs become mature cuckoos which is added to the total number of cuckoos. In COA, if a higher number of cuckoos and more number of a membership functions are determined, the simulation accuracy will increase. However, numerous membership functions and cuckoos lead to slower dynamics of the controller. Since the optimization of membership functions is defined and solved offline, the dynamic speed of the controller is not reduced.
Therefore, it is necessary to determine a parameter that determines the maximum number of cuckoos that can live in the algorithm simultaneously, which is equal to the parameter of the maximum number of live cuckoos in a generation, its number selected as N CS−max = 15. Another parameter is the maximum and minimum number of eggs that each cuckoo can have that selected as Egg min = 3 and Egg max = 5. Also, the number of clusters that we want to make is considered as N cluster = 4 and Maximum iterations of the cuckoo algorithm is selected as Maxiter=50.
Step 2 (Generating Initial Cuckoo Habitat): The number of cuckoos is 10, therefore, ten places must be randomly determined, each of which corresponds to an answer in the problem space. The location of each cuckoo determines the laying center of each cuckoo. In COA, the values of the problem variables are introduced with an array. In the cuckoo algorithm, these arrays are called habitats. Each habitat defines a candidate response in the problem space. Habitats show eggs or cuckoos: where (x 1 , x 2 , . . . , x Nvar ) are floating point numbers.
Step 3 (Laying Cuckoos in the Radius Specified for Each Cuckoo): Cuckoos should lay eggs in a circle to the center of each cuckoo's location and within a radius of Egg Laying Radius (ELR). ELR, of each cuckoo is calculated from the following equation: α is an integer that manages the maximum value of ELR. NEgg c shows the Number of current cuckoo's eggs and NEgg t shows the total number of eggs, Var hi and Var low show the maximum and minimum values of the parameters respectively. Cuckoos randomly lay eggs in the host bird's nest in their ELR. According to Figure 11, the red star represents the cuckoo and the other stars represent the cuckoo's eggs. The cuckoo lays its eggs randomly at a specified radius.
Step 4 (Evaluation of Cuckoos and Eggs Related to Each Cuckoo): The profit of each cuckoo's place should be evaluated. If the eggs are not detected by the host bird and grow, it can be said that these eggs are more suitable spaces for searching and laying eggs in the problem area. The profit of the cuckoos' location is determined by the cost function.
The Ackley function is used as the Benchmark function. Algorithm sends the answers to the Ackley function and the output is calculated. Whatever the output value is closer to zero, then the profit of the cuckoo place is higher.
Step 5 (Cuckoo Clustering Using the k-Means Algorithm): The basic argument in the cuckoo algorithm is the clustering argument, which is the global search that runs in the overall space of the problem. Clustering means habitats that are in the problem space and randomly selected should be clustered. In this research, the number of clusters is considered equal to 4 (in the simulations performed, the most appropriate value of the k parameter for the K-means algorithm is between 3 and 5). For cuckoo clustering the k-Means algorithm is used.
Step 6 (Evaluate the Cost of Clusters and Select the Best Cluster and Best Cuckoo of Best Cluster as Target): After clustering, the cost of each cuckoo should be determined by averaging the cost of cuckoos in each cluster, the cost of each cluster is determined. Clusters that cost less are more valuable and are defined as target clusters. The cuckoo with the lowest cost in the target cluster is selected as the target cuckoo. Target clusters contain answers that are closer to the global standard, are selected as target clusters because as the population moves toward the target cluster, the algorithm can start a local search at that location.
Step 7 (Migration of Cuckoos to the Target): Cuckoo chicks, after maturing, migrate to new places (better places) to lay eggs. New places or places where the chances of eggs surviving are higher (places that have a lower cost function). As mentioned, the best cluster is selected as the target cluster for the other clusters. In the movement of cuckoos towards the target cluster, the cuckoos do not choose a direct path to the target and will have a deviation, which prevents premature convergence and more space of the search environment is examined. The coefficient of movement of cuckoos towards the target cuckoo must also be determined, which indicates that the cuckoos do not move directly towards the target cuckoo, but will move towards the target with a coefficient. The target cuckoo is the best answer in the best cluster.
The general shape of the space in Figure 12, the answers that are within a range of search space are in a cluster. Cluster 3, is assumed to be the target cluster in the image and the purple star is the target cuckoo.
Other cuckoos do not move directly to the target cuckoo but move at an angle and settle in the new habitat. As seen in the Figure 12, the cuckoos are not exactly at the target cuckoo's location and with an ϕ radian deviation, they fly by λ % from the distance of each cuckoo to the target cuckoo's location and choose it as a new location.
where the best value for ω is π/ 6. λ is determined randomly.

C. DETERMINING FUZZY VARIABLES AND OPTIMIZATION START USING CUCKOO ALGORITHM
Cuckoo algorithm for setting parameters of membership functions and input/output Gains and rules in MPP tracking starts with an initial duty cycle. V(k), V(k-1), i(k), i(k-1) are measured to calculate the power of P(k) and P(k-1). Then, depending on whether the power increases or decreases, controller selects the size of duty cycle changes. Tracking process continues until the MPP is found.
Cuckoo Search was developed in 2009 by Xin O Young and Deb Savosh. Then, in 2011, the COA, was presented by Ramin Rajabiun.
In this algorithm, each cuckoo has two important characteristics: • Position • Profit The position of each cuckoo is determined by randomly selecting the variables that the problem wants to optimize and the value of these variables is randomly selected between the Var hi and Var low .
The profit of each cuckoo is also determined according to Equation (25). In optimizing the parameters of membership functions, it is assumed that the system behaves symmetrically about the vertical axis. This means that the system VOLUME 10, 2022    functions of each input, which are defined as follows:    -Fuzzy rules optimization: For the fuzzy rules, according to Figure 15, diameters parallel to the main diameter are considered. Put Table 2 in Figure 15, and each of the diameters parallel to the main diameter is defined as a row of the 'S' representation, which in optimization determines which membership function each of these              11 (38) G out = x 12 (39) Therefore, the total number of optimization variables is equal to: The upper and lower ranges are determined for each of these variables: After defining the fuzzy variables, the cuckoo algorithm is executed according to the said steps and finds the optimal value of these variables. The improved algorithm is called COA-FLC (Cuckoo Optimization Algorithm-Fuzzy Logic Controller) and COA-FLC flowchart is shown in Figure 16.

IV. SIMULATION AND DISCUSSIONS
To demonstrate performance of the COA-FLC algorithm, this algorithm is used to track the MPP of a Green Energy Technology GET-180B module. MATLAB / Simulink is used for simulation. In order to show the competence of COA-FLC algorithm, its output results are compared with GA-FLC algorithm and conventional FLC algorithm, P&O algorithm and PV system without MPPT. The step size of IC and P&O algorithms is determined in such a way that all three conditions of good convergence speed, high efficiency and low ripple are met.
In the first step of the simulation, there are four algorithms that are compared at T = 25 • C and a radiation intensity of 1000 W/m2. According to Figure 17, all four algorithms with different efficiencies and ripples with different convergence speeds track the MPP. Table 3, compares these algorithms at    Table 3, COA-FLC has the best performance among the five simulated methods and GA-FLC has the closest performance to COA-FLC. P&O output ripple is very high and less efficient than fuzzy algorithms. Figures 18 and 19, shows PV array voltage, current and power at 1000 W/ m2 at 25 • C for the COA-FLC algorithm at 100 %, 85 %, 75 %, 65 % of the nominal load. Also, figure 19 shows the settling time of each algorithm. According to the figure, the settling time of the proposed algorithm is t = 0.016 s and the P&O algorithm with t = 0.017 s is the slowest algorithm. As shown in the figure, the settling time of all algorithms is a little different from each other and since they are not significantly different from each other, they are assumed to be almost equal. The dynamic and static performance of the FLC and GA-FLC controllers is the same. COA-FLC has higher efficiency and has less output power ripple.
In the second step of the simulation, algorithms are compared at T = 25 • C and a radiation intensity of 900 W/m 2 to determine effect of radiation reduction on the efficiency of the algorithm. According to Figure 20, all four algorithms with different efficiencies and ripples with different convergence speeds track the MPP. Table 4, compares these algorithms at 25 • C and 900 W/m 2 . Figure 21,  shows PV array Simulation results at irradiation = 900 W/m 2 and T = 25 • C for COA-FLC.
In the third step of the simulation, four algorithms are compared at T = 25 • C and a radiation intensity of 800 W/m 2 . According to Figure 22, all four algorithms with different efficiencies and ripples with different convergence speeds track the MPP. Table 5, compares these algorithms at 25 • C and 800W/m 2 . According to the results of Table 5, the COA-FLC algorithm has the best efficiency and the lowest output power ripple. Figure 23, shows PV power and Figures 24, shows the PV array voltage and current at irradiation = 800 W/m 2 and T = 25 • C for COA-FLC at 100 %, 85 %, 75 %, 65 % of the nominal load. The dynamic and static performance of the FLC and GA-FLC controllers is the same. COA-FLC has higher efficiency and has less output power ripple. Figure 25, are compared at T = 15 • C and a radiation intensity of 1000 W/m 2 . Table 6, compares these algorithms at 15 • C and 1000 W/m 2 . Figure 26, is compared at T = 35 • C and a radiation intensity of 1000 W/m 2 . Table 7, compares these algorithms at 35 • C and 1000 W/m 2 .
In the next step of the simulation, these four algorithms are compared at 45 • C and 1000 W/m 2 . According to Figure 27, and Table 8, the COA-FLC algorithm has the best efficiency and the lowest output power ripple. According to the figure, the P&O algorithm has a poorer performance than the fuzzy algorithms in the dynamic mode and less efficiently in the steady state than the fuzzy algorithms. Figure 28, compares the performance of these five methods under dynamic conditions for 25 • C at five radiation intensities of 1000, 950, 850, 750, 650 W/m 2 .
According to the figure 28, the P&O algorithm has poor performance in dynamic conditions and in the conditions of increasing and decreasing radiation, it loses the tracking path and after a few iterations that cause power loss, it has found the right path.
In steady state, P&O algorithm was less efficient and more power ripple than the fuzzy algorithms. Among the fuzzy algorithms under both constant and dynamic conditions, the output power was higher when the controller parameters were optimized with COA compared to the conventional fuzzy controller and FLC optimized with GA.
Also, the output power ripple in COA-FLC method was less. In addition, COA-FLC has never lost right path in terms of increasing and decreasing the intensity of radiation and has less power losses than other methods. Figure 29, shows output current and voltage of COA-FLC in dynamic conditions.
According to the simulation results, all five methods were able to track the MPP with different efficiencies and convergence speeds and different ripples. In all cases, the COA-FLC algorithm performed best. Of the other four methods, the GA-FLC algorithm performed better.

V. PARTIAL SHADING
This step of the simulation investigates the performance of the algorithms under partial shading conditions. in this step, the three Green Energy Technology GET-180B modules are series to each other according to Figure 30.
The simulation of this section has been done in three radiation patterns: -In pattern 1, All three modules are irradiated with 1000 W/m 2 . -In pattern 2, the first and second modules are irradiated with 1000 W/m 2 and the second module is irradiated with 400 W/m 2 . -In the third pattern, the first module is exposed to 1000 W/m 2 radiation and the second module is subjected to 700 W/m 2 radiation and third module is irradiated with 400 W/m 2 . Therefore, in pattern one, all three modules are under uniform conditions, but in the other two patterns, the second and third modules are partially shaded. The P-V curve of each of these patterns and PV array output power are shown in Figure 31 (a, b), and the maximum power of each pattern is also shown in the figures.
According to the simulation results: -As shown in Figure 31, in pattern 1, the COA-FLC algorithm tracks power at 99.6 % efficiency. The GA-FLC tracking efficiency is 99 % and the FLC and P&O tracking efficiency is 98.1 % and 96.6 %, respectively.
-On the other hand, in pattern 2, the COA-FLC algorithm tracks power at 99.4 % efficiency. The GA-FLC tracking efficiency is 95.9 % and the FLC and P&O tracking efficiency is 87.1 % and 72.1 %, respectively.
-And in pattern 3, the COA-FLC algorithm tracks power at 99.7 % efficiency. The GA-FLC tracking efficiency is 97.3 % and the FLC and P&O tracking efficiency is 94.3 % and 92 %, respectively.

VI. CONCLUSION
In this research, a new adaptive FLC using the COA is proposed. In the improved MPPT system of this paper, the parameters of the fuzzy controller were controlled by the COA and it was observed that the improved COA-FLC algorithm was able to extract the maximum power from PV by presenting the optimal step size and applying it to the boost converter. The three popular algorithms, the P&O algorithm and the Genetic Algorithm -Fuzzy Logic Controller (GA-FLC) and conventional FLC have been used to test the proposed COA-FLC performance at different radiations and temperatures and under uniform conditions, dynamic weather conditions, partial shading and under load changes. The output power of the COA-FLC method has been increased by approximately 4.94 % compared to conventional FLC under uniform conditions (temperature 25 • and intensity of 1000 W/m 2 ). In fact, the COA-FLC efficiency in these conditions is almost equal to 100 %. The power ripple in COA-FLC is 0.5 W, which is one third of the GA-FLC method ripple, and the FLC ripple is 2.5 W, which is five times more than the power ripple in COA-FLC. The convergence speed and settling time of the algorithms are almost equal. Indeed, COA-FLC improves the convergence speed, reduces output power ripple, and increases the system efficiency.

DATA AVAILABILITY
The data that supports the findings of this study are available within the article. He has published several papers in the national and international journals. He is a member of the IEEE Control Systems Society and serves as a member for program committee of several international conferences. He is an associate editor of several international scientific journals and has acted as a symposium co-chair/the track co-chair in numerous IEEE flagship conferences. He has been a world's top 2% scientist from Stanford University, since 2019, and has been ranked among 1% top scientists in the world in the broad field of electronics and electrical engineering. He is also recognized in the list of Top Electronics and Electrical Engineering Scientists in Iran. His research interests include control theory, sliding mode control, robust tracking, non-holonomic robots, and chaotic systems. He was an Assistant Professor with the Department of Electrical Engineering, Abhar Branch, Islamic Azad University, Abhar, Iran. Since 2020, he has been a Research Fellow with Trinity College Dublin, Dublin, Ireland. His current research interests include renewable energies, grid integration of renewable energies, DGs, microgrid, power electronics, FACTS devices, power system stability, and control.
AFEF FEKIH (Senior Member, IEEE) received the B.S., M.S., and Ph.D. degrees in electrical engineering from the National Engineering School of Tunis, Tunisia, in 1995, 1998, and 2002, respectively. She is currently a Full Professor with the Department of Electrical and Computer Engineering and the Chevron/BORSF Professor in engineering with the University of Louisiana at Lafayette. Her research interests include control theory and applications, including nonlinear and robust control, optimal control, fault tolerant control with applications to power systems, wind turbines, unmanned vehicles, and automotive engines. She is a member of the IEEE Control Systems Society and the IEEE Women in Control Society.