This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Data-driven control of nonlinear systems from input-output data*

X. Dai1 and C. De Persis1 and N. Monshizadeh1 and P. Tesi2 *This publication is also part of the project Digital Twin with project number P18-03 of the research programme TTW Perspective which is (partly) financed by the Dutch Research Council (NWO).1X. Dai, C. De Persis and N. Monshizadeh are with Institute of Engineering and Technology Groningen, University of Groningen, 9747 AG Groningen, The Netherlands. Email: {x.dai,c.de.persis,n.monshizadeh}@rug.nl. 2P. Tesi is with the Department of Information Engineering, University of Florence, 50139 Florence, Italy. Email: [email protected].
Abstract

The design of controllers from data for nonlinear systems is a challenging problem. In a recent paper, De Persis, Rotulo and Tesi, “Learning controllers from data via approximate nonlinearity cancellation,” IEEE Transactions on Automatic Control, 2023, a method to learn controllers that make the closed-loop system stable and dominantly linear was proposed. The approach leads to a simple solution based on data-dependent semidefinite programs. The method uses input-state measurements as data, while in a realistic setup it is more likely that only input-output measurements are available. In this note we report how the design principle of the above mentioned paper can be adjusted to deal with input-output data and obtain dynamic output feedback controllers in a favourable setting.

I INTRODUCTION

Learning controllers from data is of uttermost importance and a fascinating topic, with foundations in both control theory and data science. Several recent approaches have been proposed for data-driven control, initially focusing, as is natural, on linear systems, e.g. [1, 2, 3, 4]. For nonlinear systems, some results have appeared as well, mostly focusing on special classes of nonlinear systems, bilinear [5, 6], polynomial [7, 8, 9], rational [10] or with quadratic nonlinearities [11], [12]. Other approaches consist of approximating general nonlinear control systems to classes for which data-driven design is possible [13, 14] or expressing nonlinear systems via a dictionary of known functions, in which case the design can aim at making the closed-loop system dominantly linear [15] or prescribing a desired output signal [16].

The understanding of the topic is far from having reached a mature phase, even in the case full measurements of the state are available. Yet, it can be argued that the use of these data-dependent design schemes in practice very much rely on the possibility that they work with output measurements data only, which dispenses the designer from requiring to know the state of the system – a very restrictive prior in many cases. In this paper we report on some early results on using data-driven control techniques in conjunction with input/output data for discrete-time nonlinear systems.

Related work. Even when a model is known, output feedback control for nonlinear systems is a challenging open problem [17, Section 8.7]. The certainty equivalence principle, which is valid for linear systems, is hard to extend to a nonlinear setting. Nonetheless, certain nonlinear discrete-time versions of the certainty equivalence principle have been obtained [18]. In [19], the state in a globally stabilizing state feedback (possibly generated by a finite horizon model predictive scheme) is replaced by an estimate provided by an observer under a uniform observability assumption to obtain a globally stabilizing output feedback controller.

The important uniform observability property [20, 21, 22] can be explored in different ways in the context of learning control from data. Since it guarantees the existence of an injective map from input/output sequences to the state, deep neural networks can be trained to approximate such a map and provide estimates of the state to be used in the given input-to-state stabilizing feedback, obtaining a locally asymptotically stable closed-loop system [23]. The injective map can also be used to define the regression relating the input/output sequences of the system and deep neural networks can be used to learn such a regression [24]. However, to the best of our knowledge there are very few other attempts at designing controllers for nonlinear system from input/output data.

Contribution. The aim of this note is to start the investigation of feedback design from input/output data for nonlinear discrete-time systems. We adopt the notion of uniform observability, which allows us to extend some of the design procedures introduced in [2]. Namely, we consider past inputs and outputs as fictitious state variables and obtain a form of the system for which the data-driven “state” feedback design techniques for nonlinear systems of [15] can be used. The implementation of the controller is then carried out by replacing the past input/output measurements with the quantities returned by a dead-beat observer of the output and a chain of integrators driven by the input. A formal analysis of the stability of the overall closed-loop system is then presented along with a discussion about the proposed solution.

In Section II we recall the notion of observability that we adopt for our analysis and introduce an auxiliary system that reproduces the input/output behaviour of the system to control. The auxiliary system is extended in Section III-A with a chain of integrators that provides the past inputs of the system to be used in the controller. The design of the output feedback dynamic controller based on input/output data is presented in Section III. The analysis of the closed-loop system to show the convergence of the system’s and the controller’s state to the origin is the topic of Section IV, along with a discussion of the result.

II Preliminaries

We consider the single-input single-output nonlinear discrete-time system

x+=f(x,u)y=h(x)\begin{array}[]{rl}x^{+}=&f(x,u)\\ y=&h(x)\end{array} (1)

where xnx\in\mathbb{R}^{n}, u,yu,y\in\mathbb{R}, f(0,0)=0f(0,0)=0 and h(0)=0h(0)=0. f,hf,h are continuous functions of their arguments with domains n×\mathbb{R}^{n}\times\mathbb{R} and n\mathbb{R}^{n}. These functions are unknown. The dimension of the state-space nn is not necessarily known.

II-A Dataset

A dataset consisting of open-loop input-output measurements

𝒟:={(u(k),y(k))}k=0N+T1\mathcal{D}:=\{(u(k),y(k))\}_{k=0}^{N+T-1} (2)

is available, where the positive integers N,TN,T will be specified later. The samples in the dataset are obtained from off-line experiment(s) conducted on system (1), hence they satisfy the equations (1), namely

x(k+1)=f(x(k),u(k))y(k)=h(x(k)),k=0,1,,N+T1\begin{array}[]{rl}x(k+1)=&f(x(k),u(k))\\ y(k)=&h(x(k)),\quad\forall k=0,1,\ldots,N+T-1\end{array}

For our purpose of designing an output feedback controller from 𝒟\mathcal{D} it is not required that all the samples of the dataset are sequentially obtained in a single experiment. In fact, even multiple experiments collecting N+TN+T samples suffice. This is useful especially when dealing with unstable dynamics.

II-B Uniform Observability

The problem of interest is to design an output feedback controller that stabilizes the nonlinear system, based on the dataset 𝒟\mathcal{D}. To this purpose, we need to infer the behavior of the state xx from input-output measurements, for which suitable “observability” conditions on the system (1) are required. Before stating them, we introduce some notation. We let

F0(x):=xF1(x,v0):=f(x,v0)Fk+1(x,v0,,vk):=f(Fk(x,v0,,vk1),vk),k1\begin{array}[]{rll}F^{0}(x):=&x\\ F^{1}(x,v_{0}):=&f(x,v_{0})\\ F^{k+1}(x,v_{0},\ldots,v_{k}):=&f(F^{k}(x,v_{0},\ldots,v_{k-1}),v_{k}),&\!\!\!\!\!k\geq 1\end{array} (3)

Note that (3) gives x(k)=FN(x(kN),u[kN,k1])x(k)=F^{N}(x(k-N),u_{[k-N,k-1]}). To reduce the notational complexity, we introduce v[0,k]v_{[0,k]}, which denotes the sequence of values v0,,vkv_{0},\ldots,v_{k}. Hence, the last identity above is rewritten as Fk+1(x,v[0,k]):=f(Fk(x,v[0,k1]),vk)F^{k+1}(x,v_{[0,k]}):=f(F^{k}(x,v_{[0,k-1]}),v_{k}). In what follows, we will use symbols like v[0,k]v_{[0,k]} also to denote the vector [v0v1vk]\left[\begin{smallmatrix}v_{0}&v_{1}&\ldots&v_{k}\end{smallmatrix}\right]^{\top}.

The following is the main assumption on system (1).

Assumption 1

