# Robust Fuzzy Logic Stabilization with Disturbance Elimination

Authors: Kumeresan A. Danapalasingam
Journal: The Scientific World Journal
 (2014)

---

## Abstract

A robust fuzzy logic controller is proposed for stabilization and disturbance rejection
in nonlinear control systems of a particular type. The dynamic feedback controller is
designed as a combination of a control law that compensates for nonlinear terms in a
control system and a dynamic fuzzy logic controller that addresses unknown model
uncertainties and an unmeasured disturbance. Since it is challenging to derive a highly
accurate mathematical model, the proposed controller requires only nominal functions
of a control system. In this paper, a mathematical derivation is carried out to prove that
the controller is able to achieve asymptotic stability by processing state measurements.
Robustness here refers to the ability of the controller to asymptotically steer the state
vector towards the origin in the presence of model uncertainties and a disturbance input.
Simulation results of the robust fuzzy logic controller application in a magnetic
levitation system demonstrate the feasibility of the control design.


---

## Body

## 1. Introduction

One of the key challenges in solving practical controller design problems is the availability of an accurate mathematical model of a plant. Due to the presence of unmodelled nonlinearities, parameter uncertainties, measurement errors, actuator errors, and external disturbances in a system to be controlled, the derivation of a reliable mathematical model for control purposes is a demanding task. In cases where an acceptable mathematical model of a plant does not exist or is difficult to be obtained, the fuzzy logic controller is often useful [1, 2]. A unique feature of fuzzy logic controllers is that it enables a natural framework to incorporate linguistic descriptions of a system and control rules from human experts [3, 4]. A fuzzy logic controller is often advantageous in cases where field engineers or operators are able to furnish linguistic fuzzy control rules or linguistic fuzzy descriptions about a system to be controlled. Compounded by the fact that it is a nonlinear controller based on the model-free design, fuzzy logic controllers have been favourable in numerous household and industrial applications.Some previous works on fuzzy logic control are reviewed here. The problem of adaptive fuzzy decentralized fault-tolerant control is investigated for a class of nonlinear large-scale systems in [5]. The proposed control design applies a fuzzy logic system to approximate unknown nonlinear functions that exist in the plant and a fuzzy adaptive observer to estimate unmeasured states. By choosing appropriate design parameters, it is shown that all closed-loop signals are bounded and that tracking errors converge to a small neighborhood of zero. In [6], an adaptive fuzzy robust output feedback control problem is considered for nonlinear systems that possess unstructured uncertainties, unknown dead zone, and dynamics uncertainties. By combining a backstepping technique with a nonlinear small-gain approach, the proposed controller demonstrates semiglobal uniform ultimate boundedness for all closed-loop solutions. An H∞ output-feedback fuzzy controller is designed for a class of discrete-time fuzzy systems with randomly occurring infinite distributed delays and channel fadings in [7]. By utilizing the cone complementarity linearization algorithm, the closed-loop Takagi-Sugeno fuzzy control system is proven to be exponentially mean-square stable, and the disturbance rejection attenuation is constrained to a given level by means of the H∞ performance index. In [8], the stabilization of a class of discrete-time Takagi-Sugeno (T-S) fuzzy systems with stochastic perturbation and time-varying state delay is studied. In the research, a fuzzy Lyapunov-Krasovskii function is constructed, and some examples are provided to illustrate the effectiveness of the proposed methods. An adaptive fuzzy control strategy with guaranteed convergence of an optimal fuzzy approximation error is presented for a class of uncertain nonlinear systems in the general Brunovsky form in [9]. The authors prove that the closed-loop system achieves partially asymptotic stability under a certain selection of control parameters and report a high-precision tracking performance through simulation studies.Conventional controllers are required to be tuned by adjusting its controller gains to obtain acceptable control performances. Similarly, a fuzzy logic controller needs to be tuned until a satisfactory control performance is achieved. A fuzzy logic controller can be tuned by modifying its fuzzy control rules, membership functions, and scaling gains. In this paper, elements of some of the membership functions are chosen as the tuning parameter. While a similar approach is undertaken in [10, 11], asymptotic stability is not achieved therein. In this work, the tuning parameter of the proposed fuzzy logic controller is adapted for asymptotic stability. The contribution of this research is the development of an asymptotically stable fuzzy logic controller that is robust against model uncertainties and a disturbance input whose measurements are not available.A fuzzy logic control problem is addressed for a class of nonlinear dynamical control systems in Section2. In the same section, the components of a fuzzy logic controller are described. This is followed by Section 3 that covers the design of a robust fuzzy logic controller. To confirm the performance of the proposed controller, simulation results are presented and analyzed in Section 4. Section 5 concludes the paper.


