A data-driven Koopman model predictive control framework for nonlinear flows

A data-driven Koopman model predictive control framework for nonlinear flows

Hassan Arbabi, Milan Korda and Igor Mezić The authors are with the department of Mechanical Engineering, University of California, Santa Barbara, CA, 93106, USA. {harbabi, milan.korda, mezic}@engineering.ucsb.edu

The Koopman operator theory is an increasingly popular formalism of dynamical systems theory which enables analysis and prediction of the nonlinear dynamics from measurement data. Building on the recent development of the Koopman model predictive control framework [1], we propose a methodology for closed-loop feedback control of nonlinear flows in a fully data-driven and model-free manner. In the first step, we compute a Koopman-linear representation of the control system using a variation of the extended dynamic mode decomposition algorithm and then we apply model predictive control to the constructed linear model. Our methodology handles both full-state and sparse measurement; in the latter case, it incorporates the delay-embedding of the available data into the identification and control processes. We illustrate the application of this methodology on the periodic Burgers’ equation and the boundary control of a cavity flow governed by the two-dimensional incompressible Navier-Stokes equations111The MATLAB implementation of the Koopman-MPC framework for flow control with examples is available at https://github.com/arbabiha/KoopmanMPC_for_flowcontrol. . In both examples the proposed methodology is successful in accomplishing the control tasks with sub-millisecond computation time required for evaluation of the control input in closed-loop, thereby allowing for a real-time deployment.

Keywords: flow control, Koopman operator theory, feedback control, dynamic mode decomposition, model predictive control

1 Introduction

Flow control is one of the central topics in fluid mechanics with an enormous impact on other fields of engineering and applied science. Its wide range of applications includes, just to name a few, reduction of aerodynamic drag on vehicles and aircrafts, mixing enhancement in combustion and chemical processes, suppression of instabilities to avoid structural fatigue, lift increase for wind turbines, and design of biomedical devices. To emphasize the impact of flow control, it is worth noting that discovery of efficient flow control techniques for reduction of drag on ships and cars can result in mitigation of yearly CO emission by millions of tons and annual savings of billions of dollars in the global shipping industry [2, 3].

Despite all the interest and continuous effort, the flow control still poses a daunting challenge to our theoretical understanding and computational resources. The main source of difficulty is the combination of high-dimensionality and nonlinearity of fluid phenomena which results in computational or experimental models which are too complex and costly to control using well-developed strategies of modern theory. The recent advances in numerical computation has led to partial success with active control of flows using models based on first principles (i.e. Navier-Stokes equation for incompressible flows) [4, 5, 6, 2]; however, these methods suffer from two major shortcomings: first, the obtained models are still high-dimensional and computationally costly for implementation, and second, they often rely on local linearization around equilibria or a trajectory of the flow which makes the model valid only locally, and may result in suboptimal or even unstable control performance.

An alternative approach that has gained traction in the last two decades is identification of relatively low-dimensional flow models from data provided by numerical simulations or experiments. Some of the data-driven methods combine the measurement data with underlying physical model to identify models of the system. The major examples include construction of (autonomous) state space models via Galerkin projection of the Navier-Stokes equations onto the modes obtained by proper orthogonal decomposition (POD) of data [7, 8, 9], or identification of linear input-output systems using balanced POD [10, 11]. There are also a few applications of system identification methods to construct linear input-output models purely from data, including the eigensystem realization algorithm [12, 13], as well as subspace identification and autoregressive models [14, 15]. The application of the above techniques to a variety of problems has shown great promise for low-dimensional modeling and control of complex flows from data.

In this paper, we present a general and fully data-driven framework for control of nonlinear flows based on the Koopman operator theory [16, 17]. This theory is an operator-theoretic formalism of classical dynamical systems theory with two key features: first, it allows a scalable reconstruction of the underlying dynamical system from measurement data, and second, the models obtained are linear (but possibly high-dimensional) due to the fact that the Koopman operator is a linear operator irrespective of whether the dynamical system is linear or not. The linearity of the Koopman models is especially advantageous since it makes them amenable to the plethora of mature control strategies developed for linear systems. The controller design procedure follows the Koopman model predictive control framework of [1]. In the first step of our approach, we build a finite-dimensional approximation of the controlled Koopman operator from the data, using a variation of the extended dynamic mode decomposition algorithm (EDMD) [18], with a particular choice of observables assuring linearity of the resulting approximation. The ideal data would include measurements on a number of system trajectories with various input sequences. In the second step, we apply the model predictive control (MPC) to these linear models to obtain the desired objectives. The distinguishing feature is that a linear MPC, solving a convex quadratic programming problem, is utilized, thereby enabling a rapid solution of the underlying optimization problem, which is necessary for real-time deployment. This methodology can be also applied to problems with sparse measurements, i.e., problems with a limited number of instantaneous measurements (e.g. point measurements of the velocity field at several different locations). In that case, delay-embedding of the available measurements (and nonlinear functions thereof) is used to construct the Koopman-linear model; the MPC is then applied to the linear system whose state variable is the delay-embedded vector of measurements.