Let 𝒳n\mathcal{X}\subset\mathbb{R}^{n} and 𝒰\mathcal{U}\subset\mathbb{R} be compact sets such that 𝒳×𝒰\mathcal{X}\times\mathcal{U} contains the origin of n+1\mathbb{R}^{n+1}. There exists N>0N\in\mathbb{Z}_{>0} such that, for any v[0,N2]𝒰N1v_{[0,N-2]}\in\mathcal{U}^{N-1}, the mapping

ΦN(x,v[0,N2])=[hF0(x)hF1(x,v0)hFN1(x,v[0,N2])]\Phi_{N}(x,v_{[0,N-2]})=\begin{bmatrix}h\circ F^{0}(x)\\ h\circ F^{1}(x,v_{0})\\ \vdots\\ h\circ F^{N-1}(x,v_{[0,N-2]})\end{bmatrix} (4)

is injective as a function of xx on 𝒳\mathcal{X}.  \Box

Following [22, Definition 1], we refer to the assumption above as a uniform observability on 𝒳\mathcal{X} property. It is observed in [22] that, if f,hf,h are continuously differentiable functions, uniform observability is not restrictive in the sense that a nonuniform distinguishability property and a nonuniform observability rank condition imply uniform observability. Since for any MNM\geq N the mapping ΦM\Phi_{M} remains injective, we do not need to know the smallest NN for which Assumption 1 holds.

For any v[0,N2]𝒰N1v_{[0,N-2]}\in\mathcal{U}^{N-1}, the function

ΦN(,v[0,N2]):𝒳N\Phi_{N}(\cdot,v_{[0,N-2]})\colon\mathcal{X}\to\mathbb{R}^{N}

such that xw=ΦN(x,v[0,N2])x\mapsto w=\Phi_{N}(x,v_{[0,N-2]}), is injective on 𝒳\mathcal{X} and one can define a left inverse

ΨN(,v[0,N2]):ΦN(𝒳,v[0,N2])n\Psi_{N}(\cdot,v_{[0,N-2]})\colon\Phi_{N}(\mathcal{X},v_{[0,N-2]})\to\mathbb{R}^{n}

such that ΨN(ΦN(x,v[0,N2]),v[0,N2])=x\Psi_{N}(\Phi_{N}(x,v_{[0,N-2]}),v_{[0,N-2]})=x for all x𝒳x\in\mathcal{X}.

II-C An auxiliary system

We introduce a system equivalent to (1) which is better suited for control design. By equivalent it is meant that the new system has the same input-output behavior of system (1) when properly initialized. We use this auxiliary system for control design purposes. Later on we show the effect of the designed controller on the actual system (1).

For any v[0,N1]Nv_{[0,N-1]}\in\mathbb{R}^{N}, define the functions

ψ(w,v[0,N1]):=FN(ΨN(w,v[0,N2]),v[0,N1])h~(w,v[0,N1]):=hψ(w,v[0,N1])f~(w,v[0,N1]):=Acw+Bch~(w,v[0,N1])\begin{array}[]{rl}\psi(w,v_{[0,N-1]}):=&F^{N}(\Psi_{N}(w,v_{[0,N-2]}),v_{[0,N-1]})\\ \tilde{h}(w,v_{[0,N-1]}):=&h\circ\psi(w,v_{[0,N-1]})\\[1.42262pt] \tilde{f}(w,v_{[0,N-1]}):=&A_{c}w+B_{c}\tilde{h}(w,v_{[0,N-1]})\end{array} (5)

with the pair (Ac,Bc)N×N×N(A_{c},B_{c})\in\mathbb{R}^{N\times N}\times\mathbb{R}^{N} in the Brunovsky form. The domain of ψ(,v[0,N1]),h~(,v[0,N1])\psi(\cdot,v_{[0,N-1]}),\tilde{h}(\cdot,v_{[0,N-1]}), f~(,v[0,N1])\tilde{f}(\cdot,v_{[0,N-1]}) is ΦN(𝒳,v[0,N2])\Phi_{N}(\mathcal{X},v_{[0,N-2]}). Under the standing assumptions on f,hf,h, these functions are continuous and zero at (w,v)=(0,0)(w,v)=(0,0).

In the result below, for a kk\in\mathbb{Z}, we let u[kN,k1]u_{[k-N,k-1]} be an input sequence applied to system (1) and y[kN,k1]y_{[k-N,k-1]} its output response from some initial condition x(kN)x(k-N).

Lemma 1

Let system (1) satisfy Assumption 1. Consider arbitrary k0k_{0}\in\mathbb{Z}, x(kN)𝒳x(k-N)\in\mathcal{X} and u[kN,k1]𝒰Nu_{[k-N,k-1]}\in\mathcal{U}^{N} for all kk0k\in\mathbb{Z}_{\geq k_{0}}. Consider the system

w+=f~(w,v)yw=h~(w,v)\begin{array}[]{rl}w^{+}=&\tilde{f}(w,v)\\ y_{w}=&\tilde{h}(w,v)\end{array} (6)

with f~,h~\tilde{f},\tilde{h} defined in (5). If the input v(k)v(k) applied to (6) satisfies v(k)=u[kN,k1]v(k)=u_{[k-N,k-1]} for all kk0k\in\mathbb{Z}_{\geq k_{0}} and the initial condition of (6) is set to w(k0)=y[k0N,k01]w(k_{0})=y_{[k_{0}-N,k_{0}-1]}, then

w(k)=y[kN,k1],yw(k)=y(k),kk0.w(k)=y_{[k-N,k-1]},\quad y_{w}(k)=y(k),\quad\forall k\in\mathbb{Z}_{\geq k_{0}}.

Furthermore, x(k)=ψ(w(k),v(k))x(k)=\psi(w(k),v(k)), for all kk0k\in\mathbb{Z}_{\geq k_{0}}.  \Box

Proof. For the sake of completeness, it is given in Appendix VI-A.  \blacksquare

Example 1

We consider [15, Example 5]

x1+=x1+Tsx2\displaystyle x_{1}^{+}=x_{1}+T_{s}x_{2} (7a)
x2+=Tsgsinx1+(1Tsμm2)x2+Tsm(cosx1)u,\displaystyle x_{2}^{+}=\displaystyle\frac{T_{s}g}{\ell}\sin x_{1}+\left(1-\frac{T_{s}\mu}{m\ell^{2}}\right)x_{2}+\frac{T_{s}}{m\ell}(\cos x_{1})u\,, (7b)

with y=x1y=x_{1}. We compute

Φ2(x,v)=[x1x1+Tsx2]\Phi_{2}(x,v)=\begin{bmatrix}x_{1}\\ x_{1}+T_{s}x_{2}\end{bmatrix}

which is globally invertible (Assumption 1 holds with N=2N=2.) with

Ψ2(w,v)=[w1w2w1Ts]\Psi_{2}(w,v)=\begin{bmatrix}w_{1}\\ \frac{w_{2}-w_{1}}{T_{s}}\end{bmatrix}

Hence ψ(w,v0,v1)=col(ψ1(w,v0,v1),ψ2(w,v0,v1))\psi(w,v_{0},v_{1})={\rm col}(\psi_{1}(w,v_{0},v_{1}),\psi_{2}(w,v_{0},v_{1})), where

ψ1(w,v0,v1)=w2+Ts2gsinw1+(1Tsμm2)(w2w1)+Ts2m(cosw1)v0ψ2(w,v0,v1)=Tsgsinw2+(1Tsμm2)(Tsgsinw1+(1Tsμm2)w2w1Ts+Tsm(cosw1)v0)+Tsm(cosw2)v1\begin{array}[]{rl}\psi_{1}(w,v_{0},v_{1})=&w_{2}+\frac{T_{s}^{2}g}{\ell}\sin w_{1}+\left(1-\frac{T_{s}\mu}{m\ell^{2}}\right)(w_{2}-w_{1})\\[5.69054pt] &\hskip 99.58464pt+\frac{T_{s}^{2}}{m\ell}(\cos w_{1})v_{0}\\[5.69054pt] \psi_{2}(w,v_{0},v_{1})=&\frac{T_{s}g}{\ell}\sin w_{2}+\left(1-\frac{T_{s}\mu}{m\ell^{2}}\right)\left(\frac{T_{s}g}{\ell}\sin w_{1}\right.\\ &\left.+\left(1-\frac{T_{s}\mu}{m\ell^{2}}\right)\frac{w_{2}-w_{1}}{T_{s}}+\frac{T_{s}}{m\ell}(\cos w_{1})v_{0}\right)+\frac{T_{s}}{m\ell}(\cos w_{2})v_{1}\end{array} (8)