## 2. Preliminaries

This work concerns the problem of robust fuzzy logic stabilization for general nonlinear control systems of the form(1)x˙1=x2⋮x˙n-1=xnx˙n=f(x)+g(x)u+d(t),x∈Rn,u∈U,n=2,3,
where x is the state vector, f:Rn→R and g:Rn→R, g(x)≠0 are continuous functions, u is the control input taking values in a compact set U⊂R, and d(t) is a continuous function denoting unmodelled dynamics and disturbances. The control system is subject to model uncertainties; that is,
(2)f(x)=f0(x)+fΔ(x),g(x)=g0(x)+gΔ(x),
where f0(x) and fΔ(x) (g0(x)≠0 and gΔ(x)) are known nominal and unknown uncertain functions, respectively. The robust fuzzy logic stabilization problem involves the design of a dynamic feedback controller k:Rn×R→U such that the origin in Rn is robustly stable with respect to the trajectories of the closed-loop system
(3)x˙1=x2⋮x˙n-1=xnx˙n=f(x)+g(x)k(x,t)+d(t).
Here, the term robustness refers to the insensitivity of a controller’s performance with respect to modelling errors fΔ(x) and gΔ(x) and a persistent disturbance d(t).Fuzzy logic controllers have been successfully applied in many commercial products and industrial systems (see, for instance, [12–15]) and one contributing factor for its effectiveness is that it is inherently a nonlinear controller [16–19]. Given its good reputation in control engineering, it is desired to include a fuzzy logic controller in the design of a robustly stabilizing k(x,t).


### 2.1. Fuzzy Logic Controller

