Model Predictive Control: A Review of Its Applications in Power Electronics

Model-based predictive control (MPC) for power converters and drives is a control technique that has gained attention in the research community. The main reason for this is that although MPC presents high computational burden, it can easily handle multivariable case and system constraints and nonlinearities in a very intuitive way. Taking advantage of that, MPC has been successfully used for different applications such as an active front end (AFE), power converters connected to resistor inductor RL loads, uninterruptible power supplies, and high-performance drives for induction machines, among others. This article provides a review of the application of MPC in the power electronics area.

M odel-based predictive control (MPC) for power converters and drives is a control technique that has gained attention in the research community. The main reason for this is that although MPC presents high computational burden, it can easily handle multivariable case and system constraints and nonlinearities in a very intuitive way. Taking advantage of that, MPC has been successfully used for different applications such as an active front end (AFE), power converters connected to resistor-inductor RL loads, uninterruptible power supplies, and highperformance drives for induction machines, among others. This article provides a review of the application of MPC in the power electronics area.
MPC presents a dramatic advance in the theory of modern automatic control [1]. MPC was originally studied and applied in the process industry, where it has been in use for decades [2]. Now, predictive control is being considered in other areas, such as power electronics and drives [3]- [6]. The reason for the growing interest in the use of MPC in this field is the existence of very good mathematical models to predict the behavior of the

A Review of Its Applications in Power Electronics
variables under control in electrical and mechanical systems. In addition, today's powerful microprocessors can perform the large amount of calculations needed in MPC at a high speed and reduced cost.
The research works published between 2007 and 2012 in IEEE Xplore have been analyzed by performing a search using the keywords "predictive" and "power converters." This search generated more than 200 papers on MPC applied to pulsewidth modulation (PWM) power converters published in conferences and journals [7]. The applications covered by these research works can be categorized into four main groups: gridconnected converters, inverters with RL output load, inverters with output inductor-capacitor (LC) filters, and high-performance drives. Figure 1 shows how these research works are distributed among these four groups. It is also interesting to study how these categories have attracted the attention of the research community in recent years. Figures 2 and 3 present information about this issue. Figure 2 shows that grid-connected converters and highperformance drives are the application where researchers have paid more attention, being a current focus of interest. Figure 3 shows how research community attention has not decreased in this period and is still increasing. It should be noted that, for all categories, the cumulative line trends are positive.
This article presents the use of MPC for the four main categories of applications for PWM power converters that can be found in the literature. This includes various applications such as grid-connected converters, inverters with RL output load, inverters with output LC filters, and high-performance drives. The basic issues of wellestablished MPC algorithms are presented for these applications, and new challenges for MPC control for power converters and drives are also addressed.

The MPC Control Strategy
Predictive control is understood as a wide class of controllers-the main characteristic is the use of the model of the system for the prediction of the future behavior of the controlled variables over a prediction horizon, N. This information is used by the MPC control strategy to provide the control action sequence for the system by optimizing a user-defined cost function [8]. It should be noted that the algorithm is executed again every sampling period and only the first value of the optimal sequence is applied to the system at instant k. The cost function can have any form, but it is usually defined as where xi is the reference command, x p is the predicted value * i for variable x , i mi is a weighting factor, and index i stands for the number of variables to be controlled. In this simple way, it is possible to include several control objectives (multivariable case), constraints, and nonlinearities. The predicted values, x p , are cali culated by means of the model of the system to be controlled.

