Averaged Control

PDF version | Download Matlab Code | Download Scilab Code | GITHUB

In this work, we address the optimal control of parameter-dependent systems. We introduce the notion of averaged control in which the quantity of interest is the average of the states with respect to the parameter family \mathcal{K}= \left\{ \nu_i \in \mathbb{R}, \enspace 1\leq i \leq K \right\}. More precisely, we are interested in solving the minimization problem

    \[<a name="id1345263515"></a><span class="ql-right-eqno"> (1) </span><span class="ql-left-eqno">   </span><img src="https://cmc.deusto.eus/wp-content/ql-cache/quicklatex.com-6ac397af4d5063a67485adee464871ce_l3.png" height="66" width="597" class="ql-img-displayed-equation quicklatex-auto-format" alt="\begin{equation*}  \min _{u \in L^2(0,T)} \mathcal{J}\left( u\right) = \min _{u \in L^2(0,T)} \frac{1}{2} \left[ \frac{1}{K} \sum_{\nu \in \mathcal{K}} x \left( T, \nu \right) - \bar{x} \right]^2  + \frac{\beta}{2} \int_0^T u^2 \mathrm{d}t, \quad \beta \in \mathbb{R}^+ \end{equation*}" title="Rendered by QuickLaTeX.com"/>\]

where \mathcal{U}_{ad} is the space of admissible controls and \bar{x} the average state target. The optimization problem (1) is subject to the finite dimensional linear control system