From which, one computes

h~(w,v0)=w2+Ts2gsinw1+(1Tsμm2)(w2w1)+Ts2m(cosw1)v0=(1+Tsμm2)w1+(2Tsμm2)w2+Ts2gsinw1+Ts2m(cosw1)v0\begin{array}[]{l}\tilde{h}(w,v_{0})=w_{2}+\frac{T_{s}^{2}g}{\ell}\sin w_{1}+\left(1-\frac{T_{s}\mu}{m\ell^{2}}\right)(w_{2}-w_{1})\\ \hskip 99.58464pt+\frac{T_{s}^{2}}{m\ell}(\cos w_{1})v_{0}\\ =\left(-1+\frac{T_{s}\mu}{m\ell^{2}}\right)w_{1}+\left(2-\frac{T_{s}\mu}{m\ell^{2}}\right)w_{2}+\frac{T_{s}^{2}g}{\ell}\sin w_{1}\\ \hskip 113.81102pt+\frac{T_{s}^{2}}{m\ell}(\cos w_{1})v_{0}\end{array}

Hence the equivalent representation is given by

w+=[w2h~(w,v0)],yw=h~(w,v0)\begin{array}[]{l}w^{+}=\begin{bmatrix}w_{2}\\ \tilde{h}(w,v_{0})\end{bmatrix},\quad y_{w}=\tilde{h}(w,v_{0})\end{array}

The original state xx is obtainable from the solution of the system above via the expression

x=ψ(w,v0,v1)x=\psi(w,v_{0},v_{1})

where ψ\psi is as in (8). For this example 𝒳=2\mathcal{X}=\mathbb{R}^{2} and 𝒰=\mathcal{U}=\mathbb{R}.  \blacksquare

III Design of an output feedback controller from data

III-A A dynamic extension

System (6) is driven by the past NN samples of uu, which is the input to (1). These past values are obtained by adding a chain of integrators to the dynamics (6)

ξ+=Acξ+Bcu\begin{array}[]{rl}\xi^{+}=&A_{c}\,\xi+B_{c}u\end{array} (9)

with the interconnection condition

v=ξv=\xi

which returns the system

w+=f~(w,ξ)ξ+=Acξ+Bcuy=h~(w,ξ)\begin{array}[]{rl}w^{+}=&\tilde{f}(w,\xi)\\ \xi^{+}=&A_{c}\,\xi+B_{c}u\\ y=&\tilde{h}(w,\xi)\end{array} (10)

Once the system’s state satisfies (w(k¯),ξ(k¯))=(y[k¯n,k¯1],u[k¯n,k¯1])(w(\overline{k}),\xi(\overline{k}))=(y_{[\overline{k}-n,\overline{k}-1]},u_{[\overline{k}-n,\overline{k}-1]}) for some k¯\overline{k}\in\mathbb{Z}, the input-output behavior of this system matches the one of (1) for all kk¯k\geq\overline{k}. We will discuss later on the availability of such initial condition at a time k¯\overline{k}.

III-B Control input design

To obtain uu that drives the chain of integrators making the dynamic controller, we argue as in [2, 15]. We first introduce the following:

Assumption 2

For any ξ𝒰N\xi\in\mathcal{U}^{N} and any wΦN(𝒳,ξ[1,N1])w\in\Phi_{N}(\mathcal{X},\xi_{[1,N-1]}), where ξ[1,N1]\xi_{[1,N-1]} denotes the first N1N-1 entries of ξ\xi, it holds that h~(w,ξ)=αZ(w,ξ)\tilde{h}(w,\xi)=\alpha Z(w,\xi), where Z(w,ξ)SZ(w,\xi)\in\mathbb{R}^{S} is a vector of known continuous functions and α1×S\alpha\in\mathbb{R}^{1\times S} is an unknown vector.  \Box

This is a technical assumption due to the need to give the nonlinearities of (10) a form for which the controller design is possible. Although it is restrictive, [15, Section VI.B] bypasses such an assumption by expressing h~(w,ξ)\tilde{h}(w,\xi) as αZ(w,ξ)+d(w,ξ)\alpha Z(w,\xi)+d(w,\xi), where the term d(w,ξ)d(w,\xi) represents the nonlinearities that were excluded from Z(w,ξ)Z(w,\xi), and then analyzing the stability of the system in the presence of the neglected nonlinearity d(w,ξ)d(w,\xi). This analysis goes beyond the scope of this paper.

We consider the case in which the function Z(w,ξ)Z(w,\xi) comprises both a linear part and a nonlinear part Q(w,ξ)Q(w,\xi), i.e.

Z(w,ξ)=[wξQ(w,ξ)]Z(w,\xi)=\begin{bmatrix}w\\ \xi\\ Q(w,\xi)\end{bmatrix}

The system (10) can then be written as

[w+ξ+]=A[wξ]+B1u+B2αZ(w,ξ)y=αZ(w,ξ)\begin{array}[]{rl}\begin{bmatrix}w^{+}\\ \xi^{+}\end{bmatrix}=&A\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}u+B_{2}\alpha Z(w,\xi)\\ y=&\alpha Z(w,\xi)\end{array} (11)

where

A:=[Ac00Ac],B1:=[0Bc],B2:=[Bc0]A:=\begin{bmatrix}A_{c}&0\\ 0&A_{c}\end{bmatrix},\;B_{1}:=\begin{bmatrix}0\\ B_{c}\end{bmatrix},\;B_{2}:=\begin{bmatrix}B_{c}\\ 0\end{bmatrix}

and the pair (Ac,Bc)(A_{c},B_{c}) is in the Brunovsky canonical form.

We focus on the case in which the input uu is designed as a function of Z(w,ξ)Z(w,\xi), i.e.

u=κZ(w,ξ)u=\kappa Z(w,\xi) (12)

where κ1×S\kappa\in\mathbb{R}^{1\times S} is the control gain. Write the closed-loop system (11)-(12) as

[w+ξ+]=A[wξ]+B1κZ(w,ξ)+B2αZ(w,ξ)y=αZ(w,ξ)\begin{array}[]{rl}\begin{bmatrix}w^{+}\\ \xi^{+}\end{bmatrix}=&A\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}\kappa Z(w,\xi)+B_{2}\alpha Z(w,\xi)\\ y=&\alpha Z(w,\xi)\end{array} (13)

The system is defined for any ξ𝒰N\xi\in\mathcal{U}^{N} and any wΦN(𝒳,ξ[1,N1])w\in\Phi_{N}(\mathcal{X},\xi_{[1,N-1]}).

III-C Data-dependent representation of the closed-loop system

Preliminary to the design of the controller is a data-dependent representation of the closed-loop system. We first introduce some notation. Recall the dataset in (2) and introduce, for i=0,,T1i=0,\ldots,T-1,

U(i):=[u(i)u(i+1)u(i+N1)],Y(i):=[y(i)y(i+1)y(i+N1)]U(i):=\begin{bmatrix}u(i)\\ u(i+1)\\ \vdots\\ u(i+N-1)\end{bmatrix},Y(i):=\begin{bmatrix}y(i)\\ y(i+1)\\ \vdots\\ y(i+N-1)\end{bmatrix}

We assume that the samples of the dataset evolve in the domain of definition of (13).

Assumption 3