MPC for Power Converters
The application of MPC for power converters has increased because of the improvement of digital microcontrollers [3], [9]. This control technique requires a nonnegligible amount of calculations during small sampling times when applied for controlling power converters and drives.
There are several approaches to dealing with the computational burden problem. In some cases, it is possible to solve the optimization problem offline by multiparametric programming; thus, the implementation is reduced to some calculations and a look-up table [10]. Another method involves using predictive     techniques as generalized predictive control (GPC). GPC provides an online solution to the optimization problem and can be used for long prediction horizons without significantly increasing the computational cost [8], [11].
It should be noted that GPC does not take into account the switching of power semiconductors when it is applied for power electronics and drives. Therefore, GPC only gives an exact solution to an approximated optimization problem. This approach can be followed when an explicit solution to the problem can be found. Usually, this requires an unconstrained problem, but it calculates the output voltage reference to the inverter. This voltage should be generated by a PWM or space-vector modulation (SVM) technique. Thus, the GPC technique can take advantage of well-established knowledge about PWM-SVM to optimize some aspects of the power converter systems [12]. Finally, the discrete nature of power converters can be considered for implementing MPC control strategies. In this way, finding the solution to the optimization problem can be reduced to evaluate the cost function only for the prediction of the system behavior for the power converters possible switching states. As a finite number of control actions are evaluated, this approach is called finite-control-set MPC (FCS-MPC). This technique has been extensively used for power converters because of the finite number of switching states they present [6]. Figure 4 shows the block diagram of FCS-MPC, where a generic converter is used to feed a generic load. The converter presents J different switching states. The control objective pursuits that variable x has to follow the reference .

FCS-MPC Control Principle
x * The FCS-MPC algorithm has the following basic steps: 1) Measure and/or estimate the controlled variables. 2) Apply the optimal switching state (computed in the previous sampling period). 3) For every switching state of the converter, predict (using the mathematical model) the behavior of variable x in the next sampling interval x p . 4) Evaluate the cost function, or error, for each prediction as, for instance: * g | x x p |. = -5) Select the switching state that minimizes the cost function, S opt, and store it so that it can be applied to the converter in the next sampling period. As discussed in [13], it is convenient to perform the prediction two time steps ahead to reduce the effects of the delay introduced by the implementation of FCS-MPC in a digital platform. Another possibility to avoid the effect of the computation delay is to use a control strategy that only requires a small computation time. In this way, the optimal switching state is applied to the converter with this small delay and before the following sampling instant [14]. A time diagram of the execution of the FCS-MPC algorithm is presented in Figure 5.

MPC for Grid-Connected Converters
Several applications use grid-connected converters as one of their main components. This application includes an AFE for high-performance drives, rectifiers, and grid integration of renewable energies such as wind or photovoltaic (PV) and energy storage systems. Gridconnected converters are also used in flexible ac transmission systems (FACTS) devices such as static synchronous compensators (STATCOMs), active power filters (APFs), or as a part of a unified power flow controller (UPFC) or a unified power quality conditioner (UPQC) [15]- [17].