The outline of this paper is as follows: A brief review of related works is given in section 1.1. Section 2 gives a review of the Koopman operator theory for dynamical systems with input. In section 3, we describe the EDMD algorithm for construction of the Koopman-linear model from measurement data. In section 3.1, we discuss using delay-embedding to construct and control Koopman-linear models from sparse measurements. An overview of the model predictive control framework is given in section 4. In section 5, we present two numerical examples: the Burgers’ system on a periodic domain and the 2D lid-driven cavity flow. We formulate the control problem for these cases using various objectives and demonstrate our approach for both full-state and sparse measurements. We discuss the results and the outlook in section 6.

1.1 Review of related work

The Koopman operator formalism of dynamical systems is rooted in the seminal works of Koopman and Von Neumann in the early 1930s [16, 19]. This formalism appeared mostly in the context of ergodic theory for much of the last century, until in mid 2000’s when the works in [20, 21] pointed out its potential for rigorous analysis of dynamical systems using data. The notion of Koopman mode decomposition (KMD) which is based on the expansion of observable fields in terms of Koopman operator eigenvalues and eigenfunctions was also introduced in [21]. KMD was first applied to a complex flow in [22] where its connection with the DMD numerical algorithm [23] was pointed out. The work in [22] showed the promise of this viewpoint in extracting the physically relevant flow structures and time-scales from data. Following the success of this work, KMD and its numerical implementation through DMD, has become a popular decomposition for dynamic analysis of nonlinear flows [24, 25, 26, 27, 28].

The application of the Koopman operator to data-driven control of high dimensional systems is much less developed. The earliest works on generalizing the Koopman operator approach to control systems was presented in [29, 30] accompanied with a numerical variation of DMD algorithm [31]. To the best of our knowledge, however, the only application for feedback control of fluid flows are the works in [32, 33]. The work in [32] considered the problem of flow control using a finite set of input values. For each value of the input, a Koopman-linear model was constructed from the data and the control problem was formulated as optimization of the switching instants between the input values. This methodology was successfully used for tracking reference output signals in Burgers equation and incompressible flow past a cylinder. The work in [33] proposed to remove the restriction of the input to a finite set, by interpolating between the Koopman-linear systems for each input value which led to an improvement of the control performance. In [1] (which this work is based on), a more general extension of the Koopman operator theory to systems with input was presented, and used to construct linear predictors especially suitable for model predictive control, demonstrating the effectiveness of the approach (among other examples) on the control of the Korteweg-de Vries PDE. The results in [1] showed superiority of the controlled Koopman-linear predictors constructed from data to models obtained by local linearization and Carleman’s representation both for prediction and for feedback control. Let us also mention the earlier work in [34] that utilized KMD to construct the normal forms, for dynamics of the flow past an oscillating cylinder; the input forcing appeared as a bilinear term in the normal forms for this flow. See also [35] for the application to pulse-based control of monotone systems, as well as [36] to system identification and [37] to state estimation.

The numerical engine behind the system identification part of the framework presented in this paper is the Extended Dynamic Mode Decomposition (EDMD) algorithm proposed in [18]. Although the original DMD algorithm was invented independent of the Koopman operator theory [23], the connection between the two was known from early on [22], and DMD-type algorithms have become the popular methods for computation of the Koopman operator spectral properties. However, the convergence of DMD algorithms in the context of Koopman operator approximation was just recently shown in [38, 39]. For systems with sparse measurements, the EDMD is modified to include the delay embeddings of instantaneous measurements. The delay-embedding technique is classical in system identification literature (see, e.g.,  [40] for a comprehensive reference) and control as well as in linear and nonlinear time-series analysis (e.g., [41]). In the field of dynamical systems, the classical reference is the work of Takens [42] on geometric reconstruction of nonlinear attractors. The work in [43] suggested the combination of this technique with the DMD algorithm for identification of nonlinear systems and its role in approximation of the Koopman operator was studied in [38, 44]; the use for control, in the Koopman operator context, was described in [1].

2 Koopman operator theory

In this section, we first review the basics of the Koopman operator formalism for autonomous dynamical systems and then discuss its extension to systems with input and output. We will focus on discrete-time dynamical systems to be consistent with the discrete-time nature of the measurement data, but most of the analysis easily carries over to the continuous-time systems. We refer the reader to [17, 45] for a more detailed discussion of the Koopman operator basics.

