Vous êtes sur la page 1sur 11

702 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO.

3, JUNE 2012
TSK Fuzzy Function Approximators: Design and
Accuracy Analysis
Assem H. Sonbol, M. Sami Fadali, Senior Member, IEEE, and Saeed Jafarzadeh, Member, IEEE
AbstractFuzzy systems are excellent approximators of known
functions or for the dynamic response of a physical system. We
propose a new approach to approximate any known function by
a TakagiSugenoKang fuzzy system with a guaranteed upper
bound on the approximation error. The new approach is also used
to approximately represent the behavior of a dynamic system from
its inputoutput pairs using experimental data with known error
bounds. We provide sufcient conditions for this class of fuzzy sys-
tems to be universal approximators with specied error bounds.
The new conditions require a smaller number of membership
functions than all previously published conditions. We illustrate
the new results and compare them to published error bounds
through numerical examples.
Index TermsApproximation error bound, fuzzy
TakagiSugenoKang (TSK) systems, modeling.
I. INTRODUCTION
A
CLASS OF fuzzy systems is a universal approximator
if, for any real continuous function on a compact set,
there exists a fuzzy system from this class that can approx-
imate the function to any degree of accuracy [1], [2]. The
universal approximation capabilities of fuzzy systems have
been discussed extensively in the literature. Many different
classes of fuzzy systems have been analyzed and proven to have
the universal approximation property [3], [4]. However, the
universal approximation property of fuzzy systems is only one
aspect of designing a fuzzy function approximator. A critical
question is the following: how can one design a fuzzy system to
approximate a given real continuous function? Here, the word
design means choosing the shape of the membership functions,
the number of fuzzy sets needed for each input variable, and the
rule base.
Currently, only a few papers [5][7] have addressed these
issues. The results in [5] deal with fuzzy systems using general
fuzzy logic operators and general defuzziers. It is the rst pa-
per to discuss the approximation error bounds of fuzzy systems.
However, the error bounds of [5] are conservative, especially
when compared to the error bounds of [6] and [7]. For example,
to approximate the function sin(x)/x dened on [3, 3] with
a specied accuracy of 0.2 and 0.02, it required 207 and 3421
Manuscript received January 12, 2011; revised July 29, 2011 and October 17,
2011; accepted October 19, 2011. Date of publication December 2, 2011; date
of current version May 16, 2012. This paper was recommended by Associate
Editor H. Gao.
A. H. Sonbol is with the Power Generation Engineering and Services
Company, Cairo, Egypt (e-mail: ahsonbol@PGESCo.com).
M. S. Fadali and S. Jafarzadeh are with the Electrical and Biomedical
Engineering Department, University of Nevada, Reno, NV 89557 USA (e-mail:
fadali@unr.edu; sjafarzadeh20@ gmail.com).
Digital Object Identier 10.1109/TSMCB.2011.2174151
fuzzy rules, respectively, compared to 9 and 25 fuzzy rules in
[6]. There are two main reasons for the large difference between
the results in [6] and [5]. The rst is that [5] provides a general
approximation bound valid for several classes of fuzzy systems.
The second is that the author uses a two-step approximation
technique: polynomial approximation of the given function
and then fuzzy system design to approximate the polynomial.
Zeng et al. [7] used the same two-step approximation technique,
but their results are big improvements over the results in [5].
Zeng and Singh [6] obtained approximation error bounds for
various classes of fuzzy systems and used them to analyze and
compare the approximation accuracy of various classes of fuzzy
systems. They also proved that, as function approximators, the
class of fuzzy systems generated by the product inference and
the center-average defuzzier are better than the following:
1) the class of fuzzy systems generated by the min inference
and center-average defuzzier and 2) the class of fuzzy systems
defuzzied by the MoM defuzzier. Their results do not use
the two-step approximation of [5] and [7] but provide better
approximation accuracy. However, the error bounds given in [6]
and [7] depend on the extremum of the partial derivatives of the
function to be approximated.
Another class of approaches for fuzzy modeling uses clus-
tering algorithms to obtain fuzzy TakagiSugenoKang (TSK)
models [8][10]. An unsupervised clustering algorithm is used
to divide the input space into fuzzy subspaces which are then
tuned using a supervised learning algorithm [8]. While these
approaches are promising, they do not provide error bounds
for the fuzzy models. Furthermore, they often involve costly
computation, particularly in the learning phase.
In this paper, we prove that using a piecewise constant
approximation of the partial derivatives of the function gives
better results than those of [6] and [7]. Our error bounds
and approximation approach require knowledge of the partial
derivatives of the approximated function with respect to the
independent variables. These derivatives are easily obtained
for known functions, and our results can be directly applied
to achieve the desired approximation error. However, we are
able to provide the desired accuracy with fewer membership
functions by using a variable membership function support.
To model experimental data with a fuzzy TSK system, we
rst t the data with a polynomial function as in [5] and [7].
We then use the derivative of the polynomial approximation and
thus avoid the problems associated with numerical evaluation of
the derivatives. We obtain error bounds for the approximation
of the experimental data using our results for approximating
known functions. A preliminary version of our results was
presented in [1]. However, the preliminary presentation did not
1083-4419/$26.00 2011 IEEE
SONBOL et al.: TSK FUZZY FUNCTION APPROXIMATORS: DESIGN AND ACCURACY ANALYSIS 703
TABLE I
NOMENCLATURE
include the approach presented here for the approximation of
unknown functions.
This paper is organized as follows. In Section II, we intro-
duce some basic concepts for fuzzy sets. In Section III, we
give a mathematical analysis of the approximation accuracy of
TSK fuzzy systems. In Section IV, we extend our approach to
the approximate fuzzy representation of experimental data. In
Section V, we provide four numerical examples and discuss and
compare our results with those reported in the literature. The
examples include the approximation of known and unknown
functions and examine the effect of noise on the fuzzy approx-
imation. The conclusion and suggestions for future work are
given in Section VI.
This paper follows the notation of the well-known text by
Wang [11]. We provide our nomenclature in Table I for the
convenience of the reader.
II. PRELIMINARY CONCEPTS AND COMPONENTS OF THE
FUZZY SYSTEM
In this paper, we analyze the TSK fuzzy multi-inputmulti-
output (MIMO) system. Because a MIMO system can be
viewed as a set of multi-inputsingle-output (MISO) fuzzy
systems, without loss of generality, we assume that fuzzy
systems are MISO mappings f : U R
n
V R, where
U = U
1
U
2
U
n
R
n
is the input space and V R
is the output space.
A fuzzy set A is characterized by a membership function