Control of an Active Front End
The power circuit of a grid-connected converter through a smoothing inductor, L, is presented in Figure 6. As shown, the main system variables are the grid current, iL,abc, grid voltage, vS,abc, and the output capacitor dc-link voltage, v dc . The load connected to the dc link represents any generic load connected to an AFE. Thus, it can be a resistor for a rectifier, a PV panel, or a converter to control the torque and/or speed of a wind turbine for grid integration of renewable energies.
The main objective of the control strategy is to calculate the output inverter voltage, vI,abc, to regulate the output dc-link capacitor voltage to a * reference, v , dc for any connected load and inject into the grid any reactive power command reference, .
q * There are several alternatives for designing the control algorithm for an AFE. In general, a cascade control structure is used. An external control loop is employed to regulate the dclink voltage. On the other hand, an internal control loop is adopted to track the grid currents or the instantaneous active and reactive power references regarding the states variables used to develop this controller [18], [19].
MPC has mainly been used as a control strategy for the inner control loop. Although some works developing grid current controllers can be found in the literature, the main approach has been the direct power control (DPC) for tracking the commands for the instantaneous active and reactive powers, P and Q. The application of FCS-MPC-DPC and predictive DPC (P-DPC) with SVM modulation strategy is well established [14], [20]- [22].
The block diagram of the FCS-MPC-DPC strategy is presented in Figure 7. In this case, the model of the system is used to predict values of the instantaneous active and reactive power over a prediction hop rizon N = 1, P (k 2), + Q p (k 2). + In [14] and [20], a three-phase, twolevel AFE was controlled adopting this strategy. The algorithm was developed in the ab frame. Therefore, only the seven possible output vectors were considered to perform the prediction; thus, the number of switching states is J = 7. Once the seven output voltage predictions are calculated, the cost function is minimized to find the inverter output vector that should be applied in the next sampling period. Figure 8 presents the experimental results obtained using this strategy [14]. It should be noted that predictions in instants (k + 2) are used to compensate for the control action g P k P p (k delay of the digital implementation of the control strategy. Another way to perform predictive control for the AFE is by using the P-DPC strategy. The block diagram of the P-DPC strategy is presented in Figure 9. Like GPC, the P-DPC strategy does not take into account the switching of power semiconductors; therefore, it provides an exact solution to an approximated optimization problem. In addition, P-DPC considers an unconstrained MPC problem. Thus, an explicit solution can be obtained provided the control action is applied once the cost function (2) is minimized. Therefore, an optimal switching vector sequence can be calculated. The control strategy provides the switching vectors and the switching times; thus, a PWM-SVM modulation strategy is necessary to generate the firing pulses.
Compared with FCS-MPC, the P-DPC algorithm uses an external modulator; thus, a constant switching frequency is obtained. This can be considered an advantage, especially in the AFE application, because for grid-connected converters exist highly demanding codes that impose strict limits to the low-order harmonics that can be injected into the grid. FCS-MPC presents variable switching frequency; thus, the grid current has a widespread harmonic spectrum. On the other hand, P-DPC provides constant switching frequency; thus, the grid current harmonic spectrum is concentrated around the switching frequency, which decreases the cost of the output L filter. Figure 10 shows the experimental results obtained using the P-DPC strategy for a STATCOM application when an instantaneous reactive power command step is imposed [22].
It should be noted that the outer control loop to regulate the dc-link capacitor voltage is usually solved using a conventional proportional-integral (PI) controller. However, there are some solutions that replace the PI control for an MPC strategy [14].

Control of an Active Filter
In its classical configuration, an APF basically consists of a voltage-source inverter (VSI) whose dc side is connected to a capacitor's bank and whose ac side is connected to the mains through a suited filter, usually formed by a set of series inductors, as shown in Figure 11 (referring to the most common three-wire configuration without neutral). In such a configuration, ideally, the APF is able to operate as a controllable current generator, drawing from the mains any set of current waveforms having a null sum. Therefore, an APF is ideally able to compensate the unbalanced, reactive, and harmonic components of the currents drawn by any load in such a way that the global equivalent load, as seen from the grid, resembles a resistive balanced load drawing about the same active power. In fact, under steady-state conditions, the voltage of the dc bus is intended to remain about constant and close to the design level to permit an indefinitely long operation. Therefore, in practice, the currents drawn by the APF must

Predictive
Model give rise to a small net average power flow to exactly balance its internal losses. The active filter modeling procedure and the reference quantities calculations are reported in [23], while the control block scheme is shown in Figure 12. The MPC uses the prediction model and the reference derivation to select the switching functions, ( ), S k + 1 which minimize a cost function as represents a filtered voltage reference with a certain prediction horizon [23].
According to the scheme of Figure 11, the APF experimental prototype chosen to verify the effectiveness of the FCS-MPC control includes a standard three-leg insulated-gate bipolar transistor (IGBT)-based VSI inverter. The implemented control algorithm operates at fixed sampling frequency fs 50 = kHz. To reproduce a distorted current in the grid, a nonlinear load constituted by a three-phase diode bridge rectifier, supplying a resistor with a rated power PSR = 5 kW was considered [23].
At full power, the load draws the distorted current in Figure 13(a) where the vertical axis measures 5 A/ div while the horizontal one 10 ms/ div; after APF compensation, the mains currents waveform is shown in Figure 13(b) (5 A/div) together with the supply voltage (100 V/div). The compensation action results in u * a unity power factor operation and quasisinusoidal current with a superimposed high-frequency ripple due to inverter commutation and the nature of the FCS-MPC control action itself. The achieved benefits and, therefore, the effectiveness of the control action were also confirmed in spectral terms by comparing the mains current spectrum and the load current spectrum in Figure 13(c), resulting in a

Nonlinear
Load  reduction of major low-order harmonics, which allows for a total harmonic distortion (THD) of less than 5% starting from a THD of more than 29%, where the THD is calculated including up to the 50th harmonic.

Control of a Matrix Converter
The direct matrix converter (DMC) is a type of static power converter in which the load is directly connected to the mains through a set of bidirectional switches. The power circuit of a DMC is shown in Figure 14. This topology does not require a dc-link stage with energy storage like most power converters; this reduces the weight and size of the converter, making it suitable for applications that require high-power density, such as aerospace.
Control approaches based on FCS-MPC have been extensively tested for the DMC [24], [25], showing the effectiveness and relative simplicity of the predictive methods over the traditional ones such as SVM [26]. The block diagram of the predictive control of load current and input power factor is presented in Figure 15. The predictive controller relies on mathematical models for the prediction of both the input reactive power and the output current. Each prediction block depicted in Figure 15 yields 27 predictions for the controlled variables, one for each of the different valid switching states of the DMC. A further stage of the algorithm then minimizes a cost function to determine the optimal combination of gating signals to be applied to the converter at the next sampling period.
The cost function for the simultaneous control of input reactive power, Q, and output current, io, is the following: where i , i p , * * o Q , o and Q p are the reference and the predicted values of the output current and the input reactive power, respectively; m is a weighting factor used to adjust the relative importance of both control objectives within the cost function.
The results of the predictive control of the DMC are shown in Figure 16. The output current tracks its reference accurately, as can be seen in Figure 16(a). The input reactive power is controlled starting from time .
[ ] t = 0 4 s in Figure 16(c). It can be observed that from that instant on, after a short transient, the input current becomes sinusoidal and in phase with the line voltage.

Selective Harmonic Elimination Technique
The selective harmonic elimination (SHE) strategy is especially well suited to high-power applications where the power losses must be kept below strict limits. The well-known SHE technique is based on offline calculations and the generation of preprogrammed voltage waveforms with a very low number of commutations and eliminating some low-order harmonics [27]. Using predictive control to implement the SHE method, the MPC-SHE control objective is to follow the voltage reference, to eliminate low-order harmonics, and to reduce switching losses [28]. These three objectives are included in the cost function , , , , .
In this cost function, the sliding discrete Fourier transform (SDFT) is used. The SDFT is a recursive implementation of the discrete Fourier transform algorithm used to calculate a finite number of single-frequency spectral components with very low computational cost [29]. The first term (5) evaluates the error between the reference and the predicted output voltage vector tuned to the fundamental frequency f1.
The second term (6) is the sum of all those frequencies (up to the Mth order) that need to be eliminated. The weighting factor, mf, is used to control the importance of this term in the cost function; in this way, the frequency elimination can be relaxed or strengthened in comparison to the fundamental frequency tracking, depending on design considerations. Finally, the third term (7) is used to reduce the number of commutations introducing weighting factor, , msw to keep the power losses below acceptable limits.

Selective Harmonic Mitigation Technique
An evolution of SHE is the selective harmonic mitigation (SHM) technique, which is based on preprogrammed waveforms not eliminating the loworder harmonics but reducing the distortion below the limits imposed by a grid code [30], [31].
The control objective of the MPC-SHM technique is to follow the voltage reference, control the harmonic distortion keeping it below the limits imposed in the grid code, and reduce the switching losses as much as possible [32]. These three objectives are included in a cost function similar to that introduced for the MPC-SHE method. In this case, the second term (6) has to be modified, being the sum of the distortion of those harmonics that have to be kept below acceptable limits imposed by the grid code from the second-to the Kth -harmonic. In fact, the mathematical expression of the MPC-SHM cost function is similar to the MPC-SHE one but considering harmonics up to Kth order, where K is higher than M. Another difference between both cost functions is that a weighting factor, mi, is associated to each ith-order harmonic distortion that has to be reduced. This fact provides the chance to relax the condition of eliminating the distortion of those harmonics. The proposed MPC-SHM technique can be summarized using the block diagram represented in Figure 17, where a weighting factors tuning block has been added to the previously introduced MPC-SHE method. For each harmonic, the weighting factors tuning block relaxes the weighting factor, mi, if the ith harmonic distortion is below the limit of the grid code, or makes it higher in the opposite case. This dynamic weighting factors adjustment is made at the fundamental frequency.
The MPC-SHM method has been tested in a three-phase cascaded Hbridge (CHB) multilevel converter (three H-bridges per phase) connected to an RL load as depicted in Figure 18. On the other hand, Figure 19 shows the converter phase output voltage, V aN, the line-line voltage, V ab, the load voltage, V an, and the load currents, ia, i , b and ic. In addition, the respective harmonic spectra are shown next to each waveform. A deep analysis of the data shows that the distortion of harmonics considered in the cost function (up to harmonic ten) is always below the limit imposed. In addition, the average switching frequency of the MPC-SHM method is lower than that obtained with the MPC-SHE technique dealing with the same number of harmonics. This phenomenon occurs because the SHM relaxes the conditions of the harmonic distortions compared with the SHE method, making it easier to find better solutions leading to lower power losses.

Control of Multilevel Inverters
The FCS-MPC method has been applied to multilevel converters for multiple applications. Among the multilevel converter topologies, the neutralpoint-clamped (NPC) converter, the flying-capacitor (FC) converter, and the CHB converter have attained vast industrial success. These topologies are normally used for medium-voltage, high-power applications at the expense of a large number of power semiconductors and more complex control and modulation algorithms. The FCS-MPC method for multilevel inverters has to take into account the usual control objectives present in other converter topologies and applications, but extra control targets have to be included such as the balance of the floating dc voltages (if needed) and the reduction of the switching losses (required because for highpower applications, the effective switching frequency and, consequently, the power losses have to be limited) . Some examples are addressed in the following sections.

NPC Inverter Topology
The three-level NPC converter has the dc-link bus divided into two parts that should be balanced. Therefore, this fact must be included in the cost function. The dc voltage balance is achieved by the FCS-MPC method but at the expense of changing the switching state nearly every sampling time. So the result is not satisfactory because it leads to high switching losses. Therefore, a limitation in the switching frequency must be included in the cost function as well. Thus, a possible cost function could be In the cost function, the first term is focused on the current tracking, which is the application of this FCS-MPC method. The second term is proportional to the absolute difference between the voltage predictions of both capacitors, so a switching state that generates smaller differences will be preferred, leading to a voltage balance situation. Finally, the third term is proportional to the number of commutations to get to the next switching state, nc, so a switching state that   implies fewer commutations of the power semiconductors will be preferred. The weighting factors, mdc and mn, handle the relation between terms dedicated to current reference tracking, voltage balance, and reduction of switching frequency [33].

CHB Inverter Topology
The FCS-MPC method can also be applied to achieve current tracking control in a three-phase CHB converter with two H-bridges per phase [34]. In this case, the cost function only takes into account the current tracking In the CHB inverter case, there are a high number of possible switching combinations (125 for this topology where the dc voltages of the H-bridges are fixed), so the computational cost of the FCS-MPC method can become excessively high. In [34], this is solved by eliminating the redundant switching states with higher common-mode voltages. In addition, only the last applied switching state and the six states surrounding it in the space-vector diagram are taken into account.
This fact reduces to seven the number of possible combinations leading to the same computational cost of a conventional three-phase, two-level converter at the expense of solving a suboptimal problem and losing dynamic response.

FC Inverter Topology
A similar FCS-MPC strategy can be applied to the FC converter. In [35], a cost function is presented to achieve current tracking and floating voltages control of a three-phase FC converter with two floating capacitors per phase. In  this case, the cost function includes the current tracking term and the floating voltages control term as follows: g ga gb gc, = + + where g , a g , b and gc follow the next expression ( , , ) An interesting point to highlight is that, with the three-phase FC converter with two floating capacitors per phase, there are 512 possible switching combinations, so the computational cost of the FCS-MPC method can become excessively high. In [35], this is solved by ignoring the interaction through the load neutral point in the prediction step. This reduces the possible switching combinations to 24, leading to a high reduction in the computational cost at the expense of limiting a control degree.
To illustrate the good performance of the FCS-MPC method for multilevel converters, the results for the FC inverter are represented in Figure 20. As can be observed, the control objectives, current tracking, and control of the floating voltages are achieved.

MPC for Inverters with Output LC Filter
Inverters with output LC filter are used when necessary to obtain a sinusoidal output voltage with very low harmonic content. This is the case of sensitive loads or drives for machines to reduce the input voltage harmonics and increase its lifespan or avoid problems caused by high values of dv/ .
dt These inverters are also employed when a voltage source is needed, for example, in such FACTS devices as static synchronous series compensator, dynamic voltage restorer, or as a part of an UPFC or UPQC. However, its most important application is as the main converter of uninterruptible power supply (UPS) systems.
The power circuit of an inverter with an output LC filter connected to a generic load is shown in Figure 21. As shown, the main system variables are the output inductor current, iL,abc, output capacitor voltage, vC,abc, output capacitor current, iC,abc, and output load current, iO,abc . The main objective of the control strategy is to calculate the output inverter voltage, vI,abc, to track an output capacitor voltage reference, * v , , C abc for any connected load. There are several alternatives for designing the control algorithm for an inverter with an output LC filter [36]. MPC is a very interesting option for this application, because the high performance of the overall system can be achieved with a very simple algorithm. The application of FCS-MPC and GPC for a UPS system can also be found in the literature [12], [37]. The block diagram of the FCS-MPC strategy is presented in Figure 22. In this case, the model of the system is used to predict the output capacitor voltage over a prediction horizon N = 1, p v (k 1). C opted, and the controller was developed for a three-phase, two-level inverter in the ab frame. Therefore, only the seven possible output vectors were considered to perform the prediction; thus, the number of switching states is J = 7. Once the seven output voltage predictions are calculated, the cost function In [37], this strategy was ad- is minimized to find the inverter output vector that should be applied in the next sampling period. Figure 23 shows the experimental results obtained using this strategy when a nonlinear load is connected to the inverter [37]. It should be noted that iO,abc has been considered a perturbation. In this way, iO,abc was not measured, but an observer was used to enhance the performance of the system. Prediction horizons N higher than one can provide in some cases better performance than using N = 1. This issue has been investigated for a UPS system using the FCS-MPC strategy [38]. The main problem is that the computational burden increases exponentially with N. Therefore, the practical implementation of this approach is difficult.
Another way to increase the prediction horizon, N, is to use a GPC strategy to calculate the control action. The GPC uses a controller auto-regressive integrated moving-average model to predict the system variables with long prediction horizon values [11]. The block diagram of the GPC strategy is presented in Figure 24. In this case, it is considered an unconstrained MPC problem. Thus, an explicit solution can be obtained by providing the control action to be applied once the cost function is minimized.
-mDu t C, C, abc abc * 2 = + -+ / Compared with FCS-MPC, the GPC algorithm requires an external modulator, but this provides the benefit of presenting a constant switching frequency, making the design of the output LC filter easier. Figure 25 shows the experimental results obtained using

LC Filter
the GPC strategy when a linear load is connected to the inverter for different values of N and m [12]. It should be noted that correctly tuning the prediction horizon, N, and the weighting factor, m, can significantly increase the performance of the system.

MPC for High-Performance Drives
For the control of high-performance drives, there exist two well-established methods: field-oriented control and direct torque control (DTC) [39]. The first one performs a decoupled control of torque and flux by controlling separately the quadrature and direct components of the stator current in a rotating coordinate frame, which is synchronous with the rotor flux. On the other hand, the DTC approach also performs an independent control of torque and flux by employing nonlinear hysteresis controllers and a logic based on a look-up table to select the appropriate switching states of the converter.
A third alternative, predictive torque control (PTC), has recently been proposed [40]. In the PTC algorithm, a cost function that gathers the tracking error of torque and stator flux magnitude is employed where T , * * }s e , T p , }s e and p are the reference and predicted values of electrical torque and the magnitude of the stator flux, respectively. The parameter m is a weighting factor that allows for giving more or less relevance to each of the control objectives. Following the operation principle of FCS-MPC, the switching state applied to the converter at each sampling period corresponds to the one that minimizes the cost function. The block diagram of PTC is presented in Figure 26.
An estimator is required to compute the stator and rotor fluxes. Then, a mathematical model is used to predict the future behavior of the torque and stator flux using the flux estimations and the measurements of stator current and mechanical angular speed of the machine. In [40], this technique was used together with a three-phase, two-level inverter. In this way, the number of switching states is J = 7. Therefore, the predictions associated to the seven different voltage vectors are evaluated in an optimization stage to select the optimum switching state, S, to be applied to the inverter. For the generation of the electrical torque reference, an external control loop with a PI controller was used.
The results of the PTC of an induction machine are shown in Figure 27. The speed control is presented in Figure 27(a), where the reference step changes from -150 to 150 rad/s and from 150 to -150 rad/s are applied at times . t = 3 0 s respectively. t = 0 5 and . [ ], The dynamic performance of the torque tracking can be observed in Figure 27(b), where it is clear that PTC provides a very fast response. The stator current for phase a is plotted in Figure 27(c), showing a sinusoidal waveform, even though no current controllers are directly implemented.

