Pergamon S0016-0032(96)00029-4
J Franklin hr. Vol. 333(B), No. 4, pp. 513 521, 1996 Copyright 0 1996 The Franklin Institute Published by Elwier Science Ltd Prmted in Great Brmn 001&0032/96$15.00+0.00
State Reacha bilig Analysis of Fuzzy Models by CHIA-JU
WU
Department of Electrical Engineering, To&u, Y&in 640, Taiwan
National
(Accepted
1996)
in revised form 26 January
Yunlin Institute
of Technology,
: For a discrete-time system modeled by fuzzy implications, a state xr is reachable,from another state x0 if’there exists a sequence of control signals to drive the fuzzy model,from x0 to x,. at someJinal time instant. It will be shown that tf the product-operation rule, the exponential shape membership functions, and the center-of-area defuzzt$cation method are used, then the state reachability problem offuzzy models can be resolved by solving a sequence of nonlinear progrumming problems. If the objective,function of any of the nonlinear programming problems is found to be zero, then the state xr is reachable from the state x0 and the corresponding control siSqnalscan be determined. Otherwise, xf is unreachable from x0 and there exists no control signals to drive the ,jiizzy model,from x0 to xf. Copyright 0 1996 Published by Elsevier Science Ltd ABSTRACT
I. Introduction Modeling a system from its input-output data is a very common problem from an engineering point of view. However, in describing the behavior of many complex and ill-defined systems, precise mathematical models may fail to give satisfactory results. In such cases, fuzzy models may be used to reflect the uncertainty of the systems in a proper way. Therefore, fuzzy model identification has attracted increasing attention in recent years. According to the previous works, two approaches to fuzzy model identification have been proposed. One is based on resolution of composite fuzzy relational equation (l4). This approach is theoretically clear, but it may suffer difficulties caused by the fact that the solution of a fuzzy relational equation is usually not unique and, sometimes, it even does not exist at all. For this reason, although several techniques have been proposed in this category, application of these techniques can hardly be found. Another approach may be termed linguistic approach (512), where the fuzzy models are described by a set of fuzzy inference rules, and the identification procedures determines these rules from sample data. It is well known that, under certain conditions, a set of fuzzy rules can be converted into an equivalent fuzzy relation with very little computational effort. After obtaining the fuzzy model of a system, regardless of the modeling method, one problem that may arise is the reachability problem between two states. For a fuzzy model, a state x, will be called reachable from another state x0 if there exists a sequence
513
Chia-Ju Wu
514
of control signals to drive the model from x0 to xI at some final time instant. Though many kinds of fuzzy models have been proposed (1-12), it is interesting to note that the state reachability problem of fuzzy models is very seldom mentioned previously. This in turn motivates the research in this paper. In this paper it will be shown that if the product-operation rule, the exponential shape membership functions, and the center-of-area defuzzification methods are used, then the state reachability problem of fuzzy models can be resolved by solving a sequence of nonlinear programming problems. If the objective function of any of the nonlinear programming problems is found to be zero, then xj is reachable from x0 and the corresponding control signals can be determined. Otherwise, there exists no control signals to drive the fuzzy model from x0 to XI~ Since fuzzy controllers can also be used to determine control signals of a system, one may wonder what is the difference between the state reachability problem of fuzzy models and the design of fuzzy controllers. For a fuzzy controller, the input signals are usually the state variables of the controlled-plant and output signals are usually the control signals to be applied to the controlled-plant. Given an initial state of the controlled-plant, the control signals to be applied to the controlled-plant are determined sequentially by the fuzzy rules of the controller. Therefore, there exists no state reachability problem for fuzzy controllers. On the other hand, a fuzzy model is usually expressed in a manner such that the values of state variables at a time instant are determined by fuzzy rules according to the values of state variables and control signals at previous time instants. In this case, since the operation rule of fuzzy implications, the membership functions, and the defuzzification method are usually nonlinear, it will be difficult to determine the corresponding control signals to drive the system from an initial state to a desired final state. Therefore, for a fuzzy model, the state reachability problem exists and needs to be studied. In addition to formulating and resolving the state reachability problem of fuzzy models, computational complexity of the proposed method will also be discussed. It will be shown that the computational complexity of the proposed method is in the quadratic form based on the assumption that the computation burden of a nonlinear programming problem is proportional to the number of variables in the problem. To illustrate the validity of the proposed method, simulation examples are included. IL Problem Formulation
Though many kinds of discrete fuzzy models have been proposed, without loss of generality, the model developed by Takagi and Sugeno (12) will be used for illustration. In this model, a discrete system is described by the following fuzzy IF-THEN rules: Rule 1:
IFxl(k) isAl~ . . . . .
and
where
THEN x(k+ l) = A~x(k)+B,u(k)
z
Rule r:
IF x~ (k) is Ar~. . . . .
x,(k) is Al,,
and
x,(k) is At,, THEN x(k+ 1) = Arx(k)+ B,.u(k)
(1)
State Reachability Analysis of Fuzzy Models
515
x(k) = Ix, (kT) . . . . . x . ( k T ) ] ' = Ix, (k) . . . . . x.(k)]'
{2)
is the vector of state variables u(k) = [u,(kT) ..... um(kT)]' = [ut(k) . . . . . u,,(k)]'
(3)
is the vector of control signals, T is the length of sampling time interval, A~j, 1 <~ i <~ r, 1 ~
Problem 1. Given an initial state x0 and a final state Xr, the state reachability problem of the system in Eq. (1) is to determine whether there exists a positive integer kj and a sequence of control signals u(0), u(1) . . . . . u(k r - 1) such that the system can be driven from x0 to xf in kf steps. To solve Problem 1, the operation rule of fuzzy implications, the shape of membership functions of fuzzy variables, and the defuzzification method must be determined first. There exist some standard operation rules such as the mini-operation rule and the product-operation rule (13, 14). There also exist some standard defuzzification methods such as the maximum-criterion method, the mean-of-maximum method, and the centerof-area method (13, 14). If the product-operation rule and the center-of-area defuzzification strategy are used, then the following equation can be obtained from Eq. (l)
~. w~{k)[A~x(k) + B~u(k)] x(k + 1) =
i:l
(4)
~ wAk) i=1
where
w~{k) = (I A~i(xi(k)) for i = 1,2 . . . . ,r
(5)
i= I
and A~j(xj(k)) is the grade of xj(k) in A~j. To simplify the expression in Eq. (5), the exponential shape membership functions will be chosen among the standard shapes of membership functions, i.e.
Aij(x)=exp [ - ( x\- x uoi/) 2 1/ ]
f o r l <<.i<<,r,1 <<.j<~n
(6)
where xij and ~rijare adjustable parameters. Substituting Eq. (6) into Eq. (5) and Eq. (4) yields
wi(k) = Hexp[ j= 1
and
\
-0"([
-
// ] =
(7)
Chia-Ju Wu
516
~_l exp {j~_l [- ( x j( k~- x~i) 2]}[ A~x(k ) + B~u(k )] x ( k + 1) =
r
n
(xj(k)__Xij~2~
(8)
From Eq. (8) one can find that if the values of xij and a/j in the membership functions are specified, then x(1) is determined by x(0) and u(0). Similarly, x(2) is determined by x(1) and u(1), which in turn can be expressed as a combination of x(0), u(0), and u(l). Therefore, starting from x(0) and recursively utilizing Eq. (8), x(k) can be expressed as a function of x(0) and u(0), u ( 1 ) , . . . , u ( k - 1), i.e.
x(k) =f(x(O),u(O),u(1) . . . . . u(k-1)).
(9)
With Eq. (9), the state reachability problem can also be formulated as follows.
Problem
2. Given an initial state x0 = x(0) and a desired final state xl, determine if there exists a positive integer kj and a sequence of control signals u(0), u(1) . . . . . u(kj-- 1) such that x(k~) = f(x(0), u(0), u(1), . . . , u ( k l - 1)) = XI~ Though the formulation in Problem 2 is more compact than that in Problem 1, it is still very difficult, if not impossible, to solve the state reachability problem directly. In addition to the high nonlinearity of Eq. (9), another reason for the problem to be intractable is that the integer ks is a variable to be determined. This in turn makes the number of variables of Problem 2 be a variable itself and increases the difficulty of the problem. Since the problem is intractable in a direct way, an algorithm will be developed to solve the problem in an indirect manner. The basic strategy is to decompose the problem into many subproblems with different fixed final time instants. Actually, if the integer k / i s fixed, then one can find that Problem 2 is equivalent to the following nonlinear programming problem:
Problem
3. Given an initial state x0 = x(0), a positive integer kj~ and a desired final state x f = x(kl), find the variables u(0), u(1), . . . , u(kj- 1) to minimize
g = IV(x(0), u(0), u ( l ) , . . . , u ( k / - - 1)) - xlll
(10)
where [['[] denotes the norm of a vector. The above problem is obviously a standard nonlinear programming problem, in which the objective function is nonlinear and there are no constraints on the variables. Therefore, initial feasible solutions of Problem 3 can be generated easily and any existing nonlinear programming algorithm can be used to find the solution. The performance index is defined such that it is always greater than or equal to zero. If the performance index is equal to zero, then it means that the state xsis reachable from the initial state x0 and u(0), u(1), . . . , u(ks - 1) are the corresponding control signals. If the performance index is greater than zero, then it means that Xl is unreachable from x0 at time instant k~: However, this does not mean that Xr is unreachable from x0 at all time instants during time interval [0, kr" 7]. Therefore, if one is interested in whether a state xs is reachable from x0 during a time interval [0, ks" 7], then one can check the state reachability at every time instant by performing the following procedure:
State Reachability Analysis of Fuzzy Models
517
Algorithm A: Reachability of xI from x0 during time interval [0, ks- T] Step 1: Let k = 1. Step 2: If k = ks+ 1, then go to Step 5. Otherwise, formulate and solve a nonlinear programming problem as that in Problem 3 to determine whether the state xj is reachable from the initial state Xo in k steps. Step 3: If the performance index obtained in Step 2 is zero, then go to Step 4. Otherwise, set k = k + 1 and go to Step 2. Step 4: xris reachable from xo during time interval [0, kj" T]. End. Step 5: xr is unreachable from Xo during time interval [0, k r" 7]. End.
IlL ComputationalComplexity The computational complexity of Algorithm A is hard to estimate since it is closely related to the algorithm to solve the nonlinear programming problems (15). In addition, it also depends on the values of the initial feasible solutions of the nonlinear programming problems (15). However, for a rough estimation, it will be assumed that the computation burden of a nonlinear programming problem is proportional to the number of variables in the problem. In this case, the order of the computational complexity of Algorithm A will be
Since the computational complexity of Algorithm A is in the quadratic form, the computation burden increases very quickly as the value of kj. increases. In order to reduce the computational complexity of Algorithm A, the following lemma is proposed.
Lemma A: If the system described in Eq. (9) can be driven from an initial state x0 to a desired state Xr in kl steps, and can be driven rom state Xr to the same state x t in k2 steps, then the system can be driven from Xo to xrin (kl +k2) steps.
Proof'. Since the proof is very straightforward, it will be omitted here. By utilizing Lemma A, another lemma can be obtained:
Lemma B: If the system described in Eq. (9) cannot be driven from an initial state Xo to a desired state Xr in kl steps, but can be driven from state xj to the same state x r in k2 steps, where k2 < kl, then the state Xr is unreachable from the state xo in (k~-k2) steps.
Proof'. The above result can be proved by contradiction. Assume that xris reachable from Xo in (k~-k2) steps. Then since x r is reachable from Xl in k2 steps, according to Lemma A, the state xj will be reachable from Xo in kl steps, which causes the contradiction. Therefore, the result is proved. Q.E.D. From Lemma B, one can find that if x r is unreachable from Xo in k~ steps, but reachable from Xt in k2 steps, then Xt is al unreachable from Xo in (k~-k2) steps, (kl-2k2) steps . . . . , (ki-int(kjk2)'k2) steps, where int(kjk2) is the integer part of
Chia-Ju Wu
518
(ks/kz). Therefore, Algorithm A can be modified to reduce its computational complexity as follows. Al#orithm B: Reachability between x0 and Xr during time interval [0, ks" 7] Step 1: Let k = 1. Step 2: Formulate a nonlinear programming problem as that in Problem 3 to determine whether the state x/is reachable from the same state xi in k steps. If the value of the performance index is zero, then let/9. = k and go to Step 4. Otherwise, continue. Step 3: Set k = k + 1. Ifk > int(ks/k2 ), then go to Step 7. (The reason for this decision will become clear later.) Otherwise, go to Step 2. Step 4: Set k = ks-/~r + 1. Step 5: Formulate a nonlinear programming problem as that in Problem 3 to determine whether the state xsis reachable from the state x0 in k steps. If the value of the performance index is zero, then go to Step 8. Otherwise, continue. Step 6: Set k = k + 1. I f k > kj~ then go to Step 9. Otherwise, go to Step 5. Step 7: According to the procedure described in Algorithm A, determine the reachability of Xr from x0 during time interval [0, kr" 7]. End. Step 8: x/is reachable from x0 during time interval [0, ks-" 7]. End. Step 9: x r is unreachable from x0 during time interval [0, kr" 7]. End. If state xris reachable from the same xrin/~r steps, then the order of the computational complexity of algorithm B will be
O(l+2+...+l~r+(l~i-kr+l)+(l~r-ki+Z)...+kr
) = O(l~r'(kr+l)).
(12)
Comparing Eq. (12) with Eq. (11), one can find that if kl
(13)
then the computational complexity of Algorithm B will be lower than that of Algorithm A. This explains why the value of k in Step 3 of Algorithm B is increased until int(kf/2) only.
IV. Simulation Example Consider the following fuzzy system: Rulel:
IFxl(k) isAl~
and
x2(k) isA~2,
T H E N x(k + 1) = A, x(k) + B, u(k)
Rule2:
IF xl (k) is A21
and
x2(k) is A22,
THEN x ( k + 1) = A2x(k) +Bzu(k)
where
x(~) = [x, (h:), x2(~)]' A i = A2 =
[o' °7 1
(14)
05)
State Reachability Analysis of Fuzzy Models'
519
., E24]
,,6,
.2 [32] A , , (x) = e x p [ - ( x -
1)2/4]
(18)
A~2 (x) = e x p [ - ( x - - 7) 2/4]
(19)
A2, (x) = e x p [ - ( x + 1)2/4]
(20)
A 22 (x) = e x p [ - ( x + 7) 2/4].
(21)
T h e p r o b l e m is t o c h e c k t h e r e a c h a b i l i t y b e t w e e n xo = [0, 0]' a n d X 1 = [6, 12]' d u r i n g t i m e i n t e r v a l [0, 50 7]. A s d e s c r i b e d i n A l g o r i t h m B, t h e first s t e p is t o d e t e r m i n e w h e t h e r t h e s y s t e m c a n b e
TABLE |
The control siynals to drive the fuzzy model shown in the simulation example .from x(0) = [0,0l' to x(50) = [6, 12]' u(0) = 2.9830 u(1)=3.1213 u(2) = 2.8784 u(3) = 3.1216 u(4) = 2.8781 u(5) = 3.1219 u(6) = 2.8778 u(7) = 3.1222 u(8) = 2.8775 u(9) = 3.1225 u(10) = 2.8772 u ( l l ) = 3.1228 u(12) = 2.8769 u(13) = 3.1231 u(14) = 2.8766 u(15) = 3.1234 u(16) = 2.8763 u(17) = 3.1237 u(18) = 2.8760 u(19) = 3.1240 u(20) = 2.8757 u(21) = 3.1243 u(22) = 2.8754 u(23) = 3.1247 u(24) = 2.8751
u(25) u(26) u(27) u(28) u(29) u(30) u(31) u(32) u(33) u(34) u(35) u(36) u(37) u(38) u(39) u(40) u(41) u(42) u(43) u(44) u(45) u(46) u(47) u(48) u(49)
= = = = = = = = = = = = = = = = = = = = = = = = =
3.1250 2.8748 3.1253 2.8745 3.1256 2.8742 3.1259 2.8739 3.1262 2.8736 3.1265 2.8733 3.1268 2.8730 3.1271 2.8727 3.1274 2.8724 3.1277 2.8721 3.1280 2.8718 - 1.9346 - 5.0049 0.3047
520
Chia-Ju Wu
TABLEII The state trajectory when the control signals shown in Table I are applied to the fuzzy model shown in the simulation example
x(0) x(l) x(2) x(3) x(4) x(5) x(6) x(7) x(8) x(9) x(10) x(l 1) x(12) x(13) x(14) x(15) x(16) x(17) x(18) x(19) x(20) x(22) x(23) x(24) x(25)
= = = = = = = = = = = = = = = = = = = = = = = = =
[0.0000, 0.0000]' [5.9735, 11.9174]' [0.2693,0.5678]' [5.4932, 10.9345]' [0.7502, 1.5518]' [5.0099, 9.9529]' [1.2341,2.5345]' [4.5242, 8.9714]' [1.7206, 3.5171]' [4.0363, 7.9893]' [2.2092,4.5001]' [3.5465, 7.0063]' [2.6997, 5.4840]' [3.0550, 6.0220]' [3.1921,6.4690]' [2.5617, 5.0363]' [3.6864, 7.4551]' [2.0667, 4.0494]' [4.1826, 8.4421]' [1.5698, 3.0614]' [1.0708, 2.0727]' [5.1816, 10.4174]' [0.5694, 1.0840]' [5.6851, 11.4041]' [0.0652, 0.0962]'
x(26) x(27) x(28) x(29) x(30) x(31) x(32) x(33) x(34) x(35) x(36) x(37) x(38) x(39) x(40) x(41) x(42) x(43) x(44) x(45) x(47) x(48) x(49) x(50)
= = = = = = = = = = = = = = = = = = = = =
[6.1923, 12.3885]' [0.4226,-0.8894]' [6.7039, 13.3688]' [1.0000, 1.0000]' [5.2588, 11.4868]' [0.4896, 0.00991' [5.7731, 12.4714]' [-0.0253, -0.9758]' [6.2933, 13.4490]' [1.0000, 1.0000]' [5.2607, I 1.4904]' [0.4860, 0.0027]' [5.7786, 12.4822] t [ - 0.0326, - 0.9903]' [6.3025, 13.4669]' [1.0000, 1.0000] t [5.2625, 11.4940]' [0.4824, -- 0.0046]' [5.7841, 12.4931]' [--0.0399, -- 1.0048]'
[1.oooo, 1.oooo]'
= [--4.8740,--8.7288]' = [--5.3498, -- 10.8630]' = [6.0000, 12.0000]'
driven f r o m state x r t o the same state Xrin k steps, where 1 4 k ~< 25. According to the procedure described in Steps 1 3 o f Algorithm B, it was found that the state Xl is reachable f r o m the same state xf in one step by applying the control signal u(0) = 6 to the system. Therefore, in determining the reachability o f xf f r o m xo, instead o f checking the time interval [0, 50T], only the time instant 50 Tneeds to be checked. Then, according to the procedure described in Steps 4 - 6 o f Algorithm B, it was f o u n d that xris reachable f r o m x0 in 50 steps. The values o f u(0), u(1) . . . . . u(49), and x(0), x(1) . . . . . x(50) are shown in Tables I and II, respectively. F r o m the simulation results, one can conclude that xris reachable f r o m xo during time interval [0, 507]. V. Conclusions This paper shows how to define and formulate the reachability problem o f fuzzy models between two states. In addition, it also shows how to transform this problem into a sequence o f nonlinear p r o g r a m m i n g problems provided that the operation rule o f fuzzy implication, the membership functions, and the defuzzification m e t h o d are properly chosen.
State Reachability Analysis o f Fuzzy Models
521
By assuming that the computation burden of a nonlinear programming problem is proportional to the number of variables in the problem, it is estimated that the computational complexity of the proposed algorithm is in the quadratic form. Since the computation burden of the proposed algorithm is high, a slight modification of the algorithm is made such that in the best case, only two nonlinear programming problems need to be solved to determine the reachability between two states. This will reduce the computation burden significantly and is illustrated in the simulation example. The major disadvantage of the proposed method is that the determination of state teachability can be performed in an indirect manner only. Therefore, how to solve the state reachability problem directly without transforming it into a sequence of nonlinear p r o g r a m m i n g problems is suggested as a topic for further research.
Acknowledgment This work was supported by the National Science Council, Taiwan, Republic of China, under grant NSC84-0422-E-224-011.
References (1) E. Czogala and W. Pedrycz, "On identification in fuzzy systems and its applications in control problem", Fuzzy Sets Syst., Vol. 6, pp. 73-83, 1981. (2) W. Pedrycz, "Numerical and applicational aspects of fuzzy relation equations", Fuzzy Sets Syst., Vol. 11, pp. 1-18, 1983. (3) W. Pedrycz, E. Czogala and K. Hirota, "Some remarks on the identification problems in fuzzy systems", Fuzz)' Sets Syst., Vol. 12, pp. 185-189, 1984. (4) C. W. Xu, "Fuzzy systems identification", lEE Proc., Vol. 136, Part D, pp. 146-150, 1989. (5) R. M. Tong, "Synthesis of fuzzy models for industrial process", Int. J. Gen. Syst., Vol. 4, pp. 143-162, 1978. (6) W. Pedrycz, "An identification algorithm in fuzzy relational systems", Fuzz): Sets Syst., Vol. 13, pp. 153-167, 1984. (7) B. P. Graham and R. B. Newell, "Fuzzy identification and control of a liquid level rig", Fuzzy Sets Syst., Vol. 26, pp. 255 273, 1988. (8) C. W. Xu and Y. Z. Lu, "Fuzzy model identification and self-learning for dynamics systems", IEEE Trans. Syst. Man Cybernet., Vol. 17, pp. 683-689, 1987. (9) M. Sugeno and K. Tanaka, "Successive identification of a fuzzy model and its applications to prediction of a complex system", Fuzzy Sets Syst., Vol. 42, pp. 315-334, 1991. (10) M. Sugeno and G. T. Kang, "Structure identification of fuzzy model", Fuzzy Sets Syst., Vol. 28, pp. 15-33, 1988. (11) Y. C. Lee, C. H. Hwang and Y. P. Shih, "A combined approach to fuzzy model identification", 1EEE Trans. Syst. Man Cybernet., Vol. 24, pp. 73~744, 1994. (12) T. Takagi and M. Sugeno, "Fuzzy identification of systems and its applications to modeling and control", IEEE Trans. Syst. Man Cybernet., Vol. 15, pp. 116-132, 1985. (13) C. C. Lee, "Fuzzy logic in control systems: fuzzy logic controller, part l", IEEE Trans. Syst. Man Cybernet., Vol. 20, No. 2, pp. 404-418, 1990. (14) C. C. Lee, "Fuzzy logic in control systems: fuzzy logic controller, part II", IEEE Trans. Syst. Man Cybernet., Vol. 20, No. 2, pp. 419-435, 1990. (15) D. G. Luenberger, "Linear and Nonlinear Programming", 2nd Edn, Addison Wesley, Reading, MA, 1984.