the Creative Commons Attribution 4.0 License.
the Creative Commons Attribution 4.0 License.
Adaptive economic wind turbine control
Abhinav Anand
Model predictive control (MPC) for wind turbines offers several interesting advantages over simpler techniques, as for example the direct optimization of a goal function, the inclusion of constraints, non-linear coupled dynamics, and wind preview (when available). To enable real-time execution, MPC uses a reduced-order model (ROM) that approximates the dynamics of the controlled system using only a limited number of degrees of freedom. As a result, the accuracy of the ROM is often the main limit to the performance of MPC. To address this problem, an adaptive controller-internal model can reduce plant-model mismatches, potentially leading to improved performance.
This work proposes an adaptive economic non-linear MPC (ENMPC) for wind turbines. The controller maximizes profit by optimally balancing fatigue damage cost with revenue due to power generation. The cyclic fatigue cost is formulated directly in the controller using the novel parametric online rain flow counting (PORFC) approach. PORFC provides a rigorous continuous expression of the discontinuous cyclic fatigue cost using time-varying parameters. Adaptivity is obtained by a controller-internal gray-box model that combines reduced-order physical dynamics with data-driven correction terms. These are implemented via a neural network that is trained offline. Additionally, system state and disturbance estimators are included in the closed-loop controller.
The improvement in state predictions due to model adaptation is first assessed and compared with the non-adapted baseline ROM in open loop. The performance of the adaptive ENMPC and the impact of a reduced plant-model mismatch is then assessed in closed loop for a reference multi-MW onshore wind turbine in a realistic simulation environment. Results show that the adaptive ENMPC yields higher economic profits at significantly lower pitch and torque travels compared to the baseline non-adaptive ENMPC. While the enhanced closed-loop performance and economic gains of the proposed model adaptation are significant, they come at the cost of a slight increase in the computational burden of the controller.
- Article
(2620 KB) - Full-text XML
- BibTeX
- EndNote
1.1 Beyond power maximization: economic wind turbine control
Wind turbine operation and control have recently shifted from the traditional goal of power maximization to more economically driven goals. In this new paradigm, turbines are operated with damage awareness in mind (Njiri and Söffker, 2016; Barradas-Berglind and Wisniewski, 2016; Loew and Bottasso, 2022; Anand et al., 2022; Loew et al., 2023). This shift is driven by the impact of fatigue damage, which shortens the operational life of turbines, and increases operation and maintenance (O&M) costs. In fact, these factors are critical to the economic profitability of operators of wind energy assets (Canet et al., 2021; Stehly et al., 2020).
One widely used method for developing economic controllers for wind turbines is model predictive control (MPC) (Rawlings et al., 2017). MPC optimizes control actions over the short-term future by predicting system behavior, and then solving an economic optimization problem based on these predictions (Rawlings et al., 2012). Existing literature shows that economic MPC formulations for wind turbine control – using the conventional objective of maximizing revenue from power generation – achieve better performance than baseline controllers and standard MPC approaches (Pustina et al., 2022; Gros and Schild, 2017; Hovgaard et al., 2015; Gros, 2013; Yan et al., 2013). However, when considering wind energy systems, an economic optimization should balance the conflicting objectives of maximizing revenue from power generation and of minimizing the cost of fatigue-related damage. Additionally, a controller should always guarantee that the system operates within feasible limits. The effectiveness of the controller ultimately depends on the quality of the solution of this constrained optimization, which essentially relies not only on the economic model but also on the quality of predictions of the controller-internal model.
1.2 The challenge of including fatigue in control formulations
The existing literature on the economic control of wind turbines using MPC is based on two main approaches for estimating cyclic fatigue: indirect and direct methods.
The indirect approach uses a proxy for fatigue (Barradas-Berglind and Wisniewski, 2016). This method is convenient because it avoids the use of cycle counting that, because of its branching nature, introduces discontinuities in the calculations (Loew et al., 2021). As a result, with the indirect approach, gradient-based methods can be used to solve the optimization problem. However, this also means that fatigue is only approximatively taken into account through a proxy quantity, which might not always provide for accurate results.
The direct approach, on the other hand, estimates fatigue explicitly using online cycle counting directly in the MPC framework (Loew et al., 2020b; Anand et al., 2022). This method, termed parametric online rain flow counting (PORFC), is relatively new and was first introduced in our previous work Loew et al. (2020a). It has since been applied in its fundamental form in various contexts, including wind turbine fatigue control (Loew et al., 2020b), battery cyclic aging control (Loew et al., 2021), and control of grid-connected wind-battery hybrid systems (Anand et al., 2021, 2022). To the authors' knowledge, PORFC is the only approach that allows for the rigorous treatment of fatigue, as it was designed to produce the same results on receding horizons that would be obtained by cycle counting the whole response time history a posteriori (Loew et al., 2020a).
1.3 The challenge of relying on controller-internal models of reduced complexity
In both approaches mentioned above, the controller relies on an internal model of the wind turbine to predict its behavior over the MPC horizon. However, due to computational effort and time constraints, the internal representation of the system response is typically obtained through a reduced-order model (ROM). ROMs approximate the system dynamics using a limited number of degrees of freedom (DOFs), enabling the real-time execution of the controller. The accuracy of these predictions plays a crucial role in the performance of the controller. A closer match between the predicted and actual wind turbine dynamics allows for the controller to make more precise decisions when optimizing the objective function, while at the same time ensuring compliance with system constraints. In fact, the degree of model mismatch not only affects optimality but may also impact the ability of the closed-loop system to operate strictly within admissible or desired limits.
One way to address model mismatches is by using state observers and estimators (Anand et al., 2022; Loew and Bottasso, 2022), where measurements of the response of the wind turbine from previous time steps are used to estimate and adjust the initialization of the controller for the next step. However, the effectiveness of this approach is limited when estimates are obtained from underlying models of scarce accuracy.
A more compelling alternative is to adapt the internal model dynamics of the controller, either by using measured operational data or synthetic results from models of sufficiently high fidelity that can accurately represent the plant behavior. One of the aims of this paper is to develop practical methods for enabling adaptivity in wind turbine ROMs.
1.4 Offline adaptation for certifiable learning control
Data-driven adaptation can be implemented online, offline, or in a hybrid manner, each of these options offering distinct trade-offs in terms of advantages, challenges, and practical applicability to economic control.
Online adaptation allows for quickly adjusting model behavior in real time based on observed plant response. However, for industrial applications, it is difficult to imagine how one could guarantee the correct learning of model corrections and how such a system could be demonstrated to always be safe and certifiable in practice.
In contrast, offline adaptation allows for the systematic integration of data, enabling a rigorous verification and validation of any learned correction terms prior to their deployment in the field. A rigorous offline verification and validation opens the door to the certification of adaptive controllers, which must meet strict standards in performance, safety, and reliability before deployment in real-world operations.
In the context of economic MPC, offline model adaptation can be achieved in several ways: by adjusting the parameters of the ROM (Schreiber et al., 2020), by incorporating a correction term into the ROM or MPC optimization function (Bottasso et al., 2006; Collet et al., 2021; Soloperto et al., 2022), or by a combination of both methods.
It is, however, important to note that a ROM captures only selected aspects of the behavior of the plant – and does so only with limited accuracy. As a consequence, the tuning of ROM parameters alone is often insufficient and may even produce non-physical results, because parameter tuning cannot compensate for missing physics. Instead, data can be leveraged to learn and incorporate the missing physics into the internal model used by the controller. This is the approach followed in this work.
The few existing studies on adaptive economic MPC for wind turbine control focus primarily on the tuning of controller gains (Shaltout et al., 2018; Tang et al., 2023). These works rely on simplified linearized models and Bayesian optimization techniques to achieve robust performance under uncertain and varying wind conditions, but they do not explicitly address model mismatch. More in general, gain tuning cannot compensate for missing or inaccurate representation of relevant physics. Recent contributions to economic MPC introduce more complex, non-linear internal models (Pustina et al., 2022, 2025); however, these approaches still lack adaptive mechanisms that explicitly compensate for modeling errors.
Furthermore, although the economic optimization in all of these studies incorporates profit-related objectives, it relies solely on indirect penalization of system states and does not explicitly account for fatigue damage, whose relevance has been highlighted by Loew and Bottasso (2022) and Anand et al. (2022).
1.5 Toward model-adaptive fatigue-aware economic wind turbine control
The key contribution of this work is the development of a novel fatigue-aware economic non-linear model predictive controller (ENMPC) with offline-adaptive capabilities enabled by data-learned ROM corrections.
The controller maximizes profit by balancing two competing factors: revenue from power generation and costs associated with fatigue damage of the turbine components. The cost of cyclic damage is formulated using the novel PORFC approach, which performs online rain flow analysis over the stress history and its future predictions to generate time-varying parameters. These parameters are then used to obtain a continuous expression of the discontinuous fatigue cost, which is incorporated into the MPC optimization. The profit formulation used here does not explicitly incorporate the effects of fatigue on component reliability and O&M costs, simply because of a lack of data and appropriate models linking loads with failure rates, instead representing fatigue-related costs solely through the amortization of the overall component cost, as discussed in TotalControl (2022).
The controller-internal model is a gray box that combines reduced-order physical dynamics with offline-computed correction terms. These terms are formulated as neural networks trained on high-resolution measured or synthetic data of the wind turbine. Their objective is to reduce model mismatch, thereby improving online closed-loop performance.
The paper is structured as follows. Section 2 introduces the proposed model adaptation approach. It describes both the simplified wind turbine model used as internal ROM and the data-driven modeling of the correction term. Section 3 provides a detailed formulation of the ENMPC, discussing various aspects of the underlying optimization problem. This section also describes the state and wind speed estimators, which provide initial conditions and disturbance predictions for the ENMPC. Section 4 presents and discusses the results from a case study. The analysis begins with an open-loop assessment of the model adaptation approach, followed by a closed-loop evaluation of its impact on economic performance, actuator usage, and computational burden. Additionally, this section examines the benefits of the proposed model adaptation under different wind input and preview scenarios. Section 5 summarizes the key findings of this work and outlines potential directions for future research.
The proposed model adaptation approach enhances the ROM dynamics by introducing a data-driven correction function ΔFROM(⋅). This function is designed to compensate for the mismatch between the ROM and the actual wind turbine behavior. The adapted model dynamics, denoted as , can be expressed as
where FROM(⋅) represents the original non-linear ROM dynamics. By adding the corrective function ΔFROM(⋅), the adapted model more accurately captures the behavior of the plant. Here, x(t), u(t), and d(t) represent the continuous system states, control variables, and external disturbances, respectively. The correction ΔFROM depends on these same quantities but also on free parameters p that are learned based on data.
2.1 Reduced-order model
A simplified wind turbine model with only 3 degrees of freedom (drivetrain angular speed, and tower fore-aft and side-side deflections) is considered to represent the ROM dynamics FROM(⋅). The incident wind Vw induces an aerodynamic torque Qa about the rotor axis and an aerodynamic force FT along it. The aerodynamic torque directly excites the drivetrain rotational dynamics
ignoring mechanical losses, where Jr, ω, and Qg represent the rotor moment of inertia, rotor speed, and generator torque referred to the low-speed shaft, respectively. The aerodynamic force FT, coupled with the drivetrain dynamics, excites oscillations in the tower. These can be quantified by using the tower-top deflections in the fore-aft (noted ) and side-side (noted ) directions, which are governed by the following equations of dynamic equilibrium:
Tower oscillations result in cyclic stresses σFA and σSS, respectively, at tower base. Here, and represent the rotor-plane-orthogonal (thrust) and rotor-in-plane (side-side force) components of the aerodynamic force FT, whereas 𝕗1−3 and 𝕤1−4 are model parameters. The aerodynamic torque and force components and introduce non-linearities in the model.
The turbine model has two control variables: the commanded generator torque Qgc and the commanded blade pitch angle βc. The dynamics of the generator is given as
where coefficient 𝕘1 represents the time-constant of the first-order dynamic model. The pitch dynamics is modeled as
Here, βb represents the effective collective blade pitch angle, and the coefficients 𝕓1−2 are model parameters representing properties of the second-order pitch model.
The reduced-order wind turbine model consists of eight system states
and two control input variables
The wind speed Vw is considered as the single disturbance input to the model, i.e.,
The reduced-order model outputs the wind turbine electrical power
and the tower-base stresses
in the fore-aft and side-side directions, modeled as linear functions of the respective tower-top deflections. Here, ηgen denotes the drivetrain conversion efficiency, and 𝕥1 is a constant of proportionality derived from the tower-base geometry and material properties.
2.2 Data-driven correction
With advancements in computing technologies, machine learning techniques – including supervised and unsupervised learning – have become highly effective for a wide range of data-driven system identification tasks. A key advantage of supervised learning over unsupervised learning is its access to both input states and their corresponding target states during training. This allows the model to generalize and predict system behavior for previously unseen input combinations. A particularly effective approach for supervised learning in this context is based on the training of a neural network (NN). NNs can approximate arbitrarily complex functions while also providing gradients, making them especially well suited for integration in an optimal control framework.
In this work, the NN is designed to provide a static mapping from inputs to outputs. The network architecture consists of multiple hidden layers and a single output layer, with each layer composed of a certain number of neurons. Each neuron is defined by weights, biases, and an activation function. Within a given layer, the input data is first transformed by applying the weights and biases associated with the neuron. The resulting weighted sums are then passed to the next layer through the selected activation function. Activation functions apply a non-linear mapping to the weighted input plus bias, which determines whether and to what extent a neuron is activated, thereby enabling the network to model complex, non-linear relationships between inputs and outputs. The choice of activation function therefore plays a key role in shaping the flow of information through the network and, consequently, its predictive performance. Moreover, for use in an ENMPC, the activation function must be continuous and differentiable, so that first- and second-order derivatives can be computed. These derivatives are required for the numerical solution of the underlying optimization problem by gradient-based methods (Rawlings et al., 2017).
A feed-forward NN with one hidden layer and one output layer is considered in this work. The static mapping of the input features xNN to the output features yNN for the considered NN can be written as
Here, W, b, and fact(⋅) represent the weights, biases, and activation functions, respectively, where the subscript h denotes the hidden layer and the subscript y denotes the output layer.
Before training the NN, the generated dataset is split into training and testing sets. Moreover, every feature in the input and the target set is normalized by subtracting the minimum of the feature vector from the feature vector itself, and then dividing the result by the range (difference of maximum and minimum), i.e.:
Furthermore, the normalized datasets are shuffled to reduce the possible clustering of conditions that might create biases. After preprocessing the training set, the parameters p of the NN, defined as
are computed using the Levenberg–Marquardt algorithm to minimize the sum of squares of error between the predicted output and target output.
The accuracy of NN predictions depends heavily on the quality of its training process, which requires a comprehensive dataset of inputs and corresponding target outputs. Wind turbine original equipment manufacturers (OEMs) typically have validated high-fidelity models from design and prototyping that can generate representative datasets, and they may also have access to high-resolution data from on-board sensors of operational turbines to supplement them. In the present work, data are obtained from a high-fidelity simulation model, using both standard measurements and estimates derived from these measurements.
Figure 1 illustrates the proposed approach of acquiring input and target data for NN training, where the solid blue circles represent the plant states at a given time instant i. To generate training data, the ROM is initialized with each plant state sample, setting . The ROM then predicts the next state , based on the applied control inputs and the influence of external disturbance .
The error between the derivatives of the ROM model and the plant is defined as
and constitutes the target dataset. Derivatives are calculated using the current state at time ti and the corresponding next states and at time ti+1 via finite differences, i.e. . The set of the current states, control inputs, and disturbances applied to the plant constitutes the input dataset for the ith time sample. This simple temporal discretization, although of limited numerical accuracy, is deemed sufficient for the present application, where modeling errors are typically larger than the numerical ones.
The ENMPC is formulated based on the augmented internal model ROMaug, as expressed by Eq. (1), to predict the system states and associated outputs over a short future horizon Thorizon. The discretization of time-continuous variables is performed over the prediction horizon using Nu control time steps of duration . The predictions of states and outputs are used to calculate control inputs that optimize a desired meaningful economic objective function (here chosen as profit, with the goal of balancing revenue and costs). Moreover, constraints are enforced to the optimization problem to ensure that the controller keeps the plant states and applied inputs within feasible ranges.
The proposed ENMPC optimization problem is formulated as
subject to
The meaning of all variables and terms in this problem are explained in Sect. 3.1–3.3.
3.1 Optimization variables
The optimization variables in the problem expressed by Eq. (15a)–(15f) are the control inputs and the slack variables . The purpose of introducing slack variables is to achieve recursive feasibility of the MPC optimization problem in the presence of model uncertainties and system perturbations (Gros, 2013). Hence, in the present formulation, the state variable ω and the output variable Pgen are augmented using the bounded slack variables ξ1 and ξ2, respectively. This approach is used because ω, despite the smoothing effect provided by the large rotor inertia, is subject to wind perturbations and model errors that affect the economic MPC problem (Gros, 2013). The modified set of states xc is expressed as
3.2 Optimization objective
The optimization objective aims to maximize the generated profit by maximizing the revenue accrued from wind power generation and minimizing the cost incurred due to fatigue damage. The cost of fatigue damage should be expressed by appropriate models, which will differ depending on the component; for example, it is reasonable to assume that the effects of cyclic loading on a pitch bearing will in general be very different from the ones on a gearbox. Here, for the lack of specific models and relevant data, we simply consider the tower as an exemplary component that is often fatigue critical. It is clear that this is only an academic example, and more realistic scenarios could be readily developed by using the same methodology for multiple components using dedicated component-specific cost models.
The wind power generation is maximized by considering the aerodynamic power capture
where wP denotes the revenue rate for providing electricity to the grid. It should be noted that even though revenue is accrued based on the overall electrical power generation, in this work the aerodynamic power is maximized. This is to avoid the greedy extraction of rotor kinetic energy by MPC (referred to as “turnpike effect” in Gros, 2013).
In general, the revenue rate wP depends on time, because time-dependent ambient conditions influence the energy mix and because market prices may vary dynamically. However, the typical time scales of these variations are much longer – usually on the order of tens of minutes and specifically 15 min in intra-day markets – than the receding horizon used in MPC, which typically spans only a few seconds. For this reason, even though wP appears outside the integral in Eq. (17), the present formulation remains fully applicable to variable electricity prices.
The tower cyclic fatigue damage is minimized by a direct penalization of fatigue via the PORFC approach. The PORFC algorithm uses a preprocessing step to identify fatigue cycles c for a given set of stress samples σ and splits the respective cyclic fatigue damages over the contributing samples. In the general case, a particular stress sample may belong to no cycle (when it is not an extremum), one cycle (when it is part of only one half or full cycle), or two cycles (when it lies at a cycle-junction point) (Shi et al., 2018, 2019). The output of the preprocessing step is the PORFC mean parameters and PORFC weight parameters (Loew et al., 2021).
A Python script to extract the PORFC parameters for a given set of stress trajectories is shared with this work (Anand and Bottasso, 2025). This allows for a detailed understanding of the novel formulation, and its adaptability and usage for economic MPC. The script performs standard rain flow counting to identify cycle characteristics and extract PORFC parameters. These parameters are then used to reformulate the cycle amplitudes and weights over stress samples in a continuous manner.
The cost of tower fatigue damage , due to tower root fore-aft cyclic stress σFA, is formulated as
Here, a𝕞 denotes the capital cost of the component and is determined from the initial capital expenditure of the machine (see also Loew et al., 2023, for details), R𝕞 denotes the ultimate tensile strength of the material, and 𝕞 represents the positive exponent derived from the material S-N characteristic.
The tower cyclic fatigue damage , due to tower root side-side cyclic stress σSS, is formulated in a similar manner.
Although the optimization objective, shown in Eq. (15a), separately considers the costs of tower fore-aft and side-side fatigue, the final evaluation is based on the projected total cost, as explained below. In addition to the fact that fore-aft and side-side components depend on wind direction, which is not constant, this also ensures that any potential increase or decrease in tower side-side stress oscillations resulting from control actions aimed at minimizing tower fore-aft stress (and vice versa) is properly accounted for.
To obtain the cost of cyclic fatigue damage for each projection at a given azimuth direction on a tower section, the following steps are taken. First, rain flow counting is performed on the projected stress trajectory. Then, the Goodman equation is applied for mean stress correction. The damage cost of each stress cycle is determined using the S-N curve of the material of the tower and the component cost. Finally, the Miner–Palmgren algorithm is used to sum the costs of individual cycles and obtain the total cost; refer to Loew et al. (2023) for a detailed description of this formulation.
This approach – here illustrated for the tower – is readily generalized to other components. Once cyclic fatigue is assessed on each prediction horizon for each component of interest, a dedicated model could provide failure rates and/or maintenance activities resulting from such loading, in turn generating the associated costs, which would be included in the optimization merit function.
It should be noted that the objective terms of the optimization problem are not assigned arbitrary or heuristic weights. Instead, each term is weighted according to its actual economic value. As a result, the optimization outcomes are economically meaningful and directly aligned with practical decision-making considerations, rather than being influenced by ad hoc tuning of weights. For instance, the weighting term to calculate revenue due to power production is represented by the (optionally time-varying) revenue rate wP, as shown in Eq. (17). Similarly, the cost due to accumulated tower fatigue damage is weighted using the initial capital-cost parameter am through the online rain flow analysis, as shown in Eq. (18a–18c).
3.3 Optimization constraints
The ENMPC optimization problem expressed by Eq. (15a)–(15f) is subjected to various constraints.
The equality constraints expressed by Eq. (15b) enforce the governing equations of the augmented plant-model ROMaug(⋅) and have the role of informing the problem of the underlying system dynamics.
The optimization is also subjected to inequality constraints. To ensure feasible states and control inputs, box constraints are provided through Eq. (15c) and (15e), respectively. Slack variables are bounded using Eq. (15d) to ease convergence. Finally, the rate of change of generator torque is bounded using Eq. (15f) to reduce torque travel and fatigue in the drivetrain.
3.4 Estimators
3.4.1 State estimator
The controller-internal model is initialized using the currently measured initial states x0. However, not all system states of the internal model can actually be measured directly on the plant using standard on-board sensors. For instance, both the tower-top deflection and velocity states (, ,, ) for ROM and ROMaug cannot be measured directly on a real turbine. Only the rotor speed ω, the blade pitch angle βb, and the tower-top accelerations and can be measured by on-board sensors, whereas the remaining states need to be estimated using measured quantities. Furthermore, as the controller-internal model is only a reduced representation of the plant, the initial values measured directly on the plant may not be suitable for initializing the ENMPC. As a consequence, a state estimator is additionally required to provide initial value estimates xest of the system states for the ENMPC internal model, using the available measurements from the plant.
A classical approach for state estimation is the Kalman filter, also widely used for wind turbine control (Bottasso and Croce, 2009; Ritter, 2020). However, due to the non-linear nature of the system and the need to enforce constraints on both stage and terminal states, here we instead adopt a moving horizon estimator (MHE). A detailed comparison between optimization-based state estimation techniques based on MHE and Kalman filters has been presented in Loew and Bottasso (2022). The MHE formulation used in this study builds upon the approach discussed in Anand et al. (2022).
MHE utilizes system information from the plant over a finite past horizon, noted as Thorizon,est, to calculate the initial state estimates xest(t0) for the current ENMPC step. The MHE optimization problem is formulated as
The objective function is represented by the weighted sum of the squares of state and output deviations, and of the noise variable (Gros, 2013; Huang et al., 2010). The diagonal weighting matrices Wmeas, Wprev, and are obtained by a trial and error tuning, such that a satisfactory performance is achieved.
The role of the state deviation term is to ensure a smooth estimator output over consecutive MHE steps.
The estimated and measured outputs are respectively defined as and . The estimated tower-top fore-aft acceleration and side-side acceleration are obtained using the non-linear output equation expressed by Eq. (3a) and (3b), respectively. The measured tower-top fore-aft acceleration and the side-side acceleration are obtained from the plant as a result of standard sensor measurements. The measured tower-top velocity and deflection in both the fore-aft and side-side directions are obtained by numerical integration of the tower-top acceleration and velocity, respectively.
The optimization problem is subjected to the equality constraints expressed by Eq. (19c), which inform the estimator of the underlying system dynamics. In Eq. (19c), are the disturbance inputs to the system, which are already set by the ENMPC and are hence fixed for the current MHE step. Here, xest represents the estimator system states, corresponding to the wind turbine system states x, as discussed in Sect. 2.1. Moreover, Fest(⋅) represents the system of ODEs for wind turbine dynamics discussed in Sect. 2.1.
After the execution of an MHE step, the terminal state at the end of the MHE horizon becomes the initial state at the beginning of the ENMPC prediction horizon, i.e. .
3.4.2 Disturbance estimator
The wind speed Vw is considered as a disturbance input to the ENMPC formulation and needs to be estimated over the prediction horizon Thorizon of the controller. This work considers a simple rotor-effective wind speed (REWS) estimator, based on the approach discussed in Soltani et al. (2013). The REWS estimator utilizes the drivetrain dynamics, expressed by Eq. (2), to estimate the aerodynamic torque as
where is the measured generator power and ωmeas is the measured rotor speed. The rate of change of rotor speed is computed by finite difference from ωmeas. The estimated aerodynamic torque is then equated to the aerodynamic torque , described in Sect. 2.1, to estimate wind speed for the measured pitch angle and ωmeas.
4.1 Case study
The ability of the adapted model to accurately predict the plant states depends directly on the precision of the data-driven corrections. Additionally, to determine the extent of model adaptation required, it is necessary to assess how reducing the model mismatch influences the closed-loop performance of the controller. To answer these questions, we consider a plant represented by the NREL 5 MW reference wind turbine (Jonkman et al., 2009), which is modeled using OpenFAST (Jonkman et al., 2022), a widely used tool for simulating wind turbine dynamics.
The plant model includes the first and second flapwise, and the first edgewise bending modes for each of the three blades. Additionally, it also includes the first and second tower bending modes in both fore-aft and side-side directions, as well as the torsional flexibility of the drivetrain and the generator DOF.
The model, which incorporates pitch and torque actuators but excludes the yaw mechanism, consists of 33 system states. There are eight states for the tower dynamics, 18 for the blades (six per blade), two for drive-shaft torsion, two for rotor rotation, two for collective blade pitch actuation, and one for generator torque actuation.
The fixed model parameters of the corresponding ROM, namely 𝕗1−3, 𝕤1−4, 𝕘1, 𝕓1−2, and 𝕥1, are derived from the NREL report describing the 5 MW reference wind turbine (Jonkman et al., 2009). Table 1 summarizes these parameters and lists their corresponding values.
Table 1ROM parameters derived from the 5 MW reference wind turbine report and OpenFAST baseline-controller simulations (Jonkman et al., 2009).
4.1.1 Data generation
The performance of an NN depends heavily on the quality of its training, which requires an exhaustive dataset that encompasses a wide range of operating conditions. To generate a comprehensive training dataset, the OpenFAST model is simulated in turbulent wind conditions using the baseline controller provided in the OpenFAST package. Full-field turbulent wind inputs are generated using TurbSim (Jonkman, 2009), considering the class-B normal turbulence model. Simulations are performed for wind speeds ranging from cut-in to cut-out in 1 m s−1 steps. For each wind speed, six different turbulent wind seed simulations are conducted.
Figure 2 presents the Pearson correlation coefficients of the states (x), inputs (u), and disturbances (d) of the ROM with the corresponding state errors (refer to Sect. 2.2), computed over the entire dataset. The Pearson correlation coefficient quantifies the linear relationship between two variables (Faizi and Alvi, 2023). Each entry in the table of Fig. 2 displays the absolute value of the coefficient, where a higher magnitude indicates a stronger correlation. The same relationship is visualized through a color gradient map, where darker shades represent stronger correlations and lighter shades indicate weaker ones.
Figure 2Correlation coefficient of states, inputs, and disturbance of the controller-internal model (as columns) with the error in states (as rows) for the generated dataset, rounded off to two significant digits. The number in each cell denotes the absolute value of the Pearson correlation coefficient, while the cell color visually denotes the degree of correlation.
Figure 2 shows that all ROM states and inputs significantly influence the state errors, as evidenced by their non-zero correlation coefficients. In particular, the rotor speed (ω) and blade states () exhibit the strongest correlation with both rotor speed errors and tower state errors. Additionally, the control inputs (βc and Qgc) and wind speed (Vw) strongly affect the mismatch across all states. Furthermore, the non-zero yet distinct correlation magnitudes for blade pitch (βb) and collective blade control (βc) highlight the importance of blade dynamics, expressed by Eq. (5), in the internal model of the controller. This suggests that, while the ROM captures an approximation of the complex aeroelastic response, it does not fully represent the detailed dynamics present in the plant.
4.1.2 NN training
The proposed NN input set xNN contains 11 features (eight system states, two control variables, and one disturbance input), and each output set yNN contains eight features representing errors in the derivatives of states calculated using the plant and ROM states. The selection of input features is guided by the correlation coefficients presented in Fig. 2, which indicate a non-zero correlation between all variables in the input and target sets. The hidden layer of the network consists of 20 neurons, each utilizing a radial basis activation function, while the output layer comprises eight neurons with linear activation functions. The number of neurons in the hidden layer was determined through hyperparameter tuning, ensuring optimal training performance.
Before training the NN, the generated dataset is split into training and testing sets. During wind turbine operation, more data are naturally collected for operating conditions, corresponding to more probable wind speed values. To account for this effect in the application of the proposed methodology, the dataset split is performed according to a hypothetical site-specific Weibull distribution. Figure 3 illustrates the distribution of selected input features in the training dataset.
The various subplots in Fig. 3 show that the dataset covers a broad operational range of the wind turbine, allowing the NN to predict the target variables across a wide range of input conditions. Furthermore, Fig. 3i confirms that the wind speed distribution in the training dataset closely follows the Weibull shape, ensuring a realistic representation of operating conditions.
The training dataset consists of 216 071 sample points. This number is small compared to the number of data points typically generated for design load case (DLC) 1.2 of the IEC Standards 61400-1 applicable to wind turbine certification and testing (IEC, 2019), which – assuming six turbulence seeds and a sampling rate of 0.1 s – would result in 3 312 000 data points. This suggests that model adaption may be based on datasets that are 1 order of magnitude smaller than datasets routinely collected for standard design and certification purposes.
4.2 Open-loop evaluation
The ability of the augmented internal model to track system states accurately is essential for ensuring both the optimality and the stability of the closed-loop behavior. To evaluate this aspect of the proposed approach, both ROMaug and ROM are simulated using each input combination from the testing dataset (refer to Sect. 4.1.2), with the initial state accordingly set. The final states predicted by both models are then compared to the corresponding plant states, and the prediction error is computed to quantify the accuracy achieved by each model.
Figure 4 presents the kernel density plot of the absolute prediction errors for both ROM (solid blue line) and ROMaug (solid green line) across all system states. For each of the subplot, the x axis represents the absolute error values, while the y axis shows the probability density estimate (PDE), calculated using a normal kernel function.
Figure 4PDEs of the open-loop prediction errors for both ROMaug and ROM, shown in green and blue, respectively, evaluated over the test set.
In the ROM case, certain states, such as “Tower-top FA defl.” and “Tower-top FA vel.”, exhibit their highest PDE at a non-zero error value, indicating a mismatch in model fidelity. In contrast, in the ROMaug case, this mismatch is corrected using the proposed adaptation scheme. As a result, the PDE peak shifts toward zero, signifying an improved state prediction accuracy. Furthermore, for most system states, the PDE peak magnitude in the ROMaug case is higher than in the ROM case. This indicates a greater concentration of cases where ROMaug achieves lower absolute errors than ROM, further demonstrating the effectiveness of the proposed model augmentation. The figure also shows that the accuracy of some quantities cannot be improved, although their typical errors are always very small.
To quantify the effectiveness of ROMaug in minimizing plant-model mismatch in open-loop, a statistical evaluation was conducted using the mean and standard deviation (STD) of prediction errors. Table 2 presents the percentage reduction in both the error mean and STD for ROMaug, relative to ROM, across the test set.
Table 2Percentage reduction in error mean and STD thanks to model augmentation, as assessed on the test set.
The results show varying degrees of improvement in state prediction, demonstrating that NN-based augmentation reduces not only the average error but also the error spread over different operating conditions. A greater reduction in prediction error is observed for states with higher absolute error magnitudes in Fig. 4. This highlights the effectiveness of weight tuning during the NN training stage, which prioritizes correcting states with significant errors. These findings further emphasize the effectiveness of the proposed offline data-driven approach in reducing plant-model mismatch, improving the overall accuracy of the internal model.
For a practical application of the model adaptation, it is interesting to quantify the amount of training data that are needed to achieve a desired level of performance. To this end, multiple data subsets are created from the original training set. Each subset contains a specified fraction of the data samples from the original training set.
Figure 5a illustrates the distribution of wind speed for multiple subsets, ranging from 45 % to 95 % of the original training set. The x axis represents the wind speed, while the y axis shows the corresponding relative share. Each subset is used to train an NN, with the same architecture as described in Sect. 4.1.2.
Figure 5Open-loop evaluation of the proposed model adaptation where the NNs are trained using subsets of the full training set. Relative share of wind speed (Vw) in the NN training set (a). Corresponding performance score of ROMaug relative to the performance score of ROM as a function of test set size (b).
Figure 5b presents the performance of the adapted models evaluated on the same test set. The performance score is calculated by summing the root mean square error (RMSE) of predictions for all eight states. The y axis reports the performance scores of the different ROMaug models, normalized against the performance score of ROM. The x axis displays the number of samples in percentage of the full training set. The figure also reports the normalized performance score of the ROMaug model trained with the full dataset, represented by the green circle.
The results show that, as expected, incorporating more data into the training process provides the NN with additional information, leading to improved performance. However, even a relatively small subset of training data helps to reduce the plant-model mismatch. Furthermore, performance begins to level off beyond a certain point, as additional data samples no longer significantly contribute to improving the model because they do not carry any extra useful informational content that is not already present in the data pool. In this study, performance starts to plateau once 85 % of the training dataset is used. As noted earlier, even when using the full dataset, the number of data points that are necessary for model adaption is small compared to the typical datasets collected in standard aeroelastic analyses conducted during routine design and certification activities.
4.3 Closed-loop evaluation
Although the long tail of the PDE plots in Fig. 4 indicate that the prediction errors of the augmented ROM remain non-zero for some operating conditions, it is still useful to examine the potential benefit of reducing plant-model mismatch on closed-loop performance, as this helps to quantify the necessary level of compensation. To investigate this aspect of the formulation, the proposed adaptive economic controller is implemented in closed loop with the plant. This configuration is referred to as ENMPCaug. To assess the impact of the augmentation, the plant performance is also evaluated using the same ENMPC formulation but based on the original, non-augmented ROM, referred to as ENMPC.
Several studies on wind turbine control have demonstrated that economic MPC formulations yield superior performance compared to baseline controllers (Jonkman et al., 2009; Abbas et al., 2022), as well as standard reference-tracking-based MPC formulations. This holds both for pure power-maximization objectives (Pustina et al., 2022; Hovgaard et al., 2015; Gros and Schild, 2017; Yan et al., 2013) and for combined power-maximization and fatigue-minimization objectives (Loew and Bottasso, 2022; Soleymani et al., 2024; Wang et al., 2025). Therefore, the discussion in this section focuses only on the closed-loop behavior of ENMPC and ENMPCaug formulations, in order to quantify the performance improvement resulting from model adaptation.
We consider DLC 1.2 at 11 m s−1 wind speed. The ENMPC-MHE optimization problem (refer to Sect. 3) is solved via the state-of-the-art Acados framework (Verschueren et al., 2019). The interior-point solver HPIPM is used for solving the underlying quadratic programs (QP) in the non-linear program (NLP). Several sequential quadratic program (SQP) iterations are carried out at each controller step. The multiple shooting approach is employed with a Newton step length of 1. To address potential numerical issues caused by the highly non-standard formulation produced by PORFC (Loew et al., 2020b), the Hessian matrix is automatically convexified. It is important to note that solving multiple SQPs can improve performance. However, it also increases the computational burden.
The ENMPC and MHE horizon lengths, Thorizon and Thorizon,est, are both set to 2 s, each having 20 discretization steps. This results in a sample time Tctrl of 100 ms for both the controller and the estimator. The sample time of the plant, Tsim, is set to 10 ms. The optimal control inputs applied to the plant model are considered as piece-wise constant values over Tctrl. Measurements from the plant are taken every Tctrl. Table 3 lists the fixed optimization parameters for the ENMPC. The weighting matrices for the MHE optimization are listed in Loew and Bottasso (2022).
Table 3Fixed optimization parameters for closed-loop evaluation. The values are derived from Loew et al. (2023); Anand et al. (2022); Sutherland (1999); Jonkman et al. (2009).
The closed-loop simulations run for a duration of 10 min. Six turbulent wind speed seeds, generated using TurbSim, are used to characterize uncertainties in fatigue damage. The controller uses the estimated wind speed REWS (refer to Sect. 3.4.2) as input, which remains constant over the prediction horizon of the controller.
The closed-loop control performance is evaluated using the following performance indicators:
-
Revenue due to power generation, calculated considering a fixed feed-in tariff wP and turbine electrical power generation ηgen ω Qg (refer to Eq. 17 for details).
-
Cost due to projected tower-base fatigue damage. To calculate the projected damage, the tower fore-aft σFA(t) and tower side-side oscillations σSS(t) are first projected along the various azimuth directions at the tower base. Next, the fatigue damage cost is computed for each of these projections, as discussed in Sect. 3.2. Finally, the maximum cost across all projections is selected.
-
Profit, calculated as the difference of revenue and cost.
-
Pitch travel, showing the total degrees that the blades traveled for a given control formulation. This can be considered as a proxy for the usage of pitch actuators, which may be prone to wear and tear, calling for extra maintenance.
-
Torque travel, showing the total amount of torque that the generator had to apply. This can be considered as a proxy for the usage of the turbine drivetrain, leading to the wear and tear of bearings and the gearbox. Additionally, it also serves as a proxy for switching-related damage in the power electronic converters.
4.3.1 Economic performance of the controller
Figure 6 presents the performance indicators calculated over 10 min, with results averaged across different seeds. The set of bars in the left and right parts of the figure represent the performance for the ENMPC and ENMPCaug formulations, respectively. The color of the bars corresponds to different performance indicators. The results for ENMPCaug are normalized with the ENMPC ones to facilitate comparison. The y axis shows these relative values, which are also noted in black above each bar. Additionally, the numbers on the face of each bar, shown in purple text, represent the absolute values.
Figure 6Performance indicators for closed-loop simulations using controllers employing the baseline ROM (ENMPC) and the augmented ROM (ENMPCaug) as internal models. The black numbers on the top of each bar denote the corresponding relative cumulative values. The purple text on the face of each bar denotes the absolute cumulative values.
Figure 6 shows that ENMPCaug results in 9 % higher economic profit than ENMPC. This improvement is due to the more accurate estimation of revenue and cost in ENMPCaug, which is made possible by a better prediction of the system states. The higher profit is directly attributed to an increased revenue, with a slight increase in cost. Since the absolute economic value of revenue exceeds that of cost (as shown by the purple numbers on the face of the bars), ENMPCaug effectively balances the two, leading to a higher overall economic profit.
In contrast, for the ENMPC case, while the controller aims to maximize economic profit, the plant-model mismatch leads to control actions that are not economically optimal. As a result, the controller struggles to accurately estimate and balance revenue and cost, ultimately resulting in a lower economic profit.
Furthermore, since the future predictions in the controller more closely match the actual evolution of the plant in the ENMPCaug formulation, the controller requires less frequent control actions. This is reflected in the significantly smaller pitch and torque travel compared to the ENMPC case.
As a result, reducing plant-model mismatch to improve system state predictions not only enhances performance but also leads to a substantial reduction in actuator usage. It is reasonable to assume that this, in turn, will result in lower maintenance costs for both the actuators and the drivetrain. This effect was, however, not quantified here, as a result of a lack of data and of specific and reliable models.
4.3.2 Benefits under different wind inputs
Advanced wind turbine control formulations require the current wind speed as an input. Improved foresight of the wind speed enables the ENMPC to determine the most suitable control actions.
Wind speed can be gauged using a simple wind speed estimator, as utilized in this work (refer to Sect. 3.4.2), or through advanced estimators as discussed in Soltani et al. (2013). Alternatively, the current wind speed can be measured directly, either using a nacelle-mounted anemometer or a light detection and ranging (LiDaR) device. LiDaRs not only provide real-time wind speed data but also offer short-term wind speed previews. This capability makes LiDaRs an ideal complement to MPC-based wind turbine control, where the MPC optimization uses system states derived from wind speed forecasts over the MPC prediction horizon (Loew and Bottasso, 2022; Canet et al., 2021).
Here, the benefits of the proposed model adaptation for reducing plant-model mismatch under different wind input estimates are assessed. Figure 7 presents various wind profiles used as input to the controller.
The solid gray curve represents the longitudinal component of the full wind field generated using TurbSim at the turbine hub height for a 10 min duration. This scenario is labeled “Hub height wind speed”. This is only shown to illustrate wind fluctuations, but it is not used as input to the controller. The dash-dotted red curve corresponds to the nacelle filtered wind speed (NFWS), which is a rough approximation of what an anemometer mounted on the nacelle would measure. Typically, anemometer measurements are subjected to various disturbances, including – among others – flow distortion due to proximity of the nacelle (a bluff body), periodic effects caused by blade passage, interference due to the wake, and sensor noise. For the lack of models of these complex phenomena, here we have simply filtered the wind field at the nacelle location using a standard bandpass filter. This case is referred to as “Anemometer”. The dashed green curve shows the rotor-averaged wind speed (RAWS). The RAWS is a much simplified representation of what a nacelle-mounted scanning LiDaR system with discrete scanning and spatial averaging would estimate under a frozen turbulence hypothesis, i.e., with a purely rigid transport of the flow from the measurement volume to the rotor disk (Loew and Bottasso, 2022). This case is referred to as “LiDaR”.
It can be observed that the anemometer-measured wind speed follows the highly turbulent fluctuations of the wind speed at hub height. Additionally, the RAWS shows even less dynamic variation in the wind speed but successfully captures the long-term wind speed trends. Although these speeds are only very rough approximations of the wind that could be actually measured on a wind turbine, they still capture a range of situations from point-wise exact values to spatial and temporal averages.
Figure 8 presents the results obtained with the closed-loop control formulations, considering different wind speed estimates. For each wind speed input scenario, two sets of bars are displayed: the first set represents the ENMPC case, while the second corresponds to the ENMPCaug case. In each set, each of the five performance indicators is shown as a bar of a different face color. The various sets of bars correspond to the following situations:
-
The first and second sets show results when the controllers use REWS, described in Sect. 3.4.2, as disturbance input and the current wind speed is held constant over the prediction horizon. These results are the same as discussed in Fig. 6 and are shown here again for ease of comparison.
-
The third and fourth sets show results when the controllers use NFWS (Anemometer) as disturbance input and the current wind speed is held constant over the prediction horizon.
-
The fifth and sixth sets show results when the controllers use LiDaR measurements as input and the current wind speed is held constant over the prediction horizon.
-
The seventh and eighth sets show results when the controllers use LiDaR measurements as input and a perfect preview of wind condition over the prediction horizon is considered. This case has been labeled as LiDaR-PF.
The results are normalized with respect to the ENMPC case, which is shown in the first set. The black text above each bar represents the relative cumulative values. To aid interpretation, the results from different wind input scenarios are highlighted with distinct background colors. The red background corresponds to the Anemometer scenario, the light-green shade represents the LiDaR scenario, and the dark-green background indicates the LiDaR-PF scenario.
Figure 8Performance indicators for closed-loop simulations using ENMPC and ENMPCaug. The background colors denote different wind input scenarios: white for REWS, red for Anemometer, light-green for LiDaR, and dark-green for LiDaR-PF. For a given background color, the left and right columns show ENMPC and ENMPCaug results, respectively. The black numbers on the top of each bar denote the corresponding relative cumulative values.
The results show that providing the controller with more accurate information about the wind disturbance input leads to an increase in economic profit for both ENMPC and ENMPCaug. As expected, the Anemometer scenario, providing only a disturbed point-wise wind measurement, results in the lowest economic profit, while the LiDaR-PF scenario yields the highest economic profit.
Furthermore, for all wind input scenarios, the proposed model adaptation results in higher economic profit and reduced pitch and torque travel. The magnitude of the performance improvement varies across the different wind input scenarios. For example, ENMPCaug achieves a 7 % higher economic profit in the Anemometer scenario and a 30 % increase in the LiDaR scenario, compared to the corresponding ENMPC formulation. It is noteworthy that the economic performance of ENMPCaug in the LiDaR scenario is only slightly worse than that in the LiDaR-PF scenario. This suggests that, for this case study, a perfect wind preview does not significantly pay off, and a simple constant speed estimate is sufficient. However, a more general conclusion can only be drawn by evaluating the two scenarios over a wider range of turbine inflow conditions.
4.3.3 Computational performance
An economic controller is real-time feasible if the computational time required to generate the optimal control actions is less than the sample time of the plant. The length of the prediction horizon, along with the nature of the underlying internal model and the optimization problem, directly affects the number of SQP iterations needed for the controller to converge to a solution. A higher number of SQP iterations increases the computational time.
Although this work does not focus on optimizing the computational performance of the formulated controllers to ensure real-time feasibility, the impact of the proposed model adaptation on the computational performance of the controllers is assessed.
Figure 9 presents the economic profit and computational time for ENMPCaug LiDaR, with the controller limited to a maximum of 3, 5, and 10 SQP iterations, as reported on the x axis. The results are normalized with respect to the ENMPC LiDaR formulation, which uses a maximum of 10 SQP iterations. The y axis on the left shows the relative economic profit in blue, while the y axis on the right displays the relative mean CPU time per controller iteration in orange. The results for ENMPCaug LiDaR are marked with circular markers filled in blue, and the results for ENMPC LiDaR are marked with circular markers filled in green.
The simulations were performed on a desktop computer with an Intel i7 processor, a 64-bit operating system, and 8 GB of RAM.
Figure 9Economic performance and the corresponding CPU time requirement for the ENMPCaug LiDaR formulation utilizing an increasing number of SQP iterations. Performance is normalized with respect to the ENMPC LiDaR formulation utilizing 10 SQP iterations.
The results clearly show that increasing the number of SQP iterations leads to a higher relative economic profit. For 10 SQP iterations, ENMPCaug LiDaR results in a 30 % higher economic profit, but it requires more than double the computational effort compared to ENMPC LiDaR. This is because of the additional calculations in the NN part of the model.
Interestingly, ENMPCaug LiDaR with only five SQP iterations still achieves a 22 % higher economic profit than ENMPC LiDaR with 10 SQP iterations, while requiring just 15 % more computational effort. This demonstrates that, although the proposed model adaptation increases the CPU time for ENMPC, the improvement in economic performance outweighs the additional computational cost. Moreover, the adapted model requires fewer SQP iterations to generate economically optimal control actions at a smaller actuator usage.
This effect, combined with the use of high-performance computational platforms and further software optimization for speed may result in real-time feasible economic controllers.
MPC uses an approximate representation of the plant to predict the system evolution over a short future horizon. The internal models used by MPC are typically a reduced representation of the plant. The resulting model mismatch affects the feasibility and the optimality of the closed-loop performance. This study presented a fatigue-aware adaptive ENMPC for closed-loop control of wind turbines. The ENMPC directly incorporates cyclic fatigue costs using a novel online rain flow counting approach and is able to generate more accurate model predictions through a data-driven adapted model.
The proposed adaptive ENMPC aims to maximize economic profit, which is here computed as the revenue from power generation minus the cost of fatigue damage at the tower base. Revenue is calculated based on the (optionally time-varying) market tariff and the energy supplied to the grid. The cyclic fatigue damage is estimated using online rain flow counting on adapted model predictions, while also accounting for residual cycles. While cycle counting is the only approach to precisely account for fatigue, it also inherently introduces discontinuities in the MPC optimization problem. To address this problem, the PORFC approach is used to externalize fatigue estimation from the MPC optimization. This method estimates time-varying fatigue-related parameters, allowing for a continuous formulation of cyclic fatigue costs that can be numerically optimized in the MPC.
The ENMPC optimization problem is subject to bound constraints on system states and control variables, ensuring feasible solutions and a stable closed-loop behavior. The ENMPC formulation is further enhanced by integrating state and disturbance estimators. These estimators account for measurement uncertainties and provide accurate initial values for the ENMPC.
The proposed approach utilizes wind turbine operational or synthetic data with machine learning techniques to predict the mismatch in the system states of plant and ROM. A data-driven model is developed to estimate the error in the states across a range of relevant inflow and control conditions. This process results in an adapted model, where the underlying dynamics are represented by a simple physics-based model combined with data-driven correction terms. The adapted ROM is then used as the internal model in the controller. This process is performed offline, which offers two important advantages. First, it does not introduce additional computational effort during operation, thereby facilitating real-time performance. Second, it results in a certifiable controller, for which safety and performance can be fully assessed offline before deployment in the field. The same is far more difficult – if possible at all – for controllers based on online learning.
The performance of the proposed approach is assessed through a case study using an OpenFAST model of the NREL 5 MW reference wind turbine as a plant. This model generates measurement data for the study. The plant model has 15 degrees of freedom and includes 33 system states, while the ROM has only 3 degrees of freedom and consists of 8 system states. The simulation data is generated across a wide range of operational conditions. A feed-forward NN is developed to predict the error in plant and ROM states, and is then used in the adapted model dynamics.
The performance of the proposed model adaptation is initially evaluated in an open-loop setup. In this case, the predictions of the adapted model ROMaug and the baseline ROM are compared with the actual behavior of the plant across a range of operational conditions. The kernel density estimates of the prediction error show that the adapted model performs significantly better than the original model for all eight system states. The performance improvement is further quantified in terms of statistics of the prediction error. The results reveal a reduction in both the mean and standard deviation of errors for all system states, with an approximate 20 % reduction in the angular velocity error of the rotor.
Additionally, the effect of dataset size on the open-loop performance of the proposed model adaptation is assessed. Results indicate that even a relatively small subset of training data helps to reduce the plant-model mismatch. Performance starts to plateau once 85 % of the generated training dataset is used, as additional data samples no longer significantly improve the model. This amount of data is about 1 order of magnitude smaller than the number of data points typically collected during aeroelastic analyses carried out as part of routine design and certification activities.
To further quantify the impact of model adaptation on the economic control of wind turbines, the closed-loop performance of the proposed economic MPC formulation is assessed using ROMaug as the internal model of the controller. Five performance indicators are considered: revenue (due to wind power generation), cost (due to tower fatigue damage), profit (calculated as the difference of revenue and cost), pitch travel (as a proxy for actuator usage), and torque travel (as a proxy for damage of power electronic converters and drivetrain usage).
The performance of ENMPCaug that uses the enhanced model is compared to the ENMPC formulation that uses the baseline ROM as its internal model. Results show that ENMPCaug achieves 9 % higher economic profit than ENMPC. This improvement is attributed to more accurate revenue and cost estimations, made possible by better predictions of the system states. Additionally, since the future predictions in ENMPCaug are closer to the actual evolution of the plant, the controller requires relatively fewer control actions. This is reflected in a significantly smaller pitch and torque travel compared to the ENMPC formulation.
The benefits of the proposed model adaptation are further assessed across different wind input scenarios. The results show an increased economic profit with improved wind foresight for both ENMPCaug and ENMPC. Moreover, the model adaptation leads to higher economic profit – up to 30 % in the LiDaR scenario – and reduced pitch and torque travel for all wind input scenarios.
Although this study did not focus on optimizing the computational performance of the controllers for real-time feasibility, the impact of model adaptation on computational performance was also evaluated. The results show that increasing the number of SQP iterations leads to higher economic profit but also increases computational expenses. Additionally, for the same number of SQP iterations, ENMPCaug is more computationally expensive than ENMPC due to the extra computational cost due to NN evaluations. However, when considering LiDaR wind estimates, ENMPCaug achieves a 22 % higher economic profit while requiring only 15 % more computational effort compared to ENMPC. Therefore, the proposed model adaptation, combined with high-performance computing platforms and additional software optimization (not considered here), could enable real-time feasible economic controllers.
The accuracy of offline data-driven model corrections depends strongly on the quality of the training process, which requires a comprehensive dataset that characterizes the range of operational conditions experienced by a wind turbine. In practice, wind turbine OEMs typically have validated high-fidelity turbine models developed during design and prototyping, and these models can be used to represent turbine behavior and generate the required dataset. Moreover, OEMs often have access to high-resolution measurements from on-board sensors of operating turbines, which can further contribute to the dataset. The generalized usability of the adapted model depends on how similar turbine behavior is across different installation sites, an aspect that has not been investigated in this work.
Future work should focus on developing a more comprehensive economic objective that accounts for fatigue damage affecting additional turbine components, such as the bearings and the drivetrain, while also incorporating a more realistic profit model. This would require applying the PORFC formulation to other fatigue-critical components of the turbine and integrating it into ENMPC as either an objective function or a constraint. The assessment can be extended to new scenarios that consider more dynamic variations of exogenous inputs, such as market prices over longer evaluation periods. At present, the profit formulation neglects the influence of fatigue on component reliability and O&M costs, and it considers only tower fatigue damage. In addition, the physics-based internal model can be expanded to capture dependencies on a wider set of system states. The model can also be improved by introducing online tuning of model parameters in addition to the offline augmentation used in this study.
| DLC | Design load case |
| DOF | Degree of freedom |
| ENMPC | Economic non-linear model predictive control |
| ENMPCaug | Economic non-linear model predictive control having ROMaug as the controller-internal model |
| FA | Fore-aft |
| LiDaR | Light detection and ranging |
| MHE | Moving horizon estimator |
| MPC | Model predictive control |
| NFWS | Nacelle filtered wind speed |
| NLP | Non-linear program |
| NN | Neural network |
| O&M | Operation and maintenance |
| ODE | Ordinary differential equation |
| OEM | Original equipment manufacturer |
| PDE | Probability density estimate |
| PF | Perfect foresight |
| PORFC | Parametric online rain flow counting |
| QP | Quadratic program |
| RAWS | Rotor-averaged wind speed |
| REWS | Rotor-effective wind speed |
| RMSE | Root mean square error |
| ROM | Reduced-order model |
| ROMaug | Augmented reduced-order model |
| SQP | Sequential quadratic program |
| SS | Side-side |
| STD | Standard deviation |
| ξ | Slack variable |
| Noise variable | |
| ω | Rotor speed |
| βb | Blade pitch angle |
| βc | Commanded blade pitch angle |
| σ | Stress at tower base |
| η | Power conversion efficiency of the drivetrain |
| F | Set of dynamic equations of a model |
| ΔF | Set of dynamic equations of the correction model |
| FT | Aerodynamic thrust force |
| J | Optimization objective |
| Jr | Moment of inertia of the rotor |
| Nu | Number of intervals in the controller prediction horizon |
| P | Electrical power output of the turbine |
| Qa | Aerodynamic torque |
| Qg | Generator torque |
| Qgc | Commanded generator torque |
| R𝕞 | Ultimate tensile strength of the material |
| Tctrl | Sample time of the internal model and the controller |
| Thorizon | Prediction horizon of the controller |
| Thorizon,est | Prediction horizon of the state estimator |
| Tsim | Sample time of the plant |
| Vw | Wind speed |
| W | Weight |
| a𝕞 | Initial capital cost of the machine |
| b | Bias |
| c | Cycle |
| d | Disturbance variable |
| Tower-top deflection in fore-aft direction | |
| Tower-top deflection in side-side direction | |
| e | Error in state |
| fact | Activation function |
| i | Time instant |
| m | Time-varying PORFC parameter: mean |
| p | Free model parameter |
| t | Time |
| Δt | Time step |
| u | Control variable |
| w | Time-varying PORFC parameter: weight |
| x | State variable |
| xNN | Input feature of the NN |
| yNN | Output feature of the NN |
| 𝕓1−2 | Model parameters for blade dynamics |
| 𝕗1−3 | Model parameters for tower fore-aft dynamics |
| 𝕘1 | Model parameters for generator dynamics |
| 𝕞 | Fatigue exponent derived from material properties |
| 𝕤1−4 | Model parameters for tower side-side dynamics |
| 𝕥1 | Model parameters for estimating tower-base stresses using tower-top deflections |
| □aug | Augmented |
| □est | Estimation |
| □gen | Generation |
| □meas | Measurement |
| □prev | Previous |
| □sim | Simulation |
A Python script to extract PORFC parameters for a given stress time series can be accessed on Zenodo at https://doi.org/10.5281/zenodo.15530467 (Anand and Bottasso, 2025). The data for Figs. 3–9 can also be retrieved in Python pickle format from the same Zenodo repository.
AA and CLB developed the adaptive economic MPC formulation. AA implemented the model correction and the adaptive economic controller, carried out the simulations, and generated results. All authors contributed to the interpretation of the results. CLB supervised the overall research. AA and CLB prepared the paper. All authors provided valuable input to this research work through discussions, feedback, and improvement of the article.
At least one of the (co-)authors is a member of the editorial board of Wind Energy Science. The peer-review process was guided by an independent editor, and the authors also have no other competing interests to declare.
Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. The authors bear the ultimate responsibility for providing appropriate place names. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.
The authors would like to acknowledge Stefan Loew for his valuable inputs to the overall work, and Filippo Campagnolo for his support in the implementation of different wind inputs.
This work has been supported by the e-TWINS project (FKZ: 03EI6020), which received funding from the German Federal Ministry for Economic Affairs and Climate Action (BMWK).
This paper was edited by Jan-Willem van Wingerden and reviewed by two anonymous referees.
Abbas, N. J., Zalkind, D. S., Pao, L., and Wright, A.: A reference open-source controller for fixed and floating offshore wind turbines, Wind Energ. Sci., 7, 53–73, https://doi.org/10.5194/wes-7-53-2022, 2022. a
Anand, A. and Bottasso, C. L.: Adaptive economic wind turbine control, Zenodo [code and data set], https://doi.org/10.5281/zenodo.15530467, 2025. a, b
Anand, A., Loew, S., and Bottasso, C. L.: Economic control of hybrid energy systems composed of wind turbine and battery, 2021 European Control Conference (ECC), Delft, the Netherlands, 2565–2572, https://doi.org/10.23919/ECC54610.2021.9654911, 2021. a
Anand, A., Loew, S., and Bottasso, C. L.: Economic nonlinear model predictive control of fatigue for a hybrid wind-battery generation system, J. Phys. Conf. Ser., 2265, 032106, https://doi.org/10.1088/1742-6596/2265/3/032106, 2022. a, b, c, d, e, f, g
Barradas-Berglind, J. J. and Wisniewski, R.: Representation of fatigue for wind turbine control, Wind Energy, 19, 2189–2203, https://doi.org/10.1002/we.1975, 2016. a, b
Bottasso, C. L. and Croce, A.: Cascading Kalman observers of structural flexible and wind states for wind turbine control: Scientific Report DIA-SR 09-02, Dipartimento di Ingegneria Aerospaziale, Politecnico di Milano, Milano, Italy, https://www.researchgate.net/publication/228941698_Cascading_Kalman_observers_of_structural_flexible_and_wind_states_for_wind_turbine_control (last access: 23 November 2023), 2009. a
Bottasso, C. L., Chang, C.-S., Croce, A., Leonello, D., and Riviello, L.: Adaptive planning and tracking of trajectories for the simulation of maneuvers with multibody models, Comput. Methods Appl. M., 195, 7052–7072, https://doi.org/10.1016/j.cma.2005.03.011, 2006. a
Canet, H., Loew, S., and Bottasso, C. L.: What are the benefits of lidar-assisted control in the design of a wind turbine?, Wind Energ. Sci., 6, 1325–1340, https://doi.org/10.5194/wes-6-1325-2021, 2021. a, b
Collet, D., Alamir, M., Di Domenico, D., and Sabiron, G.: Data-driven fatigue-oriented MPC applied to wind turbines Individual Pitch Control, Renewable Energy, 170, 1008–1019, https://doi.org/10.1016/j.renene.2021.02.052, 2021. a
Faizi, N. and Alvi, Y.: Chapter 6 – Correlation, in: Biostatistics Manual for Health Research, edited by: Faizi, N. and Alvi, Y., 109–126, Academic Press, ISBN 978-0-443-18550-2, https://doi.org/10.1016/B978-0-443-18550-2.00002-5, 2023. a
Gros, S.: An economic NMPC formulation for wind turbine control, in: 52nd IEEE Conference on Decision and Control, 1001–1006, https://doi.org/10.1109/CDC.2013.6760013, 2013. a, b, c, d, e
Gros, S. and Schild, A.: Real-time economic nonlinear model predictive control for wind turbine control, Int. J. Control, 90, 2799–2812, https://doi.org/10.1080/00207179.2016.1266514, 2017. a, b
Hovgaard, T. G., Boyd, S., and Jørgensen, J. B.: Model predictive control for wind power gradients, Wind Energy, 18, 991–1006, https://doi.org/10.1002/we.1742, 2015. a, b
Huang, R., Biegler, L. T., and Patwardhan, S. C.: Fast Offset-Free Nonlinear Model Predictive Control Based on Moving Horizon Estimation, Ind. Eng. Chem. Res., 49, 7882–7890, https://doi.org/10.1021/ie901945y, 2010. a
IEC: IEC 61400 – 1: Wind energy generation systems – Part 1: Design requirements, International Electrotechnical Commission, ISBN 978-2-8322-6571-0, 2019. a
Jonkman, B. J.: Turbsim User's Guide: Version 1.50, National Renewable Energy Laboratory (NREL), US Department of Energy, Golden, CO, USA, https://doi.org/10.2172/965520, 2009. a
Jonkman, J., Butterfield, S., Musial, W., and Scott, G.: Definition of a 5-MW Reference Wind Turbine for Offshore System Development, National Renewable Energy Laboratory (NREL), US Department of Energy, Golden, CO, USA, https://doi.org/10.2172/947422, 2009. a, b, c, d, e
Jonkman, B., Mudafort, R. M., Platt, A., Branlard, E., Sprague, M., jjonkman, HaymanConsulting, Vijayakumar, G., Buhl, M., Ross, H., Bortolotti, P., Masciola, M., Ananthan, S., Schmidt, M. J., Rood, J., rdamiani, nrmendoza, sinolonghai, Hall, M., ashesh, kshaler, Bendl, K., pschuenemann, psakievich, ewquon, mattrphillips, Kusuno, N., alvarogonzalezsalcedo, Martinez, T., and rcorniglion: OpenFAST/openfast: OpenFAST v3.1.0, Zenodo [code], https://doi.org/10.5281/zenodo.6324288, 2022. a
Loew, S. and Bottasso, C. L.: Lidar-assisted model predictive control of wind turbine fatigue via online rainflow counting considering stress history, Wind Energ. Sci., 7, 1605–1625, https://doi.org/10.5194/wes-7-1605-2022, 2022. a, b, c, d, e, f, g, h
Loew, S., Obradovic, D., Anand, A., and Szabo, A.: Stage Cost Formulations of Online Rainflow-counting for Model Predictive Control of Fatigue, in: 2020 European Control Conference (ECC), 475–482, 2020a. a, b
Loew, S., Obradovic, D., and Bottasso, C. L.: Model predictive control of wind turbine fatigue via online rainflow-counting on stress history and prediction, J. Phys. Conf. Ser., 1618, 022041, 2020b. a, b, c
Loew, S., Anand, A., and Szabo, A.: Economic model predictive control of Li–ion battery cyclic aging via online rainflow–analysis, Energy Storage, 3, https://doi.org/10.1002/est2.228, 2021. a, b, c
Loew, S., Obradovic, D., and Bottasso, C. L.: Economic nonlinear model predictive control of fatigue—Formulation and application to wind turbine control, Optimal Control Applications and Methods, 44, 647–676, https://doi.org/10.1002/oca.2870, 2023. a, b, c, d
Njiri, J. G. and Söffker, D.: State-of-the-art in wind turbine control: Trends and challenges, Renewable and Sustainable Energy Reviews, 60, 377–393, https://doi.org/10.1016/j.rser.2016.01.110, 2016. a
Pustina, L., Biral, F., and Serafini, J.: A novel Economic Nonlinear Model Predictive Controller for power maximisation on wind turbines, Renewable and Sustainable Energy Reviews, 170, 112964, https://doi.org/10.1016/j.rser.2022.112964, 2022. a, b, c
Pustina, L., Biral, F., Bertolazzi, E., and Serafini, J.: A multi-objective economic nonlinear model predictive controller for power and platform motion on floating offshore wind turbines, Ocean Eng., 342, 122888, https://doi.org/10.1016/j.oceaneng.2025.122888, 2025. a
Rawlings, J. B., Angeli, D., and Bates, C. N.: Fundamentals of economic model predictive control, 2012 IEEE 51st IEEE Conference on Decision and Control (CDC), Maui, HI, USA, 2012, 3851–3861, https://doi.org/10.1109/CDC.2012.6425822, 2012. a
Rawlings, J. B., Mayne, D. Q., and Diehl, M. M.: Model predictive control: Theory, computation, and design, Nob Hill Publishing, Madison, Wisconsin, 2nd edn., ISBN 9780975937730, 2017. a, b
Ritter, B.: Nonlinear State Estimation and Noise Adaptive Kalman Filter Design for Wind Turbines, Technische Universität Darmstadt, https://doi.org/10.25534/tuprints-00011785, 2020. a
Schreiber, J., Bottasso, C. L., Salbert, B., and Campagnolo, F.: Improving wind farm flow models by learning from operational data, Wind Energ. Sci., 5, 647–673, https://doi.org/10.5194/wes-5-647-2020, 2020. a
Shaltout, M. L., Ma, Z., and Chen, D.: An Adaptive Economic Model Predictive Control Approach for Wind Turbines, J. Dyn. Syst.-T. ASME, 140, https://doi.org/10.1115/1.4038490, 2018. a
Shi, Y., Xu, B., Tan, Y., and Zhang, B.: A Convex Cycle-based Degradation Model for Battery Energy Storage Planning and Operation, 2018 Annual American Control Conference (ACC), Milwaukee, WI, USA, 2018, 4590–4596, https://doi.org/10.23919/ACC.2018.8431814, 2018. a
Shi, Y., Xu, B., Tan, Y., Kirschen, D., and Zhang, B.: Optimal Battery Control Under Cycle Aging Mechanisms in Pay for Performance Settings, IEEE T. Automat. Contr., 64, 2324–2339, https://doi.org/10.1109/TAC.2018.2867507, 2019. a
Soleymani, M., Bigdeli, N., and Rahmani, M.: Real-time time-varying economic nonlinear model predictive control for wind turbines, Int. J. Elec. Power, 159, 110019, https://doi.org/10.1016/j.ijepes.2024.110019, 2024. a
Soloperto, R., Muller, M. A., and Allgower, F.: Guaranteed closed-loop learning in Model Predictive Control, IEEE T. Automat. Contr., 68, 991–1006, https://doi.org/10.1109/TAC.2022.3172453, 2022. a
Soltani, M. N., Knudsen, T., Svenstrup, M., Wisniewski, R., Brath, P., Ortega, R., and Johnson, K.: Estimation of Rotor Effective Wind Speed: A Comparison, IEEE T. Contr. Syst. T., 21, 1155–1167, https://doi.org/10.1109/TCST.2013.2260751, 2013. a, b
Stehly, T., Beiter, P., and Duffy, P.: 2019 Cost of Wind Energy Review, https://doi.org/10.2172/1756710, 2020. a
Sutherland, H. J.: On the Fatigue Analysis of Wind Turbines, Sandia National Laboratories, 1999. a
Tang, M., Wang, W., Yan, Y., Zhang, Y., and An, B.: Robust model predictive control of wind turbines based on Bayesian parameter self-optimization, Frontiers in Energy Research, 11, https://doi.org/10.3389/fenrg.2023.1306167, 2023. a
TotalControl: D2.1 Cost Model for fatigue degradation and O&M – Advanced integrated supervisory and wind turbine control for optimal operation of large Wind Power Plants: [TotalControl], European Commission, https://doi.org/10.3030/727680, 2022. a
Verschueren, R., Frison, G., Kouzoupis, D., van Duijkeren, N., Zanelli, A., Novoselnik, B., Frey, J., Albin, T., Quirynen, R., and Diehl, M.: acados: a modular open-source framework for fast embedded optimal control, arXiv [preprint], https://doi.org/10.48550/arXiv.1910.13753, 2019. a
Wang, Y., Zhu, S., Deng, R., Yang, B., Wang, P., and Gu, S.: Model predictive control of wind turbine based on deep-dive holistic observer of tower top IMU, Appl. Energ., 392, 125996, https://doi.org/10.1016/j.apenergy.2025.125996, 2025. a
Yan, Z., Hall, J., and Chen, D.: MIMO control of wind turbine using direct shooting method, 2013 American Control Conference, Washington, DC, USA, 2013, 3655–3660, https://doi.org/10.1109/ACC.2013.6580397, 2013. a, b