A typical fuzzy logic controller consists of fuzzifier, knowledge base, inference engine, and defuzzifier as shown in Figure1. The fuzzy logic controller is a feedback
(4)kfl:Rn⟶U.Figure 1
Fuzzy logic controller configuration.The fuzzifier transforms a real or crispx=[x1⋯xn]⊤ into a fuzzy set through the fuzzification operation. A fuzzy set F is a set of ordered pairs of x and its value of membership function μF(x); that is, F={(x,μF(x))}⊂Rn×[0,1] [20]. In fuzzy control applications, it is common to convert a crisp value x0 of x to a fuzzy singleton, that is, a fuzzy set where μF(x0)=1 and μF(x)=0 for x≠x0 [10, 11, 17].The knowledge base comprises a database that provides necessary definitions to ensure a proper functioning of the controller and a rule base that contains a set of fuzzy control rules [21]. A fuzzy control rule provides a convenient way to represent control goals and policies of field experts and has the following form:
(5)Rj:Ifx1isA1jand…andxnisAnjthenuflisBj,hhhhhhhhhhhhhhhhhhhhhh111111.hj=1,2,…,M,
where xi and ufl are linguistic variables representing ith input of the controller and fuzzy logic control input, respectively, Aij and Bj are linguistic values of the linguistic variables xi and ufl, respectively, and M is the number of fuzzy control rules.Each fuzzy control rule (5) is expressed as a fuzzy implication Rj in the inference engine. A fuzzy implication is a fuzzy relation defined as
(6)μRj(x,ufl):=μA1jand…andAnj→Bj(x,ufl)=μA1j×⋯×Anj→Bj(x,ufl)=μA1j×⋯×Anj(x)⟶μBj(ufl).
In (6), the logical operator “and” is implemented as a fuzzy conjunction and is given by
(7)μA1j×⋯×Anj(x)=μA1j(x1)*⋯*μAnj(xn),
where the symbol * represents the triangular norm. Some commonly used triangular norms are intersection, bounded product, drastic product, and algebraic product that is defined as
(8)μA1j(x1)*⋯*μAnj(xn)=μA1j(x1)μA2j(x2)⋯μAnj(xn).
Many types of fuzzy implication can be found in the literature such as min⁡ operation rule, product operation rule, bounded product operation rule, drastic product operation rule, arithmetic rule, maximin rule, standard sequence, Boolean implication, Gödelian logic, and Goguen implication [2, 10, 20]. In this paper, the product operation rule of fuzzy implication is of particular interest, where, from (6), (7), and (8),
(9)μRj(x,ufl)=μA1j×⋯×Anj(x)⟶μBj(ufl)=μA1j×⋯×Anj(x)μBj(ufl)=μA1j(x1)μA2j(x2)⋯μAnj(xn)μBj(ufl).
By applying the sup-star compositional rule of inference on a fuzzy singleton F (output of the fuzzifier) and a fuzzy implication Rj, a fuzzy set F∘Rj⊂R×[0,1] is obtained for each fuzzy control rule (5) as follows:
(10)μF∘Rj(ufl)=sup⁡x∈Rn[μF(x)*μRj(x,ufl)],
where ∘ is a compositional operator and “star” or * denotes the triangular norm. Note that, by using algebraic product and (9), (10) becomes
(11)μF∘Rj(ufl)=sup⁡x∈Rn[μF(x)μA1j(x1)μA2j(x2)⋯μAnj(xn)μBj(ufl)].The defuzzifier maps a fuzzy control action obtained in the inference engine to a crisp fuzzy logic control inputufl∈U. Some defuzzification strategies include maximum, center-average, modified center-average, mean of maximum, and center of area defuzzifiers [11, 22]. In particular, the center-average defuzzifier is expressed as
(12)ufl=∑j=1M‍u0jμF∘Rj(u0j)∑j=1M‍μF∘Rj(u0j),
where u0j=argmax⁡ufl∈U[μBj(ufl)]. By assuming that max⁡ufl∈U[μBj(ufl)]=1 and implementing (11), (12) can be rewritten as [12]
(13)kfl(x)=∑j=1M‍u0j(∏i=1n‍μAij(xi))∑j=1M‍(∏i=1n‍μAij(xi)).To effectively control a plant, controllers are needed to be tuned either manually or automatically until a satisfactory performance is obtained [23–25]. While the tuning parameters of most of the controllers are gains, a fuzzy logic controller can be tuned by adjusting its fuzzy control rules, membership functions, and scaling gains [26]. In this paper, the tuning parameter of the fuzzy logic controller kfl(x) is ξ∈RM in the following representation of (13):
(14)kfl(x)=ψ(x)ξ,
where
(15)ψ(x)=1∑j=1M‍(∏i=1n‍μAij(xi))×[(∏i=1n‍μAi1(xi))⋯(∏i=1n‍μAiM(xi))],ξ=[u01u02⋯u0M]⊤.


## 2.1. Fuzzy Logic Controller

