Róbert Fullér | Tibor Keresztfalvi | György Schuszter Linguistic optimization under GoetschelVoxman defuzzification TUCS Technical Report No 285, May 1999 Linguistic optimization under GoetschelVoxman defuzzification Róbert Fullér Eötvös L. University, Department of Operations Research, Múzeum krt. 6-8, H–1088 Budpaest, Hungary Tibor Keresztfalvi Eötvös L. University, Department of Applied Analysis, Múzeum krt. 6-8, H–1088 Budpaest, Hungary *Supported by the Bolyai scholarship of the Hungarian Academy of Sciences György Schuszter Kandó K. College of Engineering, Institute of Instrumentation and Automation, Tavaszmező u. 15-17, H–1084 Budpaest, Hungary TUCS Technical Report No 285, May 1999 Abstract We consider optimization problems in which the relation between the objective function and the decision variables is not known exactly but described linguistically and represented in form of fuzzy if-then rules. To deal with linguistic variables represented by fuzzy sets with non-monotonic membership functions, we suggest replacing Tsukamoto’s fuzzy reasoning method with another one based on Goetschel-Voxman defuzzification and give an alternative procedure to obtain the crisp relationship between the objective function and the decision variables. An optimal solution to the original fuzzy optimization problem can be then obtained by solving the resulting crisp mathematical programming program. We also give an example of the proposed procedure. Keywords: Defuzzification, fuzzy optimization, linguistic variables, if-then rules 1 Introduction Let us consider the optimization problem of the form max / min f (x); subject to x ∈ X ⊂ Rn , where f (x) is not known exactly for any x ∈ X but the causal link between x and f (x) is described linguistically using fuzzy if-then rules. According to [2], we can write our problem in the following form: max / min f (x); subject to {R1 (x), . . . , Rm (x) | x ∈ X ⊂ Rn }, (1) with Ri (x): if x1 is Ai1 and . . . and xn is Ain then f (x) is Ci , where Aij and Ci (i = 1, . . . , m, j = 1, . . . , n) are fuzzy numbers. We want to find crisp values x ∈ X that minimize/maximize f (x) in certain sense. One can find a number of solution procedures for this kind of problems proposed e.g. in [1]. Let us recall the one which is based on Tsukamoto’s fuzzy reasoning method [5] and suggests determining the crisp value f (u) corresponding to the crisp input u = (u1 , . . . , un ) ∈ X as follows: 1. Calculate the firing levels of individual rules by the product t-norm: λi := Ai1 (u1 ) · . . . · Ain (un ) (i = 1, . . . , m). 2. Take the crisp rule output for each if-then rule: zi := Ci−1 (λi ) (i = 1, . . . , m). 3. Aggregate the individual inputs by finding their weighted average (where the associated weights are the calculated firing levels, respectively) and get the overall system output: z := λ1 z1 + . . . + λm zm . λ1 + . . . + λm In this wise, our original optimization problem (1) turns into the following crisp mathematical programming problem: max / min f (u); subject to u ∈ X ⊂ Rn . We would like to point out that Tsukamoto’s fuzzy reasoning method (specifically its second step) assumes that the conclusion part of each if-then rule Ri is described by a fuzzy set Ci having strictly monotonic membership 1 function. On the other hand, the overall system output is calculated as the weighted average of the individual rule outputs, which is actually the discrete Center-of-Gravity of these outputs. In this paper we suggest applying the Center-of-Gravity method also in the second step of the procedure described above. This will allow our rule base to contain also if-then rules with conclusion parts having not necessarily monotonic membership functions. 2 Goetschel-Voxman defuzzification of fuzzy intervals We will represent the conclusion part of the if-then rules by fuzzy intervals having trapezoidal membership functions: a−x 1− if x ∈ [a − α, a] α 1 if x ∈ [a, b] C(x) := (a, b, α, β)(x) := (2) x − b 1 − if x ∈ [b, b + β] β 0 otherwise For us, it is more convenient now to describe a fuzzy interval with its level sets: [C]γ := {x ∈ R | C(x) ≥ γ} (0 < γ ≤ 1) and [C]0 := supp C. Obviously, the level sets of fuzzy intervals are always crisp intervals. It is also easy to verify that by introducing the notations a(γ) := min[C]γ , b(γ) := max[C]γ , we can describe the fuzzy interval (2) with its level sets as follows: [C]γ = [a(γ), b(γ)] = [a − (1 − γ)α , b + (1 − γ)β] (0 < γ ≤ 1). The Goetschel-Voxman defuzzification method [3] defines the crisp value corresponding to a fuzzy interval as the weighted average of the centers of γ-level sets. For the fuzzy interval C we have: Z 1 a(γ) + b(γ) γ· dγ 2 0 GW (C) = , (3) Z 1 γ dγ 0 i.e. the weight of the center of [C]γ is just γ. After some calculation, we can easily obtain the following expression: GW (C) = GW ((a, b, α, β)) = 2 a+b β−α + . 2 6 (4) It is clear that by shearing a trapezoidal fuzzy interval at a certain (firing) level λ ∈ [0, 1], the remaining part will also be of trapezoidal shape. The sheared fuzzy interval Cλ is not normed to 1 anymore, see Figure 1. For its level sets we have simply ( [C]γ if 0 ≤ γ ≤ λ, γ [Cλ ] = ∅ if λ < γ. According to this, the expression (3) must be slightly modified for Cλ as follows: Z λ a(γ) + b(γ) dγ γ· 2 0 GW (Cλ) = . (5) Z λ γ dγ 0 This can easily be reduced to the form GW (Cλ ) = GW ((a, b, α, β)λ) = a+b β−α + (3 − 2λ), 2 6 (6) which of course coincides with (4) if we substitute λ = 1. 1 λ a−α a Z Z C Z Z Z Z b 1 - λ b+β Z Cλ ZZ Figure 1: Sheared fuzzy interval 3 Special cases In most cases (in order to meet the requirements of Tsukamoto’s fuzzy reasoning method) rule bases consist of fuzzy if-then rules with conclusion parts having skewed triangular shape, that is a zero-width peak and zero left or right spreads, see Figure 2. Our expression (4) for these special cases reduces to the following form: α , 6 β GW ((b, b, 0, β)) = b + . 6 GW ((a, a, α, 0)) = a − 3 Shearing these skewed triangular fuzzy sets at level λ ∈ [0, 1] results in trapezoidal fuzzy intervals with one of the spreads being equal to zero. It is easy to verify that in these cases the Center-of-Gravity reads as follows: 3 − 2λ α, 6 3 − 2λ GW ((b, b, 0, β)λ ) = b + β. 6 GW ((a, a, α, 0)λ) = a − 4 (7) (8) Example Let us take a particular example from [2] with two decision variables x1 and x2 and consider the following optimization problem: min f (x1 , x2 ); subject to {x1 + x2 = 1/2, (x1 , x2 ) ∈ [0, 1]2 ⊂ R2 }, (9) where the correspondence (x1 , x2 ) 7→ f (x1 , x2 ) is given linguistically as R1 (x1 , x2 ): if x1 is small and x2 is small then f (x1 , x2 ) is small, R2 (x1 , x2 ): if x1 is small and x2 is big then f (x1 , x2 ) is big, and the linguistic values small and big are described with skewed triangular fuzzy numbers: small = (0, 0, 0, 1), big = (1, 1, 1, 0), see Figure 2. 1 HH HH H small HHH 0 big 0 1 1 1 Figure 2: Skewed fuzzy intervals Let us take an arbitrary crisp input (u1, u2 ) and follow the solution procedure described in the introduction but applying the Goetschel-Voxman defuzzification method in the second step: 1. The firing levels are obviously λ1 = (1 − u1 )(1 − u2 ), 4 λ2 = (1 − u1 )u2 . (10) 2. We defined individual rule outputs as the Center-of-Gravity of sheared fuzzy intervals and calculate them according to (7) and (8): 3 − 2λ1 6 3 − 2λ2 z2 = GW ((1, 1, 1, 0)λ2 ) = 1 − 6 z1 = GW ((0, 0, 0, 1)λ1 ) = 3. We obtain f (u1 , u2) as the weighted average of z1 and z2 with weights λ1 and λ2 , respectively: f (u1 , u2) = 3−2λ1 6 2 λ1 + (1 − 3−2λ ) λ2 6 , λ1 + λ2 i.e. after substituting (10) in this expression we get: f (u1 , u2 ) = 3 − 2(1 − u1 )(1 − u2 ) (1 − u2 ) + 6 3 − 2(1 − u1 )u2 u2 = + 1− 6 (11) 1 1 − (1 − u1 )(1 − 2u2). 2 3 Thus, we converted our initial fuzzy optimization problem into the following crisp mathematical programming problem: = f (u1 , u2) → min subject to u1 + u2 = 1/2, (u1 , u2 ) ∈ [0, 1]2 ⊂ R2 . Introducing the notation t := u1 and taking into account that u2 = 1/2 − t, we have after some reduction the equivalent problem f (t) = 1 1 + (2t − 1)2 → min, 3 6 t ∈ [0, 1/2], which has the optimal solution t∗ = 1/2, that is u∗1 = 1/2, u∗2 = 0 and the optimal value is f (u∗ ) = f (u∗1, u∗2 ) = 1/3. Firstly, we should note that this solution differs from that obtained in [2] (u∗1 = u∗2 = 1/4, f (u∗) = 3/8). However, it reflects more fairly the fact 5 included in the rule base implicitly, namely that f (x) = f (x1 , x2 ) actually depends just on (and correlates just with) x2 . We should also mention that the optimal value f (u∗ ) is calculated else-ways in [2]. We can compare the optimal values if we evaluate (11) for the input variables (u1 , u2) = (1/4, 1/4): f (1/4, 1/4) = 3/8 = 0.375 > 1/3 ≈ 0.33. On the other hand, this solution completely coincides with that obtained in [4] where the Center-of-Gravity defuzzification was involved instead of the Goetschel-Voxman method. References [1] C. Carlsson and R. Fullér, Optimization under fuzzy if-then rules, Fuzzy Sets and Systems (1999) (to appear). [2] R. Fullér, Fuzzy Reasoning and Fuzzy Optimization (TUCS General Publication, Turku, 1998). [3] R. Goetschel and W. Voxman, Topological properties of fuzzy numbers, Fuzzy Sets and Systems 9 (1983) 87–99. [4] T. Keresztfalvi, Optimization with linguistic variables using the Centerof-Gravity defuzzification, in: C. Carlsson and R. Fullér eds., Frontiers in Soft Decision Analysis, Studies in Fuzziness (Physica-Verlag, Heidelberg, 1999, to appear). [5] Y. Tsukamoto, An approach to fuzzy reasoning method, in: M. M. Gupta, R. K. Ragade and R. R. Yager eds., Advances in Fuzzy Set Theory an Applications (North-Holland, New York, 1979). 6 Lemminkäisenkatu 14 A, 20520 Turku, Finland | www.tucs.fi University of Turku • Department of Information Technology • Department of Mathematics Åbo Akademi University • Department of Computer Science • Institute for Advanced Management Systems Research Turku School of Economics and Business Administration • Institute of Information Systems Sciences ISBN 952-12-0475-3 ISSN 1239-1891