A
(x) with values in the unit interval [0, 1] and x in a
known universe of discourse U. We summarize some properties
of fuzzy sets that are adopted by most researchers (see, for
example, [11]).
Denition 1: Completeness: Fuzzy sets A
i
, i = 1, . . . , N, in
U R are said to be a complete partition on U if, for any x
U, there is at least one fuzzy set A
j
such that
A
j (x) > 0.
Denition 2: Consistency: Fuzzy sets A
i
, i = 1, . . . , N, in
U R are said to be consistent on U if x U such that

A
j (x) = 1 implies
A
i (x) = 0 for all i = j.
Denition 3: Normality: A set of fuzzy IF-THEN rules is
normal if the largest membership value, known as the height of
the fuzzy set, is unity.
A TSK fuzzy system consists of the following four principal
components [11]:
1) a fuzzier that maps to normal, complete, and consistent
trapezoidal fuzzy sets;
2) a complete fuzzy rule base of the form
R
i
1
,i
2
,...,i
n
: IF
n

j=1
x
j
is A
i
j
j
THEN y =
n

i=1
m
i

k=0
a
i
1
,i
2
,...,i
n
,k
x
k
i
(1)
where x
j
is the input variables of the fuzzy system, i
j
=
1, 2, . . . , N
j
, N
j
is the number of membership functions
in the jth input, the trapezoidal fuzzy set A
i
j
j
U
j
is
a linguistic term characterized by the fuzzy member-
ship function
A
i
j
j
(x
j
), y is its output variable, and
a
i
1
i
2
...i
n
,k
R are constants corresponding to this rule;
3) a fuzzy inference engine with the T-norm in fuzzy impli-
cation and product inference;
4) a center-average defuzzier.
III. APPROXIMATION ACCURACY ANALYSIS
In this section, we derive several upper bounds on the approx-
imation error for fuzzy systems that are dened in Section II.
All proofs are given in the Appendix.
If a function is continuous, with all of its partial derivatives
up to order l continuous, we say that the function is C
l
. Let the
desired function g(x) be C
l1
on U = U
1
U
2
U
n
=
[a
0
, b
0
] [a
1
, b
1
] [a
n
, b
n
] R
n
and dene
g
(l)
x
i
(x
i
) = max
x
j
[a
j
,b
j
]
j=1,2,...,n
j=i

l
g(x)
x
l
i

a
j
=x
0
j
< x
1
j
< < x
N
j
1
j
= b
j
(2)

j
i
i,l
= min
x
j
i
i

j
i
i
x
j
i
+1
i
max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
) g
(l)
x
i
_

j
i
i
_

i = 1, 2, . . . , n, j
i
= 1, 2, . . . , N
i
1,

j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (3)
The -norm for a function g(x) in U is
g(x)

= max
xU
|g(x)| . (4)
The following two lemmas are used throughout this
paper to establish approximation error bounds for fuzzy
systems.
Lemma 1: For any x
i
[x
j
i
i
, x
j
i
+1
i
] [a
i
, b
i
]
max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
)

g
(l)
x
i
_

j
i
i
_

+
j
i
i,l

j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (5)
704 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO. 3, JUNE 2012
Lemma 2: For any x
i
[x
j
i
i
, x
j
i
+1
i
] [a
i
, b
i
]
_
_
_g
(l)
(x)
_
_
_

g
(l)
x
i
_

j
i
i
_

+
j
i
i,l

j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (6)
We now establish approximation error bounds for MISO
systems. The rst bound is for all continuous functions and
yields fuzzy rules of the form (1), with m
i
= 0 for all i =
1, 2, . . . , n. The second bound is for all C
1
functions and
also yields fuzzy rules of the form (1), with m
i
= 0 for all
i = 1, 2, . . . , n. Finally, the third bound is for all C
l
functions
and yields fuzzy rules of the form (1), with m
i
= 0 for all
i = 1, 2, . . . , n.
Theorem 1: Assume the following x U: 1) g(x)
is continuous; 2) f(x) is a fuzzy approximation of
g(x) comprising the four principal components of
Section II, with m
i
= 0 for all i = 1, 2, . . . , n; and
3) g(x

) = f(x

), x

= (x
j
1
+k
1
1
, x
j
2
+k
2
2
, . . . , x
j
n
+k
n
n
),
where k
i
= 0, 1, i = 1, 2, . . . , n, and j
i
= 1, 2, . . . , N
i
1;
then
|g(x) f(x)|
1
2
n

i=1
h
j
i
i
_

x
i
_

j
i
i
_

+
j
i
i,1
_
h
j
i
i
= x
j
i
+1
i
x
j
i
i
,
j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (7)
Corollary 1: For any approximation error > 0, |g(x)
f(x)| holds if
h
j
i
i
=
_
_
_
g(x)
x
i
_
_
_

k=1
_
_
_
g(x)
x
k
_
_
_

2
_

x
i
_

j
i
i
_

+
j
i
i,1
_. (8)
The corollary follows by substituting (8) into (7).
Remark 1: If we consider the error bound of [6, Th. 2] for a
rst order approximator, we obtain
h
max
=
2
n

k=1
_
_
_
g(x)
x
k
_
_
_

(9)
where h
max
is the maximum interval width. Using Lemma 2,
(8), and (9), it follows that h
j
i
i
h
max
. Hence, the bound of
(7) uses fewer membership functions than those of [6] for the
same guaranteed error bound.
Theorem 2: Assume the following x U: 1) g(x) is
C
1
; 2) f(x) is a fuzzy approximation of g(x) compris-
ing the four principal components of Section II, with
m
i
= 0 for all i = 1, 2, . . . , n; and 3) g(x

) = f(x

),
x