Consider the dynamical system


defined on a state space . We call any function an observable of our system, and we note that the set of all observables forms a (typically infinite-dimensional) vector space. The Koopman operator, denoted by , is a linear transformation on this vector space given by


where denotes the function composition, i.e., . Informally speaking, the Koopman operator updates the observable based on the evolution of the trajectories in the state space. The key property of the Koopman operator that we exploit in this work is its linearity, that is, for any two observables and , and scalar values and , we have


which follows from the definition in eq. 2. We call the observable a Koopman eigenfunction associated with Koopman eigenvalue if it satisfies


The spectral properties of the Koopman operator can be used to characterize the state space dynamics; for example, the Koopman eigenvalues determine the stability of the system and the level sets of certain Koopman eigenfunctions carve out the invariant manifolds and isochrons [46, 47, 48]. Moreover, for smooth dynamical systems with simple nonlinear dynamics, e.g., systems that possess hyperbolic fixed points, limit cycles and tori, the evolution of observables can be described as a linear expansion in Koopman eigenfunctions [49]. In these systems, the spectrum of the Koopman operator consists of only point spectrum (i.e. eigenvalues) which fully describes the evolution of observables,


where is called the Koopman mode associated with Koopman eigenvalue-eigenfunction pair and it is given by the projection of the observable onto . See [22] for more detail on Koopman modes, and [49] on the expansion in (5).

The extension of the Koopman operator theory to controlled systems


requires one to work on the extended state space, which is the Cartesian product of the state space and the space of all input sequences . The extended state space is denoted by . Now, given an observable we can define the non-autonomous Koopman operator,


See [1] for more details on this extension. We emphasize that the linear representation of the nonlinear system by the Koopman operator is globally valid and generalizes the local linearization around equilibria [49].

3 Construction of Koopman-linear system

In this section, we review the construction of the Koopman-linear system as proposed by [1] using the EDMD algorithm [18]. We are looking to approximate the dynamics of the nonlinear flow via a linear time-invariant system such as


Consider the set of states and inputs of the nonlinear system in the form of


where . Let


be a given vector of possibly nonlinear observables. These functions may represent user-specified nonlinear functions of the state as well as physical measurements (i.e., outputs) taken on the dynamical system (or nonlinear functions of such outputs). We are going to assume that we only have access to values of the observables, and therefore, explicit knowledge of the state variable is not required to construct the Koopman-linear model. By collecting data on the dynamical system, we can form the lifted snapshot data matrices


These data matrices are the lifted coordinates of the system in the space of observables. Note that, as in [1], we have not lifted coordinates to preserve the linear dependence of the predictor on the original input. The matrices , and are then given by the solution to the linear least-squares problems


where denotes the Frobenius norm. The analytical solution to these two problems can be compactly written as


When snapshot matrix is fat (i.e. number of columns exceeds number of rows, i.e., there are fewer observables than sample points), it is more efficient to compute the matrices by solving the normal equations


with the unknown matrix variable and given matrices

The solution to (14) provides the matrices , , through

The matrices and describe the linear dynamics of the lifted state . The prediction of the original state is obtained simply by . See [39] for a convergence analysis of EDMD for approximation of Koopman operator.

3.1 Sparse measurements and delay embedding

When the number of observables measured on a dynamical system is insufficient for construction of an accurate model, we can use the delay embedding of the observables. Delay embedding (i.e., considering several consecutive output measurements) is a classical technique ubiquitous in system identification literature (e.g., [40]) but also in the theory of dynamical systems for a geometric reconstruction of nonlinear attractors [42]. It has also been utilized in the context of Koopman framework in [20, 50, 38]. The key idea behind delay embedding is that it provides samplings of extra observables to realize the Koopman operator. To be more precise, if we have a sequence of measurements on a single observable at the time instants , we can think of them as sampling of the observables at the single time instant . Here, we describe how we can incorporate delay-embedding into identification and control of Koopman-linear models. The only requirement for identification is that we should have access to at least sequential time samples on the trajectories where is the chosen number of delays.

Let be the vector of instantaneously measured observables on the dynamical system (e.g., point measurements of the velocity field), and be the delay embedding dimension. Consider the state and input matrices described in eq. 9, but now assume that they contain a string of sequential samples with length , i.e., for some , we have


We can delay embed the measurements on this string to construct a pair of lifted coordinates in the space of observables,


It is easy to check that . By delay-embedding the observations on all sequential strings of data, we can form the new matrices


We can once again lift the data using a vector of nonlinear user-specified functions to form the new lifted matrices


