Iterative Learning Control Design

to stabilise the system shown in Fig. 3.​1 and achieve some level of tracking performance for the controlled joints, $$\varvec{\varPhi }_{ \mathscr {P}}$$. The resulting closed-loop system [MK] is represented by



$$\begin{aligned} G:&\mathscr {L}^{p}_2 [0,T] \rightarrow \mathscr {L}^{p}_2 [0,T] : \hat{\varvec{\varPhi }} \mapsto \varvec{\varPhi }\nonumber \\&: \left\{ \begin{array}{rl} \underbrace{ \left[ \begin{array}{c} \dot{\varvec{x}}_{s}(t) \\ \dot{\varvec{x}}_{c}(t) \end{array} \right] }_{\displaystyle { \dot{\varvec{x}}(t) }} &{}= \underbrace{ \left[ \begin{array}{c} \varvec{f}_s ( \varvec{x}_{s}(t) ) + \varvec{g}_s ( \varvec{h}_c ( \varvec{x}_{c}(t), \hat{\varvec{\varPhi }}(t) - \varvec{h}_s ( \varvec{x}_{s}(t) ) ) ) \\ \varvec{f}_c ( \varvec{x}_{c}(t), \hat{\varvec{\varPhi }}(t) - \varvec{h}_s ( \varvec{x}_{s}(t) ) ) \end{array} \right] }_{\displaystyle { \varvec{f} ( \varvec{x}(t), \hat{\varvec{\varPhi }}(t) )}} \\ \varvec{\varPhi }(t) &{}= \underbrace{ \varvec{h}_s ( \varvec{x}_{s}(t) ) }_{\displaystyle { \varvec{h} ( \varvec{x}(t) ) }}, \qquad \qquad \qquad \qquad \qquad \qquad \;\;\;\;\; t \in [0,T]. \end{array} \right. \end{aligned}$$

(4.1)
where T is the task duration. The tracking error of the controlled joints is measured using $$\varvec{e}_{ \mathscr {P}}$$, which can be written in terms of G as $$\varvec{e}_{ \mathscr {P}} = \hat{\varvec{\varPhi }}_{ \mathscr {P}} - G_{ \mathscr {P}} \hat{\varvec{\varPhi }}$$. Here $$\hat{\varvec{\varPhi }}_{ \mathscr {P}}$$ is the reference trajectory, and the following notation extracts the output associated with the controlled joints from operator G:


Lemma 4.1

The relationship between the reference and controlled joints is defined by the map


$$\begin{aligned} G_{ \mathscr {P}} : \mathscr {L}^{p}_2 [0,T] \rightarrow \mathscr {L}^{n_p}_2 [0,T] : \hat{\varvec{\varPhi }} \mapsto \varvec{\varPhi }_{ \mathscr {P}} \end{aligned}$$

(4.2)
with components


$$\begin{aligned} G_{ \mathscr {P}} \hat{\varvec{\varPhi }} = (G \hat{\varvec{\varPhi }})_{ \mathscr {P}} = \left[ \begin{array}{c} (G \hat{\varvec{\varPhi }})_{\mathscr {P}(1)} \\ \vdots \\ (G \hat{\varvec{\varPhi }})_{\mathscr {P}(n_p)} \end{array} \right] , \;\; (G \hat{\varvec{\varPhi }})_{\mathscr {P}(i)} : \mathscr {L}^{p}_2 [0,T] \rightarrow \mathscr {L}_2 [0,T] : \hat{\varvec{\varPhi }} \mapsto {\phi }_{\mathscr {P}(i)} \end{aligned}$$
and since $$\varvec{f}(\cdot )$$, $$\varvec{h}(\cdot )$$ are continuous, $$G_{ \mathscr {P}}$$ is unique and continuous [13].

We now add a feedforward signal $$\varvec{v}$$ to the previous control scheme, producing the structure shown in Fig. 4.1. Here subscript $$k = 1,2,\ldots $$ denotes the trial number. Signals $$\varvec{v}_k \in \mathscr {L}^p_2[0,T]$$ and $$\varvec{\varPhi }_k \in \mathscr {L}^p_2[0,T]$$ are the ILC input and joint angle outputs respectively on the kth trial, and the tracking error on trial k is $$\varvec{e}_k = \hat{\varvec{\varPhi }} - \varvec{\varPhi }_k \in \mathscr {L}^p_2[0,T]$$. Note that the analysis which follows can equally be applied to the case where the ILC input is placed between the feedback controller K and the stimulated arm system M, and yields similar results.

A352940_1_En_4_Fig1_HTML.gif


Fig. 4.1
ILC scheme added to feedback structure [MK]

The ILC problem is to ultimately generate a feedforward signal $$\varvec{v}_{\infty }$$ which minimizes the norm of the controlled joint tracking error. This can be stated as:


$$\begin{aligned} \varvec{v}_{\infty } := \min _{\varvec{v}} J( \varvec{v} ), \quad J( \varvec{v} ) = \big \Vert \underbrace{ \hat{\varvec{\varPhi }}_{ \mathscr {P}} - G_{ \mathscr {P}} ( \hat{\varvec{\varPhi }} + \varvec{v} ) }_{ \displaystyle { \varvec{e}_{ \mathscr {P}}} } \big \Vert ^2. \end{aligned}$$

(4.3)
In the ILC framework this problem is solved using iterative optimization methods which employ experimental data to embed robustness against model uncertainty. When the system $$G_{ \mathscr {P}}$$ is nonlinear, this can be accomplished using successive linear approximation of the system dynamics, as stated in the following theorem:


Theorem 4.1

Consider the ILC update sequence


$$\begin{aligned} \varvec{v}_{k+1}&= \varvec{v}_k + L_k ( \varvec{e}_{k} )_{ \mathscr {P}}, \quad k = 0,1,\ldots \end{aligned}$$

(4.4)
If learning operator $$L_k : \mathscr {L}^{n_p}_2 [0,T] \rightarrow \mathscr {L}^{p}_2 [0,T]$$ is designed to satisfy


$$\begin{aligned} \big \Vert I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_k \big \Vert < 1 \quad \forall \; k \end{aligned}$$

(4.5)
where the operator norm is induced from the inner product $$\langle \cdot , \cdot \rangle $$, then


$$\begin{aligned}&\lim _{k \rightarrow \infty } ( \varvec{e}_k )_{ \mathscr {P}} = \varvec{0} \end{aligned}$$

(4.6)
and, for $$\varvec{v}_0$$ chosen sufficiently close to $$\varvec{v}_{\infty }$$, the ILC update converges to


$$\begin{aligned}&\lim _{k \rightarrow \infty } (\hat{\varvec{\varPhi }} + \varvec{v}_k) = L_{\infty } (\bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty })^{-1} \hat{\varvec{\varPhi }}_{ \mathscr {P}}. \end{aligned}$$

