0% found this document useful (0 votes)
10 views

Complexity Fuzzy Logic

This document analyzes the computational complexity of general fuzzy logic control algorithms and investigates simplifying them for use in loop controllers. It shows that general fuzzy logic control is not suitable for loop controllers due to high computation needs. A simplified fuzzy logic control using a fixed control table is presented as a better solution for loop controllers.

Uploaded by

p31202202481
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Complexity Fuzzy Logic

This document analyzes the computational complexity of general fuzzy logic control algorithms and investigates simplifying them for use in loop controllers. It shows that general fuzzy logic control is not suitable for loop controllers due to high computation needs. A simplified fuzzy logic control using a fixed control table is presented as a better solution for loop controllers.

Uploaded by

p31202202481
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Fuzzy Sets and Systems 111 (2000) 215–224

www.elsevier.com/locate/fss

Computational complexity of general fuzzy logic control and its


simpli cation for a loop controller
Yong Ho Kim∗ , Sang Chul Ahn, Wook Hyun Kwon
Control Information Systems Laboratory, School of Electrical Engineering, Seoul National University,
San 56-1 Silim-dong Kwanak-gu, Seoul 151-742, South Korea

Received June 1997; received in revised form December 1997

Abstract
This paper analyzes the number of operations and parameters of general fuzzy logic control algorithms. And limitations
of loop controllers to implement the fuzzy logic control are investigated in terms of computation time and required memory.
Using analysis of general fuzzy logic control algorithms, it is shown that general fuzzy logic control algorithms are not
suitable for loop controllers. A simpli ed fuzzy logic control for loop controllers is presented using a xed control table
with mapping parameters. This simpli ed fuzzy logic control is shown to be suitable for a loop controller with regard to the
computation time and the required memory. For easy programming of the simpli ed fuzzy logic control, a fuzzy logic control
block is suggested as a speci c block for general graphical block diagram editors. Experiments show that the simpli ed
fuzzy logic control overcomes the limitations of loop controllers and provides good performance. ? 2000 Elsevier Science
B.V. All rights reserved.

Keywords: Fuzzy logic control; Loop controllers; Computation time; Memory

1. Introduction logic control is restrictive in general applications


since expert knowledge on plant input–output rela-
Fuzzy logic provides an e ective means of dealing tions is needed, and there is no general systematic
with the approximate and inexact nature of the real procedure for the design of fuzzy logic control.
world. It has been applied to speci c areas such as In general, real-time control applications, devices
expert systems, arti cial intelligence, robotics, trac such as programmable logic controllers (PLCs) and
ow control, ight motion control, and boiler con- loop controllers (LCs) are commonly used, which
trol systems [4–6]. There are also hardware products do not usually possess an additional function of the
utilizing fuzzy logic such as fuzzy memory devices, fuzzy logic control. Thus, if the PLC or LC possesses
fuzzy microprocessors, and fuzzy inference chips to a function of fuzzy logic control, it will be very help-
support applications [2–4,6–11]. However, fuzzy ful for wider applications. Furthermore, implementa-
tion costs will be reduced since extra hardware for
∗ Corresponding author. Tel.: 82-2-873-2279; fax: 82-2-888- fuzzy logic control is not needed in a PLC or LC with
4182. fuzzy logic control algorithms. However, it is not clear
E-mail address: [email protected] (Y.H. Kim) whether fuzzy logic control can be easily implemented

0165-0114/00/$ - see front matter c 2000 Elsevier Science B.V. All rights reserved.
PII: S 0 1 6 5 - 0 1 1 4 ( 9 7 ) 0 0 4 0 9 - 0
216 Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224

in PLCs or LCs. A new and simpli ed fuzzy logic Table 1