For any i=0,,T1i=0,\ldots,T-1, U(i)𝒰NU(i)\in\mathcal{U}^{N} and Y(i)ΦN(𝒳,u[i,i+N2])Y(i)\in\Phi_{N}(\mathcal{X},u_{[i,i+N-2]}).  \Box

We let:

Y0:=[Y(0)Y(1)Y(T1)]V0:=[U(0)U(1)U(T1)]Y1:=[Y(1)Y(2)Y(T)]V1:=[U(1)U(2)U(T)]Q0:=[Q(0)Q(1)Q(T1)]U0:=[u(N)u(N+1)u(N+T1)]\begin{array}[]{rl}Y_{0}&:=\begin{bmatrix}Y(0)&Y(1)&\ldots&Y(T-1)\end{bmatrix}\\[5.69054pt] V_{0}&:=\begin{bmatrix}U(0)&U(1)&\ldots&U(T-1)\end{bmatrix}\\[5.69054pt] Y_{1}&:=\begin{bmatrix}Y(1)&Y(2)&\ldots&Y(T)\end{bmatrix}\\[5.69054pt] V_{1}&:=\begin{bmatrix}U(1)&U(2)&\ldots&U(T)\end{bmatrix}\\[5.69054pt] Q_{0}&:=\begin{bmatrix}Q(0)&Q(1)&\ldots&Q(T-1)\end{bmatrix}\\[5.69054pt] U_{0}&:=\begin{bmatrix}u(N)&u(N+1)&\ldots u(N+T-1)\end{bmatrix}\end{array} (14)

In the definition of Q0Q_{0}, we are using the shorthand notation Q(i)Q(i) for Q(Y(i),U(i))Q(Y(i),U(i)). Under Assumption 3, bearing in mind the dynamics (11), the dataset-dependent matrices introduced in (14) satisfy

[Y1V1]=A[Y0V0]+B1U0+B2α[Y0V0Q0]\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}=A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}+B_{1}U_{0}+B_{2}\alpha\begin{bmatrix}Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix} (15)
Remark 1

(Multiple experiments) This identity is obtained from the TT identities

[Y(i+1)U(i+1)]=A[Y(i)U(i)]+B1u(i+N)+B2α[Y(i)U(i)Q(i)],i=0,,T1\begin{array}[]{l}\begin{bmatrix}Y(i+1)\\ U(i+1)\end{bmatrix}=A\begin{bmatrix}Y(i)\\ U(i)\end{bmatrix}+B_{1}u(i+N)+B_{2}\alpha\begin{bmatrix}Y(i)\\ U(i)\\ Q(i)\end{bmatrix},\\ \hskip 142.26378pti=0,\ldots,T-1\end{array}

We note that, for each ii, the identity does not require the quantities Y(i),U(i),Y(i+1),U(i+1),u(i)Y(i),U(i),Y(i+1),U(i+1),u(i) to be related to the corresponding quantities for i+1i+1. In other words, we could run TT NN-long independent experiments and collect the resulting input-output samples in

Y0j:=[yj(0)yj(1)yj(N1)],U0j:=[uj(0)uj(1)uj(N1)],Y1j:=[yj(1)yj(2)yj(N)],U1j:=[uj(1)uj(2)uj(N)]\begin{array}[]{l}Y_{0}^{j}:=\begin{bmatrix}y^{j}(0)\\ y^{j}(1)\\ \vdots\\ y^{j}(N-1)\end{bmatrix},\;U_{0}^{j}:=\begin{bmatrix}u^{j}(0)\\ u^{j}(1)\\ \vdots\\ u^{j}(N-1)\end{bmatrix},\\ Y_{1}^{j}:=\begin{bmatrix}y^{j}(1)\\ y^{j}(2)\\ \vdots\\ y^{j}(N)\end{bmatrix},\;U_{1}^{j}:=\begin{bmatrix}u^{j}(1)\\ u^{j}(2)\\ \vdots\\ u^{j}(N)\end{bmatrix}\end{array}

where j=0,,T1j=0,\ldots,T-1 denotes the number of the experiment, and {uj(k),yj(k)}k=0N\{u^{j}(k),y^{j}(k)\}_{k=0}^{N} are the input-output samples of the experiment jj. We could then redefine the matrices in (14) as

Y0:=[Y00Y01Y0T1]V0:=[U00U01U0T1]Y1:=[Y10Y11Y1T1]V1:=[U10U11U1T1]Q0:=[Q00Q01Q0T1]U0:=[u0(N)u1(N)uT1(N)]\begin{array}[]{rl}Y_{0}&:=\begin{bmatrix}Y_{0}^{0}&Y_{0}^{1}&\ldots&Y_{0}^{T-1}\end{bmatrix}\\[5.69054pt] V_{0}&:=\begin{bmatrix}U_{0}^{0}&U_{0}^{1}&\ldots&U_{0}^{T-1}\end{bmatrix}\\[5.69054pt] Y_{1}&:=\begin{bmatrix}Y_{1}^{0}&Y_{1}^{1}&\ldots&Y_{1}^{T-1}\end{bmatrix}\\[5.69054pt] V_{1}&:=\begin{bmatrix}U_{1}^{0}&U_{1}^{1}&\ldots&U_{1}^{T-1}\end{bmatrix}\\[5.69054pt] Q_{0}&:=\begin{bmatrix}Q_{0}^{0}&Q_{0}^{1}&\ldots&Q_{0}^{T-1}\end{bmatrix}\\[5.69054pt] U_{0}&:=\begin{bmatrix}u^{0}(N)&u^{1}(N)&\ldots u^{T-1}(N)\end{bmatrix}\\[5.69054pt] \end{array}

and the identity (15) would still apply.  \blacksquare

We establish the following:

Lemma 2

Let Assumptions 1, 2 and 3 hold. Consider any matrices κ1×S,GT×S\kappa\in\mathbb{R}^{1\times S},G\in\mathbb{R}^{T\times S} that satisfy the relation

[κIS]=[U0Y0V0Q0]G\begin{bmatrix}\kappa\\ \hline\cr I_{S}\end{bmatrix}=\begin{bmatrix}U_{0}\\ \hline\cr Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix}G (16)

and partition GG as

G=[G1G2]G=\begin{bmatrix}G_{1}&G_{2}\end{bmatrix}

where G1T×2N,G2T×(S2N)G_{1}\in\mathbb{R}^{T\times 2N},G_{2}\in\mathbb{R}^{T\times(S-2N)}. Then the closed-loop system (13) can be written as

[w+ξ+]=M[wξ]+NQ(w,ξ)\begin{bmatrix}w^{+}\\ \xi^{+}\end{bmatrix}=M\begin{bmatrix}w\\ \xi\end{bmatrix}+NQ(w,\xi)

where

M=𝒳1G1,N=𝒳1G2,𝒳1=[Y1V1].M=\mathcal{X}_{1}G_{1},\;N=\mathcal{X}_{1}G_{2},\;\mathcal{X}_{1}=\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}. (17)

\Box

Proof. For any ξ𝒰N\xi\in\mathcal{U}^{N} and any wΦN(𝒳,ξ[1,N1])w\in\Phi_{N}(\mathcal{X},\xi_{[1,N-1]}), it holds

