Adaptive Fuzzy Control

Stanislaw H. Żak ^{∗}

December 8, 1999

Abstract Adaptive fuzzy tracking controller for a class of dynamical systems is analyzed. It is shown that the closed-loop system driven by this fuzzy adaptive controller stable and the adaptation parameters are bounded.

1 Introduction

We consider a class of nonlinear dynamical systems modeled by the differential equation

x^{(n)} = f (x, ẋ, …, x^{(n−1)}) + g (x, ẋ, …, x^{(n−1)}) u,  (1)

where f = f (x, ẋ, …, x^{(n−1)}) and g = g (x, ẋ, …, x^{(n−1)}) are unknown to us. We define

x = [ x ẋ ⋯ x^{(n−1)} ]^{T} and x_{d} = [ x_{d} ẋ_{d} ⋯ x_{d}^{(n−1)} ]^{T} .

Let

e = x − x_{d} = [ x − x_{d} ẋ − ẋ_{d} ⋯ x^{(n−1)} − x_{d}^{(n−1)} ]^{T} = [ e ė ⋯ e^{(n−1)} ]^{T} .

We wish to construct a controller u such that

lim_{t→∞} e(t) = 0.

∗School of Electrical and Computer Engineering, Purdue University, West Lafayette, IN 47907

Let

k^{T} = [ k_{0} k_{1} ⋯ k_{n−1} ]^{T}

be such that

e^{(n)} + k_{n−1}e^{(n−1)} + ⋯ + k_{1}ė + k_{0}e = 0,  (2)

represents the desired dynamical behavior of the tracking error. If f and g were known exactly to us, then the controller of the form

u^{∗} = \frac{1}{g} (−f + x_{d}^{(n)} − k^{T} e)  (3)

would force the tracking error, e, to behave as described by (2). However, f and g are unknown to us. We will use an adaptive fuzzy logic controller to approximate, as closely as possible, the performance of (3). Recall from Chapter ??, that a fuzzy logic controller with q inputs, v_{1}, v_{2}, …, v_{q}, and the center average defuzzifier can be represented as

u = \frac{∑_{l=1}^{M} ∏_{j=1}^{q} μ_{A_{j}^{l}}(v_{j})θ_{l}}{∑_{l=1}^{M} ∏_{j=1}^{q} μ_{A_{j}^{l}}(v_{j})} ,  (4)

where M is the number of fuzzy rules used to construct the controller, A_{j}^{l} is the j-th fuzzy set corresponding to the l-th fuzzy rule, and c_{l} can be taken as a center of the l-th fuzzy set corresponding to the controller’s output. To proceed, we represent (4) as

u = ∑_{l=1}^{M} (\frac{∏_{j=1}^{q} μ_{A_{j}^{l}}(v_{j})}{∑_{l=1}^{M} ∏_{j=1}^{q} μ_{A_{j}^{l}}(v_{j})}) θ_{l}.  (5)

Let

θ = [ θ_{1} θ_{2} ⋯ θ_{M} ]^{T}

and

ξ = ξ(v_{1}, v_{2}, …, v_{M}) = [ \frac{∏_{j=1}^{q} μ_{A^{1}_{j}}(v_{j})}{∑_{l=1}^{M} ∏_{j=1}^{q} μ_{A^{l}_{j}} (v_{j})} ⋯ \frac{∏_{j=1}^{q} μ_{A^{M}_{j}} (v_{j})}{∑_{l=1}^{M} ∏_{j=1}^{q} μ_{A^{l}_{j}} (v_{j})} ]^{T} .

Then, we can represent (4) as

u = θ^{T} ξ.  (6)

We assume that there exists a vector θ^{∗} such that

u^{∗} = \frac{1}{g} (−f + x_{d}^{(n)} − k^{T} e) = θ^{∗T} ξ.  (7)

We will now show that if the above assumption is satisfied then the control law

u = θ^{T} ξ,  (8)

where θ is being appropriately adapted, will force the tracking error, e, to converge to zero. Furthermore, the adaptation parameters remain bounded. To see this, consider e^{(n)}. We have

e^{(n)} = x^{(n)} − x_{d}^{(n)}
= f + gu − x_{d}^{(n)}.

Adding and subtracting gu^{∗} to the right hand side of the above equation and substituting into it gu^{∗} obtained from (3) gives

