In the previous Chaps. 2 and 4, we have seen the importance of the notion of passivity, both for analysis and for control. This motivates to consider the problem of transforming a non-passive system into a passive system by the application of state feedback.

We will give necessary as well as sufficient conditions for the solvability of this problem. The main idea in the proof of the sufficiency part is to transform the system into the feedback interconnection of two passive systems. This idea is further explored in Sect. 5.2 for the stabilization of cascaded systems, and leading in Sect. 5.3 to the technique of stabilization of systems with triangular structure known as backstepping.

5.1 Feedback Equivalence to a Passive System

Consider throughout this chapter affine input-state-output systems without feedthrough terms, denoted as

$$\begin{aligned} \Sigma : \begin{array}{rcll} \dot{x} &{}=&{} f(x) + g(x)u, &{} \quad x \in \mathcal{X} , \; u\in \mathbbm {R}^m \\ y &{}=&{} h(x), &{} \quad y\in \mathbbm {R}^m \end{array} \end{aligned}$$
(5.1)

with an equal number of inputs and outputs. Furthermore, let us consider the set of regular state feedback laws

$$\begin{aligned} \begin{array}{rcl} &{} (\alpha ,\beta ):&{} u = \alpha (x) + \beta (x)v, \\ &{}&{} \alpha (x) \in \mathbbm {R}^m, \quad \beta (x)\in \mathbbm {R}^{m\times m}, \,\det \beta (x)\ne 0, \end{array} \end{aligned}$$
(5.2)

leading to the closed-loop systems

$$\begin{aligned} \Sigma _{\alpha ,\beta }: \begin{array}{lcl} \dot{x} &{}=&{} \left[ f(x)+g(x)\alpha (x)\right] + g(x)\beta (x)v \\ y&{}=&{} h(x)\end{array} \end{aligned}$$
(5.3)

with new inputs \(v\in \mathbbm {R}^m\). The system \(\Sigma \) is said to be feedback equivalent to \(\Sigma _{\alpha ,\beta }\) .

The problem we want to address is the following:

Problem

Under what conditions on \(\Sigma \) is it possible to find a feedback law \((\alpha ,\beta )\) as in (5.2) such that \(\Sigma _{\alpha ,\beta }\) is a passive system, i.e., when is \(\Sigma \) feedback equivalent to a passive system?

We will first derive, modulo some technicalities, two necessary conditions for feedback equivalence to a passive system. Subsequently, we will show that these two conditions are sufficient as well; at least for a locally defined feedback transformation.

Suppose \(\Sigma \) is feedback equivalent to a passive system, i.e., there exists a regular feedback \((\alpha , \beta )\) such that \(\Sigma _{\alpha ,\beta }\) defined in (5.3) is passive with storage function \(S\ge 0\). Then by definition

$$\begin{aligned} S(x(t_1)) - S(x(t_0)) \le \int _{t_0}^{t_1} v^T(t)y(t)dt \end{aligned}$$
(5.4)

along all solutions (x(t), v(t), y(t)), \(t\in [t_0,t_1]\), of (5.3), and all \(t_1 \ge t_0\). Therefore, if we consider the constrained system, defined by setting \(y = h(x)\) to zero, that is,

$$\begin{aligned} \Sigma ^c_{\alpha ,\beta }: \begin{array}{rcl} \dot{x} &{}=&{} \left[ f(x)+g(x)\alpha (x)\right] + g(x)\beta (x)v \\ 0 &{}=&{} h(x), \end{array} \end{aligned}$$
(5.5)