(4.7)
Alternatively, if the learning operator $$L_k$$ is chosen to satisfy


$$\begin{aligned} \Vert I - L_{k} \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \Vert < 1 \quad \forall \; k \end{aligned}$$

(4.8)
then, for $$\varvec{v}_0$$ chosen sufficiently close to $$\varvec{v}_{\infty }$$, the ILC update converges to


$$\begin{aligned}&\lim _{k \rightarrow \infty } (\hat{\varvec{\varPhi }} + \varvec{v}_k) = ( L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} )^{-1} L_{\infty } \hat{\varvec{\varPhi }}_{ \mathscr {P}}. \end{aligned}$$

(4.9)


Proof

This result follows from application of conditions in [14] for solving the non-linear equation $$\hat{\varvec{\varPhi }}_{ \mathscr {P}} - G_{ \mathscr {P}} ( \hat{\varvec{\varPhi }} + \varvec{v} ) = \varvec{0}$$ using iterative minimization. In particular, on each iteration the error dynamics locally satisfy


$$\begin{aligned} (\varvec{e}_{k+1})_{ \mathscr {P}} = \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{k}} L_k \big ) (\varvec{e}_{k})_{ \mathscr {P}} \end{aligned}$$

(4.10)
so that, if (4.5) holds, the error converges monotonically to zero since