e^{(n)} = f + g (u − u^{∗}) + gu^{∗} − x_{d}^{(n)}
= f + g (u − u^{∗}) − f + x_{d}^{(n)} − k^{T} e − x_{d}^{(n)}
= k^{T} e + g (u − u^{∗}) .  (9)

Let

ϕ = θ − θ^{∗}.  (10)

Substituting (7) and (8) into (9) and taking into account (10) yields

e^{(n)} = −k_{n−1}e^{(n−1)} − ⋯ + k_{1}ė − k_{0}e + gϕ^{T} ξ  (11)

We now represent the above equation in state space format. Let

A = [ \begin{matrix}0 & 1 & 0 & 0 & ⋯ & 0 & 0 \\ 0 & 0 & 1 & 0 & ⋯ & 0 & 0 \\ ⋮ & & & & ... & & ⋮ \\ 0 & 0 & 0 & 0 & ⋯ & 0 & 1 \\ −k_{0} & −k_{1} & −k_{2} & −k_{4} & ⋯ & −k_{n−2} & −k_{n−1} \end{matrix} ] and b = [ 0 0 ⋮ 0 1 ] .

Then (11) can be represented in an equivalent way as

ė = Ae + b (gϕ^{T} ξ) .  (12)

Theorem 1 Consider a dynamical system model given by (12). Suppose that g is a positive constant, the components ϕ_{i} = ϕ_{i}(t) of the vector-valued function ϕ = ϕ(t) ∈ ℝ^{M} are adjustable parameters according to the adaptation law

ϕ̇ = θ̇ = −Γẽξ,  (13)

where Γ = Γ^{T} > 0 is a design parameter matrix. The vector-valued function ξ = ξ(t) ∈ ℝ^{M} is bounded for all t. The matrix A is asymptotically stable by construction. The real-valued function, ẽ, satisfies the equation

ẽ = b^{T} P e,  (14)

where P = P^{T} > 0 is the solution of the matrix Lyapunov equation

A^{T} P + P A = −2Q  (15)

for some Q = Q^{T} > 0. Then, the erorr e and ϕ are both bounded and

lim_{t→∞} e(t) = 0.

Proof: We will use the Lyapunov function candidate,

V (e, ϕ) = \frac{1}{2}e^{T} P e + \frac{1}{2}gϕ^{T} Γ^{−1}ϕ  (16)

and Barbalat’s lemma to prove the theorem. The time derivative of the Lyapunov function candidate V = V (e, ϕ) evaluated on the trajectories of the system

\begin{matrix}ė & = & Ae + b(gϕ^{T} ξ) \\ ϕ̇ & = & −Γẽξ \end{matrix} \}

is

V̇ = e^{T} P ė + gϕ^{T} Γ^{−1}ϕ̇
= e^{T} P (Ae + b (gϕ^{T} ξ)) − gϕ^{T} eΓ^{−1}Γξ
= −e^{T} Qe + g (ẽϕ^{T} − ẽϕ^{T} ) ξ
= −e^{T} Qe,

where we used the fact that ẽ = b^{T} P e = e^{T} P b. Thus, V̇ is negative semi-definite in

the [ \begin{matrix}e \\ ϕ \end{matrix} ]-space, which implies that e and ϕ are bounded.

To show the convergence of e, we use Barbalat’s lemma. For this, we first show that V̇ is uniformly continuous. Indeed, since

V̈ = −2e^{T} Qė

is bounded, because e and ė are bounded, V̇ is uniformly continuous. Hence, V̇ → 0 as t → ∞. Since V̇ = −e^{T} Qe and Q = Q^{T} > 0, we have to have e(t) → 0 as t → 0.

□

If the lower bounds on the parameters of θ^{∗} are known and it is desired that θ_{i}s will not go below these bounds, then we modify the adaptation law to achieve this goal. Let θ_{i,low} denote the lower bound of θ_{i}^{∗}. Fischle and Schröder [1] propose the following modification;

θ̇ = −ΓẽLξ,  (17)

where the matrix L is a diagonal matrix whose diagaonal elements are defined as

l_{ii} = \{ \begin{matrix}0 & if θ_{i} = θ_{i,low} and ẽξ_{i} > 0 \\ 1 & else. \end{matrix}

References

[1] K. Fischle and D. Schröder, “An improved stable adaptive fuzzy control method,” IEEE Transactions on Fuzzy Systems, vol. 7, pp. 27–40, February 1999.