then \(S(x(t_1))-S(x(t_0))\le 0\), for all solutions (x(t), v(t)), \(t\in [t_0,t_1]\), of this constrained system. On the other hand, as follows from the definition of regular state feedback in (5.2), in particular the requirement \(\det \beta (x) \ne 0\), the state space part of the solutions (x(t), v(t)) of \(\Sigma _{\alpha ,\beta }\) equals the state space part of solutions (x(t), u(t)) of the original system \(\Sigma \). Indeed, if (x(t), u(t)) is solution of \(\Sigma \), then \((x(t),v(t)) = \beta ^{-1}(x(t))[u(t)-\alpha (x(t))])\) is a solution of \(\Sigma ^c_{\alpha ,\beta }\), and conversely if (x(t), v(t) is a solution of \(\Sigma _{\alpha ,\beta }\) then \((x(t),u(t) = \alpha (x(t)) + \beta (x(t))v(t))\) is a solution of \(\Sigma \). Hence, also for the original system \(\Sigma \) with constraints \(y = 0\)

$$\begin{aligned} \Sigma ^c : \begin{array}{lcl} \dot{x} &{}=&{} f(x) + g(x)u \\ 0&{}=&{} h(x) \end{array} \end{aligned}$$
(5.6)

it follows that necessarily

$$\begin{aligned} S(x(t_1)) - S(x(t_0)) \le 0 \end{aligned}$$
(5.7)

along all solutions (x(t), u(t)) of \(\Sigma ^c\). The constrained system \(\Sigma ^c\) in (5.6) is called the zero-output constrained dynamics of \(\Sigma \) .

Summarizing, we have obtained the following necessary condition for feedback equivalence to a passive system.

Proposition 5.1.1

Suppose \(\Sigma \) is feedback equivalent to a passive system \(\Sigma _{(\alpha ,\beta )}\) with storage function S. Then (5.7) holds for all solutions (x(t), u(t)), \(t \in [t_0,t_1]\), of the zero-output constrained dynamics \(\Sigma ^c\).

A second necessary condition can be derived, under some extra technical conditions, as follows. We give two versions, requiring slightly different technical assumptions.

Denote by \(h_x(x)\) the \(m\times n\)-Jacobian matrix of h, that is, the i-th row of \(h_x(x)\) is the gradient vector \(h_{ix}(x)\) of the i-th component function \(h_i\).

Lemma 5.1.2

Suppose \(\Sigma \) is passive with a \(C^2\) storage function S that is positive definite at \(x^*\) and has nondegenerate Hessian matrix \(S_{xx}(x^*) := \frac{\partial ^2S}{\partial x^2}(x^*)\). Furthermore, assume that \(\mathrm {rank}\,g(x^*) = m\). Then \(h_x(x)g(x)\) has rank m in a neighborhood of \(x^*\).

Proof

By positive-definiteness of S at \(x^*\) it follows that \(\frac{\partial S}{\partial x}(x^*) = 0\). Hence, since \(h(x) = g^T(x)\frac{\partial S}{\partial x}(x)\),

$$ h_x(x^*) = g^T(x^*)S_{xx}(x^*) $$

and thus

$$\begin{aligned} h_x(x^*)g(x^*) = g^T(x^*)S_{xx}(x^*)g(x^*) \end{aligned}$$
(5.8)

By positive-definiteness of S the non-degenerate Hessian matrix \(S_{xx}(x^*)\) is positive definite, and thus, since \(\mathrm {rank}\,g(x^*) = m\), also \(h_x(x^*)g(x^*)\) has maximal rank m, implying that it has rank m in a neighborhood of \(x^*\). \(\Box \)

Lemma 5.1.3

Suppose \(\Sigma \) is passive with a \(C^1\) storage function S which is positive definite at \(x^*\). Assume the \(m\times m\)-matrix \(h_x(x)g(x)\) has constant rank in a neighborhood of \(x^*\). Then \(h_x(x)g(x)\) has rank m in a neighborhood of \(x^*\).

Proof

Suppose rank \(h_x(x)g(x) < m\) in a neighborhood of \(x^*\). Then there exists a smooth function \(u(x)\in \mathbbm {R}^m\), defined on a neighborhood of \(x^*\), such that

$$\begin{aligned} h_x(x)g(x)u(x) = 0 \end{aligned}$$
(5.9)

while \(\gamma (x):= g(x)u(x) \ne 0\). As before, positive-definiteness of S at \(x^*\) implies \(\frac{\partial S}{\partial x}(x^*) = 0\). Hence, \(h^T(x) = S_x(x)g(x)\) satisfies \(h(x^*) = 0\). Denote the solutions of \(\dot{x} = \gamma (x)\), \(x(0)=x_0\), by \(x^t_\gamma (x_0)\), and consider the function \(f(t) = S(x^t_\gamma (x^*))\). By the Mean Value Theorem there exists for any \(t>0\) some s with \(0\le s\le t\) such that

$$\begin{aligned} S(x^t_\gamma (x^*)) = S(x^*) + u^T(x^s_\gamma (x^*))h(x^s_\gamma (x^*))t \end{aligned}$$
(5.10)

since \(f'(t) = S_x(x^t_\gamma (x^*))\gamma (x^t_\gamma (x^*)) = h^T(x^t_\gamma (x^*))u(x^t_\gamma (x^*))\). From (5.9) it follows that \(h(x^s_\gamma (x^*)) = h(x^*) = 0\), and thus by (5.10) \(S(x_\gamma ^t(x^*)) = 0\). However, by positive-definiteness of S this implies \(x^t_\gamma (x^*) = 0\), which is in contradiction with \(\gamma (x^*)\ne 0\). \(\Box \)

Finally, we note that the full-rank property of \(h_x(x)g(x)\) is invariant under feedback \((\alpha , \beta )\), since by such a feedback \(h_x(x)g(x)\) is transformed into \(h_x(x)g(x)\beta (x)\) with \(\det \beta (x)\ne 0\). Hence, modulo technical conditions spelled out in the previous two Lemma’s, we conclude that a second necessary condition for feedback equivalence to a passive system is that \(\mathrm {rank}\,~h_x(x)g(x) =m\).

The property of \(h_x(x)g(x)\) being full rank in a neighborhood of \(x^*\) has several consequences. First, it implies that \(\mathrm {rank}\,~h_x(x) = m\) around \(x^*\), implying that the constrained set

$$\begin{aligned} \mathcal{X}_c := \left\{ x \in \mathcal{X} \mid h(x) =0\right\} \end{aligned}$$
(5.11)

is actually a submanifold of \(\mathcal{X}\) (of co-dimension m) in a neighborhood of \(x^*\). Furthermore, it implies that the zero-output constrained dynamics \(\Sigma ^c\) has a unique solution (x(t), u(t)), \(t \ge 0\), for every initial condition \(x(0) = x_c\in \mathcal{X}_c\). Indeed, computing the time-derivative \(\dot{y}\) of \(y(t) = h(x(t))\) for \(\Sigma \) yields

$$\begin{aligned} \dot{y} = h_x(x)f(x) + h_x(x)g(x)u. \end{aligned}$$
(5.12)

Hence, by defining

$$\begin{aligned} u_c(x) := -\left[ h_x(x)g(x)\right] ^{-1} h_x(x)f(x) \end{aligned}$$
(5.13)

the closed-loop dynamics \(\dot{x} = f(x) + g(x)u^*(x)\) satisfies \(\dot{y}=0\), while conversely \(\dot{y} = 0\) implies (5.13). Thus every solution x(t) of the closed-loop dynamics starting in \(\mathcal{X}_c \; (h(x(0)) = 0)\) satisfies \(h(x(t)) = 0\), \(t \ge 0\), and thus remains in \(\mathcal{X}_c\). Hence \(\mathcal{X}_c\) is an invariant submanifold for the closed-loop dynamics, and the closed-loop dynamics can be restricted to \(\mathcal{X}_c\). Thus, under the assumption that \(h_x(x)g(x)\) has rank m, the zero-output constrained dynamics \(\Sigma ^c\) is equivalently given by the explicit system on \(\mathcal{X}_c\)

$$\begin{aligned} \dot{x} = f(x) + g(x)u_c(x), \qquad x \in \mathcal{X}_c \end{aligned}$$
(5.14)

Summarizing, we have arrived at the following necessary conditions for local feedback equivalence to a passive system.

Proposition 5.1.4

Suppose \(\Sigma \) is locally about \(x^*\) feedback equivalent to a passive system with \(C^2\) storage function S, which is positive definite at \(x^*\). Assume that either \(h_x(x)g(x)\) has constant rank on a neighborhood of \(x^*\), or that \(S_{xx}(x^*)\) is positive definite and \(\mathrm {rank}\,g(x^*) = m\). Then \(\mathrm {rank}\,~h_x(x)g(x) = m\) in a neighborhood of \(x^*\), and

$$\begin{aligned} S_x(x)\left[ f(x)+g(x)u^*(x)\right] \le 0, \qquad x \in \mathcal{X}_c, \end{aligned}$$
(5.15)

with \(u_c\) defined by (5.13).

Proof

Suppose there exists, locally about \(x^*\), a feedback \((\alpha ,\beta )\) such that \(\Sigma _{\alpha ,\beta }\) is passive. Since \(\mathrm {rank}\,~g(x^*)= \mathrm {rank}\,h_x(x)g(x)\beta (x)\) it follows from Lemma’s 5.1.3, respectively, Lemma 5.1.2, that \(h_x(x)g(x)\) has rank m on a neighborhood of \(x^*\). Since \(y=0\) on \(\mathcal{X}_c\), the inequality (5.15) directly follows from the dissipation inequality (5.4). \(\Box \)

Loosely speaking (disregarding technical assumptions), Proposition 5.1.4 expresses that necessary conditions for (local) feedback equivalence of \(\Sigma \) to a passive system are that (locally) \(h_x(x)g(x)\) has rank m, and that the resulting zero-output constrained dynamics \(\Sigma ^c\) of \(\Sigma \) on \(\mathcal {X}_c\) given by (5.14), with \(u_c(x)\) defined by (5.13), satisfies (5.15) for a certain function \(S_c : \mathcal {X}_c \rightarrow \mathbbm {R}^+\).

Next step is to show that these conditions are actually sufficient as well.

Theorem 5.1.5

Consider the system \(\Sigma \). Suppose \(\mathrm {rank}\,~h_x(x^*)g(x^*) = m\) at a certain point \(x^*\) with \(h(x^*)=0\), and let \(S_c : \mathcal {X}_c \rightarrow \mathbbm {R}^+\) satisfy (5.15) locally around \(x^*\), where \(\mathcal{X}_c\) and \(u_c\) are defined as in (5.11), respectively (5.13). Then \(\Sigma \) is locally around \(x^*\) feedback equivalent to a passive system with storage function \(S: \mathcal {X} \rightarrow \mathbbm {R}^+\) (locally defined around \(x^*\)). Furthermore, if \(S_c\) is positive definite at \(x^*\), then so is S.

Proof

We will give the proof under the additional assumption that the Lie bracketsFootnote 1 \([g_i,g_j]\) of the vector fields defined by the columns \(g_1,\ldots ,g_m\) of g(x) are contained in \({{\mathrm{span\,}}}~\{g_1(x),\ldots ,g_m(x)\}\); see [56] for the general case. Since \(\mathrm {rank}\, h_x(x) = m\) for all x in a neighborhood of \(x^*\) the functions \(y_1=h_1(x),\ldots ,y_m=h_m(x)\), can be taken as partial local coordinate functions for \(\mathcal{X}\) around \(x^*\). Furthermore, since \(\mathrm {rank}\,h_x(x)g(x)= m\) and by the additional assumption Lie bracket condition, we can find \(n-m\) complementary local coordinates z around \(x^*\) such that in the new coordinates (zy) for \(\mathcal{X}\) the first \(n-m\) rows of the matrix g are zero.Footnote 2 Hence, after suitable feedback the dynamics of (5.7) takes, locally around \(x^*\), the following form

$$\begin{aligned} \begin{array}{lcl} \dot{z} &{}=&{} f_1(z,y)\\ \dot{y} &{}=&{} v \end{array} \end{aligned}$$
(5.16)

Furthermore, z define local coordinates for \(\mathcal{X}_c\), and the dynamics \(\dot{z} = f_1(z,0) =:f_c(z)\) is a coordinate expression of (5.14). Expressing \(S_c\) in these coordinates we have by (5.15)

$$\begin{aligned} S_{cz}(z)f_c(z) \le 0 \end{aligned}$$
(5.17)

Since \(f_1(z,y) - f_c(z)\) is zero for \(y=0\) we can write (see e.g., the Notes at the end of this chapter)

$$\begin{aligned} f_1(z,y) = f_c(z)+p(z,y)y \end{aligned}$$
(5.18)

for some smooth matrix p(zy). Then the following system, defined locally around \(x^*\) on \(\mathcal{X}_c\),

$$\begin{aligned} \Sigma _z : \begin{array}{lcl} \dot{z} &{}=&{} f_c(z) + p(z,y)y \\ w &{}=&{} p^T(z,y)\frac{\partial S_c}{\partial z}(z) \end{array} \end{aligned}$$
(5.19)

is a passive system with storage function \(S_c\), with respect to the inputs y and outputs w, since by (5.17) \(\frac{dS_c}{dt} \le w^Ty\). Furthermore, the integrator system \(\dot{y}=v\) is trivially a passive system with respect to the inputs v and outputs y, and with storage function \(\frac{1}{2}\Vert y\Vert ^2\). Hence the standard feedback interconnection

$$\begin{aligned} v = -w + e = - p^T(z,y)\frac{\partial S_c}{\partial z}(z) + e, \qquad e \in \mathbbm {R}^m \end{aligned}$$
(5.20)

will result by Proposition 4.3.1 into a passive system, with respect to the inputs e and outputs y, and with storage function

$$\begin{aligned} S(z,y) := S_c(z) + \frac{1}{2}\Vert y\Vert ^2 \end{aligned}$$
(5.21)

on \(\mathcal{X}\). If additionally \(S_c\) is assumed to be positive definite at \(x^*\), then also S(zy) is positive definite at \(x^*\). \(\Box \)

5.2 Stabilization of Cascaded Systems

The main idea in proving Theorem 5.1.5 was to transform \(\Sigma \) into a standard feedback interconnection of two passive systems, one being the system (5.19), and the other being the integrator system \(\dot{y} = v\). This idea can be generalized in a number of directions. Consider the system

$$\begin{aligned} \begin{array}{rcll} \dot{z} &{}=&{} f(z,\xi ) &{} , \quad f(0,0) = 0 \\ \dot{\xi } &{}=&{} \Phi (z,\xi ,u),\; u\in \mathbbm {R}^m &{} , \quad \Phi (0,0,0)=0 \end{array} \end{aligned}$$
(5.22)

The feedback stabilization problem is to find a feedback \(u = \alpha (z,\xi )\) such that \((z,\xi ) = (0,0)\) is an (asymptotically) stable equilibrium of the closed-loop system.

Theorem 5.2.1

Consider the system (5.22). Suppose there exists an output map \(y=h(z,\xi )\in \mathbbm {R}^m\) such that

  1. (i)

    the system (5.22) is passive with respect to this output map, with storage function \(S(\xi )\),

  2. (ii)
    $$\begin{aligned} f(z,\xi ) = f_0(z,\xi ) + \sum _{j=1}^m y_if_j(z,\xi ) \end{aligned}$$
    (5.23)

    for some functions \(f_0(z,\xi )\) and \(f_j(z,\xi ), j=1, \ldots ,m,\) with \(f_0(z,\xi )\) satisfying

    $$\begin{aligned} V_z(z)f_0(z,\xi ) \le 0, \quad \text { for all } z, \xi , \end{aligned}$$
    (5.24)

    for some function \(V(z)\ge 0\).

Then the feedback

$$\begin{aligned} u_j = -V_z(z)f_j(z,\xi )+v_j , \qquad j = 1,\ldots ,m, \end{aligned}$$
(5.25)

transforms (5.22) into a passive system with respect to the inputs \(v\in \mathbbm {R}^m\) and outputs \(y=h(z,\xi )\), having storage function \(V(z) + S(\xi )\). Furthermore, the feedback

$$\begin{aligned} u_j = -V_z(z)f_j(z,\xi ) - y_j +v_j , \, j = 1,\ldots ,m, \end{aligned}$$
(5.26)

renders the system (5.22) output strictly passive.

Proof

Define the system

$$\begin{aligned} \Sigma _z: \begin{array}{lcll} \dot{z} &{}=&{} f_0(z,\xi ) + \sum \limits _{j=1}^m p_j f_j (z,\xi )\\ w_j &{}=&{} V_z(z)f_j(z,\xi ) \quad &{} j = 1,\ldots ,m \end{array} \end{aligned}$$
(5.27)

This system, with inputs \(p_j\) and outputs \(w_j\), \(j = 1,\ldots ,m\), and modulated by \(\xi \), is passive with storage function V, since by (5.24)

$$\begin{aligned} \frac{dV}{dt} \le \sum ^m_{j=1} p_jw_j \end{aligned}$$
(5.28)

Hence, the standard feedback interconnection of \(\Sigma _z\) with \(\Sigma _\xi \) defined by \(u = -w+v,p=y\) results in a passive system with storage function \(V(z)+S(\xi )\), while \(u = -w -y+v,p=y\) results in output strict passivity. \(\Box \)

Corollary 5.2.2

If \(V(z)+S(\xi )\) is positive definite at \((z,\xi ) = (0,0)\), then the feedback (5.25) renders the equilibrium (0, 0) stable, while the feedback (5.26) renders the equilibrium asymptotically stable assuming a zero-state detectability property. See Chap. 3 for further generalizations.

Remark 5.2.3

Let the output functions \(y=h(z,\xi )\) be chosen, as well as the drift vector field \(f_0(z,\xi )\). Then there exist functions \(f_j(z,\xi ), j=1,\ldots ,m,\) satisfying (5.23) if and only if the function \(f(z,\xi )-f_0(z,\xi )\) is zero whenever \(h(z,\xi )\) is zero; see the Notes at the end of this chapter.

The range of applicability of Theorem 5.2.1 is substantially enlarged by relaxing the condition (i) to the condition that the system (5.22) can be rendered passive by a preliminary feedback \(u= \Psi (z,\xi )\), as formulated in the following corollary.

Corollary 5.2.4

Replace condition (i) in Theorem 5.2.1 by

  1. (i)

    \('\) There exists a preliminary feedback \(u= \Psi (z,\xi ) +u'\) such that the system (5.22) is passive with respect to the output map \(y=h(z,\xi )\) and storage function \(S(\xi )\).

Then after this preliminary feedback the results of Theorem 5.2.1 continue to hold with u replaced by \(u'\).

Example 5.2.5

(Examples 4.2.4 and 4.2.5 continued) Consider the combined dynamics of the orientation and the angular velocities of a rigid body spinning around its center of mass as discussed before, cf. (4.43), (4.41),

$$\begin{aligned} \dot{R}= & {} RS(\omega ) \end{aligned}$$
(5.29)
$$\begin{aligned} I\dot{\omega }= & {} -S(\omega )I\omega + u \end{aligned}$$
(5.30)

with I the diagonal matrix containing the moments of inertia along the principal axes. Recall from Example 4.2.5 that by representing the rotation matrix \(R\in SO(3)\) in its Euler parameters \((\varepsilon ,\eta )\), the dynamics (5.29) takes the form, cf. (4.48),

$$\begin{aligned} \left[ \begin{array}{c} \dot{\varepsilon }\\ \dot{\eta } \end{array}\right] = \frac{1}{2}\left[ \begin{array}{c} \eta I_3 + S(\varepsilon )\\ -\varepsilon ^T \end{array}\right] \omega , \end{aligned}$$
(5.31)

evolving on the three-dimensional unit sphere \(S^3\) in \(\mathbbm {R}^4\). In Example 4.2.5 it was noted that the dynamics (5.31), with inputs \(\omega \) and outputs \(\varepsilon \), is lossless with respect to the storage function \(V(\varepsilon ,\eta ) = \varepsilon ^T \varepsilon + (1-\eta )^2 =2(1-\eta )\). Moreover, in Example 4.2.4 it was observed that the dynamics (5.30) with inputs u and outputs \(\omega \) is lossless with respect to the storage function \(T(\omega )=\frac{1}{2}\omega ^TM\omega \) (kinetic energy). Hence, the total set of Eqs. (5.29), (5.30) can be regarded as the cascade (series) interconnection of two lossless systems. Therefore, closing the loop by setting

$$\begin{aligned} u = -\varepsilon +e \end{aligned}$$
(5.32)

(with e an external input), one obtains a lossless system with inputs e and outputs \(\omega \), with total storage function \(S(\eta , \omega ):= T(\omega ) + V(\eta )\).

5.3 Stabilization by Backstepping

An important case where condition (i)\('\) of Corollary 5.2.4 is always satisfied occurs if the \(\xi \)-dynamics in (5.22) is of the form

$$ \dot{\xi } = a(z,\xi ) + b(z,\xi )u $$

with \(\mathrm {rank}\,b(z,\xi ) = m\) everywhere. In fact, if rank \(b(z,\xi ) = m\) then the \(\xi \)-dynamics can be feedback transformed into any dynamics.

This motivates the consideration of systems with the following triangular structure

$$\begin{aligned} \begin{array}{rcl} \dot{z} &{} = &{} f(z,\xi _1) \\ \dot{\xi }_1 &{}=&{} a_1(z,\xi _1) + b_1(z,\xi _1)\xi _2 \\ \dot{\xi }_2 &{}=&{} a_2(z,\xi _1,\xi _2) + b_2(z,\xi _1,\xi _2)\xi _3 \\ &{}\vdots &{} \\ \dot{\xi }_k &{}=&{} a_k(z,\xi _1,\ldots ,\xi _k) + b_k(z,\xi _1,\ldots ,\xi _k)u \end{array} \end{aligned}$$
(5.33)

with \(\xi _i\in \mathbbm {R}^m\), where it is assumed that \(\mathrm {rank}\,b_i = m\), \(i = 1,\ldots ,k,\) everywhere.

Let \(z=0, \xi _1= \cdots = \xi _k=0\) be an equilibrium of (5.33), that is, \(f(0,0)=0, a_1(0,0)= \cdots = a_k(0,0) =0.\) In order to asymptotically stabilize this equilibrium, we start by assuming that there exists a virtual feedback

$$\begin{aligned} \xi _1 = \alpha _0(z) \end{aligned}$$
(5.34)

such that \(z=0\) is an asymptotically stable equilibrium of

$$\begin{aligned} \dot{z} = f(z,\alpha _0(z)), \end{aligned}$$
(5.35)

having a Lyapunov function V that is positive definite at \(z=0\). Defining the corresponding virtual output

$$\begin{aligned} y_1 := \xi _1 - \alpha _0(z) \end{aligned}$$
(5.36)

consideration of Theorem 5.1.5 then leads to rewriting the z-dynamics as

$$\begin{aligned} \dot{z}= f(z,\alpha _0(z) + y_1) = f(z,\alpha _0(z)) + g(z,y_1)y_1 \end{aligned}$$
(5.37)

Furthermore, the \(\xi _1\)-dynamics can be replaced by the dynamics for \(y_1 = \xi - \alpha _0(z)\), given as

$$\begin{aligned} \dot{y}_1 = \dot{\alpha }_0(z) + a_1(z,\xi _1) + b_1(z,\xi _1)\xi _2 \, , \end{aligned}$$
(5.38)

which is regarded as a system with virtual input \(\xi _2\). This last system can be rendered output strictly passive with respect to the virtual output \(y_1\) and the storage function \(\frac{1}{2} \Vert y_1\Vert ^2\) by setting

$$\begin{aligned} \xi _2 = b_1^{-1}(z,\xi _1)[\dot{\alpha }_0(z) -a_1(z,\xi _1) - y_1 + u], \end{aligned}$$
(5.39)

with u a new input. Define

$$\begin{aligned} \alpha _1(z,\xi _1) := b_1^{-1}(z,\xi _1)[\dot{\alpha }_0(z) -a_1(z,\xi _1) - y_1 - (V_z(z)g(z,y))^T] \end{aligned}$$
(5.40)

Hence by application of Theorem 5.1.5, the virtual feedback

$$\begin{aligned} \xi _2 = \alpha _1(z,\xi _1)+ b_1^{-1}(z,\xi _1)v , \end{aligned}$$
(5.41)

with v another new input, will result in the system

$$\begin{aligned} \begin{array}{rcl} \dot{z} &{} = &{} f(z,\alpha _0(z)) + g(z,y_1)y_1 \\ \dot{y}_1 &{} = &{} -y_1 - (V_z(z)g(z,y_1))^T + v , \end{array} \end{aligned}$$
(5.42)

which is output strictly passive with storage function

$$\begin{aligned} S_1(z,\xi ) :=V(z) + \frac{1}{2} \Vert y_1\Vert ^2 \end{aligned}$$
(5.43)

Alternatively, returning to the original form

$$\begin{aligned} \Sigma _2: \left\{ \begin{array}{rcl} \dot{z} &{}=&{} f(z,\xi _1) \\ \dot{\xi }_1 &{}=&{} a_1(z,\xi _1)+b_1(z,\xi _1)\xi _2 \end{array} \right. \end{aligned}$$
(5.44)

we conclude that by defining

$$\begin{aligned} y_2 := \xi _2 - \alpha _1(z), \end{aligned}$$
(5.45)

and substituting \(\xi _2 = \alpha _1(z,\xi _1) + y_2\) in (5.47) we obtain a system

$$\begin{aligned} \begin{array}{rcl} \dot{z} &{}=&{} f(z,\xi _1) \\ \dot{\xi }_1 &{}=&{} a_1(z,\xi _1)+b_1(z,\xi _1)\alpha _1(z,\xi _1) + b_1(z,\xi _1)y_2 \end{array} \end{aligned}$$
(5.46)

where \(z=0,\xi _1=0\) is an asymptotically stable equilibrium for \(y_2=0\), with Lyapunov function \(S_1(z,\xi _1)\). This means that once more we can apply Theorem 5.1.5 to the extended dynamics

$$\begin{aligned} \Sigma _2: \left\{ \begin{array}{lcl} \dot{z} &{}=&{} f(z,\xi _1) \\ \dot{\xi }_1 &{}=&{} a_1(z,\xi _1)+b_1(z,\xi _1)\xi _2 \\ \dot{\xi }_2 &{}=&{} a_2(z,\xi _1,\xi _2) + b_2(z,\xi _1,\xi _2)\xi _3 \end{array} \right. \end{aligned}$$
(5.47)

with virtual input \(\xi _3\) and virtual output \(y_2 = \xi _2 - \alpha _1(z,\xi _1)\). Since its zero-output constrained dynamics is by construction asymptotically stable with Lyapunov function \(S_1\), it again follows that (5.47) can be transformed into a passive system by the virtual feedback

$$\begin{aligned} \begin{array}{l} \xi _3 = \alpha _2(z,\xi _1,\xi _2) + b^{-1}_2(z,\xi _1,\xi _2)e_3 \\ \alpha _2(z,\xi _1,\xi _2) = b_2^{-1}(z,\xi _1,\xi _2)[-a_2(z,\xi _1,\xi _2)+\dot{\alpha }_1 (z,\xi _1)-y_2 - b_1(z,\xi _1)y_1] \end{array} \end{aligned}$$
(5.48)

This leads to the recursion

$$\begin{aligned} \begin{array}{l} y_i = \xi _i -\alpha _{i-1}(z,\xi _1,\ldots ,\xi _{i-1}) \\ \alpha _i (z,\xi _1,\ldots ,\xi _i) = \\ \quad b^{-1}_i(-a_i+\dot{\alpha }_{i-1}-y_i - b_{i-1}(z,\xi _1, \ldots , \xi _{i-1})y_{i-1}) \end{array} \quad i = 1,2,\ldots ,k \end{aligned}$$
(5.49)

resulting in a feedback transformed system with Lyapunov function

$$\begin{aligned} S :=S_k = V(z)+\frac{1}{2}\Vert y_1\Vert ^2 +\cdots +\frac{1}{2} \Vert y_k\Vert ^2 \end{aligned}$$
(5.50)

satisfying

$$\begin{aligned} \frac{dS}{dt} \le - \Vert y_1\Vert ^2 - \Vert y_2\Vert ^2 - \cdots - \Vert y_k\Vert ^2 \end{aligned}$$
(5.51)

This procedure is commonly called (exact) backstepping .

The class of system (5.33) to which the backstepping procedure applies can be described as follows. The \(\xi \)-dynamics of (5.33) (with \(\xi =(\xi _1,\ldots ,\xi _k)\)) is a feedback linearizable, that is, there exists a feedback \(u = \alpha (\xi )+\beta (\xi )v\), \(\det \beta (\xi )\ne 0\), such that in suitable new coordinates \(\widetilde{\xi }\) the system is a linear system (with input v). Hence, the backstepping procedure applies to the cascade of a system (5.33) which is asymptotically stabilizable (by virtual feedback \(\xi _1 = \alpha _0(x)\)), and a feedback linearizable system.

Necessary and sufficient geometric conditions for feedback linearizability have been obtained in geometric control theory, see e.g., the textbooks [135, 233] for a coverage. These conditions imply that the class of feedback linearizable systems is an important but, mathematically speaking, a thin subset of the set of all systems (see [335]).

In practice, the recursively defined feedbacks \(\alpha _i\), \(i=0,1,\ldots ,k\), in (5.49) tend to become rather complex, primarily due to the appearance of \(\dot{\alpha }_i\) in the definition of \(\alpha _{i+1}\). On the other hand, the procedure can be made more flexible by not insisting on Lyapunov functions of the precise form \(S_i = V +\frac{1}{2} \Vert y_1\Vert ^2 +\cdots + \frac{1}{2}\Vert y_i\Vert ^2\), and by generalizing (5.51). This flexibility can be also exploited for avoiding exact cancelation of terms involving unknown parameters and, in general, for improving the characteristics of the resulting feedback \(\alpha _k(z_1,\ldots ,z_k)\). We refer again to [312] and the references quoted in there.

5.4 Notes for Chapter 5

  1. 1.

    Sect. 5.1 is based on Byrnes, Isidori & Willems [56].

  2. 2.

    The factorizations in (5.18) and in Remark 5.2.3 are based on the following fact (see, e.g., Nijmeijer & van der Schaft [233], Lemma 2.23, for a proof): Let \(f : \mathbbm {R}^n \rightarrow \mathbbm {R}\) be a \(C^\infty \) function with \(f(0) = 0\). Then \(f(x_1,\ldots ,x_n) = \sum \limits _{i=1}^{n}x_ig_i(x)\), for certain \(C^\infty \) functions \(g_i\) satisfying \(g_i(0) = \frac{\partial f}{\partial x_i}(0)\).

  3. 3.

    The first part of Sect. 5.2 is largely based on Ortega [237], as well as on Sussmann & Kokotovic [332]. The backstepping procedure is detailed in Sepulchre, Jankovic and Kokotović [312], and Krstić, Kanellakopoulos and Kokotović [173]; where many extensions and refinements can be found. Related work is presented in Marino and Tomei [195].

  4. 4.

    The example in Sect. 5.2 is taken from Dalsmo and Egeland [75], Dalsmo [74].