(2)   \begin{align*}  \left\{ \begin{array}{ll} x^\prime \left( t \right) = A \left( \nu \right) x \left( t \right) + B \left( \nu \right) u \left( t \right), \quad 0 < t <T, \\ x\left( 0 \right) = x^0. \end{array} \right. \end{align*}

In (2), the vector valued function x \left( t, \nu \right) \in \mathbb{R}^N is the state of the system, A \left( \nu \right) is a N \times N-matrix governing its free dynamics and u=u\left( t \right) \in \mathbb{R}^M is a M-component control, with M \leq N, entering and acting on the system through the control operator B\left( \nu \right), a N \times M parameter-dependent matrix. Moreover, the initial datum x^0 \in \mathbb{R}^N to be controlled is independent of the parameter \nu, but the state of the system itself x \left( t, \nu \right) depends on \nu. The effective value of the parameter \nu being unknown, we aim at choosing a control that would perform optimally in an averaged sense, this is, rather than controlling specific realizations of the state, the average with respect to \nu is controlled. This allows building a control independent of the parameter and making a robust compromise of all the possible realizations of the system for the various possible values of the unknown parameter \nu

We use the classical gradient descent method based on the adjoint methodology, and obtain the corresponding adjoint system for (2),

(3)   \begin{align*} \left\{ \begin{array}{ll} p^\prime \left( t \right) = -A \left( \nu \right) p \left( t \right), \quad 0 < t <T, \\ \displaystyle p\left( T \right) = - \left[ \frac{1}{K} \sum_{\nu \in \mathcal{K}} x \left( T, \nu \right) - \bar{x} \right]. \end{array} \right. \end{align*}

To minimize the functional in (1), we take the steepest descent direction given by

(4)   \begin{equation*} J^\prime \left[ u^{\left( k \right)} \right] = \beta u^{\left( k \right)}\left( t \right) - \frac{1}{K} \sum_{\nu \in \mathcal{K}} B^t \left( \nu \right) p^{\left( k \right)} \left( t, \nu \right) \end{equation*}

Hence, the new control reads as

(5)   \begin{equation*} u^{\left( k+1 \right)} = u^{\left( k \right)} - \gamma J^\prime \left[ u^{\left( k \right)} \right] \end{equation*}

for some \gamma small enough.

We have also used the conjugate gradient method in order to reach faster the optimal control. In order to be able to apply this method the state vector has been split as

(6)   \begin{equation*} x\left( t \right) = z_u \left( t \right) + y\left( t \right), \end{equation*}

where z_u is the solution to the controlled system with zero initial condition,

(7)   \begin{align*} \left\{ \begin{array}{ll} z^\prime_u \left( t \right) = A \left( \nu \right) z_u \left( t \right) + B \left( \nu \right) u \left( t \right), \quad 0 < t <T, \\ z_u{\left( 0 \right)} = 0, \end{array} \right. \end{align*}

and y solves the free dynamics problem,

(8)   \begin{align*} \left\{ \begin{array}{ll} y^\prime \left( t \right) = A \left( \nu \right) y \left( t \right), \quad 0 < t <T, \\ y{\left( 0 \right)} = x^0. \end{array} \right. \end{align*}

The functional in 1 can be expressed as

(9)   \begin{equation*} J\left( u \right) = \frac{1}{2}\left( \bar{z}_u\left(T\right) + \bar{y} \left( T \right) - \bar{x}, \bar{z}_u\left(T\right) + \bar{y} \left( T \right) - \bar{x} \right)_{\displaystyle \mathbb{R}^n} + \frac{\beta}{2} \left(u, u\right)_{L^2\left(\left[0,T\right]\right)}. \end{equation*}

We introduce the linear operator

(10)   \begin{equation*} \begin{split} \Lambda: L^2 \left( [0, T] \right) & \rightarrow \mathbb{R}^n \\ u & \rightarrow \bar{z}_u \left( T \right) = \frac{1}{K} \sum_{\nu \in \mathcal{K}} z_u \left( T, \nu \right) \end{split} \end{equation*}

and its dual counterpart,

(11)   \begin{equation*} \begin{split} \Lambda^*: \mathbb{R}^n & \rightarrow L^2 \left( [0, T] \right) \\ p_T & \rightarrow  - \frac{1}{K} \sum_{\nu \in \mathcal{K}} B^t \left( \nu \right) p \left( t, \nu \right) \end{split} \end{equation*}

where p\left(t, \nu\right) is solution to

(12)   \begin{align*} \left\{ \begin{array}{ll} {p}' \left( t \right) = -A \left( \nu \right) p \left( t \right), \quad 0 < t <T, \\ p{\left( T \right)} = - p_T. \end{array} \right. \end{align*}

By doing this we can write the functional gradient as

(13)   \begin{equation*} J^\prime\left( u \right) \delta u = \left( \underbrace{\left( \Lambda^* \Lambda + \beta I \right)}_{=A_{cg}} u - \underbrace{\Lambda^*\left( \bar{x} - \bar{y} \left( T \right) \right)}_{=b_{cg}}, \delta u \right)_{L^2\left(\left[0,T\right]\right)}. \end{equation*}

After having defined A_{cg} and b_{cg} we can apply the conjugate gradient method to solve the control problem.

Algorithm 1 Optimal control with Conjugate Gradient Method

Require: A\left( \nu \right), B\left( \nu \right), x^0, u^{\left(0\right)}, \beta, T, \bar{x}, tol

  1. n \gets 0
  2. compute \bar{y} \left( T \right)
  3. b \gets \Lambda^*\left( \bar{x} - \bar{y} \left( T \right) \right)
  4. z \gets \Lambda u
  5. g \gets \Lambda^*z + \beta u - b
  6. h \gets ||g||^2_{L^2\left(\left[0,T\right]\right)}
  7. h_a \gets h
  8. r \gets -g
  9. While ||r||_{L^2\left(\left[0,T\right]\right)} > tol do
  10.     z \gets \Lambda r
  11.     w \gets \Lambda^*z + \beta r
  12.     \alpha \gets \frac{h}{\left(r,w\right)_{L^2\left(\left[0,T\right]\right)}}
  13.     u \gets u + \alpha r
  14.     g \gets g + \alpha w
  15.     h_a \gets h
  16.     h \gets ||g||^2_{L^2\left(\left[0,T\right]\right)}
  17.     \gamma \gets \frac{h}{h_a}
  18.     r \gets -g + \gamma r
  19.     n \gets n + 1
Figure 1.a: Control system with N=3, M=1 and target average state \bar{x}=[0,0,0]^t. Average state vector components.
Figure 1.b: Control system with N=3, M=1 and target average state \bar{x}=[0,0,0]^t. Control.
Figure 2: State vector components for every parameter \nu_i. One can observe that the final state x\left(T, \nu_i \right) is not close to \bar{x}=[0,0,0]^t in general.

[1] E. Zuazua (2014) Averaged Control. Automatica, 50 (12), p. 3077-3087.

Authors: Víctor Hernández-Santamaría, José Vicente Lorenzo, Enrique Zuazua
March, 2018