A[wξ]+B1κZ(w,ξ)+B2αZ(w,ξ)=(16)A[wξ]+B1U0G1[wξ]+B1U0G2Q(w,ξ)+B2α[Y0V0Q0]GZ(w,ξ)=(15)A[wξ]+B1U0G1[wξ]+B1U0G2Q(w,ξ)+([Y1V1]A[Y0V0]B1U0)GZ(w,ξ)=(A+([Y1V1]A[Y0V0])G1)[wξ]+([Y1V1]A[Y0V0])G2Q(w,ξ).\begin{array}[]{rl}&A\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}\kappa Z(w,\xi)+B_{2}\alpha Z(w,\xi)\\[8.53581pt] \stackrel{{\scriptstyle\eqref{rich-data}}}{{=}}&A\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}U_{0}G_{1}\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}U_{0}G_{2}Q(w,\xi)\\ &\hskip 113.81102pt+B_{2}\alpha\begin{bmatrix}Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix}GZ(w,\xi)\\ \stackrel{{\scriptstyle\eqref{dataset-matrices-identity}}}{{=}}&A\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}U_{0}G_{1}\begin{bmatrix}w\\ \xi\end{bmatrix}+B_{1}U_{0}G_{2}Q(w,\xi)\\[8.53581pt] &\hskip 56.9055pt+\left(\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}-A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}-B_{1}U_{0}\right)GZ(w,\xi)\\ =&\left(A+\left(\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}-A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}\right)G_{1}\right)\begin{bmatrix}w\\ \xi\end{bmatrix}\\ &\hskip 85.35826pt+\left(\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}-A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}\right)G_{2}Q(w,\xi).\end{array}

By (16), we obtain that

[Y0V0][G1G2]=[I2N0S2N]\begin{bmatrix}Y_{0}\\ V_{0}\\ \end{bmatrix}\begin{bmatrix}G_{1}&G_{2}\end{bmatrix}=\begin{bmatrix}I_{2N}&0_{S-2N}\end{bmatrix}

Hence,

A+([Y1V1]A[Y0V0])G1=𝒳1G1([Y1V1]A[Y0V0])G2=𝒳1G2.\begin{array}[]{rl}A+\left(\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}-A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}\right)G_{1}=&\mathcal{X}_{1}G_{1}\\[11.38109pt] \left(\begin{bmatrix}Y_{1}\\ V_{1}\end{bmatrix}-A\begin{bmatrix}Y_{0}\\ V_{0}\end{bmatrix}\right)G_{2}=&\mathcal{X}_{1}G_{2}.\end{array}

\blacksquare

Let the set of real-valued symmetric matrices of dimension n×nn\times n be denoted by 𝕊n×n\mathbb{S}^{n\times n}. This data-dependent representation leads to the following local stabilization result:

Proposition 1

Let Assumptions 1, 2 and 3 hold. Consider the following SDP in the decision variables 𝒫1𝕊2N×2N\mathcal{P}_{1}\in\mathbb{S}^{2N\times 2N}, 𝒴1T×2N\mathcal{Y}_{1}\in\mathbb{R}^{T\times 2N}, and G2T×(S2N)G_{2}\in\mathbb{R}^{T\times(S-2N)}:

minimize𝒫1,𝒴1,G2\displaystyle\textrm{minimize}_{\mathcal{P}_{1},\mathcal{Y}_{1},G_{2}}\quad 𝒳1G2\displaystyle\|\mathcal{X}_{1}G_{2}\| (18a)
subject to [Y0V0Q0]𝒴1=[𝒫10(S2N)×2N],\displaystyle\begin{bmatrix}Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix}\mathcal{Y}_{1}=\begin{bmatrix}\mathcal{P}_{1}\\ 0_{(S-2N)\times 2N}\end{bmatrix}\,, (18b)
[𝒫1(𝒳1𝒴1)𝒳1𝒴1𝒫1]0,\displaystyle\begin{bmatrix}\mathcal{P}_{1}&(\mathcal{X}_{1}\mathcal{Y}_{1})^{\top}\\ \mathcal{X}_{1}\mathcal{Y}_{1}&\mathcal{P}_{1}\end{bmatrix}\succ 0\,, (18c)
[Y0V0Q0]G2=[02N×(S2N)IS2N].\displaystyle\begin{bmatrix}Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix}G_{2}=\begin{bmatrix}0_{2N\times(S-2N)}\\ I_{S-2N}\end{bmatrix}\,. (18d)

Assume that

lim|(w,ξ)|0|Q(w,ξ)||(w,ξ)|=0.\lim_{|(w,\xi)|\to 0}\frac{|Q(w,\xi)|}{|(w,\xi)|}=0\,. (19)

If the SDP is feasible then

ξ+=Acξ+Bcu\xi^{+}=A_{c}\xi+B_{c}u (20)

with

u=κZ(w,ξ)u=\kappa Z(w,\xi) (21)

and κ\kappa as in

κ=U0[𝒴1G2][𝒫1102N×(S2N)0(S2N)×2NIS2N]\displaystyle\kappa=U_{0}\begin{bmatrix}\mathcal{Y}_{1}&G_{2}\end{bmatrix}\begin{bmatrix}\mathcal{P}_{1}^{-1}&0_{2N\times(S-2N)}\\ 0_{(S-2N)\times 2N}&I_{S-2N}\end{bmatrix} (22)

renders the origin (w¯,ξ¯)=(0,0)(\overline{w},\overline{\xi})=(0,0) an asymptotically stable equilibrium of

w+=f~(w,ξ)ξ+=Acξ+BcκZ(w,ξ)y=h~(w,ξ).\begin{array}[]{rl}w^{+}=&\tilde{f}(w,\xi)\\ \xi^{+}=&A_{c}\xi+B_{c}\kappa Z(w,\xi)\\ y=&\tilde{h}(w,\xi).\end{array} (23)

\Box

Proof. Set G1=𝒴1𝒫11G_{1}=\mathcal{Y}_{1}\mathcal{P}_{1}^{-1}. Then (18b), (18d) imply

IS=[Y0V0Q0][G1G2]I_{S}=\begin{bmatrix}Y_{0}\\ V_{0}\\ Q_{0}\end{bmatrix}\begin{bmatrix}G_{1}&G_{2}\end{bmatrix}

which along with the definition of κ\kappa in (22), namely κ=U0[G1G2]\kappa=U_{0}\left[\begin{smallmatrix}G_{1}&G_{2}\end{smallmatrix}\right], implies (16). Hence, the data-dependent representation of system (13) given in Lemma 2 holds. By Schur complement, the constraint (18c) is equivalent to

𝒫1(𝒳1𝒴1)𝒫11(𝒳1𝒴1)0,\mathcal{P}_{1}-(\mathcal{X}_{1}\mathcal{Y}_{1})^{\top}\mathcal{P}_{1}^{-1}(\mathcal{X}_{1}\mathcal{Y}_{1})\succ 0\,,

Pre- and post-multiplying by 𝒫11\mathcal{P}_{1}^{-1} and bearing in mind the definition of G1G_{1} we obtain

𝒫11(𝒳1G1)𝒫11(𝒳1G1)0,\mathcal{P}_{1}^{-1}-(\mathcal{X}_{1}G_{1})^{\top}\mathcal{P}_{1}^{-1}(\mathcal{X}_{1}G_{1})\succ 0\,,

which shows that V(w,ξ)=[wξ]𝒫11[wξ]V(w,\xi)=\begin{bmatrix}w^{\top}&\xi^{\top}\end{bmatrix}\mathcal{P}_{1}^{-1}\begin{bmatrix}w\\ \xi\end{bmatrix} is a Lyapunov function for the linear part of the closed-loop system. In particular note that the domain of definition of the function V(w,ξ)V(w,\xi) is the same as the one of system (23), hence, V(w,ξ)V(w,\xi) is defined at the origin. We have

V(w+,ξ+)V(w,ξ)=[wξ]((𝒳1G1)𝒫11(𝒳1G1)𝒫11)[wξ]+2[wξ](𝒳1G1)𝒫11𝒳1G2Q(w,ξ)+Q(w,ξ)(𝒳1G2)𝒫11𝒳1G2Q(w,ξ)\begin{array}[]{rl}&V(w^{+},\xi^{+})-V(w,\xi)\\ =&\begin{bmatrix}w^{\top}&\xi^{\top}\end{bmatrix}((\mathcal{X}_{1}G_{1})^{\top}\mathcal{P}_{1}^{-1}(\mathcal{X}_{1}G_{1})-\mathcal{P}_{1}^{-1})\begin{bmatrix}w\\ \xi\end{bmatrix}\\ &+2\begin{bmatrix}w^{\top}&\xi^{\top}\end{bmatrix}(\mathcal{X}_{1}G_{1})^{\top}\mathcal{P}_{1}^{-1}\mathcal{X}_{1}G_{2}Q(w,\xi)\\ &+Q(w,\xi)^{\top}(\mathcal{X}_{1}G_{2})^{\top}\mathcal{P}_{1}^{-1}\mathcal{X}_{1}G_{2}Q(w,\xi)\end{array}