control will be investigated regarding implementation. Nomenclature
In general, control algorithms for a loop controller
Symbol Description
should have a small number of tuning parameters and
short computation time due to limited memory and NI The number of inputs
slow processors. There are many tuning parameters in NIF The number of input fuzzy sets
the membership functions and control rules of general NID The number of discretization of input universe
of discourse
fuzzy logic control. General fuzzy logic control has
L The number of rules
a long computation time since it performs fuzzi ca- NOF The number of output fuzzy sets
tion, inference, and defuzzi cation processes in deter- MOD The number of discretization of output universe
mining control inputs. Thus, it is dicult for control of discourse
inputs of general fuzzy logic control to be computed No The number of outputs
within the sampling time of a loop controller. Due to
these limitations, the general fuzzy logic control can-
not be used directly in a loop controller.
This paper analyzes a general fuzzy logic control erally applicable for all plants. The best procedure is
program in terms of computation time and required to choose an appropriate method for each component
memory, and shows the diculties involved in over- of a plant.
coming the limitations of loop controllers. A simpli- In this section, the number of operations and mem-
ed fuzzy logic control is presented using a xed ory requirements are considered for a few represen-
control table with mapping parameters, which is suit- tative methods of each component in a general fuzzy
able for loop controllers. Analysis shows that the sim- control. The analysis is performed for a general fuzzy
pli ed fuzzy logic control overcomes the limitations logic control program that is implemented in the as-
of the loop controller and experiments are performed sembly language of an MC68000 microprocessor. Ad-
to show that it is suitable for the loop controller. dition, subtraction, multiplication, and division are
In Section 2, the computation time and parameters considered as basic operations when the number of
of general fuzzy logic control are examined. Section 3 operations is counted. As a result of the program ana-
presents the limitations of a loop controller in which lysis, about 50% of the operations are move operations,
fuzzy logic control is implemented. A simpli ed fuzzy and the remaining 50% are computing operations ad-
logic control is presented and shown to overcome the dition, subtraction, multiplication, and division, and
limitations of the loop controller. Section 4 shows ex- program ow control operations such as jump and
perimental results of the simpli ed fuzzy logic con- branch. In the following subsections, the analysis re-
trol. Section 5 concludes this paper. sults are presented. Table 1 presents the notations that
will be used in this paper.

2. Complexity of general fuzzy logic control 2.1. Number of operations

In order to implement a general fuzzy logic control, 2.1.1. Fuzzi cation


each of the components, that is, a fuzzi cation part, A fuzzi cation part transforms crisp data into fuzzy
an inference engine, and a defuzzi cation part have sets. There are typically two methods in the fuzzi -
to be implemented. There are several methods for im- cation operation. One is to transform crisp data into
plementing these. Using di erent methods for each normal fuzzy sets such as triangular fuzzy sets. This
component, various fuzzy logic control algorithms of method is reasonable for noisy crisp data. The other
di erent characteristics can be obtained. The use of is the use of fuzzy singletons. A fuzzy singleton is
singleton fuzzi cation, min–max inference, center-of- a fuzzy set with the membership value of 1.0 at input
gravity defuzzi cation is one such example. Though x and 0, otherwise. Because of its general use, a fuzzy
the characteristics of control algorithms using di er- singleton is used in this paper. Since fuzzi cation us-
ent methods are various, it is not clear which is gen- ing a fuzzy singleton is very simple, we also include
Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224 217

evaluations of membership values of input fuzzy 2.1.2. Inference engine


sets in estimating the number of operations for fuzzi- The inference engine is the main part of fuzzy logic
cation. control. Change in the inference method greatly a ects
If the input is changed to a fuzzy singleton, there is the output of the fuzzy logic control. The inference
a reduction in the operations of input fuzzy sets with engine consists of two processes. One is a premise
fuzzy sets in the premise part of the control rules. The part inference, and the other is a consequence part
number of operations varies according to the shape inference. The premise part inference applies the in-
of the fuzzy sets used in the control rules. In the fol- puts to the premise part of the control rules. That is,
lowing, we consider triangular shaped fuzzy sets and the degree of consistency of inputs with fuzzy sets in
non-speci c shaped fuzzy sets. the premise part is evaluated. The premise part infer-
Triangular fuzzy sets. If triangular fuzzy sets are ence is equivalent to nding consistent rules with in-
used for the premise part of the control rules, the fol- puts in the rule base of fuzzy logic control. The de-
lowing equation gives the resulting membership value gree of consistency provides the membership value
of input fuzzy sets because both sides of the triangle for the rule, which results from the premise part infer-
are the line, ence. For example, the ith fuzzy logic control rule is of
 the form

 ajL x0 + bjL if xm 6 x0 6 xc ;
Aj (x0 ) = ajR x0 + bjR if xc ¡ x0 6 xM ; (1) Ri : if x1 is Ai1 ; x2 is Ai2 ; : : : xNI is AiNI then z is Ci ;