= (x
j
1
+k
1
1
, x
j
2
+k
2
2
, . . . , x
j
n
+k
n
n
), where k
i
= 0, 1, i =
1, 2, . . . , n, and j
i
= 1, 2, . . . , N
i
1; then
|g(x) f(x)|
1
8
n

i=1
h
j
i
i
2
_

x
i
_

j
i
i
_

+
j
i
i,2
_
h
j
i
i
= x
j
i
+1
i
x
j
i
i
,
j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (10)
Corollary 2: For any approximation error > 0, |g(x)
f(x)| holds if
h
j
i
i
=

_
_
_
_

2
g(x)
x
2
i
_
_
_

k=1
_
_
_

2
g(x)
x
2
k
_
_
_

8
_

j
i
i
_

+
j
i
i,2
_. (11)
The corollary follows by substituting (11) into (10).
Remark 2: If we consider the error bound of [6, Th. 2] for a
second order approximator, we obtain
h
max
=

_
8
n

i=1
_
_
_

2
g(x)
x
2
i
_
_
_

. (12)
Using Lemma 2, (11), and (12), it follows that h
j
i
i
h
max
.
Hence, the bound of (10) uses fewer membership functions than
those of [6] for the same guaranteed error bound.
Theorem 3: Assume the following x U: 1) g(x) is
continuous, and (g
m
i
+1
(x)/x
m
i
+1
) exists for all i =
1, 2, . . . , n; 2) f(x) is a fuzzy approximation of g(x)
comprising the four principal components of Section II;
3) g(x

) = f(x

), x

= (x
j
1
1,k
1
, x
j
2
2,k
2
, . . . , x
j
n
n,k
n
), where k
i
=
0, 1, . . . , m
i
, i = 1, 2, . . . , n, j
i
= 1, 2, . . . , N
i
1, and x
j
i
i
=
x
j
i
i,1
< < x
j
i
i,m
i
+1
= x
j
i
+1
i
; then
|g(x)f(x)|
n

i=1
h
j
i
i
m
i
+1
2
m
i
+1
(m
i
+1)!
_

g
(m
i
+1)
x
i
_

j
i
i
_

+
j
i
i,m
i
+1
_
h
j
i
i
= x
j
i
+1
i
x
j
i
i
,
j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (13)
To use the results of this section in modeling, we select an
error bound and then determine the intervals h
j
i
i
in (7), (10),
and (13) that guarantee its satisfaction. This is accomplished by
progressively increasing the variable x
i
and by evaluating the
maximum error at each step until the error bound is exceeded.
The interval h
j
i
i
is the interval covered before exceeding the
error bound. The process is repeated over the range of x
i
to
form the set of membership functions. We demonstrate this
process in the examples of Section V.
To obtain an upper bound on the number of membership
functions required for a given approximation accuracy
i
, we
consider the case of a quadratic function. The derivative of
the quadratic is linear and therefore monotone. If the deriva-
tive lies in the range [g

i,min
, g

i,max
], then for a desired error
bound
i
, the number of required membership functions is
N
i
= (g

i,min
g

i,max
)/
i
. For a general function of x
i
, a
worst-case estimate of the number of required membership
function is obtained by breaking the function up into a set
of segments with monotone derivatives to obtain the bound
N
i
=

n
si
j=1
(g

ij,min
g

ij,max
)/
i
, where n
si
is the number of
monotone segments. The total number of membership func-
tions required for n variables is the product

n
i=1
N
i
. As
seen in the examples, the number of membership functions re-
quired in practice compares favorably with other approximation
approaches.
SONBOL et al.: TSK FUZZY FUNCTION APPROXIMATORS: DESIGN AND ACCURACY ANALYSIS 705
IV. APPROXIMATION OF UNKNOWN FUNCTIONS
In this section, we propose an approach to approximate an
unknown function with measurable inputs and outputs. Such
systems are common in engineering applications and cannot be
analyzed using conventional control methodologies. We show
how the inputoutput data and the previously introduced error
bounds can be used to approximate an unknown function that
satises the assumptions of Theorems 13.
If the unknown function is obtained using data with bounded
error, then we use a polynomial approximation of the data with
a known error bound. The polynomial approximation can be
differentiated to obtain the derivatives needed for Theorems
13. The error bounds for this case are given by the following
theorem.
Theorem 4: Given a set of inputoutput data representing an
unknown function g
a
(x) approximated by a polynomial g(x) of
order n
i
in the variable x
i
with bounded error of magnitude
a
,
assume the following x U: 1) f(x) is a fuzzy approximation
of g(x) comprising the four principal components of Section II,
and 2) g(x

) = f(x

), x

= (x
j
1
1,k
1
, x
j
2
2,k
2
, . . . , x
j
n
n,k
n
), where
k
i
= 0, 1, . . . , m
i
, i = 1, 2, . . . , n, j
i
= 1, 2, . . . , N
i
1, and
x
j
i
i
= x
j
i
i,1
< < x
j
i
i,m
i
+1
= x
j
i
+1
i
; then
|g
a
(x)f(x)|
a
+
n

i=1
h
j
i
i
m
i
+1
2
m
i
+1
(m
i
+ 1)!

g
(m
i
+1)
x
i
_

j
i
i
_

+
j
i
i,m
i
+1
_
h
j
i
i
=x
j
i
+1
i
x
j
i
i
,
j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
(14)
g
(m
i
+1)
x
i
_

j
i
i
_
=
n
i

