Adaptive Control Using Interval Type2 Fuzzy Logic
Adaptive Control Using Interval Type2 Fuzzy Logic
net/publication/251320014
Adaptive control using interval Type2 fuzzy logic for uncertain nonlinear
systems
CITATIONS READS
27 152
3 authors:
J. A. Duan
Central South University
69 PUBLICATIONS 1,205 CITATIONS
SEE PROFILE
All content following this page was uploaded by Hao Ying on 17 August 2014.
Abstract: A new adaptive Type-2 (T2) fuzzy controller was developed and its potential performance advantage over adaptive Type-1
(T1) fuzzy control was also quantified in computer simulation. Base on the Lyapunov method, the adaptive laws with guaranteed
system stability and convergence were developed. The controller updates its parameters online using the laws to control a system and
tracks its output command trajectory. The simulation study involving the popular inverted pendulum control problem shows
theoretically predicted system stability and good tracking performance. And the comparison simulation experiments subjected to
white noise or step disturbance indicate that the T2 controller is better than the T1 controller by 0−18%, depending on the experiment
condition and performance measure.
Key words: Type-2 fuzzy systems; adaptive fuzzy control; nonlinear systems; stability
Foundation item: Project(51005253) supported by the National Natural Science Foundation of China; Project(2007AA04Z344) supported by the National
High Technology Research and Development Program of China
Received date: 2009−09−09; Accepted date: 2010−05−20
Corresponding author: DUAN Ji-an, Professor, PhD; Tel: +86−731−88836858; E-mail: [email protected]
J. Cent. South Univ. Technol. (2011) 18: 760−766 761
~ ~
⎡0 1 0 0L0 0 ⎤ ⎡0⎤ ⎡1 ⎤ sets are denoted by F pi (i=1, … , M) and G i ,
⎢0 0 1 0L 0 0 ⎥⎥ ⎢0⎥ ⎢0⎥ respectively, with their respective membership functions
⎢ ⎢ ⎥ ⎢ ⎥
A = ⎢M M M M MM M ⎥ , B = ⎢M⎥ , C = ⎢M⎥ being μ F% i ( x p ) and μG% i ( y f ). F%ni is from F% ph (h=1, …,
p
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ mp). When the secondary membership function of a T2
⎢0 0 0 0L0 1⎥ ⎢0⎥ ⎢0⎥ fuzzy set is constantly 1, the uncertainty zone contained
⎢⎣0 0 0 0 L 0 0 ⎥⎦ ⎢⎣1 ⎥⎦ ⎢⎣ 0 ⎥⎦
n× n n×1 n×1 in the primary memberships forms a bounded region
and x = [ x1 , x2 , L , xn ]T = [ x, x& , L , x ( n −1) ]T ∈ R n is a state called footprint of uncertainty (FOU) [3]. The bound of a
vector. u ∈ R and y ∈ R are input and output of the FOU can be divided into two T1 membership functions:
systems, respectively. d is an external bounded uncertain an upper membership function μ F% i ( x p ) (and μG% i ( y f ) )
p
disturbance, and f ( x ) and g ( x ) are unknown bounded and a lower membership function μ F% i ( x p ) (and
p
continuous functions with g ( x ) ≠ 0. μG% i ( y f ) ).
An adaptive fuzzy controller u = u ( x f% , g% ) was There are many kinds of type-reduction methods,
designed to control the plant so that its output follows a such as centroid, height, modified weight and center-of-
reference trajectory ym, where f% = f% ( x θ f ) and g~ = sets [3, 11−12]. The center-of-sets type-reducer is used in
g% ( x θ g ) are T2 fuzzy universal approximators to be this work:
M
designed to approximate f ( x ) and g ( x ) , respectively.
Here, θ g and θ f are parameters updated by the
∑ f fi yˆ if M
f% ( x | y f ) = i =1
M
= ∑ ξ if ( x ) yˆ if (3)
adaptive laws. Assuming that 1) g ( x ) ≠ 0 , f ( x ) and
g ( x ) are bounded for all x ∈ R n , and the plant is ∑ f fi i =1
i =1
feedback linearizable by static-state feedback; 2) all the where yˆ if is a value of yf at which μG% i ( y f ) achieves its
signals are uniformly bounded: u ( x f% , g% ) ≤ M u < ∞,
θ f (t ) ≤ M f < ∞, θ g (t ) ≤ M g < ∞ and x (t ) ≤ M x < ∞ maximum value. f fi is the firing interval of the i-th rule
or all t≥0, where Mu, Mf, Mg and Mx are the design M
and ξ if ( x ) = f fi / ∑ f fi . Viewing yˆ if in Eq.(3) as an
parameters specified by the designer [10]. The global
i =1
system stability is achieved by using the Lyapunov
adaptive parameter and defining an adaptive parameter
theory, that is, lim e(t ) = 0, where e=ym−y is the tracking
t →∞ vector θ f = (θ f 1 , L , θ fM )T = ( yˆ1f , L , yˆ M T
f ) . And
error. 1 M T
regarding ξ f ( x ) = (ξ f ( x ), L , ξ f ( x )) as a T2 fuzzy
The working process of the T2 adaptive fuzzy
regressive vector. Thus, Eq.(3) can be rewritten as
control is similar to that of the adaptive T1 fuzzy control
except the inclusion of the type-reducer. The crisp inputs f% ( x θ f ) = θ Tf ξ f ( x ) (4)
are first fuzzified by the input T2 fuzzy sets (i.e.
antecedent fuzzy sets); then the T2 fuzzy sets activate the Logically, the other T2 fuzzy approximator can be
inference engine and the rule base to produce output T2 expressed as
fuzzy sets (i.e., consequent fuzzy sets — they are g% ( x θ g ) = θ Tg ξ g ( x ) (5)
singleton T2 fuzzy sets). These fuzzy sets are then
processed by the type-reducer which combines the output where ξ g ( x ) is a T2 fuzzy regressive vector, and θ g is
sets using the centroid calculation, leading to the T1 an adaptive parameter vector.
fuzzy sets (called the type-reducer sets). Finally, these Putting all these together, the T2 adaptive fuzzy
sets are defuzzified to create a crisp output. In this work, controller can be written as
mp different Gaussian interval T2 fuzzy sets were
u = g% −1 ( x θ g )[− f% ( x θ f ) + ym( n ) + K T e − ua ] (6)
adopted for xp. To cover the entire input space, there are
n
up to M = Π m p different output fuzzy sets used in the where e = [e, e&, L , e( n −1) ]T ; K T = [kn , kn −1 , L , k1 ] ∈ R n ,
p =1
is the feedback gain vector to make the characteristic
fuzzy rules.
polynomial of A−BKT Hurwitz; ua is an adaptive robust
The T2 fuzzy approximators f% ( x θ f ) and
term used to finely tune the controller.
g% ( x θg ) have the same mathematical form. For brevity,
And now the specific control law ua and adaptive
only f% ( x θ f ) was described here. Consider the state & &
laws θˆ f and θˆg are needed to develop to update the
variables x = [ x1 , x2 ,L , xn ]T in Eq.(1) to be the inputs
parameters θ g and θ f . Substituting Eq.(6) into Eq.(1)
of f% ( x y f ) and its output is yf. Let the i-th rule be
yields the following error equation:
~ ~ ~
IF x1 is F1i , x2 is F2i , …, xn is Fni ,
~i e& = Ae − BK T e + Bf% ( x θ f ) − Bf ( x ) +
THEN yf is G (2)
where the T2 input fuzzy sets and the T2 output fuzzy B[( g% ( x θg ) − g ( x ))u + ua − d ] (7)
762 J. Cent. South Univ. Technol. (2011) 18: 760−766
Define the optimal parameter vectors θ *f and θ g* : &
θˆg = −γ g ξ g ( x ) B T Pe u (18)
⎧⎪ ⎫⎪
θ *f = arg min ⎨ sup f ( x ) − f% ( x | θ f ) ⎬ (8) Combining Eqs.(14)−(18) yields
θ f ∈Ω1 ⎪ x∈R n
⎩ ⎭⎪
1 1 1 1
⎧⎪ ⎫⎪ V& = − ( B T Pe − ρ ω′)T ( B T Pe − ρ ω′) − e T Qe +
θ g* = arg min ⎨ sup g ( x ) − g% ( x | θ g ) ⎬ (9) 2 ρ ρ 2
θ ∈Ω g 2n
⎩⎪ x∈R ⎭⎪ 1 2 T 1 1
ρ ω ′ ω ≤ − e T Qe + ρ 2ω ′Tω ′ (19)
{ }
where Ω1 = θ f : θ f ≤ M f and Ω2 = θ g : θ g ≤ M g . { } 2 2 2
Furthermore, define the fuzzy approximator error: Then, integrating the above equation from t=0 to
t=t′ yields
ω = ( f% ( x θ *f ) − f ( x )) + ( g% ( x θ g* ) − g ( x )) ⋅ u =
1 t′ T 1 t′
Δf ( x ) + Δg ( x ) ⋅ u (10) V (t ′) − V (0) ≤ − ∫
2 0
e Qedt + ρ 2 ∫ ω ′Tω ′dt
2 0
(20)
where θ f = ( yˆ1f
, L , yˆ M T
f ) , is an adjustable parameter,
and ξ f ( x ) = (ξ f ( x ), L , ξ kf ( x ), L , ξ M
1 T
f ( x )) , is the
regressive vector with the regressor ξ kf ( x ) being defined
as
⎧ k 1 2 k
M
ξ
⎪ f ( x ) = ∑ ξ j ( x)
2 M j =1
⎪
⎪
⎨ k f fk (28)
⎪ξ j ( x ) = M ( j = 1, L , 2 M )
⎪
⎪ ∑ f fi
⎩ i =1
Fig.1 Three Gaussian interval T2 input fuzzy sets for x1 and x2
(i.e. xp where p=1, 2) In Ref.[2], it has been proved that the T2 fuzzy
systems (Eq.(27)) can uniformly approximate any
For the membership functions of the singleton T2 continuous function on a compact domain to any
output fuzzy sets, there is arbitrary accuracy. So, the proposed adaptive controller
⎧⎪ μ % i ( yˆ if ) = 1 relies mathematically on the universal approximation
G
⎨ (24) theorem.
i
⎪⎩ μG% i ( yˆ f ) = b
where 0<b≤1, is the FOU width coefficient. Note that b 3 Simulation study
is kept the same for different output fuzzy sets, but not
mandatory. Rewrite Eq.(22) as 3.1 Inverted pendulum control problem
The T2 adaptive fuzzy controller is used to control
⎧ i n
an inverted pendulum [7, 15]. Let x1=θ be the angle of
⎪⎪ f f = 1× pΠ=1 μ F%pi ( x p )
⎨ (25) the pendulum with respect to the vertical line and
n
⎪ f i = b × Π μ i (x ) x2 = θ&, then the dynamic equations of the inverted
⎪⎩ f
p =1 Fp
% p
pendulum system are
Properly choosing f fi from F fi is a key. In ⎧ ⎡ x&1 ⎤ ⎡ 0 1 ⎤ ⎡ x1 ⎤ ⎡0 ⎤
Ref.[13], KARNIK et al proposed a KARNIK-MENDEL ⎪⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ + ⎢ ⎥ ( f ( x1 , x2 ) + g ( x1 , x2 )u + d )
⎪⎣ x&2 ⎦ ⎣ 0 0 ⎦ ⎣ x2 ⎦ ⎣1 ⎦
(KM) iterative procedure (i.e. type-reducer) to search ⎨ (29)
f fi from [ f fi , f fi ]. This iterative process is very ⎪ y = [1 0] ⎡ x1 ⎤
⎪ ⎢x ⎥
complicated [14]. In this work, a simple method which ⎩ ⎣ 2⎦
avoids the weakness in computing f fi is adopted. From g sin x1 − mp lx22 sin x1 E
Eq.(22), one can see that there are two different w h e r e f ( x1 , x2 ) = , g ( x1 , x2 ) =
Hl
membership functions for every rule and there are a total 2
of 2M different membership functions for all the fuzzy Ψ 4 mp cos x1 cos x1
with H = − and Ψ = . g=
rules. If f fi is chosen just as either f fi or f fi , since Hl 3 mc + mp mc + mp
there are M upper membership values and M lower 9.8 m/s2 is the acceleration due to gravity. mc and mp are
membership values, there are 2M different combinations the masses of the cart and the pole, respectively, and l is
764 J. Cent. South Univ. Technol. (2011) 18: 760−766
the half length of the pole. u is the applied force which is where a is the FOU width coefficient for the input fuzzy
the control input, and d is external disturbance. Assume sets, and 0<c<1 is a coefficient linking σ and σ in
that mc=1 kg, mp=0.1 kg and l=0.5 m. Eq.(23) via σ = c ⋅ σ so that they are proportional.
The step size h=0.001 and the forth-order Runge- According to Eq.(1), it is obvious that there are M=m1×
Kutta method are used to integrate the differential m2=9 fuzzy rules to approximate f(x1, x2) and g(x1, x2).
equations of the system and the adaptive laws in Eq.(17) For control performance comparison, a T1 adaptive
and Eq.(18) with the initial system conditions x1(0)=0.05 fuzzy controller was also designed. Its fuzzy sets adopted
and x2(0)=0.3. The objective of the simulation study is to the upper membership functions of the T2 adaptive fuzzy
make x1 follow one of the two reference trajectories at a controller. The structure of the controller, the control
time: 1) step function ym1(t)=0.2, and 2) sinusoidal laws, the parameter update laws, the initial condition, the
function ym2(t)=0.2sint. Let the external disturbance control objective and all the other designed parameters
d(t)=0.1sint and use the following control performance except γf, γg, γ and ρ were kept the same as those of the
measure: T2 adaptive fuzzy controller. Let k1=2 and k2=1 so that
N s2+k1s+k2 is stable. The following parameter values were
J = ∑ e 2j (30)
used: θfi(0)=−2, θgi(0)=1.2, P=[115 5; 5 5] and Q=
j =1
diag(120, 100)/11. The values of the parameters γf, γg, γ,
where N is the total number of time steps and ej is the
ρ, a, b and c were optimized by the genetic algorithm in
system output tracking error at the j-th step. The
MATLAB’s Genetic Algorithm and Direct Search
performance measurements JT1 and JT2 are used to
Toolbox (version: R2007a) and also by solving Eq.(15)
denote the control performances of the T1 and T2
and Eq.(21) to achieve the best control performance. The
adaptive fuzzy controls, respectively.
performance criteria were to achieve a shortest rise-time
To study the control performance under noise, a
and minimal system output overshoot.
white noise is added to the system output whose
The number of generation was set at 200 for the GA.
maximum amplitude is 5% of the maximum system
The default settings of the GA function were mostly used.
reference trajectory amplitude. How well the system can
The parameter search process was as follows. First, the
handle disturbance is also tested. A constant disturbance
initial search ranges for the design parameters γf, γg and γ
of magnitude 10 is also added to the controller output u(t)
were set to [0, 1 000], [0, 500] and [0, 200], respectively.
temporally between t=7 s and t=7.2 s.
1 000 times GA for the T1 adaptive fuzzy controller was
run to search for the best values of the corresponding
3.2 Genetic algorithm optimized adaptive T2/T1 fuzzy
parameters γf1, γg1 and γ1. Then, these results were used to
controllers
set the new initial search ranges of γf, γg and γ to [0.8γf1,
Three (i.e. m1=m2=3) interval T2 fuzzy sets are used
1.2γf1], [0.8γg1, 1.2γg1] and [0.8γf1, 1.2γf1] for the T1
for both x1 and x2 (Fig.1). They are F% p1 , F% p2 and F% p3 ,
controller again. Afterwards, 500 times GA was run. The
whose upper membership functions ( μ ) and lower
resulting parameter values were used by the T1 controller
membership functions ( μ ) are chosen respectively as
which was treated as the optimized controller. These
(p=1, 2)
values were also used as initial conditions for the GA to
⎧ ⎡ ⎛ x + π / 9 ⎞2 ⎤ optimize the same parameters for the T2 adaptive
⎪ μ % 1 ( x p ) = exp ⎢ − ⎜ p ⎟ ⎥
⎪ Fp ⎢ ⎝ π /12 ⎠ ⎥ controller. Additional parameters of the T2 controller to
⎪ ⎣ ⎦
⎨ (31a) be optimized were a, b and c whose initial search ranges
⎪ ⎡ ⎛ xp + π / 9 ⎞ ⎤
2
were in [0, 1]. 500 times GA were run again. The value
⎪ μ F% 1 ( x p ) = a ⋅ exp ⎢ − ⎜ ⎟ ⎥ of ρ can be computed using Eq.(15) for the T1 and T2
⎪⎩ p ⎢ ⎝ c ⋅ π /12 ⎠ ⎥
⎣ ⎦ fuzzy controllers; it is not searched by the GA.
⎧ ⎡ ⎛ x ⎞2 ⎤ After running the GA, the optimized parameters for
⎪ μ % 2 ( x p ) = exp ⎢ − ⎜ p ⎟ ⎥
⎪ Fp ⎢ π /12 ⎠ ⎥ the T1 fuzzy controller are found to be γf1=242.84, γg1=
⎪ ⎣ ⎝ ⎦ 78.97 and γ1=22.72. Accordingly, ρ=0.83. And the
⎨ (31b)
⎪ ⎡ ⎛ x ⎞ ⎤
2 optimized parameters for the T2 fuzzy controller are:
p
μ
⎪ F% 2 p( x ) = a ⋅ exp ⎢ − ⎜ ⎟ ⎥ γf2=227.12, γg2=69.81, γ2=22.59, a=0.87, b=0.80 and
⎪⎩ p ⎢ ⎝ c ⋅ π /12 ⎠ ⎥
⎣ ⎦ c=0.83. Correspondingly, ρ=0.92 is calculated.
⎧ ⎡ ⎛ x − π / 9 ⎞2 ⎤
⎪ μ % 3 ( x p ) = exp ⎢ − ⎜ p ⎟ ⎥ 3.3 Simulation results
⎪ Fp ⎢ ⎝ π /12 ⎠ ⎥
⎪ ⎣ ⎦ The performances of the T2 controller and their
⎨ (31c)
⎪ ⎡ ⎛ x − π / 9 ⎞2 ⎤ comparisons with the T1 controller are graphically
p
⎪ μ F% 3 ( x p ) = a ⋅ exp ⎢ − ⎜ ⎟ ⎥ shown in Figs.2−4. The performance measures are
⎪⎩ p ⎢ ⎝ c ⋅ π /12 ⎠ ⎥ numerically given in Tables 1−2. Based on these results,
⎣ ⎦
J. Cent. South Univ. Technol. (2011) 18: 760−766 765
the following observations can be made. First, the T2 Table 1 Quantitative summaries of performance comparisons
adaptive fuzzy controller can indeed guarantee the shown in Figs.2−4
theoretically ensured system stability and maintain a Figure No. JT1 JT2 [(JT1−JT2)/JT1]/%
2 11.221 9.216 17.87
3 4.295 4.145 3.49
4 4.504 4.216 6.39
4 Conclusions
References