0 otherwise;
where xj and z are linguistic variables representing
where ajL ; bjL ; ajR , and bjR are parameters which spec- input and output of fuzzy logic control, respectively.
ify each fuzzy set. xm ; xc , and xM are the minimum, Let the result of the premise part inference be i , then
center, and maximum values of the triangular fuzzy
i is
set, respectively. When one input is assumed to be in-
cluded in, at most, two fuzzy sets, the basic number NIF
^
of operations is i = Aij (xj ); (3)
j=1
(59 + 31NIF )NI
and NIF is assumed to be equal for every input. where Aij (xj ) is the membership value of input xj in
Non-speci c fuzzy sets. In order to evaluate the the fuzzy set Aij , and ∧ represents a minimum opera-
membership value for non-speci c fuzzy sets, the tor. The i is the membership value of the rule i repre-
function representing the fuzzy sets should be spec- senting the degree of consistency of the inputs to the
i ed. The membership functions are assumed to be rule.
stored in memory in the form of a table. When we use The consequence part inference scales down the
a table, we determine the resolution or the interval of consequence part to the membership value of the rule
elements in the table. Finally we obtain a resultant or the degree of consistency that is obtained from
membership value using linear interpolation such as the premise part inference. With this method, a re-
sult for the inference is obtained for each rule. Several
Aij (x0 ) = ((x − x1 )w2 + (x2 − x)w1 )=(x2 − x1 ); (2) methods are utilized for the consequence part infer-
where w1 ; w2 are the membership values at x1 ; x2 in the ence. Here, the number of operations is estimated for
table, respectively, and x1 ; x2 are the end values of the minimum inference and product inference as the rep-
interval which includes the input x in the universe of resentative inference method among them.
discourse. In Eq. (2), w1 is Aij (x1 ) and w2 is Aij (x2 ). Minimum inference. Minimum inference produces
When the non-speci c shaped fuzzy sets are used in a resulting fuzzy set by minimum operation with re-
the form of a table, from the analysis of the general sults from the premise part inference, i , and conse-
fuzzy logic control program, we obtain the required quence part fuzzy set of rule i, as shown in Fig. 1. The
number of operations in the fuzzi cation as equation of the consequence part inference is

(70NIF + 29NIF NID + 8)NI : Ci0 (z) = i ∧ Ci (z); (4)


218 Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224

values are summed, and the average becomes the nal


output. The output equation is
l
X vj
z0 = ; (8)
l
j=1

Fig. 1. Minimum inference. where vj ’s are support values with the maximum mem-
bership value of fuzzy sets. The required number of
operations in this defuzzi cation is

(25MOD + 5)L + 15: (9)

When the defuzzi cation is programmed, the number


of operations varies according to the inference method.
This is because the number of operations in the de-
fuzzi cation depends on the shapes of fuzzy sets, and
Fig. 2. Product inference.
the shapes of fuzzy sets depend on the method used
in the inference part. In this estimation we assume the
where Ci is the output fuzzy set, and z is the output maximum number of operations in order to calculate
variable in the universe of discourse. The required the maximum load.
number of operations is Center of area method (COA). The center of area
method is also called the center of gravity method. In
(63MOD + 37NI + 19)L + 6: (5) this method, the defuzzi cation is carried out by com-
puting the center of area or the center of gravity of the
In this estimation we select the case of the maximum consequence fuzzy sets resulting from the inference.
number of operations considering the branch or jump In this method, all supports of fuzzy sets are consid-
of the program ow. ered in calculating the output. The output equation
Product inference. Product inference uses is
results from the premise part inference as a weight to PL PMOD
the consequence part fuzzy set, as shown in Fig. 2. i=1 j=1 ci (vj ) · vj
z0 = PL PMOD ; (10)
The equation of the consequence part inference
i=1 j=1 ci (vj )
is
where vj ’s are output values in the universe of dis-
Ci0 (z) = i Ci (z); (6) course. The required number of operations is
The required number of operations is
(39MOD + 5)L + 15: (11)
(88MOD + 37NI + 20)L + 6: (7)
2.2. Memory usage
2.1.3. Defuzzi cation
The defuzzi cation part determines the nal control In this subsection memory usage is considered
input based on the inference result for each rule. In for the implementation of fuzzy logic control. The
this subsection we consider the mean of maximum temporal usage of memory along the ow of the pro-
method and the center of area method as representative gram is not considered. Only the permanent usage of
defuzzi cation methods. memory as a table is counted.
Mean of maximum method (MOM ). The mean of
maximum method uses supports with maximum mem- 2.2.1. Triangular fuzzy sets
bership value of output fuzzy sets to determine the When triangular shaped fuzzy sets are used for the
control input. Supports with maximum membership premise part of the control rules, the membership value
Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224 219