i=m
i
+1
j!
(j m
i
1)
a
j
(x
i
)x
jm
i
1
i
(15)
where x
i
denotes vector with the exclusion of x
i
.
In summary, we design a fuzzy approximator for an unknown
function using the following steps.
1) Specify each controllers input and output variables.
2) Obtain the inputoutput data pairs of a successful trajec-
tory and a polynomial approximation of the data.
3) Obtain the partial derivatives of the polynomial approxi-
mation with respect to all input variables.
4) Use one of the theorems of Section III to design the
membership functions of the inputs.
5) Construct the rule base from the polynomial approxima-
tion of step 2 and the membership functions of step 4.
Next, we demonstrate the different error bounds in Theorems
14 and compare them with other error bounds from the litera-
ture through numerical examples.
V. NUMERICAL EXAMPLES
Example 1 [6]: We consider the fuzzy approximation of the
sinc function based on noise-free data and then based on
noisy data.
A) Approximation using noise-free data: We use the
methods discussed in Section III to design a fuzzy system
TABLE II
APPROXIMATION RESULTS FOR EXAMPLE 1(A) USING THE ERROR
BOUND OF (7)
TABLE III
APPROXIMATION RESULTS FOR EXAMPLE 1(A) USING THE ERROR
BOUND OF (10)
TABLE IV
APPROXIMATION RESULTS FOR EXAMPLE 1(A) USING THE ERROR
BOUND OF (13)
to uniformly approximate the continuous function g(x) =
sin(x)/x dened on U = [3, 3] with a required accuracy =
0.2.
First, we use the error bound of (7) and obtain the results
listed in Table II. These results show that seven fuzzy rules are
needed to achieve the desired error bound. These results can be
used to verify that |g(x) f(x)| for x [3, 3].
Next, we use the error bound of (10) and obtain the results
listed in Table III. These results show that four fuzzy rules are
needed to achieve the desired error bound. Although in this
example fewer fuzzy sets are required when using the bound
of (10) than the bound of (7), this is not true in general.
Finally, because the function is C
2
, we can use the error
bound of (13) and obtain the results listed in Table IV. These
results suggest that three fuzzy rules are needed to achieve the
desired error bound of 0.2 when m
1
= 2.
Table V summarizes our results and compares them with the
results of [6] and [5]. It is clear from Table V that our results
are implementable with fewer fuzzy rules.
B) Approximation using noisy data: We use noisy data
generated using the sinc function to examine the effect of
noise on our function approximation. To generate noisy data,
we add zero-mean Gaussian noise to the sinc signal g(x) =
sin(x)/x dened on U = [10, 10]. Then, we use Theorem4 to
706 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO. 3, JUNE 2012
TABLE V
FUZZY RULES NEEDED TO ACHIEVE THE DESIRED ERROR BOUND USING
(7), (10), (13), [6], AND [5]
Fig. 1. Approximation results for example 1(B) with = 0.01 and SNR
of 15.
TABLE VI
RMS ERROR FOR EXAMPLE 1(B) USING THEOREM 4
TABLE VII
NUMBER OF MEMBERSHIP FUNCTIONS FOR EXAMPLE 1(B) USING
THEOREM 4
approximate the signal. The approximation results for = 0.01
and a signal-to-noise ratio (SNR) of 15 are shown in Fig. 1.
Table VI shows the root-mean-square error (rms error), and
Table VI shows the number of fuzzy membership functions for
several SNRs and approximation error bounds. Note that the
error bound in Tables VI and VII is the fuzzy error bound and
does not include the polynomial approximation error (
a
).
The results of Tables VI and VII show the compromise
between approximation accuracy and model complexity, and
its dependence on data quality. If the level of noise in the signal
increases, the approximation error bound used must be reduced,
TABLE VIII
APPROXIMATION RESULTS FOR EXAMPLE 2 USING THE
ERROR BOUND OF (10)
TABLE IX
NUMBER OF FUZZY SETS NEEDED TO ACHIEVE THE DESIRED
ERROR BOUND USING (10), (13), [5], AND [7]
but this increases the number of required fuzzy membership
functions, as listed in Table VII.
Example 2 [7]: What are the upper bounds on the number
of fuzzy sets assigned to each input variable for linear T-S
fuzzy systems to uniformly approximate a function g(x
1
, x
2
) =
e
x
1
+x
2
with approximation error less than 0.2 and 0.1, where
x
1
, x
2
[0.5, 0.5]?
We observe that g/x
1
= g/x
2
=
2
g/x
2
1
=
2
g/x
2
2
and g

x
1
(x
1
) = max
x
2
[0.5,0.5]
(
2
g/x
2
1
) = e
x
1
+0.5
. In this
case, the error bound of (10) is better than that of (7). Also, the
partial derivatives w.r.t. x
1
and x
2
are identical, which implies
that their membership functions are identical. The results of the
fuzzy approximation are listed in Table VIII. These results can
be used to verify that |g(x
1
, x
2
) f(x
1
, x
2
)| for = 0.1
and = 0.2, and x
1
, x
2
[0.5, 0.5].
Table VIII shows that ve fuzzy sets are needed to
achieve an error bound of 0.1 and four to achieve an er-
ror bound of 0.2. These results can be used to verify that
|g(x
1
, x
2
) f(x
1
, x
2
)| for = 0.1 and = 0.2, and x
1
,
x
2
[0.5, 0.5].
Finally, because the function is innitely differentiable, we
use the error bound of (13), and the results show that two fuzzy
rules are needed to achieve the desired error bound of 0.1 when
m = 3 or 4. Table IX summarizes our results and compares
them with the results of [5] and [7].
Example 3 [12]: We approximate a human driver in the truck
backer-upper system using a fuzzy model. The simulated truck
is shown in Fig. 2. The truck position is determined by three
SONBOL et al.: TSK FUZZY FUNCTION APPROXIMATORS: DESIGN AND ACCURACY ANALYSIS 707
Fig. 2. Simulated truck.
state variables , x, and y, where is the angle of the truck
with respect to the horizontal line, as shown in Fig. 2.
The coordinate pair (x, y) species the position of the rear
center of the truck in the plane. Control to the truck is the
steering angle that backs up the truck to the loading dock
fromany initial position and fromany angle in the loading zone.
Only backing up is permitted. The truck moves backward by a
xed unit distance every stage. The goal is to make the truck
arrive at the loading dock at a right angle ( = 90

) and to
align the position (x, y) of the truck with the desired loading
dock (x
f
, y
f
). The loading zone corresponds to the plane [0,
100] [0, 200], and we set (x
f
, y
f
) equal to (50, 200). For
simplicity, we assume enough clearance between the truck and
the loading dock such that y does not have to be considered
as a state variable. In order to simulate the truck backer-upper
procedure, we used the simple kinematics equations [12]
x(t + 1) =x(t) + cos [(t) + (t)] + sin [(t)] sin [(t)]
y(t + 1) =y(t) + sin [(t) + (t)] sin [(t)] cos [(t)]
(t + 1) =(t) sin
1
_
2 sin ((t))
b
_
(16)
where b is the length of the truck.
To design the fuzzy truck backer-upper, we follow the steps
in Section IV as follows.
1) The input variables are the truck angle and the x-
position coordinate x. The output variable is the steering-
angle . Positive values of represent clockwise rotations
of the steering wheel, and negative values represent coun-
terclockwise rotations.
2) According to the assumptions of Theorems 13, the
function to be approximated must be at least continu-
ous. Obtain the inputoutput data pairs of a successful
trajectory, and obtain a polynomial approximation of the
data. Differentiate the polynomial to obtain the partial
derivatives /x and /.
3) Apply Theorem 1 to design the membership functions of
the inputs.
4) Construct the rule base look-up table by asking the expert
human driver to move the steering wheel in specied
situations and by measuring the corresponding steering
angle . Then, replace each pair of triangular membership
functions with identical rows or columns by a single
trapezoidal membership function.
Depending on the data available, we can either use an in-
terpolation technique or a curve tting technique to obtain a
Fig. 3. x and curve t using cubic Bezier.
Fig. 4. x and curve t using least squares.
suitable function to represent the data. In the case of negligible
noise and a limited number of data points, we use cubic Bezier
curves, as shown in Fig. 3. In case of noisy data, we need
redundant data points and use the least squares polynomial to
t the data, as shown in Fig. 4. In both cases, we then generate
derivatives from the polynomial approximation and design the
membership functions using Theorem 1.
Because of the symmetry of the problem, we can design
symmetric membership functions for x around 50 and for
around 90