A typical fuzzy logic controller consists of fuzzifier, knowledge base, inference engine, and defuzzifier as shown in Figure1. The fuzzy logic controller is a feedback
(4)kfl:Rn⟶U.Figure 1
Fuzzy logic controller configuration.The fuzzifier transforms a real or crispx=[x1⋯xn]⊤ into a fuzzy set through the fuzzification operation. A fuzzy set F is a set of ordered pairs of x and its value of membership function μF(x); that is, F={(x,μF(x))}⊂Rn×[0,1] [20]. In fuzzy control applications, it is common to convert a crisp value x0 of x to a fuzzy singleton, that is, a fuzzy set where μF(x0)=1 and μF(x)=0 for x≠x0 [10, 11, 17].The knowledge base comprises a database that provides necessary definitions to ensure a proper functioning of the controller and a rule base that contains a set of fuzzy control rules [21]. A fuzzy control rule provides a convenient way to represent control goals and policies of field experts and has the following form:
(5)Rj:Ifx1isA1jand…andxnisAnjthenuflisBj,hhhhhhhhhhhhhhhhhhhhhh111111.hj=1,2,…,M,
where xi and ufl are linguistic variables representing ith input of the controller and fuzzy logic control input, respectively, Aij and Bj are linguistic values of the linguistic variables xi and ufl, respectively, and M is the number of fuzzy control rules.Each fuzzy control rule (5) is expressed as a fuzzy implication Rj in the inference engine. A fuzzy implication is a fuzzy relation defined as
(6)μRj(x,ufl):=μA1jand…andAnj→Bj(x,ufl)=μA1j×⋯×Anj→Bj(x,ufl)=μA1j×⋯×Anj(x)⟶μBj(ufl).
In (6), the logical operator “and” is implemented as a fuzzy conjunction and is given by
(7)μA1j×⋯×Anj(x)=μA1j(x1)*⋯*μAnj(xn),
where the symbol * represents the triangular norm. Some commonly used triangular norms are intersection, bounded product, drastic product, and algebraic product that is defined as
(8)μA1j(x1)*⋯*μAnj(xn)=μA1j(x1)μA2j(x2)⋯μAnj(xn).
Many types of fuzzy implication can be found in the literature such as min⁡ operation rule, product operation rule, bounded product operation rule, drastic product operation rule, arithmetic rule, maximin rule, standard sequence, Boolean implication, Gödelian logic, and Goguen implication [2, 10, 20]. In this paper, the product operation rule of fuzzy implication is of particular interest, where, from (6), (7), and (8),
(9)μRj(x,ufl)=μA1j×⋯×Anj(x)⟶μBj(ufl)=μA1j×⋯×Anj(x)μBj(ufl)=μA1j(x1)μA2j(x2)⋯μAnj(xn)μBj(ufl).
By applying the sup-star compositional rule of inference on a fuzzy singleton F (output of the fuzzifier) and a fuzzy implication Rj, a fuzzy set F∘Rj⊂R×[0,1] is obtained for each fuzzy control rule (5) as follows:
(10)μF∘Rj(ufl)=sup⁡x∈Rn[μF(x)*μRj(x,ufl)],
where ∘ is a compositional operator and “star” or * denotes the triangular norm. Note that, by using algebraic product and (9), (10) becomes
(11)μF∘Rj(ufl)=sup⁡x∈Rn[μF(x)μA1j(x1)μA2j(x2)⋯μAnj(xn)μBj(ufl)].The defuzzifier maps a fuzzy control action obtained in the inference engine to a crisp fuzzy logic control inputufl∈U. Some defuzzification strategies include maximum, center-average, modified center-average, mean of maximum, and center of area defuzzifiers [11, 22]. In particular, the center-average defuzzifier is expressed as
(12)ufl=∑j=1M‍u0jμF∘Rj(u0j)∑j=1M‍μF∘Rj(u0j),
where u0j=argmax⁡ufl∈U[μBj(ufl)]. By assuming that max⁡ufl∈U[μBj(ufl)]=1 and implementing (11), (12) can be rewritten as [12]
(13)kfl(x)=∑j=1M‍u0j(∏i=1n‍μAij(xi))∑j=1M‍(∏i=1n‍μAij(xi)).To effectively control a plant, controllers are needed to be tuned either manually or automatically until a satisfactory performance is obtained [23–25]. While the tuning parameters of most of the controllers are gains, a fuzzy logic controller can be tuned by adjusting its fuzzy control rules, membership functions, and scaling gains [26]. In this paper, the tuning parameter of the fuzzy logic controller kfl(x) is ξ∈RM in the following representation of (13):
(14)kfl(x)=ψ(x)ξ,
where
(15)ψ(x)=1∑j=1M‍(∏i=1n‍μAij(xi))×[(∏i=1n‍μAi1(xi))⋯(∏i=1n‍μAiM(xi))],ξ=[u01u02⋯u0M]⊤.


## 3. Fuzzy Logic Controller Design