of the input could be evaluated with the following methods of each part of fuzzy logic control. The
equation: number of operations is obtained along the ow of
 the program by dynamic measurement. The result is

 ajL x0 + bjL if xm 6 x0 6 xc


shown in Table 2. Apart from the simple move in-
Aj (x0 ) = ajR x0 + bjR if xc ¡x0 6 xM (12) struction, the number of operations such as addition,

 subtraction, multiplication, division, and compare


0 otherwise; is also obtained individually, as in Table 3. These
tables show that the number of rules and that of dis-
where ajL ; bjL ; ajR , and bjR are parameters to specify cretization of the universe of discourse greatly a ect
each fuzzy set. And xm ; xc , and xM are the minimum, the number of operations. From Table 2, the infer-
center, and maximum values of the triangular fuzzy ence speed of a general fuzzy logic control can be
set, respectively. Each fuzzy set has four parameters predicted. For example, assume that the non-speci c
except the fuzzy sets at the end of the universe of dis- shaped fuzzy sets, the minimum inference method,
course. There are two parameters for each fuzzy set at and the center of gravity defuzzi cation are used. If
the end of the universe of discourse. If the parameters there are 2 inputs, 5 fuzzy sets for each input, and 32
are stored in 4 bytes of memory, the required memory discretization levels of the universe of discourse, then
usage is the number of operations used for the fuzzy logic con-
trol is estimated at about 94 000. If it is assumed that
16(NIF − 1):
fuzzy logic control is implemented in the hardware
with an MC68000 CPU in 16 MHz clocks and that
2.2.2. Non-speci c fuzzy sets
the execution of one instruction takes 10 clocks on
When non-speci c shaped fuzzy sets are used for
average, then one inference takes about 59 ms. Thus,
the premise part of the control rules, the membership
with the implementation, fuzzy logic control cannot
values (NID ) for each fuzzy set (NIF ) should be stored
be used in a loop controller with a 50 ms sampling
for the entire range of the universe of discourse. Thus,
period. In this case, hardware with a faster processor
the required memory usage is
or another implementation method is needed. An es-
4NIF NID timation of the inference speed from Tables 2 and 3
can be applied to the hardware of other processors,
if the membership value is stored in 4 bytes of even though the tables are made from the analysis of
memory. a program of MC68000 assembly language. This is
because the program changes little when a general
2.2.3. Rule table CISC processor is used. Operations should be counted
The control rule should be converted to a set of as subroutines when the number of instructions is
numbers to be stored in memory. The simplest method computed only if there are no instructions for multi-
is to convert the fuzzy sets to an index number. Each plication and division, as in RISC processors. In such
rule then requires NI numbers for the premise part a case, Table 3 gives a closer estimation. With this
and one number for the consequence part. Thus, the method, the inference speed of fuzzy logic control
required memory usage is can be estimated when the control is implemented
in speci c loop controller hardware. Table 4 could
2L(NI + 1): give estimations for some CPUs with di erent clock
speeds. In Table 4, the instruction cycles indicate the
It is assumed that the index numbers are stored in 2
average values for the instructions to be executed. If
bytes of memory.
inference speed does not meet the required sampling
rate of a loop controller, the on-line inference method
2.3. Inference speed cannot be implemented on the loop controller. In this
case, fuzzy logic control has to use the control table
In the above subsection, the required number method, a kind of o -line inference method that will
of operations is estimated for two representative be described in the next section.
220 Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224

Table 2
Number of operations in fuzzy logic controller

Method Operations

Fuzzi cation Triangular (59 + 31NIF )NI


Non-speci c (70NIF + 29NIF NID + 8)NI
Inference Minimum inference (63MOD + 37NI + 19)L + 6
Product inference (88MOD + 37NI + 20)L + 6
Defuzzi cation Mean of maximum (25MOD + 5)L + 15
Center of Gravity (39MOD + 5)L + 15