. The membership functions for x and using


cubic Bezier t are shown in Figs. 5 and 6, respectively. The
membership functions for x and using least squares t are
shown in Figs. 7 and 8, respectively.
Fig. 9 shows several sample trajectories for the human driver.
The trajectories with similar initial truck positions obtained
using our approach are shown in Fig. 10 for a cubic Bezier
polynomial t and in Fig. 11 for least squares curve tting.
We observe that our modeling approach allows us to obtain a
good fuzzy model both in the case of noisy data and in the
case of accurate measurements with only a few data points.
The simulated response of the fuzzy system for different initial
conditions successfully backs up the truck into the loading dock
following a trajectory resembling but slightly different from
that of the human driver. Increasing the number of membership
functions used in the TSK approximation reduces the tracking
error but complicates the implementation of the fuzzy controller
considerably. The number of membership functions used must
708 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO. 3, JUNE 2012
Fig. 5. Designing the membership functions of x using cubic Bezier t.
Fig. 6. Designing the membership functions of using cubic Bezier t.
Fig. 7. Designing the membership functions of x using least squares t.
Fig. 8. Designing the membership functions of using least squares t.
Fig. 9. Sample truck trajectory for the human driver.
Fig. 10. Sample truck trajectory for the fuzzy controller designed using cubic
Bezier t.
Fig. 11. Sample truck trajectory for the fuzzy controller designed using least
squares t.
be a compromise between tracking accuracy and ease of im-
plementation. In this problem, we only needed one trajectory
to design the fuzzy system, but if the performance of the fuzzy
system is not satisfactory, we can add more trajectories.
To assess the performance of the proposed controller, we
compare it to the controllers of [13] and [14]. The rst con-
troller was designed using genetic algorithms (GA) [13]. They
used a GA to design the input membership functions and the
rule base keeping the output membership functions constant,
which limits the scope of search in a certain set of controllers.
In some cases, difculties may arise during the application of
SONBOL et al.: TSK FUZZY FUNCTION APPROXIMATORS: DESIGN AND ACCURACY ANALYSIS 709
Fig. 12. Approximation results for example 4 with = 0.5.
GA, such as choosing the suitable tness function, string length,
number of alleles per generation, number of generations, and
excessive computational time.
In [14], the authors designed a controller using inputoutput
pairs and a neural network. They rst used a method that
depended mainly on choosing the number of membership sets
for the inputs and the output. Then, they used the inputoutput
pairs that represent some successful trajectories to generate
the fuzzy rules. This requires a large number of successful
trajectories to construct a continuous fuzzy rule base. Next, they
used a neural network to improve the performance of the fuzzy
controller.
The methods proposed in [13] and [14] do not present any
error bounds on the tracking error. By contrast, our approach
designs the entire controller (input and output membership
functions including their numbers and set widths together with
the fuzzy rule base) using a few exemplary trajectories while
satisfying specied error bounds. Our approach avoids difcul-
ties that can arise during the application of GA. It also does not
require the large number of exemplars and does not have the
possible convergence problems associated with neural network
approaches.
Example 4: We approximate a known function of two
variables with a fuzzy TSK system. The mathematical
description of the function is g(x
1
, x
2
) = cos(x
2
2
x
1
)
0.5e
10(x
2
1
+x
2
2
+0.1x
1
)
To use Theorem 1 for this function, we obtain the partial
derivative of one variable at a time and apply our results to
each. The partial derivative with respect to a particular variable
is, in general, a function of all other variables. The data points
provide a grid at which the partial derivatives are evaluated.
For example, for x
1
, we need the partial derivative g/x
1
which depends on both x
1
and x
2
. For each value of x
2
on
the data grid, a fuzzy approximation is obtained. Hence, more
membership functions and a more complex model are required
for multivariable functions.
The approximation results with an error bound = 0.5 are
shown in Fig. 12. The length of the line connecting the fuzzy
approximation value to the surface indicates the size of the
approximation error. To improve the approximation results, we
reduced the error bound to the value of = 0.1 and obtained
the results of Fig. 13. The results show a much better approx-
imation, but the improvement in the approximation accuracy
Fig. 13. Approximation results for example 4 with = 0.1.
is obtained by increasing the number of fuzzy membership
functions. While the approximation with = 0.5 requires four
membership functions for x
1
and ve membership functions for
x
2
(20 fuzzy rules), the approximation with = 0.1 requires ten
membership functions for x
1
and 11 membership functions for
x
2
(110 fuzzy rules).
VI. CONCLUSION
This paper has provided a simple approach to determine a
fuzzy TSK approximation for any continuous and differentiable
function g(x) with a reduced number of fuzzy sets and with a
guaranteed bound on the approximation error. It has also shown
how the results for known functions can be used to provide a
fuzzy TSK representation for inputoutput data from a complex
physical system. The new approach proposed in this paper
provides a simple and powerful design tool for fuzzy systems. It
requires fewer fuzzy sets and is more easily implementable than
the methods of [5][7] for the same guaranteed error bound.
The key to reducing the number of membership functions
required in our approximation is that our method uses a variable
membership function width h
j
i
i
depending on the upper bound
of the approximation error , rather than a single xed width for
all inputs as in [5][7].
This paper has provided three approximation error bounds:
an approximation error upper bound that depends on the rst
derivatives of the function, an approximation error upper bound
that depends on the second derivatives of the function, and
an approximation error upper bound that depends on the kth
derivatives of the function. This bound is tighter than the other
bounds if the kth derivative is available but requires more
complex computations. We have provided numerical examples
to demonstrate our results both for known functions and for
inputoutput data. To demonstrate our TSK approximation of
the behavior of a complex dynamic system, we have applied
our method to the benchmark truck backer-upper problem.
We have achieved acceptable tracking accuracy with min-
imal requirements for the measured inputoutput data. Fu-
ture work will extend our modeling results to type-2 TSK
fuzzy systems and to type-1 systems with general membership
functions.
710 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO. 3, JUNE 2012
APPENDIX
In this Appendix, we will prove all the lemmas and theorems
of this paper.
Proof of Lemma 1: From the Weierstrass approximation
theorem [15], over any interval [x
j
i
i
, x
j
i
+1
i
], we can nd a
constant
j
i
i
s.t.