In this section, a dynamic feedback controller is designed in two stages to achieve the control objective described in Section2. Firstly, a preliminary feedback law that compensates the nonlinear terms f(x) and g(x) in (1) is proposed based on the known nominal functions f0(x) and g0(x). Secondly, a dynamic fuzzy logic controller is designed by means of a linear time-varying system to compensate for the unknown model uncertainties fΔ(x) and gΔ(x) and disturbance d(t).Consider the following expression from (1):
(16)x˙n=f(x)+g(x)u+d(t).
To compensate for the nonlinear terms f and g in (16), a preliminary control law is chosen as follows:
(17)u=v-f0(x)g0(x),
where v is an additional control input to be designed. It is easy to show that the control input v needed to achieve x˙n=0 is
(18)vff=f0(x)-g0(x)g(x)(f(x)+d(t)).
Feedforward control law vff (18) applied in (17) is capable of keeping x(t) identically at zero if the initial conditions are set as x1(0)=⋯=xn(0)=0. Since vff depends on the uncertain f,g and unknown d(t), control law (18) is not directly implementable.To asymptotically regeneratevff, it is first assumed that (18) can be viewed as an output generated by the linear time-varying system
(19)ξ˙ff=(F+Gψ(x))ξff,vff=f0(x)+ψ(x)ξff,
where F is an M×M Hurwitz matrix, G is an M×1 vector such that the pair (F,G) is controllable, ψ(x) is from (14), and ξff∈RM is the state variable. Based on assumption (19), a dynamic fuzzy logic controller utilizing fuzzy logic controller kfl (14) is proposed resulting in
(20)ξ˙=(F+Gψ(x))ξ+Gw,v=f0(x)+ψ(x)ξ+w,
where ξ∈RM is the controller state and w is a function to be determined. Note that the fuzzy logic controller is implemented in (20) to estimate the uncertain and unknown terms in (18). In order to formally prove that control laws (17) and (20), that is,
(21)ξ˙=(F+Gψ(x))ξ+Gw,v=f0(x)+kfl(x)+w,k(x,t)=v-f0(x)g0(x),
asymptotically stabilize control system (3), the following theorem is presented.Theorem 1.
There exists a functionw such that control system (3) with dynamic feedback controller (21) is asymptotically stable.Proof.
Even though only steps of proof for casesn=2 and n=3 are shown, a similar approach can be taken for a system of any order.
(
1) Case
n
=
2. A new vector of state variables is defined as
(22)η2=[eξ+g0gx2Gx1x2+k1x1],
where
(23)eξ=ξ-ξff
and k1, k2 are tuning parameters of the feedback law
(24)w=-k2(x2+k1x1).
Consequently, control system (3) with control laws (21) and (24) can be written in the form
(25)η˙2=A2η2,
where
(26)A2=[Fk1g0gFG-g0gFG01×M-k11-g0gψ-k1(ψG+k1)ψG+k1+g0gk2],
with 1×M zero matrix 01×M.
(
2) Case
n
=
3. Similar as above, a vector of state variables is set as
(27)η3=[eξ+g0gx3Gx1x2+k1x1x3+k1x2+k2(x2+k1x1)],
where k1, k2, k3 are tuning parameters of the feedback law
(28)w=-k3(x3+k1x2+k2(x2+k1x1)).
Control system (3) with control laws (21) and (28) yields a system that can be put in the form
(29)η˙3=A3η3,
where
(30)A3=[a11a12a13a14a21a22a23a24a31a32a33a34a41a42a43a44],
with
(31)a11=Fa12=-k12g0gFGa13=(k1+k2)g0gFGa14=-g0gFGa21=01×Ma22=-k1a23=1a24=0a31=01×Ma32=0a33=-k2a34=1a41=-g0gψa42=k12(ψG+k1)a43=-(k1+k2)(ψG+k1)-k22a44=ψG+k1+k2+g0gk3.
Straightforward calculations show that matrices A2 (26) and A3 (30) are Hurwitz matrices for appropriate selections of k1, k2 and k1, k2, k3, respectively.
As a result, the statex(t) of control system (3) is guaranteed to asymptotically decay to a small neighbourhood of the origin if dynamic feedback controller (21) that consists of dynamic fuzzy logic controller (20) and feedback law (24) or (28) is implemented. Since the controller relies only on the nominal functions f0 and g0 and estimates the uncertain and unknown variables by processing the system state, it is a robust controller.