Table 3
Number of each operation in fuzzy logic controller

Method Addition Subtraction Comparison Multiplication Division

Triangular fuzzy set (4NIF + 6)NI 3NIF NI (2NIF + 2)NI


Non-speci c fuzzy set (9NIF + 4NIF NID )NI NIF NI (NIF + 3NIF NID )NI (4NIF + 2NIF NID )NI NIF NI
Minimum inference (9MOD + 6NI + 3)L 4MOD L (2MOD + NI + 1)L
Product inference (12MOD + 6NI − 3)L (5MOD − 2)L (3MOD + 2NI − 1)L 33MOD L
Mean of maximum method (4MOD + 1)L 2MOD L (2MOD + 1)L MOD L 1
Center of gravity method (5MOD + 1)L 2MOD L (MOD + 1)L 2MOD L 1

Table 4
Inference speed of CPUs

CPU Inst. cycle (Clocks) Inference


(Clock speed) speeda
Move Add. Sub. Mul. Div. Comp.

TMS320C30 (16.67 MHz) 1 1 1 1 62b 1 6 ms


MC68000 (16 MHz) 5 20 20 70 160 15 59 ms
Z80 (8 MHz) 16 11 11 390b 592b 7 280 ms

a Is in the case of NI = 2; NIF = 5; MID = MOD = 32; L = 25, non-speci c, minimum, and COA.
b Means that the instruction is implemented in a subroutine.

3. A simpli ed fuzzy logic control for loop trol is to be implemented. The MC68302 processor
controllers is called an integrated multi-protocol processor. Its
function is divided into three parts: the core part of
In this section, a loop controller and a simpli ed an MC68000 microprocessor, the system integrated
fuzzy logic controller for the loop controller are block (SIB), and the communication processor. Put
presented. simply, the processor is an MC68000 processor with
a communication function. The CPU works at 16 MHz
3.1. Limitations of a loop controller clock speed, and the loop controller has 256 kbytes of
system memory.
A 16 bit microprocessor MC68302 is used for the The function block of a control is de ned, as shown
CPU of the loop controller in which fuzzy logic con- in Table 5. The parameters are passed to a control
Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224 221

Table 5 inputs. Since it is impossible to have an output value


The structure of a function block for every input, the input space is sectored and the
function id output values are interpolated by the values at sector-
parameter [10] ing points near the input. Thus, the number of the sec-
state [3] toring points is larger and the di erence between the
output value of o -line fuzzy logic control and that of
on-line fuzzy logic control is smaller. If a control table
is used, more memory is used than in cases of on-line
Table 6
Parameters of the simpli ed fuzzy logic controller
fuzzy logic control. However, the time required for
the inference is greatly reduced. Analysis of the pro-
Fixed De nable gram using the control table shows that the required
number of operations is
Number of Inputs: NI No. of Discr. of input univ. of
disc.: NID (1)
Number of Outputs: No No. of Discr. of output univ. of (23NID + 36)NI + (2NI + 12)2NI + 6: (13)
disc.: NOD (1)
Control rule table Weights of inputs: w1 ; w2 ; w3 (3) For example, if two inputs with 32 points of discretiza-
Weight of output: w4 (1) tion of the universe of discourse are used, the required
number of operations for the inference with the con-
trol table is 1614. For the same comparison, if it is
algorithm using the parameter block. The state block assumed that the simpli ed fuzzy logic control is
is used to pass the previous state values of a plant. As implemented in hardware of an MC68000 CPU at
shown in Table 5, the maximum number of parameters 16 MHz, and that an instruction is executed in 10
is 10. The picture of the loop controller is shown in clocks on the average, it takes about 1 ms for one
Fig. 4. inference, which means a speed of 1000 Flops. As
a result, the inference using a control table is 59
times faster than the on-line inference. However, with
3.2. A simpli ed fuzzy logic control
a control table approach, a large part of the param-
eters de ning the fuzzy logic control should be xed
The parameters of the simpli ed fuzzy logic con-
at an early stage in order to provide exibility to
trol have the same features in general fuzzy logic con-
fuzzy logic control.
trol algorithms. However, most of the parameters are
In the presented fuzzy logic control, a predeter-
xed so that users of the loop controller can easily
mined control table is used. The control table is deter-
design fuzzy logic control to t to a speci c plant. In
mined according to the number of input fuzzy sets, and
the simpli ed fuzzy logic control, the xed and user-
the discretization level of control outputs. The con-
de nable parameters are shown in Table 6.
trol table can be constructed by modifying the Fuzzy
The numbers in parentheses in Table 6 represent
Addition Rule of Chir-Ho Chang and John Y.
the number of user-de nable parameters. Three values
Cheung [1]. The control table is derived by equations
(inputs, error, change of error, and the integral of error
such as
input) are used for control inputs each time. Within
this structure, a two-dimensional control table can
N 0 = N10 + N20 ; (14)
be used, and the time to compute control inputs is
 
