Fuzzy Subsystem

advertisement
A New Approach To Generate Fuzzy system
Introduction
Fuzzy logic is an approach to reasoning where the rules of inference are approximate
rather than exact. It's useful for manipulating information that is incomplete, imprecise,
or unreliable. Fuzzy systems, which employ fuzzy logic in their control strategy or
operation, have been widely used in production and research, e.g. in control process of
steel producing, positioning of subway trains in terminals, and robot motion control.
Fuzzy logic inference makes it possible for machines to measure and calculate as humans
do based on experience and estimation. Fuzzy rules may be easier to derive and faster to
use than explicit formulae.
Recent research and practice indicate that fuzzy logic is quite successful in solving
problems to which traditional methods are powerless. However, how to construct a fuzzy
system remains a problem. In traditional methods, the amount of work needed to extract
and adjust the membership functions and rules of a fuzzy system expands exponentially
with an increase in the number of input variables. The scale of the neural network used to
derive the fuzzy rules becomes too large to be utilized. Its local minimums will also
dramatically increase due to its employing of Back Propagation (BP) algorithm as
method of parameter adjustment. The algorithm is prone to converge to some local
minimums, therefore, the resulting parameters in the network is not optimized as desired.
Furthermore, there is not an integrated and proven mechanism to detect the convergence
to local minimums in BP algorithm. The quality of the result depends mostly on selection
initial values of the parameters in the network and step wise of BP algorithm, it also
probably subjects to the intrinsic property of the task that the fuzzy system fulfills or
performs.
We have developed a new method to derive the membership functions and reference
rules of a fuzzy system which is described in this paper, in which complicated Multiple
Input Single Output (MISO) system can be obtained from combination of several Single
Input Single Output (SIMO) systems with a special coupling method; and in which a
new network optimization algorithm-Float Coding Based Genetic Algorithm (FGA) is
employed.
The strategy of reducing a complicated problem into a combination of simple ones and
employing FGA, makes it feasible to generate MISO fuzzy systems. The decomposition
and coupling method reduces complexity of the network used to represent the fuzzy
system. Moreover, FGA can leap out from local minimums that defeats BP algorithm, is
not confined in the restricted searching space as ordinary GA algorithm, realizing
efficient paralleling search in different scales in the resulting space and producing desired
optimized parameters of fuzzy membership functions and interference rules.
Method
1. Fuzzy System Decomposing and Combining Theorem
Suppose a multiple-input system S with x1 , x2 , x3 ,...xn as input variables, y as output
variable. {( X 1 , Y1 ), ( X 2 , Y2 ), ( X 3 ,Y3 ),...( X m , Ym )} is a sample data set of input-output
relationships, in which X r  ( x1r , x2 r , x3r ,..., xnr ) , r  1,2,3,..., R , denotes a input
vector, R is total number of samples. To derive parameters of membership functions and
rules to construct a fuzzy system corresponding to this system, the sample data need be
put to into a neural network structure as parameter to be tuned. If the number of inputs is
larger than four, the scale of the network could be too large to be feasible as described
above in the introduction. Therefore, we investigated how to decompose these kinds of
complicated multiple-input system into several single-input subsystems. Each subsystem
can be represented in a simple structure of neural network, the parameters of the original
multiple system can be derived from parameters of those subsystems by arithmetic
computation.
In this paper, Fuzzy rules are expressed in the way proposed by E. Khal et. al. as IF x1 is
L, x2 is M,…, x n is S, Then output of y is A, in which x1 x2 ...xn are the input variables,
L, M and S are values of language variables of each input variable, for instance, ‘Large’,
‘Mediun’, ‘Small’, etc.. A is a coefficient that denotes influence of a rule to the output y.
Relationships between input and output variables in a fuzzy system can be expressed in
following equation,
P
y    p ( x1 , x2 ,  , xn )  Ap ( x1 , x2 ,  , xn )
p 1
(1)
P is the total number of rules,  p ( x1 , x2 ,..., xn ) is the membership function of the pth rule in
the input space ( x1 , x2 , x3 ,..., xn ) . Ap ( x1 , x2 ,..., xn ) is the contribution of the pth rules to
the output y.
For the sample set of S, {( X 1 , Y1 ), ( X 2 , Y2 ), ( X 3 ,Y3 ),...( X m , Ym )} , we can use a multiple
variable polynomial with enough powers and items to approximate the relationship
between each input and output pair. A system with two inputs and one output is used to
demonstrate how to decompose multiple-input system into subsystems. It is easy to
generalized to systems with more than two inputs.
The sample data is ( x1 , x2 , y) . The polynomial function employed to approximate the
relationship is y   ai , j x1i x2j
Let
g i ( x1 )  x1i
0i I
h j ( x2 )  x2j
0 j J
f i , j ( x1 , x2 )  x1i x2j  g i ( x1 )h j ( x2 )
I, J denote the highest powers of x1 , x2 .
Each g i ( x1 ) and h j ( x2 ) can be derived from following fuzzy subsystems,
Fuzzy Subsystem g i ( x1 ) :
Language variables: V1,i ,k , 1  k  K
Fuzzy Rules:
IF x1 is V1,i ,k
THEN output of g i ( x1 ) is A1,i ,k
Membership functions:  1, k ( x1 )
Relationship between inputs and output:
K
g i ( x1 )   1,k ( x1 )A1,i ,k
k 1
in which the number of language variables, rules, and member function is K.
This fuzzy subsystem can be illustrated in a diagram as in Fig. 1
1
g1
2
g2
3
g3
I
gI
A1,1,1
L
A1,1, 2
A1, 2,1
A1, 2 , 2
x1
A1,1,3
M
A1,3,1 A1,3, 2
A1, 2,3
A1,3,3
S
Fig. 1 Fuzzy subsystem to derive g(x1)
Fuzzy Subsystem h j ( x2 ) :
Language variables: V2, j ,l , 1  j  L
Fuzzy Rules:
IF x2 is V2, j ,l THEN output of h j ( x2 ) is A2, j ,l
Membership functions:  2,l ( x2 )
Relationship between input and output:
L
h j ( x2 )    2,l ( x2 )A2, j ,l
l 1
in which the number of language variables, rules, and member function is L.
Then, more induction can be conducted,
K
L
k 1
l 1
f i , j ( x1 , x2 )  g i ( x1 )h j ( x2 )   1,k ( x1 ) A1,i ,k   2,l ( x2 ) A2, j ,l
K
L
f i , j ( x1 , x2 )   1,k ( x1 )  2,l ( x2 ) A1,i ,k A2, j ,l
k 1 l 1
f i , j ( x1 , x2 )   1,k ( x1 )  2,l ( x2 )    A1,i ,k A2, j ,l 
K
L
k 1 l 1
I
J
I
J
K L