Having and input matrix defined as before, we use the same process as above to compute the linear system matrices. It is very important for the lifting function to have a meaningful dependence on . This allows EDMD to approximate the dynamics of the extended state space and discern the effect of previous inputs in the evolution of the state.

Now we can construct a linear predictor


with the matrices , , obtained by solving the least-squares problems (12) with replaced by . Here denotes the prediction of the “embedded” state (note that when is employed for controller design, typically only the part of corresponding to the most recent output prediction is used).

4 Model predictive control

The methodology presented in the last section allows us to construct a model of the flow in the form of a linear dynamical system (3). In this work, we will apply MPC to this linear model to control the original nonlinear flow, but other techniques from modern control theory could be applied as well; see the survey [51] or the book [52] for an overview of MPC. In the context of MPC, we formulate the control objective as minimization of a cost function over a finite-time horizon. The general strategy is to use the model in section 3 to predict the system evolution over the horizon, and use these predictions to compute the optimal input sequence minimizing the given cost function along this horizon. Then we apply only the first element of the computed input sequence to the real system, thereby producing a new value of the output, and repeat the whole process. This technique is sometimes called the receding horizon control. In the following, we describe the notation and some mathematical aspects of this technique. The distinguishing feature when using the lifted linear predictor (3) is that the resulting MPC problem is a convex quadratic program (QP) despite the original dynamics being nonlinear. In addition, the complexity of solving the quadratic problem can be shown to be independent of the size of the lift if the so-called dense form is used, thereby allowing for a rapid solution using highly efficient QP solvers tailored for linear MPC applications (in our case qpOASES [53]); see [1] for details.

Let be the length of the prediction horizon, and and denote the sequence of input and output values over that horizon. A very common choice of cost functions is the convex quadratic form,


where and are real symmetric positive-definite matrices. The above cost function can be used to formulate many of the common control objectives including the tracking of a reference signal. For example, assume that we want to control the flow such that its output measurements follows an arbitrary time-dependent output sequence denoted by . We can formulate this objective as minimization of the distance between and , and the corresponding cost function over the finite horizon would be


where is the weight matrix that determines the relative importance of measurements in . Note that the last term in the above equation is not dependent on the input or output, and therefore it does not affect the optimal solution. By dropping this term, and letting , we obtain


which is a special form of eq. 20. In the numerical examples presented in this paper, we will mainly use this type of cost function.

The MPC controller solves the following optimization problem at each time step of the closed loop operation


where is the delay-embedded vector of measurements


The matrices , and define polyhedral state and input constraints. This is a standard form of a convex quadratic programming problem which can be efficiently solved using many available QP solvers - in our case qpOASES [53]. The computational complexity can be further reduced by expressing the lifted state variables in terms of the control inputs , thereby eliminating the dependence on the possible very large dimension of ; see [1] for details.

Once the optimal input sequence is computed, we apply its first element to the system to obtain a new output measurement which updates the current state ; the whole process is then repeated in a receding horizon fashion. The closed-loop operation is summarized in Algorithm 1. The entire algorithm, i.e., the predictor construction (identfication) and closed-loop operation, is summarized in fig. 1.

2:for  do
3:     Measure .
4:     Set .
5:     Set
6:     Solve (4) to get an optimal solution
7:     Apply to the nonlinear system
Algorithm 1 Koopman MPC – closed-loop operation

Figure 1: Summary of the predictor design procedure (identification) and closed-loop control.

5 Numerical Examples

5.1 Burgers equation 222The MATLAB implementation of this examples is available at https://github.com/arbabiha/KoopmanMPC_for_flowcontrol.

As the first example, we consider the Burgers equation which is a one-dimensional PDE with advection-diffusion dynamics with periodic boundary condition,


where is the kinematic viscosity which determines the relative strength of the diffusion to advection. Note that we have used to denote the spatial coordinates in the flow examples, hoping that it will not be confused with the Koopman-linear state in section 3. We use the control setup considered in [32] and assume the forcing is given by


with the control input . To construct the Koopman-linear system, we have used 50 two-second long trajectories with . The initial conditions are convex combinations of Gaussian and Sinusoidal profiles,


where is randomly chosen for each trajectory. The input control at each time instant is randomly drawn from the uniform distribution on . The computational scheme for the system evolution consists of upwind finite-difference scheme for advection and central difference for diffusion term, with 4th-order Runge-Kutta time stepping performed on 100 spatial grid points with time steps of 0.01 second.

The objective of the control for the system would be to follow the reference state


given a random initial condition described in eq. 29 with the input signals constrained as .

