Figure 1: Adaline.

1 Identification Using Adaptive Linear Element (Ada-

line)

The adaptive linear element, abbreviated adaline, is shown in Figure 1. To describe its operation, we first explain symbols used in our discussion. Let x(t) = [ x_{1}(t) x_{2}(t) ⋯ x_{n}(t) ]^{T} denote the adaline input. We assume that for all t

∥x(t)∥ = \sqrt{x_{1}^{2}(t) + ⋯ + x_{2}^{2}(t)} ≤ B_{x},

where B_{x} > 0 is known positive constant and ∥ · ∥ = ∥ · ∥_{2}, that is, throughout whenever we write ∥ · ∥ we mean the Euclidean norm ∥ · ∥_{2}. We also assume that for all t,

∥ẋ(t)∥_{2} = \sqrt{ẋ_{1}^{2}(t) + ⋯ + ẋ_{2}^{2}(t)} ≤ Bẋ,

The weight vector w(t) = [ w_{1}(t) w_{2}(t) ⋯ w_{n}(t) ]^{T}. The bias weight w_{n+1}(t) is connected to a constant input equal to 1. We define x̃(t) to be an augmented input vector that includes the constant input to the bias weight, that is,

x̃(t) = [ x_{1}(t) x_{2}(t) ⋯ x_{n}(t) x_{n+1}(t) ]^{T} .

Note that

∥x̃(t)∥_{2}^{2} = x̃^{T} (t)x̃(t) = ∥x(t)∥_{2}^{2} + 1,

and hence x̃(t) is bounded away from zero for all times. The augmented vector x̃(t) is bounded, for all t, if and only if x(t) is bounded. We denote a bound of x̃(t) by Bx̃, that is, ∥x̃(t)∥ ≤ Bx̃ for all t. Observe that ‖ ˙x̃(t)‖ = ∥ẋ(t)∥. Thus, we can take B ˙x̃ = Bẋ. Similarly, we define an augmented weight vector,

w̃(t) = [ w_{1}(t) w_{2}(t) ⋯ w_{n}(t) w_{n+1}(t) ]^{T} .

We assume that for all t,

∥w̃(t)∥ ≤ Bw̃

for some constant Bw̃ > 0. The output, y(t), of the adaline is a linear combination of its inputs, that is,

y(t) = x̃^{T} (t)w̃(t).

We denote by y_{d}(t) the desired output of the adaline. We assume that

|y_{d}(t)| ≤ B_{y} and |ẏ_{d}(t)| ≤ Bẏ

for some positive constants B_{y} and Bẏ. Let

e(t) = y(t) − y_{d}(t)

denote the error signal. The error dynamics are described by

ė = ẏ − ẏ_{d}
= ˙ w̃^{T} x̃ + w̃^{T} ˙ x̃ − ẏ_{d}.  (1)

Our objective is to devise adaptation algorithm for the weights w_{i}(t), i = 1, 2, …, n + 1, so that the error e(t) converges to zero in finite time, say t_{h}, and e(t) = 0 for t > t_{h}. Sira-Ramírez and Colina-Morles [1] showed that we can achieve our objective if we adapt the weights according to the adaptation law,

˙w̃ = −k \frac{x̃}{x̃^{T} x̃} sign(e(t))  (2)

where the gain k > 0 is sufficiently large. We now state and prove the theorem of Sira-Ramírez and Colina-Morles [1].

Theorem 1 If the weight vector w̃ is adapted according to (2), where

k > Bw̃Bẋ + Bẏ,

then for arbitrary initial error e(0) the error signal e(t) converges to zero in finite time, say t_{h}, such that

t_{h} ≤ \frac{|e(0)|}{k − Bw̃Bẋ − Bẏ}

and e(t) = 0 for t > t_{h}.

Proof Recall that the error dynamics are governed by (1), where the vector w̃(t) is adapted according to (2). Consider the following Lyapunov function candidate

V (e) = \frac{1}{2}e^{2}(t).

The time derivative of V evaluated on the solutions of (1) is

V̇ (e) = eė
= e ( ˙w̃^{T} x̃ + w̃^{T} ˙ x̃ − ẏ_{d}) .  (3)

Substituting (2) into the above and taking into account that

sign(e) = \frac{e}{|e|} = \frac{|e|}{e},

we obtain

V̇ = −k|e| + e (w̃^{T} ˙ x̃ − ẏ_{d})
≤ −k|e| + |e| (Bw̃B ˙x̃ + Bẏ)
= (−k + Bw̃B ˙x̃ + Bẏ) |e|
< 0 for all e ≠ 0 and k > Bw̃B ˙x̃ + Bẏ,  (4)

which means that e(t) → 0 as t increases. It follows from our discussion above that we can take B ˙x̃ = Bẋ. We now show that for some finite time t_{h}, we have e(t_{h}) = 0 and e(t) = 0 for t > t_{h}. For this substitute (2) into (1) to get

ė = −k sign(e) + w̃^{T} ˙ x̃ − ẏ_{d}.  (5)

Integrating the above from t = 0 to t ≤ t_{h} gives

e(t) − e(0) = −kt sign(e(0)) + ∫_{0}^{t} (w̃^{T} (τ) ˙x̃(τ) − ẏ_{d}(τ)) dτ.  (6)

At t = t_{h}, we have e(t_{h}) = 0 and therefore for t = t_{h} the above equation takes the form

−e(0) = −kt_{h} sign(e(0)) + ∫_{0}^{t_{h}} (w̃^{T} (t) ˙x̃(t) − ẏ_{d}(t)) dt.  (7)

Multiplying both sides of the above by −sign(e(0)) yields

|e(0)| = kt_{h} − sign(e(0)) ∫_{0}^{t_{h}} (w̃^{T} (t) ˙x̃(t) − ẏ_{d}(t)) dt
≥ (k − (Bw̃Bẋ + Bẏ)) t_{h}.  (8)