## 4. Simulation Results

In this section, a magnetic levitation system in which an electromagnet exerts attractive force to levitate a steel ball is considered. According to [27], the system dynamics can be represented by
(32)x˙1=x2x˙2=x3x˙3=f(x)+g(x)u+d(t),
where
(33)f(x)=f1(x)+f2(x),f1(x)=2(g-x3)(X∞+x1)x2,f2(x)=-2(g-x3)Qx2-R(X∞+x1)2(X∞+x1)(Q+L∞(X∞+x1)),g(x)=-2MQ(g-x3)M(Q+L∞(X∞+x1)),d(t)=g(x)δ(t).
In (33), we have the following:x1:
air gap (vertical position) of the steel ball,0m≤x1≤0.013m,x3:
coil current,g:
gravity acceleration, 9.8ms-2,M:
mass of the steel ball, 0.54 kg,R:
electrical resistance, 11.88 Ω,u:
voltage control input, −60 V ≤u ≤ 60 V,L∞:
coil constant, 0.7987 H,Q:
magnetic core constant, 0.001624 Hm,X∞:
steel ball constant, 0.008114 m,δ(t):
bounded external disturbance,δ(t)=5sin(π/2t).In this Matlab simulation exercise, dynamic feedback controller (21) with feedback law (28) is applied to magnetic levitation system (32) to verify its performance as a robust stabilizer. The control objective is to drive the system state from x(0)=[0.001300]⊤ to the origin. The nominal functions f0(x) and g0(x) are obtained by replacing the system parameters in (33) with nominal values as listed in Table 1. The nominal system parameters with considerable errors are used in the controller to demonstrate its robust performance. The membership functions of x1, x2, and x3 are depicted in Figure 2.Table 1
Nominal parameters of the magnetic levitation system.
g
0
9.0
m
s
-
2
M
0
0.30
kg
R
0
10.0
Ω
L
∞
0
0.50
H
Q
0
0.0003
Hm
X
∞
0
0.0020
mFigure 2
Membership functions ofx1, x2, and x3.Figures3 and 4 show the state trajectory x and control input u of nonlinear system (32) for simulation time t=[0,10] s. In Figure 3, it can be seen that dynamic feedback controller (21) with feedback law (28) is effective in navigating the system state from x(0)=[0.001300]⊤ to the origin, even though only f0(x) and g0(x) are known and d(t) is not measured. To ensure that the control input is within -60V≤u≤60V, a saturation block is added in the Simulink model. Figure 4 illustrates that the control input u is well within the physical constraint. A closer examination of the state trajectory plot reveals that x does not settle exactly at zero but converges to a small neighbourhood of the origin as depicted in Figure 5. The reason for this behaviour is the presence of the persistent disturbance d(t) that affects the control system. Nevertheless, the state response of the magnetic levitation system controlled by k(x,t) with (28) fits the definition of robust asymptotic stability [28, 29].Figure 3
Trajectory of system statex.Figure 4
Control inputu.Figure 5
Trajectory of system statex.


## 5. Conclusion

A robust fuzzy logic stabilizer is proposed for nonlinear control systems with disturbances. The dynamic feedback controller design combines a control law to compensate for nonlinear terms in a system to be controlled and a dynamic fuzzy logic controller to handle unknown model uncertainties and disturbance. The controller construction assumes that only nominal functions of a control system are known, measurements of system state are available, and the disturbance is not measured. A tuning parameter of the fuzzy logic controller is adjusted by means of a linear time-varying system with state measurements as its input. The proposed controller is implemented in a magnetic levitation system and simulation results verify its capacity as a robust stabilizer. Equipped with its mathematically proven robustness property, the controller manages to regulate the system state asymptotically to a small neighbourhood of zero. To validate its control performance, the implementation of the robust fuzzy logic stabilizer in an experimental DC motor tracking system is considered as a future work.



---

*Source: 171597-2014-08-06.xml*