Optimization with linguistic variables Christer Carlsson Institute for Advanced Management Systems Research, e-mail:christer.carlsson@abo.fi Robert Fullér Turku Centre for Computer Science, e-mail: rfuller@ra.abo.fi TUC S Turku Centre for Computer Science TUCS Technical Report No 157 January 1998 ISBN 952-12-0138-X ISSN 1239-1891 Abstract The aim of this paper is to introduce a novel statement of fuzzy mathematical programming problems and to provide a method for findig a fair solution to these problems. Suppose we are given a mathematical programming problem in which the functional relationship between the decision variables and the objective function is not completely known. Our knowledge-base consists of a block of fuzzy if-then rules, where the antecedent part of the rules contains some linguistic values of the decision variables, and the consequence part consists of a linguistic value of the objective function. We suggest the use of Tsukamoto’s fuzzy reasoning method to determine the crisp functional relationship between the objective function and the decision variables, and solve the resulting (usually nonlinear) programming problem to find a fair optimal solution to the original fuzzy problem. Keywords: Linguistic variable, Tsukamoto’s fuzzy reasoning, fuzzy optimization, soft constraints TUCS Research Group Institute for Advanced Management Systems Research 1 Introduction When Bellman and Zadeh [1], and a few years later Zimmermann [14], introduced fuzzy sets into optimization problems, they cleared the way for a new family of methods to deal with problems which had been inaccessible to and unsolvable with standard mathematical programming techniques. Fuzzy optimization problems can be stated and solved in many different ways (for good surveys see [8, 15]). Usually the authors consider optimization problems of the form max/minG(x); subject to x ∈ X, where G or/and X are defind by fuzzy terms. Then they are searching for a crisp x∗ which (in certain) sense maximizes G under the (fuzzy) constraints X. For example, fuzzy linear programming (FLP) problems are stated as [10] max/min G(x) := c̃1 x1 + · · · + c̃n xn (1) < b̃ , i = 1, . . . , m, subject to ãi1 x1 + · · · + ãin xn ∼ i where x ∈ IRn is the vector of crisp decision variables, ãij , b̃i and c̃j are fuzzy quantities, the operations addition and multiplication by a real number of fuzzy quantities are defined by Zadeh’s extension principle [13], the inequality < is given by a certain fuzzy relation, G is to be maximized in relation ∼ the sense of a given crisp inequality relation between fuzzy quantities, and the (implicite) X is a fuzzy set describing the concept ”x satisfies all the constraints”. Fullér and Zimmermann [7] interpreted FLP problems (1) with fuzzy coefficients and fuzzy inequality relations as multiple fuzzy reasoning schemes, where the antecedents of the scheme correspond to the constraints of the FLP problem and the fact of the scheme is the objective of the FLP problem. Their solution process consists of two steps: first, for every decision variable x ∈ IRn , compute the (fuzzy) value of the objective function, M AX(x), via sup-min convolution of the antecedents/constraints and the fact/objective, then an (optimal) solution to FLP problem is any point which produces a maximal element of the set {M AX(x) | x ∈ IRn }. This approach has been extended to fuzzy multiobjective programming problems by Carlsson and Fullér in [4]. Unlike in (1) the fuzzy value of the objective function G(x) may not be known for any x ∈ IRn . In many cases we are able to describe the causal link between x and G(x) linguistically using fuzzy if-then rules. In this paper we consider a new statement of fuzzy optimization problems, namely max/minX G; subject to {#1 , . . . , #m }, (2) 1 where x1 , . . . , xn are linguistic variables, and #i : if x1 is Ai1 and . . . and xn is Ain then G is Ci , constitutes the only knowledge available about the values of G, and Aij and Ci are fuzzy numbers. Generalizing the fuzzy reasoning approach introduced in [4, 7] we determine the crisp value of G at y ∈ X by Tsukamoto’s fuzzy reasoning method, and obtain an optimal solution to (2) by solving the resulting (usually nonlinear) optimization problem max/min G(y), subject to y ∈ X. We illustrate the proposed method by several examples. 2 Tsukamoto’s inference mechanism The use of fuzzy sets provides a basis for a systematic way for the manipulation of vague and imprecise concepts. In particular, we can employ fuzzy sets to represent linguistic variables. A linguistic variable [13] can be regarded either as a variable whose value is a fuzzy number or as a variable whose values are defined in linguistic terms. Definition 2.1 A linguistic variable is characterized by a quintuple (x, T (x), U, G, M ) in which x is the name of variable; T (x) is the term set of x, that is, the set of names of linguistic values of x with each value being a fuzzy number defined on U ; G is a syntactic rule for generating the names of values of x; and M is a semantic rule for associating with each value its meaning. The family of all fuzzy (sub)sets in U is denoted by F(U ). We will use the following parametrized standard fuzzy partition of the unit inteval. Suppose that U = [0, 1] and T (x) consists of K + 1, K ≥ 2, terms, (see Figure 1) T = {small1 , around 1/K, around 2/K, . . . , around (K-1)/K, bigK } which are represented by triangular membership functions {A1 , . . . , AK+1 } of the form A1 (u) = [small1 ](u) = ! 1 − Ku if 0 ≤ u ≤ 1/K 0 otherwise 2 (3) 1 A1 AK Ak A2 AK+1 1/2 1/K 2/K (k-1)/K k/K (k+1)/K (K-1)/K 1 Figure 1: Standard fuzzy partition of [0, 1] with (K + 1) terms. Ku − k + 1 if (k − 1)/K ≤ u ≤ k/K Ak (u) = [around k/K](u) = k + 1 − Ku if k/K ≤ u ≤ (k + 1)/K 0 otherwise for 1 ≤ k ≤ (K − 1), and AK+1 (u) = [bigK ](u) = ! Ku − K + 1 if (K − 1)/K ≤ u ≤ 1 0 otherwise (4) (5) If K = 1 then the fuzzy partition for the [0,1] interval consists of two linguistic terms {small, big} which are defined by small(t) = 1 − t, big(t) = t, t ∈ [0, 1]. (6) Suppose that U = [0, 1] and T (x) consists of 2K + 1, K ≥ 2, terms, T = {small1 , . . . , smallK = small, big0 = big, big1 , . . . , bigK } which are represented by triangular membership functions as smallk (u) = for k ≤ k ≤ K, ! 1− 0 K u k u−k/K bigk (u) = 1−k/K 0 if 0 ≤ u ≤ k/K otherwise if k/K ≤ u ≤ 1 otherwise (7) (8) for 0 ≤ k ≤ K − 1. A fuzzy set A in X is called a fuzzy point if there exists a y ∈ X such that A(t) = 1 if t = y and A(t) = 0 otherwise. We will use the notation A = ȳ. Fuzzy points are used to represent crisp values of linguistic variables. If x is a linguistic variable in the universe of discourse X and y ∈ X then 3 1 small1 smallk 1/K big1 bigk 1 k/K Figure 2: Fuzzy partition for G. we simple write ”x = y” or ”x is ȳ” to indicate that y is a crisp value of the linguistic variable x. Triangular norms were introduced by Schweizer and Sklar [11] to model the distances in probabilistic metric spaces. In fuzzy sets theory triangular norms are extensively used to model the logical connective and. Definition 2.2 A mapping T : [0, 1] × [0, 1] → [0, 1] is a triangular norm (t-norm for short) iff it is symmetric, associative, nondecreasing in each argument and T (a, 1) = a, for all a ∈ [0, 1]. The three basic t-norms are: (i) minimum: T (a, b) = min{a, b}, (ii) L # ukasiewicz: T (a, b) = max{a + b − 1, 0}, and (iii) product (or probabilistic): T (a, b) = ab. We briefly describe Tsukamoto’s fuzzy reasoning method [12]. Consider the following fuzzy inference system, #1 : if x1 is A11 and . . . and xn is A1n then z is C1 ... #m : if x1 is Am1 and . . . and xn is Amn then z is Cm Input: x1 is ȳ1 and . . . and xn is ȳn Output: z0 where Aij ∈ F(Uj ) is a value of linguistic variable xj defined in the universe of discourse Uj ⊂ IR, and Ci ∈ F(W ) is a value of linguistic variable z defined in the universe W ⊂ IR for i = 1, . . . , m and j = 1, . . . , n. We also suppose that W is bounded and each Ci has strictly monotone (increasing or decreasing) membership function on W . The procedure for obtaining the crisp output, z0 , from the crisp input vector y = {y1 , . . . , yn } and fuzzy rule-base # = {#1 , . . . , #m } consists of the following three steps: 4 A12 A11 C1 !1 z1 A21 C2 A22 !2 z2 A31 x1 A32 C3 x2 min z3 !3 Figure 3: Illustration of Tsukamoto’s inference mechanism. • We find the firing level of the i-th rule as αi = T (Ai1 (y1 ), . . . , Ain (yn )), i = 1, . . . , m, (9) where T usually is the minimum or the product t-norm. • We determine the (crisp) output of the i-th rule, denoted by zi , from the equation αi = Ci (zi ), that is, zi = Ci−1 (αi ), i = 1, . . . , m, where the inverse of Ci is well-defined because of its strict monotonicity. • The overall system output is defined as the weighted average of the individual outputs, where associated weights are the firing levels. That is, −1 α1 z1 + · · · + αm zm α1 C1−1 (α1 ) + · · · + αm Cm (αm ) z0 = = αm + · · · + αm α1 + · · · + αm i.e. z0 is computed by the discrete Center-of-Gravity method. If W = IR then all linguistic values of x1 , . . . , xn also should have strictly monotone membership functions on IR (that is, 0 < Aij (x) < 1 for all x ∈ IR), 5 Figure 4: Sigmoid membership functions for ”z is small” and ”z is big”. because Ci−1 (1) and Ci−1 (0) do not exist. In this case x1 , . . . , xn and z usually have sigmoid membership functions of the form big(t) = 1 , 1 + exp(−b(t − c)) small(t) = 1 1 + exp(b# (t − c# )) where b, b# > 0 and c, c# > 0. 3 Optimization under fuzzy if-then rules Let G: IRn → IR be a function and let X ⊂ IRn . A constrained optimization problem can be stated as min G. X In many practical cases the function G is not known exactly. In this paper we consider the following fuzzy optimization problem min G; subject to {#1 , . . . , #m }, X (10) where x1 , . . . , xn are linguistic variables, and the only available knowledge about the values of G is given as a block fuzzy if-then rules of the form #i : if x1 is Ai1 and . . . and xn is Ain then G is Ci , here Aij are fuzzy numbers (with continuous membesrhip function) representing the linguistic values of xi defined in the universe of discourse Uj ⊂ IR; and Ci , i = 1, . . . , m, are linguistic values (with strictly monotone and continuous membership functions) of the objective function G defined in the universe W ⊂ IR. To find a fair solution to the fuzzy optimization problem (10) we first determine the crisp value of the objective function G at y ∈ X from the fuzzy rule-base # using Tsukamoto’s fuzzy reasoning method as G(y) := −1 α1 C1−1 (α1 ) + · · · + αm Cm (αm ) α1 + · · · + αm 6 where the firing levels, αi = T (Ai1 (y1 ), . . . , Ain (yn )), i = 1, . . . , m, are computed according to (9). To determine the firing level of the rules, we suggest the use of the product t-norm (to have a smooth output function). In this manner our constrained optimization problem (10) turns into the following crisp (usually nonlinear) mathematical programmimg problem min G(y); subject to y ∈ X. The same principle is applied to constrained maximization problems max G; subject to {#1 , . . . #m }, X (11) Remark 3.1 If X is a fuzzy set in U1 × · · · × Un ⊂ IRn with membership function µX (e.g. given by soft constraints as in [14]) and W = [0, 1] then following Bellman and Zadeh [1] we define the fuzzy solution to problem (11) as D(y) = min{µX (y), G(y)}, for y ∈ U1 × · · · × Un , and an optimal (or maximizing) solution, y ∗ , is determined from the relationship D(y ∗ ) = sup D(y) (12) y∈U1 ×···×Un Example 1 Consider the optmization problem min G; subject to y ∈ X = {(y1 , y2 ) ∈ U1 × U2 | y1 + y2 = 1/2} (13) where U1 = U2 = [0, 1], and #1 : if x1 is small and x2 is small then G is small, #2 : if x1 is small and x2 is big then G is big, and the universe of discourse for the linguistic value of G is also the unit interval [0, 1] (see Figure 4). We will compute the firing levels of the rules by the product t-norm. Let the membership functions in the rule-base # be defined by (6). Let [y1 , y2 ] ∈ [0, 1] × [0, 1] be an input vector to the fuzzy system. Then the firing leveles of the rules are α1 = (1 − y1 )(1 − y2 ), α2 = (1 − y1 )y2 , It is clear that if y1 = 1 then no rule applies because α1 = α2 = 0. So we can exclude the value y1 = 1 from the set of feasible solutions. The individual rule outputs are z1 = 1 − (1 − y1 )(1 − y2 ), 7 z2 = (1 − y1 )y2 , x1 is small 1 !1 z1 1 x2 is big x1 is small y1 G is small x2 is small y2 1 1 1 G is big product !2 z2 1 Figure 5: Illustration of Example 1. and, therefore, the overall system output is (1 − y1 )(1 − y2 )(1 − (1 − y1 )(1 − y2 )) + (1 − y1 )y2 (1 − y1 )y2 = y1 +y2 −2y1 y2 (1 − y1 )(1 − y2 ) + (1 − y1 )y2 Thus our original fuzzy problem min G; subject to {#1 , #2 }, X turns into the following crisp nonlinear mathematical programming problem min (y1 + y2 − 2y1 y2 ) subject to y1 + y2 = 1/2, 0 ≤ y1 < 1, 0 ≤ y2 ≤ 1. which has the optimal solution y1∗ = y2∗ = 1/4 and its optimal value is G(y ∗ ) = 3/8. It is clear that if there were no other constraints on the crisp values of x1 and x2 then the optimal solution to (13) would be y1∗ = y2∗ = 0 with G(y ∗ ) = 0. Example 1 clearly shows that we can not just choose the rule with the smallest consequence part (the first first rule) and fire it with the maximal firing level (α1 = 1) at y ∗ ∈ [0, 1], and take y ∗ = (0, 0) as an optimal solution to (10). The rules represent our knowledge-base for the fuzzy optimization problem. The fuzzy partitions for lingusitic variables will not ususally satisfy ε-completeness, normality and convexity. In many cases we have only a few 8 x is small G is small !1 z1 1 x is big y 1 G is big z2 1 !2 1 Figure 6: Illustration of Example 2. (and contradictory) rules. Therefore, we can not make any preselection procedure to remove the rules which do not play any role in the optimization problem. All rules should be considered when we derive the crisp values of the objective function. We have chosen Tsukamoto’s fuzzy reasoning scheme, because the individual rule outputs are crisp numbers, and therefore, the functional relationship between the input vector y and the system output G(y) can be relatively easily identified (the only thing we have to do is to perform inversion operations). Example 2 Consider the problem max G X (14) where X is a fuzzy susbset of the unit interval with membership function µX (y) = 1 , y ∈ [0, 1], 1+y and the fuzzy rules are #1 : if x is small then G is small, #2 : if x is big then G is big, Let y ∈ [0, 1] be an input to the fuzzy system {#1 , #2 }. Then the firing leveles of the rules are α1 = 1 − y, α2 = y. The individual rule outputs are z1 = (1 − y)y, z2 = y 2 and, therefore, the overall system output is G(y) = (1 − y)y + y 2 = y 9 Then according to (12) our original fuzzy problem (14) turns into the following crisp biobjective mathematical programming problem max min{y, 1 }; subject to y ∈ [0, 1], 1+y which has the optimal solution ∗ y = √ 5−1 2 and its optimal value is G(y ∗ ) = y ∗ . Consider the following one-dimensional problem max G; subject to {#1 , . . . , #K+1 }, X (15) where U = W = [0, 1], #i : if x is Ai then G is Ci . Ai is defined by equations (3, 4, 5), the linguistic values of G are selected from (7, 8), i = 1, . . . , K + 1. It is clear that exactly two rules fire with nonzero degree for any input y ∈ [0, 1]. Namely, if & ' k−1 k y ∈ Ik := , , K K then #k and #k+1 are applicable, and therefore we get −1 (Ky − k + 1) G(y) = (k − Ky)Ck−1 (k − Ky) + (Ky − k + 1)Ck+1 for any k ∈ {1, . . . , K}. In this way the fuzzy maximization problem (15) turns into K independent maximization problem −1 (Ky − k + 1)} max {max(k − Ky)Ck−1 (k − Ky) + (Ky − k + 1)Ck+1 k=1,...,K X∩Ik If x ∈ IRn , with n ≥ 2 then a similar reasoning holds, with the difference that we use the same fuzzy partition for all the lingusitic variables, x1 , . . . , xn , and the number of applicable rules grows to 2n . 10 4 Summary We have introduced a novel statement of fuzzy mathematical programming problems and priveded a method for findig a fair solution to these problems. We addressed mathematical programming problems in which the functional relationship between the decision variables and the objective function is not completely known. Our knowledge-base is assumed to consist only of a block of fuzzy if-then rules, where the antecedent part of the rules contains some linguistic values of the decision variables, and the consequence part consists of a linguistic value of the objective function. We suggested the use of Tsukamoto’s fuzzy reasoning method to determine the crisp functional relationship between the objective function and the decision variables, and solve the resulting (usually nonlinear) programming problem to find a fair optimal solution to the original fuzzy problem. The results of this paper can be extended to multiple objective optimization problems under fuzzy if-then rules. Furthermore, we can refine the fuzzy rule-base by introducing new lingusitic variables modeling the linguistic dependencies between the variables and the objectives [2, 3, 5, 6]. These will be the subjects of our future research. References [1] R.E.Bellman and L.A.Zadeh, Decision-making in a fuzzy environment, Management Sci. 17, No 4, 1970, B141-B154. [2] C.Carlsson and R.Fullér, Interdependence in fuzzy multiple objective programming, Fuzzy Sets and Systems, 65(1994) 19-29. [3] C.Carlsson and R.Fullér, Fuzzy if-then rules for modeling interdependencies in FMOP problems, in: Proceedings of EUFIT’94 Conference, September 20-23, 1994 Aachen, Germany, Verlag der Augustinus Buchhandlung, Aachen, 1994 1504-1508. [4] C.Carlsson and R.Fullér, Fuzzy reasoning for solving fuzzy multiple objective linear programs, in: R.Trappl ed., Cybernetics and Systems ’94, Proceedings of the Twelfth European Meeting on Cybernetics and Systems Research, World Scientific Publisher, London, 1994, vol.1, 295301. [5] C.Carlsson and R.Fullér, Multiple Criteria Decision Making: The Case for Interdependence, Computers & Operations Research, 22(1995) 251260. 11 [6] R.Felix, Relationships between goals in multiple attribute decision making, Fuzzy sets and Systems, 67(1994) 47-52. [7] R.Fullér and H.-J.Zimmermann, Fuzzy reasoning for solving fuzzy mathematical programming problems, Fuzzy Sets and Systems 60(1993) 121-133. [8] M.Inuiguchi, H.Ichihashi and H. Tanaka, Fuzzy Programming: A Survey of Recent Developments, in: Slowinski and Teghem eds., Stochastic versus Fuzzy Approaches to Multiobjective Mathematical Programming under Uncertainty, Kluwer Academic Publishers, Dordrecht 1990, pp 45-68 [9] A. Kusiak and J. Wang, Dependency analysis in constraint negotiation, IEEE Transactions on Systems, Man, and Cybernetics, 25(1995) 13011313. [10] H. Rommelfanger, Fuzzy linear programming and applications, European Journal of Operational Research, 92(1996) 512-527. [11] B.Schweizer and A.Sklar, Associative functions and abstract semigroups, Publ. Math. Debrecen, 10(1963) 69-81. [12] 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 and Applications (North-Holland, New-York, 1979). [13] L.A.Zadeh, The concept of linguistic variable and its applications to approximate reasoning, Parts I,II,III, Information Sciences, 8(1975) 199-251; 8(1975) 301-357; 9(1975) 43-80. [14] H.-J. Zimmermann, Description and optimization of fuzzy systems, Internat. J. General Systems 2 (1975) 209-215. [15] H.-J.Zimmermann, Fuzzy Mathematical Programming, in: Stuart C. Shapiro ed., Encyclopedia of Artificial Intelligence, John Wiley & Sons, Inc., Vol. 1, 1992 521-528. 12 Turku Centre for Computer Science Lemminkäisenkatu 14 FIN-20520 Turku Finland http://www.tucs.abo.fi University of Turku • Department of Mathematical Sciences Åbo Akademi University • Department of Computer Science • Institute for Advanced Management Systems Research Turku School of Economics and Business Administration • Institute of Information Systems Science