Full-state measurements: As Koopman observables, we use the vector of values of at the computational grid points, the kinetic energy of , and the constant observable (). The cost function to be minimized is the kinetic energy (-norm) of the state tracking error,


Sparse measurements: We assume that we only have access to the vector of sparse measurements which consists of values of at random grid points. We form the Koopman-linear state vector by including delay embedding of with delay times, the kinetic energy of instantaneous output and the constant observable (the dimension of the Koopman-linear state space is ). The tracking error, to be minimized is


The predicted objective function used within the MPC is then

where the prediction horizon is set to . After spatio-temporal discretization, this objective readily translates to the form (20) with .

The results of the controlled simulation for both scenarios are depicted in fig. 2. In both cases, the state successfully tracks the reference signal; however, we observe that with sparse measurements the controller is slightly delayed compared to the case of full-state measurement which can be attributed to the construction of the Koopman-linear system state using delay-embedding. We note that the tracking error during the transient phase is caused by input saturation as documented by the plot of the control input signal.

Figure 2: Control of Burgers’ system (eq. 25) using the Koopman-linear models constructed based on full-state measurements (150 observables) and sparse measurements (10 observables).

Robustness with respect to the parameter regime: One question that arises in the context of low-dimensional modeling is wether the models constructed at some parameter value would be robust enough for prediction at other values. In order to test the robustness of Koopman-linear model in case of Burgers, we apply the model constructed above using sparse measurements to various values of . The results in fig. 3 indicates that Koopman-linear model constructed at the parameter regime shows a remarkable robustness in a wide parameter range. As expected, the input signal and tracking error in the diffusion-dominated regime (large ) is less fluctuating, as the diffusion helps the controller to stabilize the state around the spatially-uniform reference state in (5.1).

Figure 3: Robustness of Koopman-linear system constructed at for controlling the flow at various values of .

5.2 2D lid-driven cavity flow

In the second example, we consider the flow of an incompressible viscous flow in a square cavity which is driven by motion of the top lid. The dynamics of the cavity flow is governed by the Navier-Stokes equation, which, in terms of the stream function variable reads


where is the stream function, is the Reynolds number, and is the velocity of the top lid which acts as the forcing on the system. We assume that we can control the top lid velocity,


with the control input .

The autonomous cavity flow with converges to a steady velocity profile (i.e. fixed point in the state space) which consists of a large central vortex with downstream corner eddies. At around , a Hopf bifurcation makes the fixed point unstable and the solutions up to converge to a limit cycle. More details on the dynamics and the numerical scheme used to solve eq. 33 can be found in [54].

As the objective of control, we aim to stabilize the flow at (the autonomous dynamics is limit cycling) around the fixed point solution at . We also bound the input signal such that to avoid the trivial solution given by (note that the effective is proportional to the top velocity and this choice of sets back the flow into the fixed point at ). The construction of the Koopman-linear system is similar to the Burgers system; we have used 250 two-second long trajectories of the system with control inputs that are randomly drawn from . For the full-state observation, we use the values of the stream function on the computational grid, the kinetic energy and the constant observable. For the case of sparse measurement, we use the values of stream functions at random points inside the flow domain, the vector norm of observed stream function values and the constant observable. According to section 3.1, the dimension of the state space for the Koopman-linear system built from sparse measurements will be respectively which is considerably smaller than the Koopman-linear system with full-state observation ().

Let denote the steady solution at . In the case of the full-state observations, we define the tracking error to be the kinetic energy of the flow distance from the reference state, i.e.,


where is the velocity field. In case of sparse measurements given by the vector of observation in , the cost function for the MPC will be the -norm of distance from the state, that is,


The objective function of the MPC is then given by

where the prediction horizon is set to . After spatio-temporal discretization, this objective function readily translates to to the form (20) with .

Figure 4 shows the kinetic energy of the state discrepancy in controlled simulations starting from an initial condition on the limit cycle. All the Koopman-linear systems, except , are successful in considerably reducing the flow distance from the desired state over finite time. The control inputs and the flow evolution for some values of and full-state observation is shown in fig. 5. In the case of full-state observation, the input signal generally tends to its lower bound which results in a lower effective for the flow, and hence getting closer to the fixed point at ; however, the controller also uses intermittent bursts to speed up the stabilization. The effect of bursts on the control can be deduced by comparison with the control input with which is saturated at the lower bound at all times. Figure 4 also suggests that the control performance of the Koopman-linear systems generally scales with the number of measured observables, i.e., larger number of observables results in better control performance. However, this improvement in the performance starts to saturate at a relatively low , e.g., the full-state observation offers less than 10 percent improvement over in the final discrepancy. This indicates that the flow dynamics can be approximated accurately with low-dimensional Koopman models and there is a reasonable tradeoff between the number of observables and control performance. We have observed that the effect of observable selection significantly affects the performance of the controller for the case of , and results reported in the figures represent the typical behavior of controllers built on sparse measurements.