g
(l)
x
i
(x
i
) g
(l)
x
i
_

j
i
i
_


j
i
i,l
i = 1, 2, . . . , n, j
i
= 1, 2, . . . , N
i
1,

j
i
i

_
x
j
i
i
, x
j
i
+1
i
_
. (17)
Another well-known result [16] is that if

j
i
i,l
= min
x
j
i
i

j
i
i
x
j
i
+1
i
max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
) g
(l)
x
i
_

j
i
i
_

(18)
then the minmax value for g
x
i
(
j
i
i
) is
g
(l)
x
i
_

j
i
i
_
=
1
2
[g + g]
g = max
x
j
i
i
x
i
x
j
i
+1
i
g
(l)
x
i
(x
i
)
g = min
x
j
i
i
x
i
x
j
i
+1
i
g
(l)
x
i
(x
i
) (19)

j
i
i,l
=
1
2
[g g]. (20)
It is clear that

g
(l)
x
i
_

j
i
i
_

+
j
i
i,l
=
1
2
_

g + g

+ g g

. (21)
1) If g > g 0, then

g
x
i
_

j
i
i
_

+
j
i
i
=
1
2
[g + g + g g]
=g = max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
)

. (22)
2) If g < g 0, then

g
x
i
_

j
i
i
_

+
j
i
i
=
1
2
[g + g g + g]
= g = max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
)

. (23)
3) We consider the case where g < 0 g; then

g
x
i
_

j
i
i
_

+
j
i
i
=
1
2
_

g |g|

+g+|g|

=
_
g, g > |g|
|g|, g < |g|
= max
x
j
i
i
x
i
x
j
i
+1
i

g
(l)
x
i
(x
i
)

.
(24)
Proof of Lemma 2: From (8)
g(x)

= max
xU
|g(x)| = max
x
j
[a
j
,b
j
]
|g(x)|
j = 1, 2, . . . , n (25)
can be rewritten as
g(x)

= max
x
i
[a
i
,b
i
]

max
x
j
[a
j
,b
j
].
j=1,2,...,n
j=i
|g(x)|

. (26)
Substituting (2) into (26), we obtain
g(x)

= max
x
i
[a
i
,b
i
]
|g
x
i
(x
i
)| max
x
j
i
i
x
i
x
j
i
+1
i
|g
x
i
(x
i
)| . (27)
Then, using Lemma 1, the result follows.
Proof of Theorem 1: For consistent fuzzy sets, f(x) can
be expressed as
f(x) =
1

k
1
=0
1

k
2
=0

1

k
n
=0
g(x

)
n

i=1

A
j
i
+k
i
i
(x
i
)
=
n

i=1
1

k
i
=0
_
g(x

)
A
j
i
+k
i
i
(x
i
)
_
n

m=1
m=i

A
j
m
+k
m
m
(x
m
)
(28)
where x

= (x
j
1
+k
1
1
, x
j
2
+k
2
2
, . . . , x
j
n
+k
n
n
), j
i
= 1, 2, . . . ,
N
i
1. Hence
|g(x) f(x)|
n

i=1
1

k
i
=0
_
|g(x) g(x

)|
A
j
i
+k
i
i
(x
i
)
_

m=1
m=i

A
j
m
+k
m
m
(x
m
). (29)
For normal fuzzy sets
|g(x) f(x)|
n

i=1
1

k
i
=0
|g(x) g(x

)|
A
j
i
+k
i
i
(x
i
). (30)
Using the mean-value theorem
|g(x)f(x)|
n

i=1
1

k
i
=0

g(x)
x
i

x=

x
i
x
j
i
+k
i
i


A
j
i
+k
i
i
(x
i
).
(31)
For trapezoidal membership functions
|g(x) f(x)|
n

i=1
max
x
j
i
i
x
i
<x
j
i
+1
i
_

x
i
(x
i
)

2
_
x
j
i
+1
i
x
i
__
x
i
x
j
i
i
_
h
j
i
i
. (32)
Using Lemma 1 with l = 1 and substituting the identity
max
x
j
i
i
x
i
<x
j
i
+1
i
_

