Chapter 8 Output regulation and disturbance rejection: the full information case I
We consider the input-state-output system with state \(x:[0,\infty )\to \mR ^n\), external input \(w:[0,\infty )\to \mR ^{m_1}\), control input \(u:[0,\infty )\to \mR ^{m_2}\) and performance output \(z:[0,\infty )\to \mR ^{p_1}\) described by
\(\seteqnumber{0}{8.}{0}\)\begin{equation} \label {eq:control:xz} \dot {x}=Ax+B_1w+B_2u,\qquad z=C_1x+D_{11}w, \end{equation}
with the initial condition \(x(0)=x^0\) where \(x^0\in \mR ^n\) and
\(\seteqnumber{0}{8.}{1}\)\begin{equation} \label {eq:control:xzmatrices:reg} A\in \mR ^{n\times n},~ B_1\in \mR ^{n\times m_1},~ B_2\in \mR ^{n\times m_2},~ C_1\in \mR ^{p_1\times n},~ D_{11}\in \mR ^{p_1\times m_1}. \end{equation}
We assume that the external input \(w\) is generated by an exo-system
\[ \dot {x}_e=A_ex_e,\qquad w=C_ex_e, \]
with the initial condition \(x_e(0)=x_e^0\) where \(x_e^0\in \mR ^{n_e}\) and
\(\seteqnumber{0}{8.}{2}\)\begin{equation} \label {eq:control:exo:reg} A_e\in \mR ^{n_e\times n_e},\qquad C_e\in \mR ^{m_1\times n_e}. \end{equation}
-
Remark 8.1. The two must common forms of an exo-system are the following. The first is:
\[ n_e=m_1=1,\qquad A_e=0,\quad C_e=1, \]
in which case we obtain \(w=x_e^0\), i.e. the external input \(w\) is constant. The second is:
\[ n_e=2,~m_1=1,\qquad A_e=\bbm {0&1\\-\omega _e^2&0},\quad C_e=\bbm {1&0}, \]
where \(\omega _e>0\) is given, which is the first order form of the second order equation \(\ddot {w}=-\omega _e^2w\) which means that the external input \(w\) is a sinusoid of frequency \(\omega _e\), i.e. \(w(t)=R\sin (\omega _e t-\varphi )\) for \(R\geq 0\) and \(\varphi \in \mR \).
The reason for introducing the exo-system is that instead of working with functions (like sinusoids), we can work with matrices.
-
Definition 8.2. [Full information output regulation and disturbance rejection problem] The objective is to find a matrix
\[ F\in \mR ^{m_2\times (n+n_e)}, \]
such that with the control
\[ u=F\bbm {x\\x_e}, \]
the following two conditions are both satisfied:
-
1. for all \(x^0\) and \(x_e^0\) we have \(\lim _{t\to \infty }z(t)=0\);
-
2. for \(x_e^0=0\) and all \(x^0\) we have \(\lim _{t\to \infty }x(t)=0\).
The first of these is the regulation requirement, the second is the stability requirement.
-
-
Theorem 8.6. Assume that \((A,B_2)\) is stabilizable and that the regulator equations have a solution \(\Pi \), \(V\). Let \(F_1\in \mR ^{m_2\times n}\) be such that \(A+B_2F_1\) is asymptotically stable. Then \(F=\bbm {F_1&V-F_1\Pi }\) solves the full information output regulation and disturbance rejection problem.
Moreover, for all \(x^0\) and \(x_e^0\) we have \(\lim _{t\to \infty } x(t)-\Pi x_e(t)=0\).
-
Remark 8.7. Because of the stability requirement, stabilizability of \((A,B_2)\) is necessary for the full information output regulation and disturbance rejection problem to be solvable. If \(A_e\) has only eigenvalues with nonnegative real part (as is the case for the exo-systems in Remark 8.1), then solvability of the regulator equations is also necessary for the full information output regulation and disturbance rejection problem to be solvable.
8.1 Examples
-
Example 8.9. Consider the first order scalar differential equation
\[ \dot {x}(t)+x(t)=u(t). \]
The objective is to find a control \(u\) such that for a given \(r\in \mR \) we have \(\lim _{t\to \infty }x(t)=r\) no matter what \(x(0)\) is.
To put this in the framework of the full information output regulation and disturbance rejection problem, define the performance output and exo-system
\[ z=x-w,\qquad \dot {x}_e=0,\qquad w=x_e,\qquad x_e(0)=r. \]
We then have \(w(t)=x_e(t)=r\) for all \(t\) so that \(z(t)=x(t)-r\) and the regulation requirement is that \(\lim _{t\to \infty }x(t)=r\) no matter what \(x(0)\) is.
We have \(n=n_e=m_1=m_2=p_1=1\) and
\[ A=-1,\quad B_1=0,\quad B_2=1,\quad C_1=1,\quad D_{11}=-1,\quad A_e=0,\quad C_e=1. \]
The regulator equations are
\[ -\Pi +V=0,\qquad \Pi -1=0. \]
Hence \(\Pi =1\) and \(V=1\). Since \(A\) is asymptotically stable we can take \(F_1=0\). From Theorem 8.6 we have that (using that \(x_e=r\))
\[ u=r, \]
solves our problem.
We explicitly check that this indeed works. Substituting \(u=r\) into the differential equation gives
\[ \dot {x}(t)+x(t)=r, \qquad x(0)=x^0, \]
which has solution \(x(t)=r+(x^0-r)\e ^{-t}\), which we see indeed satisfies \(\lim _{t\to \infty }x(t)=r\) no matter what \(x^0\) is.
We note that with a general \(F_1\) we obtain
\[ u=F_1x+\left (1-F_1\right )r, \]
and substituting this into the differential equation gives
\[ \dot {x}(t)+\left (1-F_1\right )x(t)=\left (1-F_1\right )r, \]
which has general solution \(x(t)=r+(x^0-r)\e ^{-t(1-F_1)}\). Therefore if \(F_1\) is such that \(1-F_1>0\) (i.e. \(A+B_2F_1\) is asymptotically stable), then we again have \(\lim _{t\to \infty }x(t)=r\) no matter what \(x(0)\) is. We now have the freedom to choose \(F_1\) in such as a way as to make this convergence faster.