Thus, the time t_{h} at which e(t) reaches zero value for the first time satisfies the inequality

t_{h} ≤ \frac{|e(0)|}{k − (Bw̃Bẋ + Bẏ)}.

Because for e(t) ≠ 0 we have \frac{d}{dt}e^{2}(t) < 0, we are guaranteed that we also have e(t) = 0 for t > t_{h}. The proof of the theorem is now complete.

□

If the time derivative x̃(t) is available, then we can use it in an adaptation law of w̃. Using x̃(t) in an adaptation law allows us to reduce the gain k and the bound on time t_{h} when the error e(t) becomes zero. One such adaptation strategy that includes x̃(t) was proposed by Sira-Ramírez and Colina-Morles [1]. We present this strategy in the following theorem.

Theorem 2 If the adaptation law for the augmented weight vector is chosen as

˙w̃(t) = −\frac{x̃(t) ˙x̃^{T} (t)}{x̃^{T} (t)x̃(t)}w̃(t) − k \frac{x̃(t)}{x̃^{T} (t)x̃(t)} sign(e(t))  (9)

Figure 2: Prefilter connection to adaline.

where k > Bẏ, then for any given initial error e(0), the error e(t) converges to zero in finite time t_{h} such that

t_{h} ≤ \frac{|e(0)|}{k − Bẏ}  (10)

end e(t) = 0 for t > t_{h}.

Proof The proof of this theorem is analogous to the proof of Theorem 1. The only difference is that (5) becomes

ė = −k sign(e) − ẏ_{d}.  (11)
□

When using the adaline for control purposes, the signal to be processed by the adaline is first passed through a prefilter as shown in Figure 2. The prefilter is described by the equation, ẋ = Ax+br, where r is the signal to be processed. The matrix A of the prefilter is chosen to be asymptotically stable. Recall that the inputs to the adaline are the components of the augmented vector x̃ where the (n + 1)-st component is equal to one. Thus, ẋ_{n+1} = 0. Taking this into account, the prefiltered inputs to the adaline can be modeled as

˙x̃ = Ãx̃ + b̃r,  (12)

where

Ã = [ \begin{matrix}A & 0 \\ 0^{T} & 0 \end{matrix} ] and b̃ = [ \begin{matrix}b \\ 0 \end{matrix} ] .

Note that ˙ x̃ is available to us in the architecture shown in Figure 2. Thus, we can employ the adaptation strategy given by (9), which results in the following description of the structure

Figure 3: Forward dynamics identifier scheme.

depicted in Figure 2:

\begin{matrix}˙x̃ & = & Ãx̃ + b̃r \\ ˙w̃ & = & −\begin{matrix}x^{} & ˜ x^{}^{˜} & ^{˙ T} \\ x^{} & ^{˜ T} & x^{} \end{matrix}˜w̃ − k \frac{x^{}}{˜ x^{}^{˜ T} x^{}}˜ sign(e) \\ y & = & x̃^{T} w̃ \end{matrix} \}  (13)

We now demonstrate, on a numerical example, how the adaline system modeled by (13) can be applied to forward and inverse dynamics identification of dynamical systems. The nonlinear plant model is taken from Sira-Ramírez and Colina-Morles [1]. This plant is model has the form

\begin{matrix}α̇ & = & p + \frac{sin(α)}{l}u \\ ṗ & = & (\frac{g}{l} − \frac{u^{2}}{l^{2}} cos(α)) − \frac{u}{l}p cos(α) \\ ż & = & u \\ y_{p} & = & α \end{matrix} \}  (14)

The parameters g and l have the values: g = 9.81 m/sec^{2} and l = 0.7 m. The plant input is labeled as u while the plant output is y_{p}. We first concern ourselves with forward dynamics identification of the above plant. A block diagram of forward dynamics identification scheme is depicted in Figure 3. The input to the plant is

u(t) = A_{1} + A_{2} cos (\frac{t}{2ϵ}) + A_{3} sin (\frac{t}{ϵ}) ,

Figure 4: Simulation results of forward dynamics identification of (14).

where A_{1} = 0.4, A_{2} = 2, A_{3} = 3, and ϵ = 0.05. The prefilter equation (12) in our example has the form

˙x̃ = [ \begin{matrix}0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ −1 & −3 & −3 & 0 \\ 0 & 0 & 0 & 0 \end{matrix} ] x̃ + [ \begin{matrix}0 \\ 0 \\ 1 \\ 0 \end{matrix} ] u.

Thus, the adaline has total four weights, including the bias weight. In our simulations we use the following approximated of the sign function,

sign (e(t)) ≈ \frac{e(t)}{|e(t)| + δ} ,  (15)

where δ = 0.05. We used the above approximation to eliminate chattering and speed up the simulations. We used k = 10. The performance of the adaline as a forward dynamics identifier of the dynamical system modeled by (14) is shown in Figure 4. Increasing the gain k results in more accurate identification, that is, the error e(t) goes to zero faster. Furthermore, the effects of using the approximation (15) are reduced for higher gain k.

In our next experiment, we employed the adaline as an inverse dynamics identifier using the scheme shown in Figure 5. The results of our simulation are depicted in Figure 6. Here

Figure 5: Inverse dynamics identifier scheme.

we used k = 90. Increasing the gain k decreases the identification error as well as reduces the effects of the approximation of the sign function.

References

[1] H. Sira-Ramírez and E. Colina-Morles. A sliding mode strategy for adaptive learning in adalines. IEEE Transactions on Circuits and Systems—I: Fundamental Theory and Applications, 42(12):1001–1012, December 1995.

Figure 6: Simulation results of inverse dynamics identification of (14). 9