In view of (19), V(w+,ξ+)V(w,ξ)<0V(w^{+},\xi^{+})-V(w,\xi)<0 in a neighborhood of the origin. This shows the claim.  \blacksquare

III-D Region of Attraction

Proposition 1 provides a local stabilization result. Following [15], Proposition 1 can be extended to provide an estimate of the Region of Attraction (ROA) of the system (23). First we recall the following definitions.

Definition 1

[25, Definition 13.2] Suppose that x¯=0\overline{x}=0 is an asymptotically stable equilibrium for x+=f(x)x^{+}=f(x). Then the ROA of x+=f(x)x^{+}=f(x) is given by

𝒜0={x0:limksk(x0)=0}\mathcal{A}_{0}=\{x_{0}\colon\lim_{k\to\infty}s_{k}(x_{0})=0\}

where sk(x0)s_{k}(x_{0}) is the solution to x+=f(x)x^{+}=f(x) at time kk0k\geq k_{0} from the initial condition x0x_{0}.  \Box

Definition 2

[25, Definition 13.4] A set n\mathcal{M}\subset\mathbb{R}^{n} is a positively invariant set for x+=f(x)x^{+}=f(x) if sk()s_{k}(\mathcal{M})\subseteq\mathcal{M} for all kk0k\geq k_{0}, where sk()={sk(x0):x0}s_{k}(\mathcal{M})=\{s_{k}(x_{0})\colon x_{0}\in\mathcal{M}\}.  \Box

Recall the Lyapunov difference

V(w+,ξ+)V(w,ξ)=(M[wξ]+NQ(w,ξ))𝒫11(M[wξ]+NQ(w,ξ))[wξ]𝒫11[wξ]=:𝒲(w,ξ)\begin{array}[]{rl}&V(w^{+},\xi^{+})-V(w,\xi)\\ =&\left(M\begin{bmatrix}w\\ \xi\end{bmatrix}+NQ(w,\xi)\right)^{\top}\mathcal{P}_{1}^{-1}\left(M\begin{bmatrix}w\\ \xi\end{bmatrix}+NQ(w,\xi)\right)\\ &-\begin{bmatrix}w\\ \xi\end{bmatrix}^{\top}\mathcal{P}_{1}^{-1}\begin{bmatrix}w\\ \xi\end{bmatrix}=:\mathcal{W}(w,\xi)\end{array}

with M,NM,N as in (17).

Corollary 1

Consider the same setting as Proposition 1. Let111Although not indicated explicitly, 𝒱\mathcal{V} is a subset of the domain of definition of V(w,ξ)V(w,\xi). 𝒱:={(w,ξ):𝒲(w,ξ)<0}\mathcal{V}:=\{(w,\xi)\colon\mathcal{W}(w,\xi)<0\}. Any sublevel set γ={(w,ξ):V(w,ξ)γ}\mathcal{R}_{\gamma}=\{(w,\xi)\colon V(w,\xi)\leq\gamma\} contained in 𝒱{0}\mathcal{V}\cup\{0\} is positively invariant for system (23) and defines an estimate of the ROA of system (23).  \Box

As the function 𝒲(w,ξ)\mathcal{W}(w,\xi) is known from the data, the estimate of the ROA γ\mathcal{R}_{\gamma} is computable.

IV Main result

To draw conclusions on the convergence of system (1), we first observe that the dynamical controller (20) uses its own state ξ\xi and the state ww to generate the control action u=κZ(ξ,w)u=\kappa Z(\xi,w). At time kk the state w(k)w(k) contains the past NN output measurements from the process (1), from which we only measure y(k)y(k). To make the past measurements in w(k)w(k) available to the controller, we extend it with the dynamics

η+=Acη+Bcy\eta^{+}=A_{c}\eta+B_{c}y (24)

Then, for any k0k_{0}\in\mathbb{Z} and any η(k0)N\eta(k_{0})\in\mathbb{R}^{N}, we have that η(k)=y[kN,k1]=w(k)\eta(k)=y_{[k-N,k-1]}=w(k) for all kk0+Nk\geq k_{0}+N, that is, independently of the initialization of (24), its state η(k)\eta(k) provides the vector w(k)w(k) of the past output measurements from time NN onward. Similarly, for any ξ(k0)N\xi(k_{0})\in\mathbb{R}^{N}, system (20) is such that ξ(k)=u[kN,k1]\xi(k)=u_{[k-N,k-1]} for all kk0+Nk\geq k_{0}+N. See [19] for the same structure of the controller (20), (24).

Remark 2

System (24) is the so-called deadbeat observer, since for kk0+Nk\geq k_{0}+N, the mapping ψ(η(k),ξ(k))\psi(\eta(k),\xi(k)) would return x(k)x(k). If both ψ\psi and a state-feedback stabilizer for system (1) were known, one could obtain a dynamic output feedback controller for the system (1). Here we are interested to the case in which this knowledge is not available and we design a dynamic output feedback controller under a suitable assumption on the nonlinearity h~\tilde{h} (Assumption 2).  \blacksquare

The following statement transfers the result obtained for the system (23) to the actual closed-loop system that includes the process (1).

Proposition 2

Let Assumptions 1, 2 and 3 hold. Consider the SDP (18), assume that it is feasible and let condition (19) hold. For any (x0,ξ0,η0)𝒳×N×N(x_{0},\xi_{0},\eta_{0})\in\mathcal{X}\times\mathbb{R}^{N}\times\mathbb{R}^{N} for which there exists v=(v[0,N2],vN1)𝒰Nv=(v_{[0,N-2]},v_{N-1})\in\mathcal{U}^{N} such that (ΦN(x0,v[0,N2]),v)γ(\Phi_{N}(x_{0},v_{[0,N-2]}),v)\in\mathcal{R}_{\gamma}, the solution of the system (1) in closed-loop with the time-varying controller comprised by (20), (24) and