x
i
x
j
i
i

x
i
x
j
i
+1
i

_
=
h
j
i
i
2
4
(33)
into (30) completes the proof.
SONBOL et al.: TSK FUZZY FUNCTION APPROXIMATORS: DESIGN AND ACCURACY ANALYSIS 711
Proof of Theorem 2: Since g(x

) = f(x

), then the
function g(x

) f(x

) vanishes at x

= (x
j
1
+k
1
1
, x
j
2
+k
2
2
,
. . . , x
j
n
+k
n
n
). Let x = x

be xed and w.l.o.g. express the


approximation error as
g(x) f(x) =
__
x
i
x
j
i
i
__
x
i
x
j
i
+1
i
__
T
i
p(x). (34)
Consider the following function of t, where t = (t
1
,
t
2
, . . . , t
n
):
W(t) = g(t) f(t)
__
t
i
x
j
i
i
__
t
i
x
j
i
+1
i
__
T
i
p(x).
(35)
The function W(t) vanishes at points t = (x
j
1
+k
1
1
,
x
j
2
+k
2
2
, . . . , x
j
n
+k
n
n
), where k
i
= 0, 1, and at the additional
point t = x. Therefore, by the generalized Rolles Theorem
[16], the function (
2
W(t)/t
2
i
) must vanish at points
including = (
1
,
2
, . . . ,
n
). The vector of second derivatives
of W(t) is given by

2
W(t)
t
2
1
.
.
.

2
W(t)
t
2
n

2
g(t)
t
2
1
.
.
.

2
g(t)
t
2
n

2p(x). (36)
Hence, at any xed point x
p(x) =
1
2
_

2
g()
x
2
1


2
g()
x
2
n
_
T
. (37)
Substituting (35) into (32), we obtain
g(x) f(x) =
1
2
n

i=1
_
x
i
x
j
i
i
__
x
i
x
j
i
+1
i
_

2
g()
x
2
i
.
(38)
Using Lemma 1, we obtain
|g(x)f(x)|
1
2
n

i=1

x
i
x
j
i
i

x
i
x
j
i
+1
i

j
i
i
_

+
j
i
i,2
_
.
(39)
Substituting (33) into (39) completes the proof.
Proof of Theorem 3: Since g(x

) = f(x

), then the func-


tion g(x) f(x) vanishes at x

. Let x = x

be xed, and
dene
g(x) f(x) =
_
m
i
+1

l=1
_
x
i
x
j
i
i,l
_
_
T
i
p(x)
x
j
i
i
= x
j
i
i,1
< < x
j
i
i,m
i
+1
= x
j
i
+1
i
. (40)
Consider the following function of t, where t = (t
1
,
t
2
, . . . , t
n
):
W(t) = g(t) f(t)
_
m
i
+1

l=1
_
t
i
x
j
i
i,l
_
_
T
i
p(x). (41)
The function W(t) vanishes at points t = (x
j
1
1,k
1
,
x
j
2
2,k
2
, . . . , x
j
n
n,k
n
), where k
i
= 0, 1, . . . , m
i
, and at the
additional point t = x. By the generalized Rolles Theorem
[16], the function (
(m
i
+1)
W(t)/t
(m
i
+1)
i
) must vanish at
points including = (
1
,
2
, . . . ,
n
). The vector of (m
i
+ 1)th
derivatives of W(t) is given by

(m
1
+1)
W(t)
t
(m
1
+1)
1
.
.
.

(m
n
+1)
W(t)
t
(m
n
+1)
n

(m
n
+1)
g(t)
t
(m
n
+1)
1
.
.
.

(m
n
+1)
g(t)
t
(m
n
+1)
n

diag {(m
i
+ 1)!} p(x)
i = 1, 2, . . . , n. (42)
Hence
p(x) = diag
_
1
(m
i
+ 1)!
_

(m
i
+1)
g()
x
(m
i
+1)
1
.
.
.

(m
i
+1)
g()
x
(m
i
+1)
n

. (43)
Substituting (43) into (41) and using Lemma 1, we obtain
|g(x) f(x)|
n

i=1
1
(m
i
+ 1)!
_
m
i
+1

l=1
_
x
i
x
j
i
i,l
_
_

g
(m
i
+1)
x
i
_

j
i
i
_

+
j
i
i,m
i
+1
_
. (44)
To calculate the maximum value of

m
i
+1
l=1
(x
i
x
j
i
i,l
), we
need to introduce Jensens inequality [17].
Let x
1
, x
2
, . . . , x
n
[a, b] over which the function f(x) is
convex. Then
1
n
n

i=1
f(x
i
) f
_
1
n
n

i=1
x
i
_
. (45)
We know that
log
_
m
i
+1

l=1
_
x
i
x
j
i
i,l
_
_
=
m
i
+1

l=1
log
_
x
i
x
j
i
i,l
_
(46)
where f(x) = log x is a convex function. Apply Jensens
inequality to (44)
1
(m
i
+ 1)
m
i
+1

l=1
log

x
i
x
j
i
i,l

log

m
i
+1

l=1

x
i
x
j
i
i,l

(m
i
+ 1)

.
(47)
Multiplying both sides of (47) by 1, we exponentiate to
obtain
(m
i
+1)

_
m+1

l=1

x
i
x
j
i
i,l


m
i
+1

l=1

x
i
x
j
i
i,l

(m
i
+ 1)
. (48)
712 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART B: CYBERNETICS, VOL. 42, NO. 3, JUNE 2012
Since the RHS of (48) is linear in x
i
, it assumes its extreme
values on the boundary. Hence, we have
(m
i
+1)

_
m
i
+1

l=1

x
i
x
j
i
i,l

max

m
i
h
j
i
i

m
i

l=2

x
j
i
i,1
x
j
i
i,l

(m
i
+ 1)
,
h
j
i
i
+
m
i

l=2

x
j
i
i,1
x
j
i
i,l

(m
i
+ 1)

