Multiple-Criteria Fuzzy Evaluation: The Fuzzme Software Package
Multiple-Criteria Fuzzy Evaluation: The Fuzzme Software Package
Multiple-Criteria Fuzzy Evaluation: The Fuzzme Software Package
Pavel Holecek2
1 Introduction
In practice, sophisticated models of multiple-criteria evaluation are required (e.g. rating of clients in banks, evaluation of
hospitals or universities, comparison of alternative solutions
to ecological problems). For creating the evaluating models,
setting some of their input data and interpreting their outputs,
experts knowledge is needed (e.g. evaluations of alternatives
according to qualitative criteria, partial evaluating functions
for quantitative criteria, a choice of a suitable type of aggregation, criteria weights, or eventually, a rule base describing
the relation between criteria values, the overall evaluation and
a linguistic description of obtained results). Because uncertainty is the typical feature of any expert information, the
fuzzy set theory is a suitable mathematical tool for creating
such models. For the practical use of the fuzzy models of
multiple-criteria evaluation, their user-friendly software implementation is necessary. But a good theoretical basis of the
used models is crucial, too. The clear and well-elaborated theory of multiple-criteria fuzzy evaluation makes it possible to
create an understandable methodics for the software user. And
a good methodics is essential for correct application of any
software to solving real problems.
There is a large number of papers and books dealing with
the theory and methods of multiple-criteria evaluation that
make use of the fuzzy approach (e.g. [1], [2], [3], [4]).
Multiple-criteria evaluation (as a basis of decision making)
was even one of the earliest applications of fuzzy sets (see
[1]). In more than 40 years of existence of the fuzzy sets theory, several software products for multiple-criteria decision
making, which use the fuzzy modeling principles in different degrees and in different ways, have been developed. In
practice, FuzzyTECH (see [5]) is probably the best-known of
these. It enables to use the specific instruments of the fuzzy
set theory for solving multiple-criteria evaluation and decision
making problems. Generally, FuzzyTECH is a universal software product which makes it possible to create and use fuzzy
expert systems (or fuzzy controllers). It also includes the possibility to derive fuzzy rule bases from given data by means
of neural network algorithms. In the book [6], there were described many successful applications of this software to solving multiple-criteria evaluation and decision making problems
in the areas of business and finance. Similarly, fuzzy toolboxes of general mathematical systems such as Matlab can be
used for multiple-criteria decision making.
The FuzzME software (Fuzzy models of Multiple-criteria
Evaluation), presented in this paper, is based on a theoretical concept of evaluation which is very close to the original
Zadehs ideas. Similarly to his paper [1], the evaluations of
alternatives according to particular criteria represent their degrees of fulfillment of the corresponding partial goals. Besides
evaluations expressed by real numbers in [0, 1], fuzzy evaluations modeled by fuzzy numbers on the same interval are employed in the software. They represent, analogously, the fuzzy
degrees of fulfillment of the partial goals which are connected
to the criteria. Resulting fuzzy evaluations, which are obtained
by aggregation, have a similar clear interpretation. This theoretical approach to (fuzzy) evaluation was published in the
book [7] and in the paper [8].
The predecessor of the FuzzME software package in terms
of the used theoretical basis was the NEFRIT software. This
software for multiple-criteria evaluation and decision making,
which is also based on fuzzy technologies, was developed
in about 2000 by the Czech software company TESCO SW
Inc. The fuzzy model of evaluation applied there is described
in detail in [8] and in the book [7] (a demo version of NEFRIT is enclosed in the book). NEFRIT makes it possible
to work with expert fuzzy evaluations of alternatives according to qualitative criteria. Values of the quantitative criteria
can either be crisp or fuzzy. Evaluating functions for quantitative criteria represent membership functions of corresponding partial goals. The main evaluation structure is expressed
by a goals tree. For aggregation of the partial fuzzy evaluations the weighted average method is used. The weights (crisp
only, not fuzzy) express the shares of partial evaluations in the
aggregated one. Fuzzy evaluations on all levels of aggregation express the fulfillment of the corresponding goals. The
NEFRIT software was originally developed for the Czech National Bank (decision making about granting a credit). Further, it was used e.g. by the Czech Tennis Association, the
Czech Basketball Association and in other institutions. Nowadays it is tested by the Supreme Audit Office of the Czech
Republic.
In contrast to NEFRIT, the FuzzME software makes it possible to use also uncertain weights in the aggregation by means
of the weighted average method. The theory of normalized
fuzzy weights, procedures for their setting, and an effective
algorithm for calculation of fuzzy weighted average are taken
from [9], [10] and [11]. Another fuzzy aggregation operator,
available in the FuzzME software, is a fuzzified OWA operator. Again, it works with normalized fuzzy weights. The fuzzy
OWA operator and the used algorithm for its calculation are
described in [12]. In the FuzzME software, multiple-criteria
evaluating functions can also be defined by means of fuzzy
rule bases. In accordance with [7], two algorithms are offered
for the approximate reasoning - the standard Mamdani algorithm and a modified Sugeno algorithm.
There are also software tools for multiple-criteria decision
making based on other mathematical methods. But they are
usually designed for solving a particular assignment. Our investigation by means of Internet did not result software fully
comparable to FuzzME. Its universality and comprehensiveness make it unique.
Preliminaries
A fuzzy set A on a universal set X is characterized by its membership function A : X [0, 1]. Ker A denotes a kernel of
A, Ker A = {x X | A(x) = 1}. For any [0, 1], A
denotes an -cut of A, A = {x X | A(x) }. A support of A is defined as Supp A = {x X | A(x) > 0}.
The symbol hgt A denotes a height of the fuzzy set A,
hgt A = sup {A(x) | x X}. An intersection and a union
of the fuzzy sets A and B on X are defined for all x X
by the following formulas: (A B)(x) = min {A(x), B(x)},
(A B)(x) = max {A(x), B(x)}.
A fuzzy number is a fuzzy set C on the set of all real numbers < which satisfies the following conditions: a) the kernel
of C, Ker C, is not empty, b) the -cuts of C, C , are closed
intervals for all (0, 1], c) the support of C, Supp C, is
bounded. A fuzzy number C is called to be defined on [a, b],
if Supp C [a, b]. Real numbers c1 c2 c3 c4 are
called significant values of the fuzzy number C if the following holds: [c1 , c4 ] = Cl(Supp C), [c2 , c3 ] = Ker C, where
Cl(Supp C) denotes a closure of Supp C.
Any fuzzy number C can be characterized by a pair of functions c : [0, 1] <, c : [0, 1] < which are defined by the
following formulas: C = [c(), c()] for all (0, 1], and
Cl(Supp C) = [c(0), c(0)]. The fuzzy number C is called to
be linear if both the functions c, c are linear. A linear fuzzy
number is fully determined by its significant values because
c() = (c2 c1 ) + c1 , c() = (c3 c4 ) + c4 . For that
reason, we can denote it as C = (c1 , c2 , c3 , c4 ).
An ordering of fuzzy numbers is defined as follows: a fuzzy
number C is greater than or equal to a fuzzy number D, if
C D for all (0, 1].
A fuzzy scale makes it possible to represent a closed interval of real numbers by a finite set of fuzzy numbers. Let
T1 , T2 , ..., Ts be fuzzy numbers defined on [a, b], forming a
fuzzy partition on the interval, i.e., for all x [a, b] the following holds
s
X
Ti (x) = 1,
(1)
i=1
then the set of the fuzzy numbers can be linearly ordered (see
[7]). If the fuzzy numbers T1 , T2 , ..., Ts are defined on [a, b],
form a fuzzy partition on the interval and are numbered according to their linear ordering, then they are said to form a
fuzzy scale on [a, b] .
An uncertain division of the whole into m parts can be modeled by normalized fuzzy weights. Fuzzy numbers V1 , ..., Vm
defined on [0, 1] are normalized fuzzy weights if for any
i {1, ..., m} and any (0, 1] it holds that for any vi Vi
there exist vj Vj , j = 1, ..., m, j 6= i, such that
vi +
m
X
vj = 1.
(2)
j=1,j6=i
Goals tree
Criteria of evaluation
Qualitative criteria
A linguistic scale on [a, b] is a special case of the linguistic variable (V, T (V), X, G, M ), where X = [a, b], T (V) =
{T1 , T2 , ..., Ts } and the meanings of the linguistic values
T1 , T2 , . . . , Ts are modeled by fuzzy numbers T1 , T2 , . . . , Ts
which form a fuzzy scale on [a, b]. As the set of linguistic
values of the scale is defined explicitly, it is not necessary to
include the grammar G into the scale notation.
In the FuzzME software, the user defines a linguistic scale
for each qualitative criterion in the fuzzy-scale editor. For example, the linguistic scale quality of a product can contain
linguistic values poor, substandard, standard, above standard
and excellent. The evaluating linguistic scale is usually defined on [0, 1]; in other cases, it has to be transformed to this
interval.
The extended linguistic scale contains, besides elementary
terms of the original scale, T1 , T2 , . . . , Ts , also derived terms
in the form Ti to Tj , where i < j, i, j {1, 2, . . . , s}.
For example, the user can evaluate quality of a product by
the linguistic term standard to excellent. The meaning of
the linguistic value Ti to Tj is modeled by Ti L Ti+1 L
L Tj , where L denotes the union of fuzzy sets based
on the Lukasiewicz disjunction; e.g. (Ti L Ti+1 )(x) =
min {1, Ti (x) + Ti+1 (x)} for all x <.
The linguistic scale with intermediate values is the original
linguistic scale enriched with derived terms between Ti and
Ti+1 , i {1, 2, . . . , s 1}. The meaning of the derived term
between Ti and Ti+1 is modeled by the arithmetic average of
the fuzzy numbers Ti and Ti+1 .
In the FuzzME software, the user evaluates a given alternative according to a qualitative criterion by selecting a proper
linguistic evaluation from a drop-down list box. He/she can
choose the value from a standard linguistic scale, extended
scale or scale with intermediate values.
The three mentioned structures of linguistic values are also
applied when resulting fuzzy evaluations are approximated
linguistically.
3.2.2 Quantitative criteria
The evaluation of an alternative with respect to a quantitative
criterion is calculated from the measured value of the criterion by means of the evaluating function expertly defined for
the criterion. The evaluating function is the membership function of the corresponding partial goal. The FuzzME software
admits both crisp and fuzzy values of quantitative criteria. The
fuzzy values represent inaccurate measurements or expert estimations of the criteria values. In the case of a fuzzy value,
the corresponding partial fuzzy evaluation is calculated by the
extension principle.
In the FuzzME software, the evaluating function of a quantitative criterion is formally set by means of a fuzzy number.
For example, if the evaluating function is defined by a linear
fuzzy number F = (f1 , f2 , f3 , f4 ), then f1 is the lower limit
of all at least partly acceptable values of the criterion, f2 is the
lower limit of its fully satisfactory values, f3 is the upper limit
of the fully satisfactory values, and f4 is the upper limit of the
acceptable values.
For example, when a bank evaluates expected profitability
of projects, the evaluating function can be defined by a linear
fuzzy number with significant values 10, 30, 500, 500. In that
case, values lower than 10% are not satisfying at all (the client
would not be able to pay the money back to the bank). For the
values from 10% to 30% the satisfaction of the bank is growing linearly. Values greater than 30% are fully satisfactory
from the banks point of view. Values greater than 500% are
not supposed to occur. This way we can define a monotonous
evaluating function, which is the most common in the evaluating models, by a fuzzy number.
3.3
i=1
(3)
n
X
wi = 1.
(4)
i=1
U =
n
[
Ui .
(9)
i=1
Generally, the result obtained by the Mamdani inference algo(5) rithm need not be a fuzzy number. So, for further calculations
within the fuzzy model, it must be approximated by a fuzzy
The algorithm used to calculate the ordered fuzzy weighted number.
average in the FuzzME software was taken from [12], where
The advantage of the generalized Sugeno inference algofuzzification of the OWA operator is described in detail. The rithm (see [7]) is that the result is always a fuzzy number. In
used algorithm is an analogy to the one used for the fuzzy its first step, the degrees of correspondence hi , i = 1, . . . , n,
weighted average.
are calculated in the same way as in the Mamdani fuzzy inference algorithm.
3.3.3 Fuzzy expert system
The resulting fuzzy evaluation U is then computed as a
The fuzzy expert system is used if the relationship between the weighted average of the fuzzy evaluations Ui , i = 1, 2, . . . , n,
criteria (or the partial evaluations) and the overall evaluation which model the mathematical meanings of linguistic evaluais complicated. Theoretically, it is possible to model, with an tions on the right-hand sides of the rules, with the weights hi .
arbitrary precision, any Borel measurable function by means This is done by the following formula
of a fuzzy rule base (properties of Mamdani and Sugeno fuzzy
n
P
controllers, see e.g. [13]) In reality, the quality of the approxhi .Ui
imation is limited by the experts knowledge of the relationU = i=1
.
(10)
n
P
ship.
hi
If the fuzzy rule base models the relation between values of
i=1
criteria and the fulfillment of the corresponding partial goal,
3.4 Overall fuzzy evaluations, the optimum alternative
then the evaluation function is of the following form
The final result of the consecutive aggregation of the partial
If C1 is A1,1 and . . . and Cm is A1,m , then E is U1
(6) fuzzy evaluations is an overall fuzzy evaluation of the given
alternative. The obtained overall fuzzy evaluations are fuzzy
If C1 is A2,1 and . . . and Cm is A2,m , then E is U2
numbers on [0, 1]. They express uncertain degrees of fulfill.............................................
ment of the main goal by the particular alternatives.
If C1 is An,1 and . . . and Cm is An,m , then E is Un
The FuzzME software compares alternatives according to
the centers of gravity of their overall fuzzy evaluations. A
center of gravity of a fuzzy number U on [0, 1] that is not a
where for i = 1, 2, . . . , n, j = 1, 2, . . . , m, (Cj , T (Cj ), real number, is defined as follows
Vj , Mj ) are linguistic scales representing the criteria, Ai,j
R1
U (x).x dx
T (Cj ) are their linguistic values, (E, T (E), [0, 1], Me ) is a lintU = R0 1
.
(11)
guistic scale representing the evaluation of alternatives and
U (x) dx
0
Ui T (E) are its linguistic values.
In the FuzzME software, rule bases are defined expertly. If U = u and u <, then tU = u. In the FuzzME softThe user defines such a rule base by assigning a linguistic ware, the optimum alternative is the one whose overall fuzzy
evaluation to each possible combination of linguistic values evaluation has the largest center of gravity.
At present, the FuzzME software is aimed above all at solvof criteria.
For given values of criteria, a resulting fuzzy evaluation is ing multiple-criteria evaluation problems. To ensure high percalculated either by the Mamdani fuzzy inference algorithm formance in choosing the optimum alternative, it will be necessary to include in the software other methods of ordering
or by the generalized Sugeno inference.
In the case of the Mamdani fuzzy inference, the degree hi of the fuzzy evaluations in the future. Some approaches are
of correspondence between the given m-tuple of fuzzy values proposed in [7] and further research in this area is planned.
0
0
0
(A1 , A2 , . . . , Am ) of criteria and the mathematical meaning
4 Example of a practical application of the
of the left-hand side of the i-th rule is calculated for any i =
FuzzME software
1, . . . , n in the following way
The FuzzME software was tested e.g. on a soft-fact-rating
0
0
hi = min {hgt(A1 Ai,1 ), . . . , hgt(Am Ai,m )}. (7) problem of one of the Austrian banks. The problem was
solved in co-operation with the Technical University in Vi0
Then for each of the rules, the output fuzzy value Ui , i = enna (see [14]). The fuzzy model of evaluation represents a
1, . . . , n, corresponding to the given input fuzzy values, is cal- part of the creditability evaluation of companies carried out by
the bank - the evaluation according to soft (qualitative) data,
culated as follows
which complements the evaluation according to hard (quan0
y [0, 1] : Ui (y) = min {hi , Ui (y)}.
(8) titative) data. The previous practical experience of the bank
i=1
i=1
5 Conclusion
The software product FuzzME is a result of many years of
research in the area of the theory and methods of multiplecriteria fuzzy evaluation. The type of evaluation consistently
used in the software corresponds well to the fuzzy sets theory paradigm; the evaluations of alternatives express the fuzzy
degrees of fulfillment of given goals. In the FuzzME software, several new methods, algorithms and tools of fuzzy
modeling were implemented, e.g.: a structure of normalized
fuzzy weights, fuzzy weighted average and ordered fuzzy
weighted average operations and algorithms for their calculation, linguistic scales and linguistic variables derived from
them. Well-elaborated theoretical basis of the FuzzME software provides a clear interpretation of all steps of the evaluation process and brings understanding of methodology to the
user. The FuzzME software is user-friendly. The positive features of the software product proved themselves by solving the
mentioned soft-fact-rating problem.
References
[1] R.E. Bellman and L.A Zadeh. Decision-making in fuzzy enviroment. Management Sci., 17 (4):141164, 2007.
[2] R.R. Yager. On ordered weighted averaging aggregation operators in multicriteria decision making. IEEE Trans.Systems Man
Cybernet, 3 (1):183190, 1988.
[3] Y. J. Lai and C. L. Hwang. Multiple Objective Decision Making.
Springer - Verlag, Berlin, Heidelberg, 1994.
[4] H. Rommelfanger. Fuzzy Decision Support Systeme. Springer
- Verlag, Berlin, Heidelberg, 1988.
[5] INFORM GmbH. FuzzyTECH home page. http://www.
fuzzytech.com/.
[6] C. Von Altrock. Fuzzy Logic and NeuroFuzzy Applications in
Bussiness and Finance. Prentice Hall, New Jersey, 1996.
[7] J. Talasova. Fuzzy methods of multiple criteria evaluation and
decision making (in Czech). Publishing House of Palacky University, Olomouc, 2003.
[8] J. Talasova. NEFRIT - multicriteria decision making based on
fuzzy approach. Central European Journal of Operations Research, 8(4):297319, 2000.
[9] O. Pavlacka. Fuzzy methods of decision making (in Czech).
PhD thesis, Faculty of Science, Palacky Univerzity, Olomouc,
2007.
[10] O. Pavlacka and J. Talasova. Application of the fuzzy weighted
average of fuzzy numbers in decision-making models. New
Dimensions in Fuzzy Logic and related technologies, Proceedings of the 5th EUSFLAT Conference, Ostrava, Czech Repub epnicka, V. Novak, U.
lic, September 11-14 2007, (Eds. M. St
Bodenhofer), II:455462, 2007.
[11] O. Pavlacka and J. Talasova. The fuzzy weighted average operation in decision making models. Proceedings of the 24th International Conference Mathematical Methods in Economics,
13th - 15th September 2006, Plzen (Ed. L. Lukas), pages 419
426, 2006.
[12] J. Talasova and I. Bebca kova. Fuzzification of aggregation operators based on Choquet integral. Aplimat - Journal of Applied
Mathematics, 1(1):463474, 2008. ISSN 1337-6365.
[13] B. Kosko. Fuzzy thinking: The new science of fuzzy logic. Hyperion, New York, 1993.
[14] K. Furst. Applying Fuzzy Models in Rating Systems. Department of Statistics and Probability Theory, Vienna University of
Technology, Vienna, 2008. Term paper.