u(k)={vkk0k0kk0+N1κZ(η(k),ξ(k))kk0+Nu(k)=\left\{\begin{array}[]{ll}v_{k-k_{0}}&k_{0}\leq k\leq k_{0}+N-1\\ \kappa Z(\eta(k),\xi(k))&k\geq k_{0}+N\end{array}\right. (25)

that starts from (x0,ξ0,η0)(x_{0},\xi_{0},\eta_{0}), asymptotically converges to the origin.  \Box

Proof. First note that, by definition of the mapping ΦN\Phi_{N} and since f(0,0)=0f(0,0)=0 and h(0)=0h(0)=0, each entry of ΦN\Phi_{N} is a continuous function of its arguments which is zero when these are zero, hence there exists a neighbourhood of the origin (x,v)=(0,0)(x,v)=(0,0) such that any point (x,v)(x,v) in the neighbourhood satisfies (ΦN(x,v[0,N2]),v)γ(\Phi_{N}(x,v_{[0,N-2]}),v)\in\mathcal{R}_{\gamma}.

By definition of the mapping ΦN\Phi_{N} in Assumption 1 and (25), ΦN(x0,v[0,N2])=y[k0,k0+N1]\Phi_{N}(x_{0},v_{[0,N-2]})=y_{[k_{0},k_{0}+N-1]}, where yy denotes the output response of the closed-loop system from the initial condition (x0,ξ0,η0)(x_{0},\xi_{0},\eta_{0}).

By the dynamics of the controller (20), (24), we have η(k)=y[kN,k1]\eta(k)=y_{[k-N,k-1]}, ξ(k)=u[kN,k1]\xi(k)=u_{[k-N,k-1]} for all kk0+Nk\geq k_{0}+N and (η(k0+N),ξ(k0+N))=(ΦN(x,v[0,N2]),v)γ(\eta(k_{0}+N),\xi(k_{0}+N))=(\Phi_{N}(x,v_{[0,N-2]}),v)\in\mathcal{R}_{\gamma}. Hence, by Lemma 1, the solution of (20), (24) are the same as those of system (23) intialized at (w(k0+N),ξ(k0+N))=(y[k0,k0+N1],u[k0,k0+N1])(w(k_{0}+N),\xi(k_{0}+N))=(y_{[k_{0},k_{0}+N-1]},u_{[k_{0},k_{0}+N-1]}). As (η(k0+N),ξ(k0+N))γ(\eta(k_{0}+N),\xi(k_{0}+N))\in\mathcal{R}_{\gamma}, by Proposition 1 and Corollary 1, (η(k),ξ(k))(\eta(k),\xi(k)) converges to the origin. By Lemma 1, for all kk0+Nk\geq k_{0}+N, x(k)=ψ(η(k),ξ(k))x(k)=\psi(\eta(k),\xi(k)), which implies convergence of x(k)x(k) to the origin by continuity of ψ\psi.  \blacksquare

The particular form of u(k)u(k) in (25) is due to the fact that, during the first NN-steps, the controller state does not provide an accurate value of the past input-output measurements of the system, hence the choice to apply an open-loop input sequence. After NN time steps, when such past measurements become available through the controller states η(k),ξ(k)\eta(k),\xi(k), u(k)u(k) is set to the feedback κZ(η(k),ξ(k))\kappa Z(\eta(k),\xi(k)).

We also remark that in the result above if the initial condition x0x_{0} is sufficiently close to the origin and the initial sequence of control values v0,,vn2,vn1v_{0},\ldots,v_{n-2},v_{n-1} does not drive the output response of (1) outside the set γ\mathcal{R}_{\gamma}, then the designed controller (25) steers the state of the overall closed-loop system to the origin. Note that γ\mathcal{R}_{\gamma} is known thanks to Corollary 1, hence the designer can check whether the initial control sequence and the corresponding measured output response are in γ\mathcal{R}_{\gamma}. For the design of the initial control sequence, the designer could take advantage of some expert knowledge.

Remark 3

(Prior on input/output measurements) The controller is designed under the assumption that the input/output measurements collected during the experiment range over some specified sets – see Assumption 3 – where the measurements provide meaningful information about the system’s internal state. These sets are not known, hence, the feature that the evolution of the system during the experiments remains in the sets of interest must be considered as one of the priors under which the design is possible.

V Numerical example

We continue with Example 1 and consider the equations (7) with output y=x1y=x_{1}. The system parameters are Ts=0.1T_{s}=0.1, m=1,=1,g=9.8m=1,\ell=1,g=9.8 and μ=0.01\mu=0.01. The problem is to learn a controller for (7) from input-output data that renders the origin of the closed-loop system locally asymptotically stable.

Following [15, Example 5], we choose

Z(w,ξ)=[wξsinw1w1ξ1cosw1ξ1]Z(w,\xi)=\begin{bmatrix}w\\ \xi\\ \sin{w_{1}}-w_{1}\\ \xi_{1}\cos{w_{1}}-\xi_{1}\end{bmatrix}

and note that Assumption 2 and (19) hold.

We collect data by running T=7T=7, N=2N=2-long experiments with input uniformly distributed in [0.5,0.5][-0.5,0.5] and with an initial state in [0.5,0.5]2[-0.5,0.5]^{2}. For each experiment j=0,1,,T1j=0,1,\ldots,T-1, we collect the samples {uj(k),yj(k)}k=02\{u^{j}(k),y^{j}(k)\}_{k=0}^{2}. Then we construct data matrices Y1,Y0,V1,V0,U0,Q0Y_{1},Y_{0},V_{1},V_{0},U_{0},Q_{0}, as detailed in Remark 1. The program (18) is feasible and we obtain the controller gain with

κ=[52.441276.11790.57820.446700]\kappa=\begin{bmatrix}52.4412&-76.1179&-0.5782&-0.4467&0&0\end{bmatrix} (26)

using the YALMIP toolbox [26], MOSEK solver [27]. To assess the effectiveness of the designed controller, instead of computing γ\mathcal{R}_{\gamma}, which for this example provides a conservative estimate of the ROA, we depict in Fig. 1 the set of initial conditions x0x_{0} for which, choosing vkk0=0v_{k-k_{0}}=0 for k0kk0+N1k_{0}\leq k\leq k_{0}+N-1 in (25), the state (x(k),η(k),ξ(k))(x(k),\eta(k),\xi(k)) converges to zero. Note that the choice of η0,ξ0\eta_{0},\xi_{0} is inessential. The set is obtained by letting the closed-loop system evolve for 200200 time steps and then checking whether or not the norm (x(k),η(k),ξ(k))\|(x(k),\eta(k),\xi(k))\|_{\infty} is smaller than 10610^{-6} on the interval 195k200195\leq k\leq 200.

Refer to caption
Figure 1: The blue area represents the estimate of the ROA of system (7) in closed-loop with the controller (20), (24), (25), where vkk0=0v_{k-k_{0}}=0 for k0kk0+N1k_{0}\leq k\leq k_{0}+N-1 and κ\kappa is given in (26).

VI CONCLUSIONS

We have examined a design of dynamic output feedback controllers for nonlinear systems from input/output data. The uniform observability property of the system, a prior in the approach, is instrumental to define a new set of coordinates, from which a data-driven “state”-feedback design can be conducted. The result is local and the size of the region of attraction is limited by the free evolution of the system during the first NN steps during which the dead-beat observer reconstructs the past input/output values that feed the controller. The design and analysis have been carried out in the favourable setting in which measurements are noise-free and the nonlinearities can be expressed via a dictionary of known functions. Regarding the future work, besides going beyond the favourable setting, we would like to explore either a more sophisticated observer design or a different data-driven control design method. An option is to express the function ψ\psi via a dictionary of functions, perform a data-driven design of an observer and follow a certainty equivalence principle in the analysis of the closed-loop system.

APPENDIX

VI-A Proof of Lemma 1

For any time kk, collect the past NN output samples generated by the system (1) in the vector y[kN,k1]y_{[k-N,k-1]}. The vectors y[kN,k1],y[kN+1,k]y_{[k-N,k-1]},y_{[k-N+1,k]} at two successive time instants are related by

y[kN+1,k]=[y(kN+1)y(kN+2)y(k1)y(k)]=Acy[kN,k1]+Bcy(k)y_{[k-N+1,k]}=\begin{bmatrix}y(k-N+1)\\ y(k-N+2)\\ \vdots\\ y(k-1)\\ y(k)\end{bmatrix}=A_{c}y_{[k-N,k-1]}+B_{c}y(k) (27)

By the dynamics (1) and the definitions (3), the state x(k)x(k) at time kk is given by

x(k)=FN(x(kN),u[kN,k1])x(k)=F^{N}(x(k-N),u_{[k-N,k-1]}) (28)

the output y(k)y(k) at time kk is given by

y(k)=hFN(x(kN),u[kN,k1])y(k)=h\circ F^{N}(x(k-N),u_{[k-N,k-1]})

and, by the definition (4),

y[kN,k1]=ΦN(x(kN),u[kN,k2]).y_{[k-N,k-1]}=\Phi_{N}(x(k-N),u_{[k-N,k-2]}). (29)

By Assumption 1 and the hypothesis that x(kN)𝒳x(k-N)\in\mathcal{X} and u[kN,k1]𝒰Nu_{[k-N,k-1]}\in\mathcal{U}^{N} for all kk0k\in\mathbb{Z}_{\geq k_{0}}, the mapping (29) is invertible and returns

x(kN)=ΨN(y[kN,k1],u[kN,k2]).x(k-N)=\Psi_{N}(y_{[k-N,k-1]},u_{[k-N,k-2]}).

Hence, the state x(k)x(k) in (28) can be expressed as a mapping of the past input and output samples

x(k)=FN(ΨN(y[kN,k1],u[kN,k2]),u[kN,k1])=ψ(y[kN,k1],u[kN,k1])\begin{array}[]{rl}x(k)=&F^{N}(\Psi_{N}(y_{[k-N,k-1]},u_{[k-N,k-2]}),u_{[k-N,k-1]})\\ =&\psi(y_{[k-N,k-1]},u_{[k-N,k-1]})\end{array}

and similarly for the output

y(k)=hFN(ΨN(y[kN,k1],u[kN,k2]),u[kN,k1])=h~(y[kN,k1],u[kN,k1])\begin{array}[]{rl}y(k)=&h\circ F^{N}(\Psi_{N}(y_{[k-N,k-1]},u_{[k-N,k-2]}),u_{[k-N,k-1]})\\ =&\tilde{h}(y_{[k-N,k-1]},u_{[k-N,k-1]})\end{array}

If y(k)y(k) is replaced in (27), then

y[kN+1,k]=f~(y[kN,k1],u[kN,k1]),y_{[k-N+1,k]}=\tilde{f}(y_{[k-N,k-1]},u_{[k-N,k-1]}),

by definition of f~\tilde{f} in (5).

By the choice of the input v(k)=u[kN,k1]v(k)=u_{[k-N,k-1]}, for all kk0k\in\mathbb{Z}_{\geq k_{0}} and of the initial condition w(k0)=y[k0N,k01]w(k_{0})=y_{[k_{0}-N,k_{0}-1]}, we have that w(k)=y[kN,k1]w(k)=y_{[k-N,k-1]} for all kk0k\in\mathbb{Z}_{\geq k_{0}}, and this ends the proof.  \blacksquare

References

  • [1] J. Coulson, J. Lygeros, and F. Dörfler, “Data-enabled predictive control: In the shallows of the DeePC,” in European Control Conference, 2019, pp. 307–312.
  • [2] C. De Persis and P. Tesi, “Formulas for data-driven control: Stabilization, optimality, and robustness,” IEEE Transactions on Automatic Control, vol. 65, no. 3, pp. 909–924, 2019.
  • [3] H. Van Waarde, J. Eising, H. Trentelman, and K. Camlibel, “Data informativity: a new perspective on data-driven analysis and control,” IEEE Transactions on Automatic Control, vol. 65, no. 11, pp. 4753–4768, 2020.
  • [4] J. Berberich, A. Koch, C. W. Scherer, and F. Allgöwer, “Robust data-driven state-feedback design,” in 2020 American Control Conference (ACC).   IEEE, 2020, pp. 1532–1538.
  • [5] A. Bisoffi, C. De Persis, and P. Tesi, “Data-based stabilization of unknown bilinear systems with guaranteed basin of attraction,” Systems & Control Letters, vol. 145, p. 104788, 2020.
  • [6] Z. Yuan and J. Cortés, “Data-driven optimal control of bilinear systems,” IEEE Control Systems Letters, vol. 6, pp. 2479–2484, 2022.
  • [7] M. Guo, C. De Persis, and P. Tesi, “Data-driven stabilization of nonlinear polynomial systems with noisy data,” IEEE Transactions on Automatic Control, vol. 67, no. 8, pp. 4210–4217, 2022.
  • [8] A. Nejati, B. Zhong, M. Caccamo, and M. Zamani, “Data-driven controller synthesis of unknown nonlinear polynomial systems via control barrier certificates,” in 4th Annual Learning for Dynamics and Control Conference, PMLR, 2022.
  • [9] A. Luppi, A. Bisoffi, C. De Persis, and P. Tesi, “Data-driven design of safe control for polynomial systems,” arXiv preprint arXiv:2112.12664, 2021.
  • [10] R. Strässer, J. Berberich, and F. Allgöwer, “Data-driven control of nonlinear systems: Beyond polynomial dynamics,” in 2021 60th IEEE Conference on Decision and Control (CDC).   IEEE, 2021, pp. 4344–4351.
  • [11] A. Luppi, C. De Persis, and P. Tesi, “On data-driven stabilization of systems with nonlinearities satisfying quadratic constraints,” Systems & Control Letters, vol. 163, p. 105206, 2022.
  • [12] S. Cheah, D. Bhattacharjee, M. Hemati, and R. Caverly, “Robust local stabilization of nonlinear systems with controller-dependent norm bounds: A convex approach with input-output sampling,” arXiv:2212.03225, 2022.
  • [13] M. Guo, C. De Persis, and P. Tesi, “Data-driven stabilizer design and closed-loop analysis of general nonlinear systems via Taylor’s expansion,” arXiv:2209.01071, 2022.
  • [14] T. Martin, D. Schön, and F. Allgöwer, “Gaussian inference for data-driven state-feedback design of nonlinear systems,” arXiv:2212.03225, 2022.
  • [15] C. De Persis, M. Rotulo, and P. Tesi, “Learning controllers from data via approximate nonlinearity cancellation,” IEEE Transactions on Automatic Control, pp. 1–16, 2023.
  • [16] M. Alsalti, V. G. Lopez, J. Berberich, F. Allgöwer, and M. A. Múller, “Data-based control of feedback linearizable systems,” IEEE Transactions on Automatic Control, 2023.
  • [17] P. Bernard, V. Andrieu, and D. Astolfi, “Observer design for continuous-time dynamical systems,” Annual Reviews in Control, vol. 53, pp. 224–248, 2022.
  • [18] D. Kazakos and J. Tsinias, “Stabilization of nonlinear discrete-time systems using state detection,” IEEE Transactions on Automatic Control, vol. 38, no. 9, pp. 1398–1400, 1993.
  • [19] M. J. Messina, S. E. Tuna, and A. R. Teel, “Discrete-time certainty equivalence output feedback: allowing discontinuous control laws including those from model predictive control,” Automatica, vol. 41, no. 4, pp. 617–628, 2005.
  • [20] J. Gauthier and G. Bornard, “Observability for any u(t) of a class of nonlinear systems,” IEEE Transactions on Automatic Control, vol. 26, no. 4, pp. 922–926, 1981.
  • [21] J. Grizzle and P. Moraal, “Newton, observers and nonlinear discrete-time control,” in 29th IEEE Conference on Decision and Control.   IEEE, 1990, pp. 760–767.
  • [22] S. Hanba, “On the “uniform” observability of discrete-time nonlinear systems,” IEEE Transactions on Automatic Control, vol. 54, no. 8, pp. 1925–1928, 2009.
  • [23] M. Marchi, J. Bunton, B. Gharesifard, and P. Tabuada, “Safety and stability guarantees for control loops with deep learning perception,” IEEE Control Systems Letters, vol. 6, pp. 1286–1291, 2022.
  • [24] S. Janny, Q. Possamaï, L. Bako, C. Wolf, and M. Nadri, “Learning reduced nonlinear state-space models: an output-error based canonical approach,” in 2022 IEEE 61st Conference on Decision and Control (CDC).   IEEE, 2022, pp. 150–155.
  • [25] W. M. Haddad and V. Chellaboina, Nonlinear dynamical systems and control.   Princeton university press, 2011.
  • [26] J. Lofberg, “Yalmip: A toolbox for modeling and optimization in matlab,” in 2004 IEEE international conference on robotics and automation (IEEE Cat. No. 04CH37508).   IEEE, 2004, pp. 284–289.
  • [27] M. ApS, “Mosek optimization toolbox for matlab,” User’s Guide and Reference Manual, Version, vol. 4, p. 1, 2019.