$$\begin{aligned} \Vert (\varvec{e}_{k+1})_{ \mathscr {P}} \Vert&\le \Vert I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{k}} L_k \Vert \Vert (\varvec{e}_{k})_{ \mathscr {P}} \Vert < \Vert (\varvec{e}_{k})_{ \mathscr {P}} \Vert \quad \forall \; k. \end{aligned}$$
If $$\varvec{v}_0$$ is sufficiently close to $$\varvec{v}_{\infty }$$, then $$\bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{k}} = \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }}$$ and $$L_k = L_{\infty } \; \forall \; k$$, so that


$$\begin{aligned} (\varvec{e}_{i})_{ \mathscr {P}} = \prod _{j = 0}^i \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + \bar{\varvec{v}}_{j}} L_j \big ) ( \varvec{e}_{0} )_{ \mathscr {P}} = \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big )^i ( \varvec{e}_{0} )_{ \mathscr {P}} \end{aligned}$$

(4.11)
yielding the input expression


$$\begin{aligned} \varvec{v}_{k+1}&= \varvec{v}_0 + L_{\infty } \sum ^k_{i = 0} (\varvec{e}_{i})_{ \mathscr {P}} = \varvec{v}_0 + L_{\infty } \sum ^k_{i = 0} \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big )^i ( \varvec{e}_{0} )_{ \mathscr {P}} \nonumber \\&= \varvec{v}_0 + L_{\infty } \sum ^k_{i = 0} (\varvec{e}_{i})_{ \mathscr {P}} = \varvec{v}_0 + L_{\infty } \sum ^k_{i = 0} \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big )^i \nonumber \\&\quad \times \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} (\hat{\varvec{\varPhi }} + \varvec{v}_0) \big ). \end{aligned}$$

(4.12)
Since we have assumed that (4.5) holds, we have the limit


$$\begin{aligned} \lim _{k \rightarrow \infty } \varvec{v}_{k}&= \varvec{v}_0 + L_{\infty } \big ( I - \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big ) \big )^{-1} \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} (\hat{\varvec{\varPhi }} + \varvec{v}_0) \big )\\&= L_{\infty } \big ( \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big )^{-1} \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \hat{\varvec{\varPhi }}. \nonumber \end{aligned}$$

(4.13)
Under the same assumption, we also note that the direct input update sequence is


$$\begin{aligned} \varvec{v}_{k+1}&= \varvec{v}_{k} + L_{\infty } \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} (\hat{\varvec{\varPhi }} + \varvec{v}_k) \big ) \nonumber \\&= \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big ) \varvec{v}_{k} + L_{\infty } \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \hat{\varvec{\varPhi }} \big ) \nonumber \\&= \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^{k} \varvec{v}_0 + \sum ^k_{i = 0} \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^i L_{\infty } \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \hat{\varvec{\varPhi }} \big ) \end{aligned}$$

(4.14)
and if (4.8) holds we obtain the limiting input