.
(49)
The upper limit in (49) is minimized if the two terms in the
RHS are equal. The minimum upper bound is therefore
m
i
+1

l=1

x
i
x
j
i
i,l


_
h
j
i
i
2
_
(m
i
+1)
. (50)
Substituting the inequality in (50) into (44) completes the
proof.
Proof of Theorem 4: The theorem follows from
Theorem 3 and the inequality
|g
a
(x) f(x)| = |g
a
(x) g(x) + g(x) f(x)|
|g
a
(x) g(x)| + |g(x) f(x)| . (51)
REFERENCES
[1] A. Sonbol and M. S. Fadali, A new approach for designing TSK fuzzy
systems from inputoutput data, in Proc. Amer. Control Conf., Anchor-
age, AK, May 2002, vol. 2, pp. 989994.
[2] R. Rovatti, Fuzzy piecewise multilinear and piecewise linear systems
as universal approximators in Sobolev norms, IEEE Trans. Fuzzy Syst.,
vol. 6, no. 2, pp. 235249, May 1998.
[3] X. J. Zeng and M. G. Singh, Approximation theory of fuzzy
systemsSISO case, IEEE Trans. Fuzzy Syst., vol. 2, no. 2, pp. 162
176, May 1994.
[4] X. J. Zeng and M. G. Singh, Approximation theory of fuzzy
systemsMIMO case, IEEE Trans. Fuzzy Syst., vol. 3, no. 2, pp. 219
235, May 1995.
[5] H. Ying, Sufcient conditions on general fuzzy systems as function
approximators, Automatica, vol. 30, no. 3, pp. 521525, Mar. 1994.
[6] X. J. Zeng and M. G. Singh, Approximation accuracy analysis of fuzzy
systems as function approximators, IEEE Trans. Fuzzy Syst., vol. 4, no. 1,
pp. 4463, Feb. 1996.
[7] K. Zeng, N. Y. Zhang, and W. L. Xu, A comparative study on sufcient
conditions for TakagiSugeno fuzzy systems as universal approximators,
IEEE Trans. Fuzzy Syst., vol. 8, no. 6, pp. 773780, Dec. 2000.
[8] C. C. Chuang, J. T. Jeng, and C. W. Tao, Hybrid robust approach for TSK
fuzzy modeling with outliers, Expert Syst. Appl., vol. 36, no. 5, pp. 8925
8931, Jul. 2009.
[9] P. P. Angleov and D. P. Filev, An approach to online identi-
cation of TakagiSugeno fuzzy models, IEEE Trans. Syst., Man,
Cybern. B, Cybern., vol. 34, no. 1, pp. 484498, Feb. 2004.
[10] C. C. Chuang, S. F. Su, and S. S. Chen, Robust TSK fuzzy modeling for
function approximation with outliers, IEEE Trans. Fuzzy Syst., vol. 9,
no. 6, pp. 810821, Dec. 2001.
[11] L. X. Wang, A Course in Fuzzy Systems and Control. Upper Saddle
River, NJ: Prentice-Hall, 1997.
[12] B. Kosko, Neural Networks and Fuzzy Systems: A Dynamic Systems
Approach to Machine Intelligence. Englewood Cliffs, NJ: Prentice-Hall,
1992.
[13] A. Homaifar and E. McCormick, Simultaneous design of membership
functions and rule sets for fuzzy controllers using genetic algorithms,
IEEE Trans. Fuzzy Syst., vol. 3, no. 2, pp. 129139, May 1995.
[14] L. X. Wang and J. M. Mendel, Generating fuzzy rules by learning from
examples, IEEE Trans. Syst., Man, Cybern., vol. 22, no. 6, pp. 1414
1427, Nov./Dec. 1992.
[15] J. R. Rice, The Approximation of Functions. Reading, MA: Addison-
Wesley, 1964.
[16] P. J. Davis, Interpolation and Approximation. New York: Blaisdell,
1963.
[17] D. S. Mitrinovi, Analytic Inequalities. NewYork: Springer-Verlag, 1970.
Assem H. Sonbol received the B.S. degree in electri-
cal engineering and the M.S. degree from Mansoura
University, Mansoura, Egypt, in 1994 and 1999, re-
spectively, and the Ph.D. degree from the University
of Nevada, Reno, in 2004.
In 2005, he joined the Electrical Engineering De-
partment, Power Generation Engineering and Ser-
vices Company, Cairo, Egypt, where he is currently
an Engineer Group Supervisor. His research interests
are in the areas of robust control, robust stability,
fuzzy approximation, fuzzy stability, and fuzzy logic
control.
M. Sami Fadali (SM91) received the B.S. degree in
electrical engineering from Cairo University, Giza,
Egypt, in 1974, the M.S. degree from the Control
Systems Center, University of Manchester Institute
of Science and Technology, Manchester, U.K., in
1977, and the Ph.D. degree from the University of
Wyoming, Laramie, in 1980.
He was an Assistant Professor of electrical en-
gineering with the University of King Abdul Aziz,
Jeddah, Saudi Arabia, in 19811983. From 1983
to 1985, he was a Postdoctoral Fellow at Colorado
State University, Fort Collins. In 1985, he joined the Electrical Engineering
Department, University of Nevada, Reno, where he is currently a Professor
of electrical engineering. In 1994, he was a Visiting Professor at Oakland
University, Rochester, MI, and GM Research and Development Labs. He spent
the summer of 2000 as a Senior Engineer at TRW, San Bernardino, CA. His
research interests are in the areas of fuzzy logic stability and control, state
estimation, and fault detection.
Saeed Jafarzadeh (M09) received the B.S. de-
gree in electrical engineering from the University of
Tehran, Tehran, Iran, in 2005 and the M.S. degree
in electrical engineering from the Iran University
of Science and Technology, Tehran, in 2008 under
Dr. M. R. Jaheds supervision. He is currently work-
ing toward the Ph.D. degree in the Electrical and
Biomedical Engineering Department, University of
Nevada, Reno.
His research interests are in fuzzy control and
stability analysis, nonlinear control, and their appli-
cation to induction motor control and renewable energy systems.

Vous aimerez peut-être aussi