Past, Present, and Future Challenges of MPC for Power Converters and Drives
MPC has been a good solution for industrial applications for decades [5], [41]. However, once the simplicity and good performance of the MPC controller in the power electronics field has been demonstrated, the question to be answered is, why is it not already extensively used in the industry?
As a major challenge, the MPC needs an accurate model of the system, and this is not usually a simple task in highly dynamic systems. However, in recent years, the modeling of complex electrical systems has been greatly improved, and this challenge can be solved. Although more research is necessary, it is now possible to find applications of MPC to power converters where Luenberger and extended-state observers are used to avoid the effects of system parameter uncertainties [37], [42], [43]. A drawback of the MPC strategies is the exponential increase of the computational burden if the prediction horizon, N, is longer than one and, in the case of FCS-MPC, if the number of switching states to be studied, J, is high. This fact was critical in the past, but nowadays, the high-speed microprocessors can carry out complex iterative calculations and the FCS-MPC methods can be executed with sampling times around several decades of microseconds [44]. Additionally, MPC techniques such as GPC can deal with long prediction horizons without significantly increasing the computational burden [12]. In addition, some authors have developed FCS-MPC techniques that evaluate a reduced set of switching states in cases where the possible switching states are high. For instance, in [34], a three-phase CHB multilevel converter has been considered with N = 1. This converter has 125 possible voltage vectors, but the proposed method just calculates the cost function for the seven vectors located around the last voltage vector applied to the converter. Despite this, finding computationally efficient MPC control algorithms is an open issue.
Usually considered an advantage, the FCS-MPC method avoids using a modulation stage. However, this usually leads to spread harmonic spectra of the output waveforms. This can be solved by either taking it into account in the cost function [45] or using a modulation stage and applying the FCS-MPC considering all the possible combinations of the switching states of the converter [46].
Other MPC concerns are the design of an efficient cost function and the tuning of the weighting factors. In this case, it can be affirmed that a systematic way to design the cost function with the best weighting factors tuning is still missing. However, some works have introduced a first approach to solve the problem, facilitating the electrical engineers' design work [47].
Finally, it should be noted that there is a lack of analytical tools to evaluate the performance of MPC for power converters and drives without having to carry out extensive simulations or experiments. Therefore, it is expected that another area of future research would be the development of such tools.

Conclusions
MPC is a well-known technique to achieve a high-performance operation in a wide application range. For decades, it has been successfully applied to chemical processes with low sampling requirements. However, in the last decade, academia has demonstrated that MPC can be applied to control other systems such as electrical machines and drives. Such critical challenges as the accuracy of the models, high sampling rates, and high computational cost have been overcome because of An APF is ideally able to compensate the unbalanced, reactive, and harmonic components of the currents drawn by any load.
the continuous evolution of the microprocessor technology and the efforts of the researchers. The last step of the MPC to become mature is currently being done, and some companies have been attracted by this control method. Hopefully, just one step ahead, the MPC will be extensively applied to control complex electrical systems.