Figure 4: Normalized kinetic energy of flow distance for cavity flow controllers built by full state and sparse measurements. is the number of measurements used to build the Koopman-linear system.

Figure 5: Discrepancy in the vorticity of controlled state, and input signal, for full-state and sparse measurements. is the number of stream function measurements used to build the Koopman-linear system. The measurement locations are marked via crosses in the left column.

Computation time

Table 1 summarizes the average computational time444The computations were carried out in MATLAB running on a 3.40 GHz Intel Xeon CPU and 64 GB RAM. required to evaluate the control input at each time step of the closed-loop operation. We report separately the computation time required to build the state of the Koopman linear system by embedding the available measurements and the time required to solve the optimization problem (4) in the dense form555The conversion of the optimization problem (4) to the dense form consist in solving for the state variables in terms of the control inputs and the initial state using the linear recursion ; the result of this strahgtforward linear algebra excercise can be found in the appendix of [1]. using the active set qpOASES solver [53]. As evident from the table, combination of the Koopman linear representation and convex quadratic programming of the MPC framework leads to computation of the control input in a fraction of a millisecond. Note that in both examples the bulk of the computation time is spent on embedding the sparse measurements to build the Koopman linear state; this step requires data manipulation carried out purely in MATLAB and could be sped up by a tailored implementation (e.g., in C). Of course, in a real-world implementation of this framework on nonlinear flows, other factors including the time to record and process the physical measurements should also be considered.

of measurements embedding dimension
Burgers 10 62 4.71 2.28
150 152 2.95
Cavity 1 11 1.51 8.96
2 16 1.54 5.05
5 31 1.52 4.19
50 256 1.55 3.07
100 506 1.66 7.59
2500 2502 4.44
Table 1: Computation time for Koopman MPC of cavity flow and Burgers equations. The symbol “—” signifies a negligible embedding time in the case of full state measurement.

6 Conclusion and outlook

In this work, we discussed the application of the Koopman model predictive control framework, first proposed in [1], for data-driven control of nonlinear flows. The key idea is that the Koopman operator acts linearly on the (infinite-dimensional) space of observables on a dynamical system. Using the EDMD algorithm [18], we computed finite-dimensional approximations of the Koopman operator in the form of an input-output linear system solely from time-series data. The obtained Koopman-linear system was then used within a linear MPC to achieve the flow control objectives. The application of this framework to the case of Burgers equation and lid-driven cavity flow showed considerable promise for application to more complex flows.

Future work should focus on optimizing the data collection process to obtain more accurate and efficient Koopman linear models. This requires addressing two problems: first, finding efficient methods for sampling the extended state space of the nonlinear system, and second, identifying observables that provide the best finite-dimensional approximation of the Koopman operator in the space of observables.


The authors would like to thank Dr. Sebastian Peitz for a constructive exchange of ideas on the subject.