more greatly reduced, without sacri cing the perfor- (Y − 1)(i + j)
Rij = fR − ; (15)
mance of fuzzy logic control. N0

3.3. Control table where N1 and N2 denote the numbers of fuzzy sets for
input 1 and 2, respectively.
O -line fuzzy logic control uses a control table to (
produce outputs. The control table has pre-computed 0 Ni − 1 if Ni is odd;
Ni = (16)
output values of fuzzy logic control in accordance with Ni if Ni is even:
222 Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224

Table 7
Control table in the case of 9 discretization output levels

− Large(−2) − Medium(−1) Zero(0) + Medium(1) + Large(2)

− Large(−2) +4 +3 +2 +1 0
− Medium(−1) +3 +2 +1 0 −1
Zero(0) +2 +1 0 −1 −2
+ Medium(1) +1 0 −1 −2 −3
+ Large(2) 0 −1 −2 −3 −4

Rij denotes the value of control output. i and j are Table 8


the indices of the input fuzzy sets, which range from Parameters in loop controller
− 12 Ni0 (− 12 Nj0 ) to 12 Ni0 ( 12 Nj0 ). Y is the discretization NI NIF MID L NOF MOD
level of the control output, which is normally an odd
number. The function fR (·) is the rounding function 2 5 32 25 5 32
that returns an integer near the parameter value. For
example, a control table can be constructed using the
above equation in the case where N1 and N2 are 5. of the fuzzy logic control for loop controllers. A fuzzy
logic control block contains four mapping parameters,
3.4. Mapping parameters w1 ; w2 , w3 , and w4 , which are applied to the error,
change of error, integral of error, and output, respec-
In order to provide exibility to the o -line fuzzy tively. It also contains the fuzzy logic control table,
logic control, four mapping parameters, or weights which has the pre-computed output values of fuzzy
are introduced. In the presented control, the modi ed logic control according to inputs. Yr represents output
inputs are used as follows references. A=D and D=A mean analog to digital inputs
Z and digital to analog outputs, respectively.
e → w1 e + w2 e dt; (17)

ė → w3 ė: (18) 4.2. Experiments with an inverted pendulum model

In this scheme, the characteristics of the fuzzy logic First, fuzzy logic controls using on-line inferences
control rule can be changed by varying weights in- and the control table were compared with regard to
stead of determining all fuzzy logic control rules. The speed. Each fuzzy logic control was implemented in
control output is also scaled appropriately such as the loop controller (Fig. 4) and the inference speed was
measured. The design parameters of the fuzzy logic
u → w4 u: (19)
control are presented in Table 8, and the result is given
This mapping parameter also plays a role in changing in Table 9. The inference time was measured for each
the characteristics of fuzzy logic control. 1000 and 10 000 inferences, respectively. The result
shows that the control table method used in the simpli-
ed fuzzy logic control is 1:4 ms=Inf, which is about
4. Experiments 41 times faster than the on-line inference method used
in general fuzzy logic control. Therefore, the control
4.1. Fuzzy logic control block table method is appropriate for loop controllers with
a short sampling period. It is noted that the result is
In this subsection, a fuzzy logic control block is similar to that of Sections 2 and 3.
suggested as a general function block for graphical Next, the performance of the fuzzy logic control
block diagram editors. Fig. 3 shows a block diagram with mapping parameters was examined for a well-
Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224 223

Fig. 3. A block diagram of the simpli ed fuzzy logic control.

" 2 #
−Ft − NID l˙ sin 
g sin  + cos 
mc + NID
 =   ; (20)
4 NID cos2 
l −
3 mc + NID
where g = 9:8 m=s2 (gravitational acceleration), mc =
1:0 kg (mass of the cart), NID = 0:1 kg (mass of the
pendulum), l = 0:5 m (length of pole), and Ft is the
control input measured in Nt. A block diagram of
simpli ed fuzzy logic control for the loop controller
is shown in Fig. 3. The design parameters of the
fuzzy control are presented in Table 10. Control ob-
jectives are to maintain the pole in an upright position,
which means that  should be maintained as 0. Distur-
bances are applied to  at 3 s and 15 s with magnitude
Fig. 4. Loop controller with a simpli ed fuzzy logic control. ±0:5 rad. Experimental results using the fuzzy logic
control and the PID control are presented in Fig. 5.
In the experiment, a control table like Table 7 is used
Table 9 without using plant-speci c control rules. The experi-
The speed of inference ment shows that the fuzzy logic control with mapping
parameters can be tuned so that it provides good per-
On-line inference Control table inference
formance even with simple and xed control rules, and
58 ms=Inf. 1:4 ms=Inf. that the simpli ed fuzzy logic control is appropriate
for loop controllers.

5. Conclusion
known inverted pendulum. The dynamics of the in-
verted pendulum are given in the following equation In this paper, the number of operations and re-
of motion. quired memory for general fuzzy logic control were
224 Y.H. Kim et al. / Fuzzy Sets and Systems 111 (2000) 215–224

Table 10 control inputs when the fuzzy logic control is imple-


Parameters in inverted pendulum mented with various processors. The suggested fuzzy
NI NID NOD w1 w2 w3 w4
logic control block can be used in implementing the
fuzzy logic control in many kinds of devices that sup-
2 32 32 1.0 5.0 0.001 30 port graphical block diagram editors. Above all, it is
the rst attempt to implement the fuzzy logic control
in loop controllers based on the analysis of the com-
putational complexity of general fuzzy logic control.

References

[1] G.M. Abdelnour, C.H. Chang, F.H. Huang, J.Y. Cheung,


Design of a fuzzy logic controller using input and output
mapping factors, IEEE Trans. Systems Man Cybernet. 21
(1993) 952 – 960.
[2] K. Hirota, K. Ozawa, Fuzzy ip- op and fuzzy registers,
Fuzzy Sets and Systems 32 (1989) 139 –148.
[3] C. Isik, Inference hardware for fuzzy rule-based systems,
Fuzzy Comput. (1988) 185 –194.
[4] C.C. Lee, Fuzzy logic in control systems: fuzzy logic
controller – Part I and Part II, IEEE Trans. Systems Man
Cybernet. 20 (1990) 404 – 435.
[5] E.H. Mamdani, S. Assilan, An experiment in linguistic
synthesis with a fuzzy logic controller, Internat. J. Man–
Fig. 5. An implementation result of inverted pendulum. Machine Studies 7 (1984).
[6] M. Sugeno, An introductory survey of fuzzy control, Inform.
Sci. 36 (1985) 59 – 83.
investigated. Since the general fuzzy logic control is [7] L. Sultan, A formal approach for the organization and
hard to implement directly in a loop controller, a sim- implementation of fuzzy micro-processor module, Fuzzy
pli ed fuzzy logic control using a pre-determined con- Comput. (1988) 201– 221.
[8] J.R. Symon, H. Watanabe, Fuzzy logic inference engine board
trol table with mapping parameters has been presented
system, in: Proc. Internat. Conf. on Fuzzy Logic & Neural
in order to overcome the limitations of a small number Networks (1990) 161–164.
of tuning parameters and a short computation time. By [9] H. Watanabe, RISC approach to design of fuzzy processor
real experiments, it has been shown that the simpli ed architecture, in: Proc. IEEE Internat. Conf. on Fuzzy Systems
fuzzy logic control is implementable in a loop con- (1992) 431– 441.
[10] H. Watanabe, D. Chen, Evaluation of fuzzy instructions in
troller, and that the performance is satisfactory. Since
a RISC processor, in: Proc. IEEE Internat. Conf. on Fuzzy
the number of operations is investigated in terms of Systems (1993) 521– 526.
general basic operations (addition, subtraction, mul- [11] T. Yamakawa, Intrinsic fuzzy electronic circuits for sixth
tiplication, and division), the analysis results can be generation computers, Fuzzy Comput. (1988) 157 –171.
used to estimate calculation time for fuzzy logic

You might also like