Professional Documents
Culture Documents
www.elsevier.com/locate/isatrans
Fuzzy rule base design using tabu search algorithm for nonlinear
system modeling
Aytekin Bagis ∗
Department of Electrical Electronic Engineering, Erciyes University, 38039 Kayseri, Turkey
Received 15 February 2007; received in revised form 29 August 2007; accepted 4 September 2007
Available online 22 October 2007
Abstract
This paper presents an approach to fuzzy rule base design using tabu search algorithm (TSA) for nonlinear system modeling. TSA is used to
evolve the structure and the parameter of fuzzy rule base. The use of the TSA, in conjunction with a systematic neighbourhood structure for the
determination of fuzzy rule base parameters, leads to a significant improvement in the performance of the model. To demonstrate the effectiveness
of the presented method, several numerical examples given in the literature are examined. The results obtained by means of the identified fuzzy
rule bases are compared with those belonging to other modeling approaches in the literature. The simulation results indicate that the method based
on the use of a TSA performs an important and very effective modeling procedure in fuzzy rule base design in the modeling of the nonlinear or
complex systems.
c 2007, ISA. Published by Elsevier Ltd. All rights reserved.
Keywords: Fuzzy systems; Fuzzy modeling; Fuzzy rule base design; Nonlinear system modeling; Tabu search
There are many studies on fuzzy modeling in the literature. model [17]. An evolutionary design method of fuzzy rule base
Takagi and Sugeno proposed a new type of fuzzy model for nonlinear system modeling and control was presented by
called “Takagi–Sugeno fuzzy model (T–S fuzzy model)” [5]. Kang et al. [22]. Cordon et al. presented an overview of the
Furthermore, this study proposes a procedure to identify the representative methods in genetic fuzzy systems proposed in
T–S fuzzy model from input–output data of systems. Sugeno the literature [21].
and Yasukawa discussed a general approach to qualitative This paper presents an approach to fuzzy rule base design
modeling based on fuzzy logic [6]. It proposes the use of a using a tabu search algorithm (TSA) for nonlinear system
fuzzy clustering method to identify the structure of a fuzzy modeling. TSA is used to evolve the structure and the
model. Wang and Lee proposed a method based on the parameters of fuzzy rule base. To check the effectiveness of the
back-propagation algorithm to determine significant variables presented approach, several numerical examples given in the
without the need of human inspection [7]. A novel fuzzy literature are examined. The results obtained by means of the
modeling algorithm was presented by Kim et al. [8]. In the identified fuzzy rule bases are compared with those belonging
study, fuzzy C regression model clustering algorithm and a to other modeling approaches in the literature. The remainder
gradient descent algorithm are used. Dynamic versions of of the paper is organized as follows. In Section 2, a brief review
fuzzy logic systems and their nonsingleton generalizations of the TSA is introduced. Structure of the identified fuzzy rule
were investigated by Mouzouris and Mendel [9]. They used base and design method is developed in Section 3. Simulation
a dynamic learning algorithm to train the system parameters. results and some conclusions are given in Sections 4 and 5,
Wang and Langari presented a fuzzy logic approach to respectively.
complex system modeling that is based on fuzzy discretization
technique [10]. A great advantage of the presented approach 2. Tabu search algorithm (TSA)
was that it could determine the premise structure of a model
off-line. In [11], a method of Takagi–Sugeno–Kang fuzzy TSA was proposed by Glover as an intelligent optimization
model generation using numerical data as a starting point was technique to overcome local optimality in solution processes for
described by Kukolj. hard combinatorial optimization problems [24]. This algorithm
In addition, many other methods such as neural networks consists of the systematic prohibition of some solutions to
based methods were suggested and were used to build fuzzy prevent cycling and to avoid the risk of trapping at a local
models [12–15]. Several models for the identification and optimum. New solutions are searched in the neighbourhood of
control of nonlinear dynamic systems were suggested by the current one. In TSA, there are several important concepts:
Narendra and Parthasarathy [13]. These models, which include Neighbourhood: To improve the quality of the solutions visited,
multilayer neural networks as well as linear dynamics, can be the search moves from one solution to another using a
viewed as generalized neural networks. For the adjustment of neighbourhood structure. The neighbourhood of a solution is
parameters, static and dynamic back-propagation methods are the set of all formations that can be arrived at by a move.
used. Jang described an adaptive network based fuzzy inference The move is a process that transforms the current solution to
system [12]. The presented method employed a hybrid learning its neighbouring solution. If, after making a move, a solution
procedure to construct an input–output mapping based on is found which is better than all solutions found in prior
both human knowledge and stipulated input–output data moves than the new solution is saved as the new best solution.
pairs. By using the architecture of the fuzzy-neural network, This neighbourhood procedure is applied to the only one best
simple and effective fuzzy rule based models of complex solution of each generation. Considering a chromosome with n
systems from input–output data were developed by Lin and bits, the number of the neighbour solutions is n, as depicted in
Cunningham [15]. Babuska and Verbruggen presented an Fig. 1. To obtain the neighbour solutions for the best solution,
overview of neuro-fuzzy modeling methods for nonlinear encoding and decoding operations are applied. In this work,
system identification [14]. using different bit sizes for each of the parameters we have tried
Different optimization algorithms were also used for to achieve a good balance between the algorithm performance
fuzzy system modeling [16–23]. Hanss presented a special and the computational cost, and we finally adopt a bit size
fuzzy modeling method for developing multivariable fuzzy of 8. Therefore, total number of bits required for defining a
models [20]. This fuzzy model identification procedure was fuzzy rule base parameter set is [rule number × parameter
carried out by applying a special clustering method. Kilic number × bit number]. According to simulation results, this bit
et al. proposed a fuzzy system modeling approach based on size is suitable for the main process in the algorithm described
a probabilistic hill-climbing algorithm as a data analysis and in this paper.
approximate reasoning tool [19]. Evsukoff et al. used a least Tabu list: One of the main ideas of TSA is the use of a
squares error minimization method for nonlinear fuzzy model flexible memory (tabu list). The objective of the tabu list is to
identification [16]. A genetic based neuro-fuzzy approach for exclude moves which would bring the algorithm back to where
modeling and control of dynamical systems was presented by it was at some previous iteration and keep it trapped in a local
Farag et al. [23]. The proposed approach combined the merits of minimum. To avoid performing a move returning to a recently
the fuzzy logic theory, neural networks, and genetic algorithms. visited region, the reverses of last moves are forbidden. In other
Wu and Yu used a genetic algorithm and gradient descent based words, these moves are considered as “tabu” and are recorded
approach to optimize the structure of a Takagi–Sugeno–Kang in the tabu list. The tabu list stores all tabu moves that are
34 A. Bagis / ISA Transactions 47 (2008) 32–44
Fig. 3. (a) Parameter matrix representing the membership functions, (b) Fuzzy rule base represented by parameter matrices, (c) The rule base coding.
(c) number and type of membership functions for each variable appropriate rule number. A reasonable number of fuzzy rules
(d) type of the inference mechanism, connective operators, without losing too much information about the system to
defuzzification method. be modeled must be carefully obtained. In this work, using
After the structure is fixed, the performance of a fuzzy different rule sizes we have tried to achieve a good balance
model can be fine-tuned by adjusting its parameters. Tunable between the model performance and rule complexity.
parameters of linguistic models are the antecedent parameters Another important element in combining a TSA and a
and consequent membership functions and the rules. Rules fuzzy model is the encoding method used to represent a
in the fuzzy rule base are described by the membership fuzzy rule base as a probable solution element on which the
functions. Fuzzy membership functions can have different TSA operates. Selecting an appropriate encoding procedure
shapes depending on the designer’s preference or experience. is a critical factor that affects the efficiency of the TSA and
In general, fuzzy engineers have found that triangular and the final solution. The membership functions of the input
trapezoidal shapes help capture the modeller’s sense of variables are characterized by three numerical values. On
fuzzy numbers and simplify computation. In this study, input the other hand, the output variables are defined by singleton
variables are characterized by triangular membership functions, numerical values. These numerical values represent the position
and the output variables are characterized by fuzzy singletons. of the membership function on the universe of discourse. The
A rule in the rule base has a general form expressed by parameter matrix defining the membership functions and fuzzy
rule base represented by the parameter matrices is formulated
Ri : If x1 is Ai1 (x1 ) and x2 is Ai2 (x2 ) then y is Bi (1) in Fig. 3. The parameter matrix that contains the parameters
for defining the membership functions within the fuzzy rule
where Ri is the ith rule, xj is the input variable, and y is the base will be of one-dimensional matrix form. For each rule
output variable. Aij (xj ) is the fuzzy linguistic value defined as in the fuzzy rule base, the adjustment parameters used in the
in Eq. (2) and Bi takes the role of fuzzy singleton, i.e., real reasoning procedure are also involved in this parameter matrix.
number. In Fig. 3, these parameters are stated by di for each input
variable. Thus, the size of matrix is determined by {the number
Aij = max(min[(xj − a)/(b − a), (c − xj )/(c − b)], 0). (2)
of rules × [(the number of input variables × 3) + (the number
In Eq. (2); a, b, and c are the main parameters of a triangular of output variables × 1) + (the number of input variables)]}.
membership function. These parameters represent the locations This value of the matrix is also equal to the size of the tabu
of starting point, peak point, and the ending point for a triangle list. For a fuzzy model with two inputs and one output, each
shaped membership function, respectively. fuzzy rule is represented by nine parameters. The rule structure
Deciding the number of fuzzy rules is a very critical coding is organized as shown in Fig. 3(c). For example, if the
issue since it plays key roles in the fuzzy modeling of the modeling system has two inputs and one output, 144 bits are
systems. Except for some propositions, unfortunately, there is used to represent a probable solution with two rules optimized
no systematic and efficient procedure for choosing the most by the algorithm (Fig. 3(c)). Initializing the solution is based
36 A. Bagis / ISA Transactions 47 (2008) 32–44
Table 2
Optimized parameter matrix for fuzzy rule base
on the randomly generated values from the given searching 4. Simulation results
intervals.
In this study, the following reasoning procedures are Five numerical examples are provided in this section to
considered: illustrate the performance of the presented approach. All these
(a) Given input data x1 and x2 , calculate the degree of the examples have their origin in the existing literature. The
fulfillment ωi in the premise for the ith rule as in datasets used in the first and third examples are derived from
practical processes; while the dataset used in the second and
ωi = Ai1 (x1k ).di1 + Ai2 (x2k ).di2 , fourth examples is generated from the simulation of analytical
k = input data number. (3) models. In the first example, the fuzzy modeling of a dynamical
(b) Calculate the inferred value yi by taking the weighted process using a famous example of the system identification
average of Bi with respect to ωi as in given by Box and Jenkins [25] is discussed. The third example
is used to show how to build a model of a human operator’s
r
P
ωi .Bi control action in a chemical plant. The structure of the human
i=1 operation is shown in Sugeno and Yasukawa [6]. Furthermore,
yi = r
(4) input–output data for human operation at the chemical process
ωi
P
are also listed in [17]. In the fifth example, modeling of a real
i=1
reservoir system is considered [3,4]. And, the datasets used in
where r is the number of fuzzy rules. this example are real flood hydrograph data of the dynamical
To evaluate the performance of a fuzzy model, there are two system.
important performance indices in the literature. These are the (a) Box and Jenkins’ gas furnace: The fuzzy model of a
mean squared error (MSE) and a performance parameter stated dynamic process using a well-known example of the system
as PI. In the MSE, the error is the difference between the actual identification given by Box and Jenkins is considered [6,22,25].
output and the estimated output by the fuzzy model. The MSE The process is a gas furnace with a single input u(t) and a single
and PI are calculated from N data point as output y(t): gas flow rate and CO2 concentration, respectively.
N The dataset consists of N = 296 pairs of input–output
1 X measurements. The inputs to the fuzzy model were selected as
MSE = (O d − Ok )2 (5a)
N k=1 k u(t −4), y(t −1), respectively. The model output is y(t). For the
s variables of u(t − 4), y(t − 1), and y(t), normalization intervals
N
P
(Okd − Ok )2 were selected as [−3, 3], [44, 62], and [44, 62], respectively.
k=1 Parameters of the fuzzy model were searched into the interval
PI = (5b) of [0, 4]. During the evolution, the modeling error of the best
N
Od
P
k individual at each generation was calculated by Eq. (5a). The
k=1
optimized fuzzy model for a gas furnace and the comparison of
where Okd , k = 1, . . . , N are the actual or desired output values model outputs and the original output data are shown in Figs. 4
and Ok , k = 1, . . . , N are the outputs from the model. and 5, and the modeling error is 0.1483. The number of rules
These performance indices provide a means for evaluating in the fuzzy model is only four. Normalized and denormalized
the performance of a fuzzy model with the selected fuzzy parameter matrices of the fuzzy model are also given in Table 2.
rule base in the process of evolution, so that an optimized In Table 3, our fuzzy model is compared with other models
model would be developed by the best individual. During the identified from the same data.
evolution, the quality of the best solution at each generation is (b) Modeling of a static nonlinear function: In this subsection,
calculated by Eq. (5a) or (5b). double input and single output static function was chosen as
A. Bagis / ISA Transactions 47 (2008) 32–44 37
Table 3
Comparison of our model with other models
Fig. 7. (a) Comparison of model outputs and original output data for example (b). (b) Test outputs and model outputs for example (b).
the local temperature inside the plant are available, to which In our approach, the input variables u 1 and u 3 were selected
the human operator may refer. The output y is the set point for to build the fuzzy model. Normalization intervals for all
monomer flow rate. There are 70 data points for each of the variables (u 1 , u 3 , y) were selected as [4, 7], [0, 8000], and
above six variables (five inputs, and one output). [0, 8000], respectively. Model parameters were searched in the
There are different fuzzy models available for modeling this solution area of [0, 2]. During the evolution, the modeling error
plant. In [6], a six rule qualitative fuzzy model was given by
at each generation was calculated by Eq. (5b). Optimized model
identifying u 1 , u 2 , and u 3 as input variables. In [10], u 1 , u 2 ,
and u 3 were selected as the input variables, and six clusters parameters and optimum rule base are given in Table 6 and
from the given data were taken to give six rules and three Fig. 8, respectively. Optimum rule base has only three rules.
premise variables of the Takagi–Sugeno–Kang model. In [15], The comparison of model outputs and the original output data
a fuzzy-neural system was used for modeling the plant. The are shown in Fig. 9. In Table 7, our fuzzy model is compared
performance measurement was not stated in [6] and [10]. with the other models in the literature.
A. Bagis / ISA Transactions 47 (2008) 32–44 39
Table 4
Optimized parameter matrix for fuzzy rule base
Fig. 8. Optimized fuzzy rule base for human operation at a chemical plant.
Table 5
Comparison of different models for example (b)
Table 6
Optimized parameter matrix for fuzzy rule base
Table 7
Comparison of different models for human operation at a chemical plant
were selected as [−2, 2], [−5, 5], and [−5, 5], respectively.
The search interval of all the variables is [0, 4]. After the
learning process is finished, the model is tested by applying a
sinusoidal input data u(k) = sin(2πk/25) to the fuzzy model.
The optimized fuzzy model is given in Fig. 11. The rule number
of the fuzzy model is four. Normalized and denormalized Fig. 10. Train and test inputs for a nonlinear differential equation.
parameter matrices of the fuzzy model are also given in Table 8.
The output of both the fuzzy model and the actual model are Table 9
shown in Fig. 12. The fuzzy model has a good match with Comparison of different models for the nonlinear differential equation
the actual model with a MSE of 0.0378. Table 9 compares our Method Rule Learning Testing MSE
modeling approach with the other approaches in the literature. number MSE
The models are obtained from the previously generated 500 Sugeno’s model (1991, 12 0.5072 0.2447
data pairs and tested by applying a sinusoidal input signal 1993) [6,29]
u(k) = sin(2πk/25). Farag’s model (1998) [23] 75 0.0374 0.0403
Wang’s model (1999) [7] 8 0.6184 0.2037
(e) Modeling of a real reservoir system: This example includes Evsukoff’s model (2002) [16] 100 0.1577 0.0185
the modeling of the nonlinear relationship among the main Our model 4 0.0341 0.0378
variables of the reservoir in a reservoir management system.
Table 8
Optimized parameter matrix for fuzzy rule base
Rules Input 1, u(k) Input 2, y(k − 1) Input 3, y(k − 2) Output, y(k) Adjustment parameters
ai1 ai2 ai3 bi1 bi2 bi3 ci1 ci2 ci3 di ei1 ei2 ei3
Normalized parameters
(1) 0.0000 0.0001 0.8363 0.1212 0.4045 0.6214 0.0899 0.2462 1.0005 0.5226 1.3420 2.5905 1.2435
(2) 0.0000 0.0000 0.3381 0.1250 0.1760 0.5904 0.0977 0.1055 1.9072 0.1055 0.7062 0.4260 1.4667
(3) 0.3752 1.0179 1.9853 0.5814 0.9993 1.1009 0.9223 0.9231 0.9243 1.0924 1.3952 1.0081 0.4905
(4) 0.1255 0.9849 3.8359 0.4385 0.8799 3.3353 0.5178 0.6566 0.9385 1.3333 0.4279 0.6614 0.3088
Denormalized parameters
(1) −2.000 −1.999 1.345 −3.788 −0.955 1.214 −4.101 −2.538 5.005 0.2260 1.3420 2.5905 1.2435
(2) −2.000 −2.000 −0.648 −3.750 −3.240 0.904 −4.023 −3.945 14.07 −3.9450 0.7062 0.4260 1.4667
(3) −0.499 2.072 5.941 0.814 4.993 6.009 4.223 4.231 4.243 5.9240 1.3952 1.0081 0.4905
(4) −1.498 1.940 13.344 −0.615 3.799 28.35 0.178 1.566 4.385 8.3330 0.4279 0.6614 0.3088
A. Bagis / ISA Transactions 47 (2008) 32–44 41
Fig. 11. Optimized fuzzy rule base for the nonlinear differential equation.
Table 10
Optimized parameter matrix for fuzzy rule base
Fig. 14. Comparison with three dimensions of the outputs for (a) train operation and (b) test operation in the reservoir system.
A. Bagis / ISA Transactions 47 (2008) 32–44 43
Fig. 15. Comparison with two dimensions of the outputs for (a) train operation and (b) test operation in the reservoir system.
Table 12
Computational performance of the TSA for different problems
Problem Data Rule Parameter number Total parameter Neighbourhood Computation time per iteration (s)
number number per rule number number
Box–Jenkins 296 4 9 36 288 9.18 (for 288 evaluation)
Static nonlinear function 50 5 9 45 360 2.37 (for 360 evaluation)
Chemical plant 70 3 9 27 216 1.27 (for 216 evaluation)
Nonlinear differential 500 4 13 52 416 31.27 (for 416 evaluation)
equation
Reservoir operation 548 5 9 45 360 24.13 (for 360 evaluation)
44 A. Bagis / ISA Transactions 47 (2008) 32–44
easy to use and there is no difficulty in writing its automatic [15] Lin Y, Cunningham GA. A new approach to fuzzy-neural system
modeling procedure. Especially, when the model performance modeling. IEEE Trans Fuzzy Syst 1995;3(2):190–8.
and rule size are considered, the method based on the use of a [16] Evsukoff A, Branco ACS, Galichet S. Structure identification and
parameter optimization for non-linear fuzzy modeling. Fuzzy Sets and
tabu search algorithm performs an important and very effective Systems 2002;132:173–88.
modeling procedure to fuzzy rule base design in the modeling [17] Wu B, Yu X. Fuzzy modeling and identification with genetic algorithm
of nonlinear or complex systems. based learning. Fuzzy Sets and Systems 2000;113:351–65.
[18] Pham DT, Castellani M. Evolutionary learning of fuzzy models. Eng Appl
Acknowledgements Artif Intell 2006;19:583–92.
[19] Kilic K, Sproule BA, Turksen IB, Naranjo CA. A fuzzy system modeling
algorithm for data analysis and approximate reasoning. Robot Auton Syst
The author is grateful to the reviewers, and Prof. Dervis 2004;49(3–4):173–80.
Karaboga at Erciyes University in Turkey for their valuable [20] Hanss M. Identification of enhanced fuzzy models with special
comments and suggestions. membership functions and fuzzy rule bases. Eng Appl Artif Intell 1999;
12:309–19.
References [21] Cordon O, Herrera F, Hoffman F, Magdalena L. Genetic fuzzy systems:
Evolutionary tuning and learning of fuzzy knowledge bases. Singapore,
[1] Babuska R. Fuzzy modeling for control. Kluwer Academic Pub.; 1998. New Jersey, London, Hong Kong: World Scientific; 2001.
[2] Nguyen HT, Sugeno M. Fuzzy systems: Modeling and control. Kluwer [22] Kang S, Woo C, Hwang H, Woo KB. Evolutionary design of fuzzy rule
Academic Pub.; 1998. base for nonlinear system modeling and control. IEEE Trans Fuzzy Syst
[3] Bagis A. Fuzzy and PD controller based intelligent control of spillway 2000;8(1):37–45.
gates of dams. J Intell Fuzzy Syst 2003;14(1):25–36. [23] Farag WA, Quintana VH, Torres GL. A genetic based neuro-fuzzy
[4] Bagis A. Determining fuzzy membership functions with tabu search—An approach for modeling and control of dynamical systems. IEEE Trans
application to control. Fuzzy Sets and Systems 2003;139:209–25. Neural Netw 1998;9(5):756–67.
[5] Takagi T, Sugeno M. Fuzzy identification of systems and its applications [24] Pham DT, Karaboga D. Intelligent optimisation techniques: Genetic
to modeling and control. IEEE Trans Syst Man Cybern 1985;15:116–32. algorithms, tabu search, simulated annealing and neural networks.
[6] Sugeno M, Yasukawa T. A fuzzy logic based approach to qualitative Springer-Verlag; 2000.
modeling. IEEE Trans Fuzzy Syst 1993;1(1):7–31. [25] Box GEP, Jenkins GM. Time series analysis, forecasting, and control. San
[7] Wang S, Lee C. Fuzzy system modeling using linear distance rules. Fuzzy Francisco (CA): Holden Day; 1970.
Sets and Systems 1999;108:179–91. [26] Tong RM. Synthesis of fuzzy models for industrial processes-some recent
[8] Kim E, Park M, Ji S, Park M. A new approach to fuzzy modeling. IEEE results. Int J General Syst 1978;(4):143–62.
Trans Fuzzy Syst 1997;5(3):328–37. [27] Pedrycz W. An identification algorithm in fuzzy relational systems. Fuzzy
[9] Mouzouris GC, Mendel JM. Dynamic non-singleton fuzzy logic systems Sets and Systems 1984;(13):153–67.
for nonlinear modeling. IEEE Trans Fuzzy Syst 1997;5(2):199–208. [28] Xu CW, Lu YZ. Fuzzy model identification and self-learning for dynamic
[10] Wang L, Langari R. Complex systems modeling via fuzzy logic. IEEE systems. IEEE Trans Syst Man Cybern 1987;(17):683–9.
Trans Syst Man Cybern-Part B: Cybern 1996;26(1):100–6. [29] Sugeno M, Tanaka K. Successive identification of a fuzzy model and its
[11] Kukolj D. Design of adaptive Takagi–Sugeno–Kang fuzzy models. Appl application to prediction of a complex system. Fuzzy Sets and Systems
Soft Comput 2002;2:89–103. 1991;(42):315–34.
[12] Jang JR. ANFIS: adaptive network based fuzzy inference system. IEEE [30] Nakoula Y, Galichet S, Foulloy L. A learning method for structure and
Trans Syst Man Cybern 1993;23(3):665–85. parameter identification of fuzzy linguistic models. In: Hellendoorn H,
[13] Narendra KS, Parthasarathy K. Identification and control of dynamical Driankov D, editors. Selected approaches to fuzzy model identification.
systems using neural networks. IEEE Trans Neural Netw 1990;1(1):4–27. Berlin: Springer; 1997. p. 281–319.
[14] Babuska R, Verbruggen H. Neuro-fuzzy methods for nonlinear system [31] Bagis A, Karaboga D. Artificial neural networks and fuzzy logic based
identification. Ann Rev Control 2003;27:73–85. control of spillway gates of dams. Hydrol Process 2004;18:2485–501.