This research was supported in part by the ARO-MURI grant W911NF-17-1-0306, Program managers Dr. Matthew Munson and Dr. Samuel Stanton. The research of M. Korda was partly supported by the Swiss National Science Foundation under grant P2ELP2165166.


  • [1] Milan Korda and Igor Mezić. Linear predictors for nonlinear dynamical systems: Koopman operator meets model predictive control. Automatica, 93:149–160, 2018.
  • [2] John Kim. Physics and control of wall turbulence for drag reduction. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences, 369(1940):1396–1411, 2011.
  • [3] Steven L Brunton and Bernd R Noack. Closed-loop turbulence control: progress and challenges. Applied Mechanics Reviews, 67(5):050801, 2015.
  • [4] Thomas R Bewley. Flow control: new challenges for a new renaissance. Progress in Aerospace sciences, 37(1):21–58, 2001.
  • [5] Thomas R Bewley, Parviz Moin, and Roger Temam. DNS-based predictive control of turbulence: an optimal benchmark for feedback algorithms. Journal of Fluid Mechanics, 447:179–225, 2001.
  • [6] John Kim and Thomas R Bewley. A linear systems approach to flow control. Annu. Rev. Fluid Mech., 39:383–417, 2007.
  • [7] Philip Holmes, John L Lumley, Gal Berkooz, and Clarence Rowley. Turbulence, coherent structures, dynamical systems and symmetry. Cambridge university press, 2012.
  • [8] Bernd R Noack, Konstantin Afanasiev, Marek Morzynski, Gilead Tadmor, and Frank Thiele. A hierarchy of low-dimensional models for the transient and post-transient cylinder wake. Journal of Fluid Mechanics, 497:335–363, 2003.
  • [9] Maciej J Balajewicz, Earl H Dowell, and Bernd R Noack. Low-dimensional modelling of high-reynolds-number shear flows incorporating constraints from the navier–stokes equation. Journal of Fluid Mechanics, 729:285–308, 2013.
  • [10] Karen Willcox and Jaime Peraire. Balanced model reduction via the proper orthogonal decomposition. AIAA journal, 40(11):2323–2330, 2002.
  • [11] CW Rowley. Model reduction for fluids, using balanced proper orthogonal decomposition. International Journal of Bifurcation and Chaos, 15(03):997–1013, 2005.
  • [12] Randolph H Cabell, Michael A Kegerise, David E Cox, and Gary P Gibbs. Experimental feedback control of flow-induced cavity tones. AIAA journal, 44(8):1807–1816, 2006.
  • [13] Steven L Brunton, Clarence W Rowley, and David R Williams. Reduced-order unsteady aerodynamic models at low reynolds numbers. Journal of Fluid Mechanics, 724:203–233, 2013.
  • [14] Shao-Ching Huang and John Kim. Control and system identification of a separated flow. Physics of Fluids, 20(10):101509, 2008.
  • [15] Aurelien Hervé, Denis Sipp, Peter J Schmid, and Manuel Samuelides. A physics-based approach to flow control using system identification. Journal of Fluid Mechanics, 702:26–58, 2012.
  • [16] Bernard O Koopman. Hamiltonian systems and transformation in hilbert space. Proceedings of the National Academy of Sciences, 17(5):315–318, 1931.
  • [17] Igor Mezić. Analysis of fluid flows via spectral properties of the Koopman operator. Annual Review of Fluid Mechanics, 45:357–378, 2013.
  • [18] Matthew O Williams, Ioannis G Kevrekidis, and Clarence W Rowley. A data-driven approximation of the Koopman operator: Extending dynamic mode decomposition. Journal of Nonlinear Science, 25(6):1307–1346, 2015.
  • [19] B. O. Koopman and J. von Neumann. Dynamical systems of continuous spectra. Proceedings of the National Academy of Sciences of the United States of America, 18(3):255, 1932.
  • [20] Igor Mezić and Andrzej Banaszuk. Comparison of systems with complex behavior. Physica D: Nonlinear Phenomena, 197(1):101–133, 2004.
  • [21] Igor Mezić. Spectral properties of dynamical systems, model reduction and decompositions. Nonlinear Dynamics, 41(1-3):309–325, 2005.
  • [22] C.W. Rowley, I. Mezić, S. Bagheri, P. Schlatter, and D.S. Henningson. Spectral analysis of nonlinear flows. Journal of Fluid Mechanics, 641(1):115–127, 2009.
  • [23] Peter J Schmid. Dynamic mode decomposition of numerical and experimental data. Journal of Fluid Mechanics, 656:5–28, 2010.
  • [24] Peter J Schmid, L Li, MP Juniper, and O Pust. Applications of the dynamic mode decomposition. Theoretical and Computational Fluid Dynamics, 25(1-4):249–259, 2011.
  • [25] Jia-Chen Hua, Gemunu H Gunaratne, Douglas G Talley, James R Gord, and Sukesh Roy. Dynamic-mode decomposition based analysis of shear coaxial jets with and without transverse acoustic driving. Journal of Fluid Mechanics, 790:5–32, 2016.
  • [26] Shervin Bagheri. Koopman-mode decomposition of the cylinder wake. J. Fluid Mech, 726:596–623, 2013.
  • [27] Taraneh Sayadi, Peter J Schmid, Joseph W Nichols, and Parviz Moin. Reduced-order representation of near-wall structures in the late transitional boundary layer. Journal of Fluid Mechanics, 748:278–301, 2014.
  • [28] Pramod K Subbareddy, Matthew D Bartkowicz, and Graham V Candler. Direct numerical simulation of high-speed transition due to an isolated roughness element. Journal of Fluid Mechanics, 748:848–878, 2014.
  • [29] Joshua L Proctor, Steven L Brunton, and J Nathan Kutz. Generalizing Koopman theory to allow for inputs and control. arXiv preprint arXiv:1602.07647, 2016.
  • [30] Matthew O. Williams, Maziar S. Hemati, Scott T. M. Dawson, Ioannis G. Kevrekidis, and Clarence W. Rowley. Extending data-driven Koopman analysis to actuated systems. In IFAC Symposium on Nonlinear Control Systems (NOLCOS), 2016.
  • [31] Joshua L Proctor, Steven L Brunton, and J Nathan Kutz. Dynamic mode decomposition with control. SIAM Journal on Applied Dynamical Systems, 15(1):142–161, 2016.
  • [32] Sebastian Peitz and Stefan Klus. Koopman operator-based model reduction for switched-system control of pdes. arXiv preprint arXiv:1710.06759, 2017.
  • [33] Sebastian Peitz. Controlling nonlinear pdes using low-dimensional bilinear approximations obtained from data. arXiv preprint arXiv:1801.06419, 2018.
  • [34] Bryan Glaz, Igor Mezić, Maria Fonoberova, and Sophie Loire. Quasi-periodic intermittency in oscillating cylinder flow. Journal of Fluid Mechanics, 828:680–707, 2017.
  • [35] Aivar Sootla, Alexandre Mauroy, and Damien Ernst. An optimal control formulation of pulse-based control using koopman operator. arXiv preprint arXiv:1707.08462, 2017.
  • [36] Alexandre Mauroy and Jorge Goncalves. Koopman-based lifting techniques for nonlinear systems identification. arXiv preprint arXiv:1709.02003, 2017.
  • [37] Amit Surana and Andrzej Banaszuk. Linear observer synthesis for nonlinear systems using Koopman operator framework. In IFAC Symposium on Nonlinear Control Systems (NOLCOS), 2016.
  • [38] Hassan Arbabi and Igor Mezic. Ergodic theory, dynamic mode decomposition, and computation of spectral properties of the Koopman operator. SIAM Journal on Applied Dynamical Systems, 16(4):2096–2126, 2017.
  • [39] Milan Korda and Igor Mezić. On convergence of extended dynamic mode decomposition to the Koopman operator. Journal of Nonlinear Science, pages 1–24, 2017.
  • [40] Lennart Ljung. System identification. In Signal Analysis and Prediction, pages 163–173. Springer, 1998.
  • [41] Dag Tjøstheim and Bjørn H Auestad. Nonparametric identification of nonlinear time series: projections. Journal of the American Statistical Association, 89(428):1398–1409, 1994.
  • [42] Floris Takens. Detecting strange attractors in turbulence. In Dynamical systems and turbulence, Warwick 1980, pages 366–381. Springer, 1981.
  • [43] Jonathan H Tu, Clarence W Rowley, Dirk M Luchtenburg, Steven L Brunton, and J Nathan Kutz. On dynamic mode decomposition: theory and applications. Journal of Computational Dynamics, 1:391–421, 2014.
  • [44] Milan Korda, Mihai Putinar, and Igor Mezić. Data-driven spectral analysis of the Koopman operator. arXiv preprint arXiv:1710.06532, 2017.
  • [45] Marko Budišić, Ryan Mohr, and Igor Mezić. Applied koopmanism a). Chaos: An Interdisciplinary Journal of Nonlinear Science, 22(4):047510, 2012.
  • [46] Alexandre Mauroy and Igor Mezić. Global stability analysis using the eigenfunctions of the Koopman operator. IEEE Transactions on Automatic Control, 61(11):3356–3369, 2016.
  • [47] Igor Mezić. On applications of the spectral theory of the Koopman operator in dynamical systems and control theory. In Decision and Control (CDC), 2015 IEEE 54th Annual Conference on, pages 7034–7041. IEEE, 2015.
  • [48] Alexandre Mauroy and Igor Mezić. On the use of fourier averages to compute the global isochrons of (quasi) periodic dynamics. Chaos: An Interdisciplinary Journal of Nonlinear Science, 22(3):033112, 2012.
  • [49] Igor Mezić. Koopman operator spectrum and data analysis. arXiv preprint arXiv:1702.07597, 2017.
  • [50] Dimitrios Giannakis. Data-driven spectral decomposition and forecasting of ergodic dynamical systems. Applied and Computational Harmonic Analysis, 2017.
  • [51] David Q Mayne, James B Rawlings, Christopher V Rao, and Pierre OM Scokaert. Constrained model predictive control: Stability and optimality. Automatica, 36(6):789–814, 2000.
  • [52] Lars Grüne and Jürgen Pannek. Nonlinear model predictive control. In Nonlinear Model Predictive Control. Springer, 2011.
  • [53] Hans Joachim Ferreau, Christian Kirches, Andreas Potschka, Hans Georg Bock, and Moritz Diehl. qpOASES: A parametric active-set algorithm for quadratic programming. Mathematical Programming Computation, 6(4):327–363, 2014.
  • [54] Hassan Arbabi and Igor Mezić. Study of dynamics in post-transient flows using Koopman mode decomposition. Phys. Rev. Fluids, 2:124402, 2017.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description