In: Proceedings of the World Automation Congress, WAC´96, Vol 5, TSI Press, May 1996
Solving Fuzzy Optimization Problems: Flexible Approaches using Simulated Annealing Fernando Moura Pires Universidade Nova Lisboa FCT, Dept. Informatica 2825 Monte Caparica Portugal e-mail:
[email protected]
João Moura Pires Universidade Nova Lisboa FCT, Dept. Informatica 2825 Monte Caparica Portugal e-mail:
[email protected]
Rita Almeida Ribeiro Universidade Nova Lisboa FCT, Dept. Informatica 2825 Monte Caparica Portugal e-mail:
[email protected]
Abstract This paper discusses flexible approaches for fuzzy optimization problems. Specifically, it presents a new solving method for fuzzy optimization problems (FOP) when the variables coefficients and/or the constraints limits parameters are imprecise. The new method uses the simulated annealing algorithm as a resolution procedure because it is a well-suited algorithm for solving all forms of fuzziness found in fuzzy optimization problems. An example is given to illustrate the method. Keywords: fuzzy optimization, simulated annealing, flexible approaches, fuzzy multiple objective decision making.
1. Introduction Negoita (Negoita, 1981) distinguishes two types of imprecision in fuzzy optimization problems: (a) flexible programming for problems with fuzzy equations and objectives (vague nature) and (b) robust programming for fuzzy coefficients or parameters (of an ambiguous nature). This paper extends the concept of flexibility to include fuzzy coefficients of variables and fuzzy objective function costs. This method is specially well-suited for problems where the decisor is willing to consider a degree of flexibility either in order to obtain better results or in presence of infeasible solutions. To illustrate the method a crisp infeasible solution problem is discussed. The most important approaches proposed in the literature to solve fuzzy coefficients in optimization problems are given by Tanaka and Asai (Tanaka & Asai, 1984a; Tanaka & Asai, 1984b), Carlsson and Korhonen (Carlsson & Korhonen, 1986), Lai and Hwang (Lai & Hwang, 1994) and Negoita and Ralescu (Zimmermann, 1986). The first three approaches may be included in the realm of possibility distributions. The later authors deal with tolerance analysis and solutions using fuzzy intervals and strict inclusion. Comprehensive overviews of this subject are given by Fredrizzi et al. (Fredizzi,Kacprzyk, & Verdegay, 1991) Dubois (Dubois, 1987) and Lai and Hwang (Lai & Hwang, 1994). This paper follows a different perspective form the above in considering that the fuzzy coefficients could be
In: Proceedings of the World Automation Congress, WAC´96, Vol 5, TSI Press, May 1996 flexible rather than considered imprecise. For example, in the case of an infeasible solution the decision maker might consider that instead of estimating the time to produce an item as 3 hours this can become flexible at “around 3”. Simulated annealing is a stochastic algorithm with the physical analogy of melting a solid using high temperatures and then slowly lowering the temperature until the system crystallizes/freezes and no more changes occur (Kirkpatrick,Gelatt, & Vecchi, 1983). The melting process is a similar process to the constraints flexibilisation in a fuzzy optimization problem and the crystallization is a similar process to the search for the “best” solution. Simulated annealing is considered a good tool for solving crisp optimization problems that are NP-complete (Kirkpatrick et al., 1983) and fuzzy optimization problems (Ribeiro & Moura-Pires, 1995a; Ribeiro & Moura-Pires, 1995b). The paper is organized in six sections. The first one is this introduction, the second section presents the basics of the fuzzy optimization problem. The third section discusses the theoretical aspects of all possible fexibilisation procedures for fuzzy optimization problems. The fourth section introduces a new solution method using the simulated annealing algorithm for fuzzy optimization problems. The fifth discusses an example of flexibility in an infeasible crisp linear problem. The sixth section presents the conclusions.
2. Fuzzy Optimization In general, fuzzy optimization problems are concerned with the maximization or minimization of a single or multiple objectives while satisfying the problem constraints, which represent the model limited resources. Fuzzy optimization’s main aim is to find the most satisfying solution (decision alternative) within a fuzzy environment. Bellman and Zadeh addressed fuzzy optimization problems in their seminal paper on “Decision making in a fuzzy environment” (Bellman & Zadeh, 1970) where they consider that in a fuzzy environment there is no distinction between objectives and constraints. Following this symmetric fuzzy decision concept Zimmermann (Zimmermann, 1978) developed the first approach for solving fuzzy linear programming problems. This approach, denoted maxmin, assumes that the decision maker stipulates a goal for each of the objective functions and hence, both goals and constraints may be considered fuzzy constraints. Further, Zimmermann proposes a crisp equivalent model for maximizing the satisfaction of the intersection of the constraints, which can be solved by traditional methods such as the simplex algorithm. Zimmermann, as did Bellman and Zadeh, points out that using flexible constraints blurs the difference between single and multiple objective problems. The fuzzification of the single or multiple objective linear programming model usually includes four forms of imprecision (Fredizzi et al., 1991) (more subtle distinctions are made in (Lai & Hwang, 1994)): 1. Problems with fuzzy constraints. E.g. “the total distance time between warehouses should be considerably fewer than 4 hours ”; 2. Problems with fuzzy objectives (goals imposed on the objective functions). E.g. “the total cost for the project should be kept well below 100.000 ECUs”; 3. Problems with fuzzy coefficients on the variables. E.g.
In: Proceedings of the World Automation Congress, WAC´96, Vol 5, TSI Press, May 1996 “the transportation cost per item (x) is about 10 ECUs”; 4. Combinations of the above. This paper concentrates on the third and forth cases, hence completing previous research on the solution of the main forms of vagueness found in fuzzy optimization using the simulated annealing algorithm (Ribeiro & Moura-Pires, 1995a; Ribeiro & Moura-Pires, 1995b). The new method deals specifically with fuzzy coefficients as vague concepts, which can be stretched in a controllable fashion as deviations from the ideal (crisp) values. In summary, the fuzzy optimization problem with fuzzy coefficients and fuzzy parameters can be mathematically expressed by:
max / min
Z = C˜ x ˜ x{!, ", =}B˜ A x!0
˜ is the technological matrix containing the fuzzy coefficients of the C˜ is the fuzzy costs vector, A ˜ is the corresponding vector of goals and resource limits (parameters). objective(s) and of the constraints and B where
3. Fuzzy Flexible Approaches This paper presents the fuzzification of a crisp optimization problem using flexible approaches. To facilitate the theoretical discussion a case of maximization with constraints of ≤ signal is provided. Consider the following classical crisp linear maximization problem: K
max ! c k x k x
s.t.
k =1 K
!a
x " b i i = 1,..., N
ik k
k=1
When either the problem has an infeasible solution, or the decision maker (DM) is willing to accept some compromise on the variable coefficients or on the objective function costs, or the resources can be stretched, then the problem can be relaxed. In general, the flexibilisation approaches to be considered are: (1) fuzzification of the constraints; (2) fuzzification of the objective function costs. Of course combinations of the two is allowed. In the first case (1), constraints fuzzification, the flexibility process replaces crisp constraints by fuzzy constraints, thus becoming a problem of constraint satisfaction with a matter of degree. Three possible flexible types could be considered: K
1.1. Fuzzifying
b i . A fuzzyfied constraint is
!a
ik
xk = b˜ i where b˜ i is a fuzzy set as depicted in the next
k=1
figure. Obviously the membership function used can be any other function that represents a relaxation of ≤ bi.
In: Proceedings of the World Automation Congress, WAC´96, Vol 5, TSI Press, May 1996
µ b˜ ( b) i
1
bi The satisfaction level of the constraint i given a vector value
x is:
K
µ i (x) = µ ˜b i (! a ikx k )
(1)
k =1
K
1.2. Fuzzifying
! a˜
a ik . A fuzzyfied constraint is
ik
xk " bi where a˜ ik is a fuzzy set that indicates how
k=1
acceptable are the values around
µ i (x) =
a ik . The satisfaction level of the constraint i given a vector x is:
{min(µ
sup y i1 ,K,y iK
˜a i1
(yi1 ),K, µ˜a iK (yiK ))
}
(2)
K
" y ikx k ! b i
k=1
K
1.3. Fuzzifying both
a ik and b i . A fuzzyfied constraint is now
! a˜
ik
xk = b˜ i . The satisfaction level of
k=1
the constraint i given a vector
x is:
K µ i (x) = sup "#min(µa˜ i1 (y i1),K, µ ˜a iK (y iK ), µ ˜b i ( ! y ikxk ))%& y i1 ,K,y iK $ k =1 '
(3)
The constraints global satisfaction level is given by the minimum of all constraints satisfaction levels:
µ(x) = min µ i (x) i =1,..., N
Let Xα be the set of
x vector values that satisfy the constraints at level greater than α:
X ! = {x:µ(x) > ! } where
(4)
(5)
µ(x) is calculated for the specified α using (4). Notice that for β < α X! " X# . If αmax is the maximal
α for which Xα is non-empty,
0 < ! 1 ! ck x *k
(7)
In: Proceedings of the World Automation Congress, WAC´96, Vol 5, TSI Press, May 1996 and this solution satisfies the constraints with level α (4) and is contained in the interval:
! < µ(x* ) " ! max Let Zα denote the optimal value for a given Xα, then:
0 < ! 1