$$\begin{aligned} \varvec{v}_{\infty }&= \big ( I - \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big ) \big )^{-1} L_{\infty } \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \hat{\varvec{\varPhi }} \big ) \nonumber \\&= \big ( L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^{-1} L_{\infty } \big ( \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \hat{\varvec{\varPhi }} \big ) = \big ( L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^{-1} L_{\infty } \hat{\varvec{\varPhi }}_{ \mathscr {P}} - \hat{\varvec{\varPhi }}. \end{aligned}$$
Setting $$\varvec{v}_0 = \varvec{0}$$ in (4.12) and (4.14) we can also conclude


$$\begin{aligned}&L_{\infty } \sum ^k_{i = 0} \big ( I - \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} L_{\infty } \big )^i = \sum ^k_{i = 0} \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^i L_{\infty } \quad \forall \; k.&\end{aligned}$$

(4.15)
   $$\square $$

Here $$\bar{G}_{ \mathscr {P}} |_{\bar{\varvec{v}}} : \mathscr {L}^{p}_2 [0,T] \rightarrow \mathscr {L}^{n_p}_2 [0,T]$$ denotes the system obtained by linearizing $$G_{ \mathscr {P}}$$ about operating point $$\varvec{\bar{v}}$$, and can be computed using the following result.


Lemma 4.2

Around operating point $$\bar{\varvec{v}}$$, dynamics $$\varvec{\varPhi }_{ \mathscr {P} } = G_{ \mathscr {P} } \varvec{v}$$ are represented by linear time-varying (LTV) state-space system $$\tilde{\varvec{\varPhi }}_{ \mathscr {P} } = \bar{G} |_{\bar{\varvec{v}}} \tilde{\varvec{v}}$$, where


$$\begin{aligned} \begin{array}{rcl} \dot{\tilde{\varvec{x}}}(t) &{}=&{} A(t) \tilde{\varvec{x}}(t) + B(t) \tilde{\varvec{v}}(t) \\ \tilde{\varvec{\varPhi }}_{ \mathscr {P} }(t) &{}=&{} C(t) \tilde{\varvec{x}}(t), \qquad \qquad \; \tilde{\varvec{x}}(0) = \bar{\varvec{x}}(0), \quad t \in [0,T] \end{array} \end{aligned}$$

(4.16)
with


$$\begin{aligned}&A(t) = \left( \frac{\mathrm {\partial }}{\mathrm {\partial } \varvec{x}} \varvec{f} \left( \varvec{x}(t), \varvec{v}(t) \right) \right) _{\bar{\varvec{x}}(t),\bar{\varvec{v}}(t)}, \quad B(t) = \left( \frac{\mathrm {\partial }}{\mathrm {\partial } \varvec{v}} \varvec{f} \left( \varvec{x}(t), \varvec{v}(t) \right) \right) _{\bar{\varvec{x}}(t),\bar{\varvec{v}}(t)} \nonumber \\&C(t) = \left( \frac{\mathrm {d}}{\mathrm {d} \varvec{x}} \varvec{h}_{ \mathscr {P} } \left( \varvec{x}(t) \right) \right) _{\bar{\varvec{x}}(t)} \\\nonumber \end{aligned}$$

(4.17)
with corresponding map $$\bar{G} |_{\bar{\varvec{v}}} : \mathscr {L}^{p}_2 [0,T] \rightarrow \mathscr {L}^{n_p}_2 [0,T]$$ $$: \tilde{\varvec{v}} \mapsto \tilde{\varvec{\varPhi }}_{ \mathscr {P} }$$ given by


$$\begin{aligned}&(\bar{G} |_{\bar{\varvec{v}}} \tilde{\varvec{v}} ) (t) = \int ^t_0 C(t) \varGamma ( t, \tau ) B( \tau ) \tilde{\varvec{v}}( \tau ) \mathrm {d} \tau \end{aligned}$$
where $$\varGamma ( t, \tau )$$ is the state transition matrix for system (4.16).

Depending on the system dynamics and choice of input and output sets, problem (4.3) may have a single or an infinite number of solutions, $$\varvec{v}_{\infty }$$. To examine whether perfect tracking is possible, denote the set of achievable joint motions as


$$\begin{aligned}&\text {im}( G_{ \mathscr {P}} ) := \left\{ \varvec{y} = G_{ \mathscr {P}} \varvec{x} \; | \; \varvec{x} \in \mathscr {L}^{p}_2[0,T] \right\} . \end{aligned}$$

(4.18)
We next show how ILC update operator $$L_k$$ can be chosen to satisfy (4.5) in the case that perfect tracking is possible, or to satisfy (4.8) in the case that it is not.


Theorem 4.2

Within (4.4) let the ILC operator be given by


$$\begin{aligned} L_k = (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \big ( I + \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \big )^{-1}. \end{aligned}$$

(4.19)
Setting $$\varvec{v}_{k+1} - \varvec{v}_k = \varDelta \varvec{v}_k$$, this is equivalent to solving


$$\begin{aligned} \varDelta \varvec{v}_k := \min _{\varDelta \varvec{v}} \Big \{ \Vert \varDelta \varvec{v} \Vert ^2_R + \Vert (\varvec{e}_k)_{ \mathscr {P}} - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \varDelta \varvec{v} \Vert ^2_Q \Big \}, \quad \varvec{v}_0 = \varvec{0}. \end{aligned}$$

(4.20)
with symmetric positive-definite weights R, Q, and $$\Vert \varvec{x} \Vert _A^2 = \int ^T_0 \varvec{x}(t)^\top A \varvec{x}(t) \delta t$$.

If $$\hat{\varvec{\varPhi }}_{ \mathscr {P}} \in \text {im}( G_{ \mathscr {P}} )$$ this satisfies (4.5) and generates an input sequence satisfying


$$\begin{aligned} \lim _{k \rightarrow \infty } \varvec{v}_k = \varvec{v}_{\infty }, \quad \varvec{v}_{\infty } := \min _{\varvec{v}} \left\| \varvec{v} \right\| ^2 \;\; \text {s. t.} \;\; \varvec{e}_{ \mathscr {P}} = \hat{\varvec{\varPhi }} - G_{ \mathscr {P}} (\hat{\varvec{\varPhi }} + \varvec{v}) = \varvec{0}. \end{aligned}$$

(4.21)
If $$\hat{\varvec{\varPhi }}_{ \mathscr {P}} \notin \text {im}( G_{ \mathscr {P}} )$$ this satisfies (4.8) and generates an input sequence satisfying


$$\begin{aligned} \lim _{k \rightarrow \infty } \varvec{v}_k = \varvec{v}_{\infty }, \quad \varvec{v}_{\infty } := \min _{\varvec{v}} \big \Vert \varvec{e}_{ \mathscr {P}} \big \Vert ^2. \end{aligned}$$

(4.22)


Proof

A necessary condition for local error convergence on trial k is that $$\exists \; \sigma > 0$$” src=”/wp-content/uploads/2016/09/A352940_1_En_4_Chapter_IEq45.gif”></SPAN> satisfying <SPAN id=IEq46 class=InlineEquation><IMG alt=, $$\forall \; \varvec{e}$$. If $$\sigma > 0$$” src=”/wp-content/uploads/2016/09/A352940_1_En_4_Chapter_IEq48.gif”></SPAN> the solution to (<SPAN class=InternalRef><A href=4.20) is then $$\varDelta \varvec{v}_k = L_k (\varvec{e}_k)_{ \mathscr {P}}$$ with $$L_k$$ given by (4.19) which satisfies (4.21) since $$\Vert I - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} L_k \Vert \le (1 + \sigma ^2)^{-1} < 1 \; \forall \; k$$ so that $$\Vert (\varvec{e}_{k+1})_{ \mathscr {P}} \Vert < \Vert (\varvec{e}_{k})_{ \mathscr {P}} \Vert \forall \; k$$. The limit (4.7) is given by


$$\begin{aligned} \varvec{v}_{\infty }&= (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big ( I + \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big )^{-1}\nonumber \\&\quad \times \big ( \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big ( I + \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big )^{-1} \big )^{-1} \hat{\varvec{\varPhi }}_{ \mathscr {P}}\nonumber \\&= (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big ( \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_{\infty }})^{*} \big )^{-1} \hat{\varvec{\varPhi }}_{ \mathscr {P}}. \end{aligned}$$

(4.23)
If $$\sigma = 0$$ then (4.19), which can also be written as


$$\begin{aligned} L_k = \big ( I + (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*}, \end{aligned}$$

(4.24)
gives $$\Vert I - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} L_k \Vert = 1$$, however if $$\exists \; \varepsilon > 0$$” src=”/wp-content/uploads/2016/09/A352940_1_En_4_Chapter_IEq55.gif”></SPAN> satisfying <SPAN id=IEq56 class=InlineEquation><IMG alt=, $$\forall \; \varvec{e}$$, then


$$\begin{aligned} \Vert I - L_k \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \Vert&= \Vert I - \big ( I + (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \Vert \nonumber \\&= \Vert \big ( I + (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} \Vert = (1 + \varepsilon ^2)^{-1} < 1, \end{aligned}$$
and from (4.14), with $$\varvec{v}_0 = \varvec{0}$$,


$$\begin{aligned} \varvec{v}_{\infty }&= \sum ^k_{i = 0} \big ( I - L_{\infty } \bar{G}_{ \mathscr {P}} |_{\hat{\varvec{\varPhi }} + {\varvec{v}}_{\infty }} \big )^i L_{\infty } \hat{\varvec{\varPhi }}_{ \mathscr {P}}\nonumber \\&= I - \big ( I + (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} \big ( I + (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \hat{\varvec{\varPhi }}_{ \mathscr {P}}\nonumber \\&= \big ( (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \hat{\varvec{\varPhi }}_{ \mathscr {P}} \end{aligned}$$

(4.25)
locally satisfying condition (4.22). In (4.19) and (4.24) cases adjoint operator $$(\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{ *} : \mathscr {L}^{n_p}_2 [0,T] \rightarrow \mathscr {L}^{p}_2 [0,T]$$ is given by


$$\begin{aligned} ( (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{ *} \varvec{z} )(t) = \int ^t_0 R^{-1}(t) B^\top (t) \varGamma ( t, \tau ) C^\top ( \tau ) Q ( \tau ) \varvec{z} ( \tau ) \mathrm {d} \tau \end{aligned}$$
with $$\varGamma ( t, \tau )$$ the state transition matrix for state space system $$\{ A^\top (t),C^\top (t),B^\top (t) \}$$, and hence can be computed efficiently using the adjoint system


$$\begin{aligned} \dot{\tilde{\varvec{x}}}(t)&= - A^\top (t) \tilde{\varvec{x}}(t) - C^\top (t) Q(t) \varvec{z}(t) \\ ( (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{ *} \varvec{z} )(t)&= R^{-1}(t) B^\top (t) \tilde{\varvec{x}}(t), \quad \tilde{\varvec{x}}(T) = \varvec{0}, \quad 0 \le t \le T. \nonumber \end{aligned}$$

(4.26)
   $$\square $$

The update of Theorem 4.2 corresponds to the well-known norm optimal ILC update [1518], and addresses the demands of rehabilitation by allowing the designer to balance change in control input from trial-to-trial and the corresponding error reduction. As more weight is applied to the right-hand term in (4.20), the algorithm corresponds to Newton method based ILC [19], which can be implemented using the simple procedure outlined next:


Lemma 4.3

Choosing $$R = {\textit{rI}}$$, $$Q = {\textit{qI}}$$, $$q/r \rightarrow \infty $$, the ILC update (4.19) realizes minimizing solutions (4.23) or (4.25) respectively in a single iteration. In both cases the required term $$L_k ( \varvec{e}_k )_{ \mathscr {P}}$$ in (4.4) can be efficiently computed off-line between experimental trials as the outcome, $$\varDelta \varvec{v}^J$$, of J iterations of


$$\begin{aligned} \begin{array}{rcl} \dot{\varvec{z}}(t) &{}=&{} - A^\top (t) \varvec{z}(t) - C^\top (t) \big ( (\varvec{e}_k)_{ \mathscr {P}}(t) - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \varDelta \varvec{v}^{j}_k (t) \big ), \\ \varDelta \varvec{v}_{k}^{j+1}(t) &{}=&{} \varDelta \varvec{v}_{k}^{j}(t) + \alpha B^\top (t) \varvec{z}(t),\quad \varvec{z}(T) = \varvec{0}, \quad 0 \le t \le T. \end{array} \end{aligned}$$

(4.27)
where J and $$\alpha > 0$$” src=”/wp-content/uploads/2016/09/A352940_1_En_4_Chapter_IEq68.gif”></SPAN> are sufficiently large and small values respectively.</DIV></DIV><br />
<DIV id=FPar8 class=
Proof

As $$q/r \rightarrow \infty $$, updates (4.19) and (4.24) respectively converge to


$$\begin{aligned} L_k = (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \big ( \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \big )^{-1} , \quad L_k = \big ( (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \big )^{-1} (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{*} \end{aligned}$$
which it is shown in [20] correspond to solutions of the minimum energy problem


$$\begin{aligned} \min _{\varDelta \varvec{v}_k} \big \Vert (\varvec{e}_k)_{ \mathscr {P}} - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \varDelta \varvec{v}_k \big \Vert ^2, \quad \varvec{v}_0 = \varvec{0}. \end{aligned}$$

(4.28)
using gradient ILC [21]. This equates to $$j = 1,2, \ldots , J$$ inter-trial iterations of update


$$\begin{aligned} \varDelta \varvec{v}^{j+1}_k = \varDelta \varvec{v}^{j}_k + \alpha (\bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k})^{ *} \big ( (\varvec{e}_k)_{ \mathscr {P}} - \bar{G}|_{\hat{\varvec{\varPhi }} + \varvec{v}_k} \varDelta \varvec{v}^{j}_k \big ), \quad \varDelta \varvec{v}^{0}_k = \varvec{0}. \end{aligned}$$

(4.29)
Scalar $$\alpha \in \mathbb {R}_+$$ must satisfy $$0 < \alpha < \frac{2}{ \overline{\sigma } }$$, where $$\overline{\sigma }$$ is the smallest $$\overline{\sigma } > 0$$” src=”/wp-content/uploads/2016/09/A352940_1_En_4_Chapter_IEq74.gif”></SPAN> that satisfies <SPAN id=IEq75 class=InlineEquation><IMG alt=. Using (4.26), update (4.29) yields (4.27).   $$\square $$

Whatever ILC update operator $$L_k$$ is chosen, bounds on the convergence rate of the approach of Theorem 4.1 follow from properties of iterative minimization techniques established in [14]. These provide an upper bound on the convergence rate as a function of the magnitude of the linearized system, nonlinearity, and proximity of the initial input to the solution. However, these are only valid locally around the operating point of each trial and therefore we will undertake a comprehensive analysis of robustness in Sect. 4.4.

The convergence of ILC to a fixed solution, $$\varvec{v}_{\infty }$$, of problem (4.3), enables us to update our initial stability result of Theorem 3.​2 as follows:


Theorem 4.3

Let ILC operator $$L_k$$ satisfy (4.5). Then the controlled joints converge to reference $$\hat{\varvec{\varPhi }}_{ {\mathscr {P}}}$$, and the uncontrolled joints are locally stable if Theorem 3.​2 is satisfied using operating-point $$({\varvec{\tau }}^*_{ \bar{\mathscr {P}}} ({\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}}), {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}})$$

where


$$ \varvec{F}_e ( {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}} ) + \varvec{G}_{ \bar{\mathscr {P}}} ( {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}} ) + \varvec{K}_{ \bar{\mathscr {P}}} ( {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}} ) = {\varvec{\tau }}^*_{ \bar{\mathscr {P}}} ({\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}}) $$
with


$$ {\varvec{\tau }}^*_{ \bar{\mathscr {P}}} ({\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}}) = \varvec{\tau }_{ \bar{\mathscr {P}}} \big ( K \varvec{v}_{\infty }, \hat{\varvec{\varPhi }}_{ {\mathscr {P}}}, \hat{\varvec{\varPhi }}_{ {\mathscr {P}}}^{(1)} \big ) - \overline{\varvec{C}}_{{ \bar{\mathscr {P}}} \mathscr {P}}( {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}} ) \hat{\varvec{\varPhi }}_{ {\mathscr {P}}}^{(1)} - \varvec{B}_{{ \bar{\mathscr {P}}} \mathscr {P}} ( {\varvec{\varPhi }}^*_{ \bar{\mathscr {P}}} ) \hat{\varvec{\varPhi }}_{ {\mathscr {P}}}^{(2)}. $$


Proof

Follows from Theorem 4.1, with substitution of resulting operating point $$\bar{\varvec{\varPhi }} = \hat{\varvec{\varPhi }}_{ {\mathscr {P}}}$$ into Definition 3.​1, Theorems 3.​1 and 3.​2.   $$\square $$



4.2 Case Study: ILC Applied to Input-Output Linearized System


In the special case that feedback controller K is selected to linearize the system dynamics, the relationship $$G_{ {\mathscr {P}}} : \hat{\varvec{\varPhi }} \mapsto \varvec{\varPhi }_{ {\mathscr {P}}}$$ is linear. It follows that system $$\bar{G} |_{\hat{\varvec{\phi }} + \varvec{v}_k} = G_{ {\mathscr {P}}} \; \forall \; k$$ and the properties of Theorem 4.1 hold globally.

To illustrate this, consider the electrically stimulated, mechanically assisted arm system that was introduced in Sect. 2.​2.​5, and let feedback controller K be chosen as the input-output linearizing controller of (3.​27) developed in Sect. 3.​2. About any operating point, $$\bar{\varvec{v}}$$, system $$\bar{G} |_{\bar{\varvec{v}}}$$ then corresponds to the LTI system given in transfer-function form


$$\begin{aligned} G_{ {\mathscr {P}}}(s)&= \bar{G} |_{\hat{\varvec{\phi }} + \varvec{v}_k} = C (\textit{sI} - A)^{-1} B \quad \forall \; k \end{aligned}$$

(4.30)
with A, B and C matrices defined by:


$$\begin{aligned} A&= \left[ \begin{array}{cccc} 0 &{}I &{}0 &{}0 \\ 0 &{}0 &{}I &{}0 \\ 0 &{}0 &{}0 &{}I \\ -A_{0} &{} -A_{1} &{} -A_{2} &{} -A_{3} \end{array} \right] , \quad B = \left[ \begin{array}{c} 0 \\ 0 \\ 0 \\ A_{0} \end{array} \right] , \quad C = [ \begin{array}{cccc} I&0&\cdots&0 \end{array} ], \end{aligned}$$
which writing $$A_j = \text {diag} \{ a_{1,j}, a_{2j} \}$$, $$j = 0, \ldots , 3$$, gives rise to the form


$$\begin{aligned} G_{ {\mathscr {P}}}(s)&= \left[ \begin{array}{cc} \displaystyle { \frac{a_{10}}{s^4 + a_{13} s^3 + a_{12} s^2 + a_{11} s + a_{10}} } &{}0 \\ 0 &{} \displaystyle { \frac{a_{20}}{s^4 + a_{23} s^3 + a_{22} s^2 + a_{21} s + a_{20}} } \end{array} \right] . \end{aligned}$$
To design an ILC operator $$L_k$$ for this system which satisfies (4.5), we will employ Theorem 4.2. This involves minimizing the quadratic objective function of (4.20), which since $$\left[ \begin{array}{c} (\varvec{e}_{k}(t))_2 \\ (\varvec{e}_{k}(t))_5 \end{array} \right] - G_{ {\mathscr {P}}} \varDelta \varvec{v} = \left[ \begin{array}{c} (\varvec{e}_{k+1}(t))_2 \\ (\varvec{e}_{k+1}(t))_5 \end{array} \right] $$, specifies in the current case to


$$\begin{aligned}&\int _{t = 0}^T \Big \{ ( \varvec{v}_{k+1}(t) - \varvec{v}_k(t) )^\top R ( \varvec{v}_{k+1}(t) - \varvec{v}_k(t) ) \nonumber \\&\qquad \qquad \quad + \big [ (\varvec{e}_{k+1}(t))_2, \; (\varvec{e}_{k+1}(t))_5 \big ] Q \left[ \begin{array}{c} (\varvec{e}_{k+1}(t))_2 \\ (\varvec{e}_{k+1}(t))_5 \end{array} \right] \Big \} dt \end{aligned}$$

(4.31)
where T is the duration of the task. Through selection of symmetric positive-definite weighting matrices R and Q, this objective function allows the designer to balance accuracy of task completion with the amount of ES applied to assist the impaired participant’s movement. The solution to minimizing (4.31) is given by (4.19), which specifies in the current case to the update
Sep 25, 2016 | Posted by in PHYSICAL MEDICINE & REHABILITATION | Comments Off on Iterative Learning Control Design

Full access? Get Clinical Tree

Get Clinical Tree app for offline access