y   ai , j f i , j ( x1 , x2 )    ai , j  1,k ( x1 )  2,l ( x2 )A1,i ,k A2, j ,l 
i 0 j  0
i 0 j 0 
k 1 l 1

K L
 I J

y   1,k ( x1 )  2,l ( x2 )     ai , j A1,i ,k A2, j ,l 
k 1 l 1
 i0 j 0

(2)
Comparing equation (2) with equation (1), obviously, equation (2) is in the same shape as
equation (1). That means y can be derived from a similar fuzzy system. Thus, with I of
g i ( x1 ) fuzzy subsystems and J of h j ( x2 ) fuzzy subsystems, we can get corresponding
fuzzy system to y ( x1, x2 ) ,
Fuzzy System y ( x1, x2 ) :
Language Variables: V1,i ,k & V2 , j ,l 1  k  K 1  l  L
Fuzzy rules: IF x1 is V1,i ,k & x2 is V2 , j ,l THEN output of y is A2, j ,l
Membership Functions: 1,k ( x1 ) ,  2,l ( x2 )
Relationship between Input and Output: Equation (2)
in which the number of language variables, rules, and member function is K*L.
Above induction can be concluded as following Fuzzy System Decomposing and
Combining Theorem:
A fuzzy subsystem S with n inputs and one output can be decomposed into n fuzzy
subsystems. Membership functions of S are the results of multiplying those of fuzzy
subsystems. The contribution each rule in the rule set to the output is arithmetic
combination of those of subsystems.
Download