1 Introduction
Fuzzy reasoning is vital in most realworld applications. Therefore, developing welldefined frameworks for representing and reasoning in the presence of fuzzy environments is inevitable. Thus many frameworks have been proposed for fuzzy reasoning. Among these frameworks are fuzzy answer set programming [Saad2010, Saad2009, Subrahmanian1994]
, which are fuzzy logic programs with fuzzy answer set semantics
[Saad2010, Saad2009, Subrahmanian1994].As noted in [Saad2010], the importance of the fuzzy answer set programming frameworks of [Saad2010, Saad2009, Subrahmanian1994] lies in the fact that the fuzzy answer set programming frameworks of [Saad2010, Saad2009, Subrahmanian1994] are strictly more expressive than the fuzzy answer set programming framework of [Nieuwenborgh et al.2007, Janssen et al.2009]. This is because the way how a rule is fired in [Saad2010, Saad2009, Subrahmanian1994] is close to the way how it fires in classical answer set programming [Gelfond and Lifschitz1988, Gelfond and Lifschitz1991], which makes any possible extension to [Saad2010, Saad2009, Subrahmanian1994] to more expressive forms of fuzzy answer set programming is more intuitive and more flexible.
In [Saad2010], an expressive fuzzy answer set programming framework has been developed, namely extended and normal disjunctive fuzzy logic programs with fuzzy answer set semantics, that generalize and subsume; classical extended and classical normal disjunctive logic programs with classical answer set semantics [Gelfond and Lifschitz1991, Brewka and Dix1997]; extended fuzzy logic programs with fuzzy answer set semantics [Saad2009]; and normal fuzzy logic programs with fuzzy answer set semantics [Subrahmanian1994], in a unified logic programming framework to allow nonmonotonic negation, classical negation, and disjunctions under fuzzy uncertainty.
The fuzzy answer set programming framework of [Saad2010] is necessary to provide the ability to assign fuzzy uncertainly over the possible outcomes of qualitative uncertainty, which is required in many realworld applications, e.g., representing and reasoning about preferences in fuzzy environments. In a unified logical framework, [Saad2010] allows directly and intuitively to represent and reason in the presence of both fuzzy uncertainty and qualitative uncertainty. This has been illustrated by applying the fuzzy answer set programming framework of [Saad2010] to the course scheduling with fuzzy preferences problem [Saad2010], where an instructor preferences over courses are represented as a fuzzy set over courses, instructor preferences over class rooms are represented as a fuzzy set over class rooms, and instructor preferences over time slots are represented as a fuzzy set over time slots. The fuzzy answer set program encoding of the course scheduling with fuzzy preferences problem in [Saad2010] provided all possible solutions to the problem represented by fuzzy answer sets of the fuzzy answer set program encoding of the problem.
For example, consider this simple instance of the course scheduling with fuzzy preferences problem described in [Saad2010]. Assume that one of two courses, , need to be assigned to an instructor such that instructor is assigned exactly one course. Consider instructor prefers to teach over , where this preference relation is specified as a fuzzy set over the courses . Consider instructor ’s preference in teaching is characterized by the grade membership value and instructor ’s preference in teaching is characterized by the grade membership value . Thus, this course scheduling with fuzzy preferences problem instance can be encoded as a fuzzy answer set program (a disjunctive fuzzy logic program with fuzzy answer set semantics) of the form
with and are the fuzzy answer sets of the program, according to the fuzzy answer set semantics of fuzzy answer set programming of [Saad2010].
It is clear that the fuzzy answer set encodes instructor ’s top teaching preferences, which implies that the fuzzy answer set is the most preferred fuzzy answer set according to the preferences (quantitative preferences) encoded by the fuzzy answer set program. In addition, consider instructor is neutral regarding teaching either course, where ’s this teaching preference is characterized by the grade membership value for both courses. In this case, this course scheduling with fuzzy preferences problem instance can be encoded as a fuzzy answer set program of the form
with and are the fuzzy answer sets, according to the fuzzy answer set semantics of fuzzy answer set programming of [Saad2010]. Although instructor is neutral regarding teaching either course with preference each, however, it can be the case that instructor has more appeal in teaching course over course (qualitative preferences). This makes is the most preferred fuzzy answer set in this case.
The current semantics of fuzzy answer set programs [Saad2010, Saad2009, Subrahmanian1994] does not have the ability to rank fuzzy answer sets neither according to quantitative preferences nor according to qualitative preferences. Rather, fuzzy answer set programs semantics is capable of determining fuzzy answer sets that satisfy quantitative preferences presented by the fuzzy answer set program and considers all the resulting fuzzy answer sets as equally preferred.
However, for many applications, it is necessary to rank the fuzzy answer sets generated by the fuzzy answer set programs from the top (most) preferred fuzzy answer set to the least preferred fuzzy answer set, where the top (most) preferred fuzzy answer set is the one that is most desirable. This requires fuzzy answer set programs to be capable of representing both quantitative and qualitative preferences and to be capable of reasoning in the presence of both quantitative and qualitative preferences across fuzzy answer sets.
In this paper we develop a unified logical framework that is capable of representing and reasoning about both quantitative and qualitative preferences. This is achieved by defining the notion of fuzzy answer set optimization programs. Fuzzy answer set optimization programs modify and generalize the classical answer set optimization programs described in [Brewka et al.2003]. We show the application of fuzzy answer set optimization programs to the course scheduling with fuzzy preferences problem, where a fuzzy answer set program [Saad2010] (disjunctive fuzzy logic program with fuzzy answer set semantics) is used as fuzzy answer sets generator rules. To the best of our knowledge, this development is the first to consider a logical framework for reasoning about quantitative preferences, in general, and reasoning about both quantitative and qualitative preferences in particular.
Fuzzy answer set optimization programs are fuzzy logic programs under the fuzzy answer set semantics whose fuzzy answer sets are ranked according to fuzzy preference relations specified by the user. A fuzzy answer set optimization program is a union of two sets of fuzzy logic rules, . The first set of fuzzy logic rules, , is called the generator rules that generate the fuzzy answer sets that satisfy every fuzzy logic rule in . is any set of fuzzy logic rules with welldefined fuzzy answer set semantics including normal, extended, and disjunctive fuzzy logic rules [Saad2010, Saad2009, Subrahmanian1994], as well as fuzzy logic rules with fuzzy aggregates (all are forms of fuzzy answer set programming). The second set of fuzzy logic rules, , is called the fuzzy preference rules, which are fuzzy logic rules that represent the user’s quantitative and qualitative preferences over the fuzzy answer sets generated by . The fuzzy preferences rules in are used to rank the generated fuzzy answer sets from from the top preferred fuzzy answer set to the least preferred fuzzy answer set. Similar to [Brewka et al.2003], an advantage of fuzzy answer set optimization programs is that and are independent. This makes fuzzy preference elicitation easier and the whole approach is more intuitive and easy to use in practice.
2 Fuzzy Answer Set Semantics
Since we use fuzzy logic rules under the fuzzy answer set semantics to generate fuzzy answer sets, that are ultimately ranked by fuzzy preference rules, in this section we recall the fuzzy answer set semantics of disjunctive fuzzy logic sets of rules, a form of fuzzy answer set programming, as presented in [Saad2010].
2.1 Syntax
Consider a firstorder language with finitely many predicate symbols, function symbols, constants, and infinitely many variables. The Herbrand base of is denoted by . Negation as failure or nonmonotonic negation is denoted by . The grade membership values are assigned to atoms in as values from . A fuzzy annotation, , is either a constant (fuzzy annotation constant) in , a variable (fuzzy annotation variable) ranging over , or (fuzzy annotation function) where is a representation of a computable function and are fuzzy annotations. A disjunctive fuzzy logic rule is an expression of the form
(1) 
where , is an atom and is a fuzzy annotation.
Intuitively, a disjunctive fuzzy logic rule means that if it is believable that the grade membership value of each is at least and it is not believable that the grade membership value of each is at least , then there exist at least such that the grade membership value of is at least .
A disjunctive fuzzy logic rule is ground if it does not contain any variables.
2.2 Fuzzy Answer Sets Semantics
A fuzzy interpretation, , of a set of disjunctive fuzzy logic rules is a fuzzy set in the Herbrand base, , whose grade membership function is a mapping . This implies that a fuzzy interpretation, , is the mapping , where the grade membership value of an atom, , in , is . Let be a disjunctive fuzzy logic rule of the form (1). Let and
.
Definition 1
Let be a set of ground disjunctive fuzzy logic rules, be a fuzzy interpretation of , and be a disjunctive fuzzy logic rule of the form (1). Then:

satisfies in iff .

satisfies in iff .

satisfies in iff .

satisfies iff , satisfies and , satisfies .

satisfies iff such that satisfies .

satisfies iff satisfies whenever satisfies or does not satisfy .

satisfies iff satisfies every disjunctive fuzzy logic rule in and for every atom , we have , satisfies , and satisfies
A fuzzy model of a set of disjunctive fuzzy logic rules, , is a fuzzy interpretation for that satisfies . A fuzzy model, , of is called a minimal fuzzy model if there is no fuzzy model, , for such that . Let be a set of ground disjunctive fuzzy logic rules and be a fuzzy interpretation. Then, the fuzzy reduct, , of w.r.t. is a set of nonmonotonicnegationfree disjunctive fuzzy logic rules, , where:
iff
and .
Definition 2
A fuzzy interpretation, , for a set of disjunctive fuzzy logic rules, , is a fuzzy answer set of if is a minimal fuzzy model of .
3 Fuzzy Answer Set Optimization Programs
A fuzzy answer set optimization program is a union of two sets of fuzzy logic rules, , where is the set of the fuzzy answer sets generator rules and is the set of the fuzzy preference rules. In our introduction of fuzzy answer set optimization programs, we focus on the syntax and semantics of the fuzzy preference rules, , of the fuzzy answer set optimization programs, since the syntax and semantics of the fuzzy answer sets generator rules, , are the same as syntax and semantics of any set of fuzzy logic rules with fuzzy answer set semantics as described in [Saad2010, Saad2009, Subrahmanian1994].
3.1 Fuzzy Preference Rules Syntax
Let be a firstorder language with finitely many predicate symbols, function symbols, constants, and infinitely many variables. A literal is either an atom or the negation of atom (), where is the classical negation. Nonmonotonic negation or the negation as failure is denoted by . is the Herbrand base of . Let be the set of all literals in . A fuzzy annotation, , is either a constant (fuzzy annotation constant) in , a variable (fuzzy annotation variable) ranging over , or (fuzzy annotation function), where is a representation of a computable function and are fuzzy annotations.
If is a literal and is a fuzzy annotation, then is called a fuzzy annotated literal. Let be a set of fuzzy annotated literals. A boolean combination over is a boolean formula over fuzzy annotated literals in constructed by conjunction, disjunction, and nonmonotonic negation (), where nonmonotonic negation is combined only with fuzzy annotated literals.
Definition 3
A fuzzy preference rule, , over a set of fuzzy annotated literals, , is an expression of the form
(2) 
where are fuzzy annotated literals and are boolean combinations over .
Let and , where is fuzzy preference rule of the form (2). Intuitively, a fuzzy preference rule, , of the form (2) means that any fuzzy answer set that satisfies and is preferred over the fuzzy answer sets that satisfy , some , but not , and any fuzzy answer set that satisfies and is preferred over fuzzy answer sets that satisfy , some , but neither nor , etc.
Definition 4
Formally, a fuzzy answer set optimization program is a union of two sets of fuzzy logic rules, , where is a set of fuzzy logic rules with fuzzy answer set semantics, the generator rules, and is a set of fuzzy preference rules.
3.2 Fuzzy Preference Rules Semantics
In this section, we define the satisfaction of fuzzy preference rules, and the ranking of the fuzzy answer sets with respect to a fuzzy preference rule and with respect to a set of fuzzy preference rules. We say that a set of fuzzy preference rules are ground if no variables appearing in any of its fuzzy preference rules.
Definition 5
Let be a ground fuzzy answer set optimization program, be a fuzzy answer set of (possibly partial), and be a fuzzy preference rule in . Then the satisfaction of a boolean combination, , appearing in , by , denoted by , is defined inductively as follows:

iff .

iff or is undefined in .

iff and .

iff or .
Given and appearing in , the satisfaction of by , denoted by , is defined inductively as follows:

iff

iff or is undefined in .

iff , and , .
The following definition specifies the satisfaction of the fuzzy preference rules.
Definition 6
Let be a ground fuzzy answer set optimization program, be a fuzzy answer set of , be a fuzzy preference rule in , and be a boolean combination in . Then, we define the following notions of satisfaction of by :

iff and .

iff and does not satisfy any in .

iff does not satisfy .
means that satisfies the body of and the boolean combination that appears in the head of . However, means that is irrelevant (denoted by ) to or, in other words, does not satisfy the fuzzy preference rule , because either one of two reasons. Either because of does not satisfy the body of and does not satisfy any of the boolean combinations that appear in the head of . Or because does not satisfy the body of .
Definition 7
Let be a ground fuzzy answer set optimization program, be two fuzzy answer sets of , be a fuzzy preference rule in , and be boolean combination appearing in . Then, is strictly preferred over w.r.t. , denoted by , iff and or and and one of the following holds:

implies iff .

implies iff or
is undefined in but defined in . 
implies iff there exists such that and for all other , we have .

implies iff there exists such that and for all other , we have .
We say, and are equally preferred w.r.t. , denoted by , iff and or and and one of the following holds:

implies iff .

implies iff or
is undefined in both and . 
implies iff

implies iff
We say, is at least as preferred as w.r.t. , denoted by , iff or .
Definition 8
Let be a ground fuzzy answer set optimization program, be two fuzzy answer sets of , be a fuzzy preference rule in , and be boolean combination appearing in . Then, is strictly preferred over w.r.t. , denoted by , iff one of the following holds:

and and ,
where and . 
and and ,
where . 
and .
We say, and are equally preferred w.r.t. , denoted by , iff one of the following holds:

and and ,
where . 
and .
We say, is at least as preferred as w.r.t. , denoted by , iff or .
The above definitions specify how fuzzy answer sets are ranked according to a given boolean combination and according to a fuzzy preference rule. Definition 7 shows the ranking of fuzzy answer sets with respect to a boolean combination. However, Definition 8 specifies the ranking of fuzzy answer sets according to a fuzzy preference rule. The following definitions determine the ranking of fuzzy answer sets with respect to a set of fuzzy preference rules.
Definition 9 (Pareto Preference)
Let be a fuzzy answer set optimization program and be fuzzy answer sets of . Then, is (Pareto) preferred over w.r.t. , denoted by , iff there exists at least one fuzzy preference rule such that and for every other rule , . We say, and are equally (Pareto) preferred w.r.t. , denoted by , iff for all , .
Definition 10 (Maximal Preference)
Let
be a fuzzy answer set optimization program and be fuzzy answer sets of . Then, is (Maximal) preferred over w.r.t. , denoted by , iff
We say, and are equally (Maximal) preferred w.r.t. , denoted by , iff
Observe that the Maximal preference relation is more general than the Pareto preference relation, since the Maximal preference definition subsumes the Pareto preference relation.
4 Course Scheduling with Fuzzy Preferences Problem
In this section, we show that the course scheduling with fuzzy preferences problem, introduced in [Saad2010], can be easily and intuitively represented and solved in the fuzzy answer set optimization programs framework as follows.
Example 1
Quoting the course scheduling with fuzzy preferences problem introduced in [Saad2010], consider there are different instructors (denoted by ) who have to be assigned to different courses (denoted by ) in different rooms (denoted by ) at different time slots (denoted by ) under the following constraints. Exactly one course has to be assigned to each instructor. Different courses cannot be taught in the same room at the same time slot. In addition, every instructor preferences in teaching courses is given as a fuzzy set over courses, every instructor preferences in time slots is given as a fuzzy set over time slots, and every instructor preferences in rooms is given as a fuzzy set over rooms. This course scheduling with fuzzy preferences problem can be represented as a fuzzy answer set optimization program , where is a set of disjunctive fuzzy logic rules with fuzzy answer set semantics of the form:
(3)  
(4)  
(5)  
(6)  
(7)  
where are annotation variables act as place holders and for all, (), represents that instructor preference in teaching course is described by the grade membership value ; represents that instructor preference in teaching in room a course is described by the grade membership value ; and represents that instructor preference in teaching at time slot a course is described by the grade membership value . Instructors preference over courses, rooms, and time slots are encoded by the first three disjunctive fuzzy logic rules. The last two disjunctive fuzzy logic rules encode the problem constraints which are every instructor is assigned exactly one course and different courses cannot be taught in the same room at the same time.
The set of fuzzy preference rules, , of the fuzzy answer optimization program, , description of the course scheduling with fuzzy preferences problem is given by:
(8)  
(9)  
(10)  
where for all (), , similarly, , and .
Nevertheless, the fuzzy preference rules, , of the fuzzy answer set optimization program, , encoding of the course scheduling with fuzzy preferences problem can be easily and intuitively adapted according to the instructors preferences in many and very flexible ways. For example, as mentioned earlier in the introduction, it can be the case that instructor is neutral regarding teaching courses and with grade membership value each. This means that and are equally preferred to instructor . Thus, this situation can be represented in instructor fuzzy preference rule in as
Furthermore, although instructor is neutral regarding teaching courses and with grade membership value each, it can be the case that instructor has more appeal in teaching course over . So that this situation can be intuitively represented in instructor fuzzy preference rule in as
Moreover, it can be the case that each instructor, , has different rooms preferences and different time slots preferences per each course, , as some courses, , may require rooms with special equipments installed and/or better to be taught at certain time slots over the other time slots. This can be easily and intuitively achieved by replacing the disjunctive fuzzy logic rules (4) and (5) in by the following set of disjunctive fuzzy logic rules for each instructor and for each course as
(11)  
(12)  
In addition to replacing the fuzzy preference rules (9) and (10) in by the following set of fuzzy preference rules for each instructor and for each course as
(13)  
(14)  
This shows in general that fuzzy answer set optimization programs can be intuitively and flexibly used to represent and reason in the presence of both quantitative and qualitative preferences. This is more clarified by the following instance of the course scheduling with fuzzy preferences problem described below.
Example 2
Quoting [Saad2010], assume that two different courses, denoted by , need to be assigned to two different instructors, named , given that only one room, denoted by , is available and two different time slots, denoted by are allowed, with fuzzy preferences as described below. This instance of the course scheduling with fuzzy preferences problem can be encoded as an instance of the fuzzy answer set optimization program, , presented in Example 1, as a fuzzy answer set optimization program, , where in addition to the last two disjunctive fuzzy logic rules, (6) and (7), of in described in Example 1, also contains the following disjunctive fuzzy logic rules:
In addition, , contains the fuzzy preference rules:
The ground instantiation of the fuzzy preference rules in have ten relevant ground fuzzy preference rules which are:
Comments
There are no comments yet.