 # Logical Fuzzy Optimization

We present a logical framework to represent and reason about fuzzy optimization problems based on fuzzy answer set optimization programming. This is accomplished by allowing fuzzy optimization aggregates, e.g., minimum and maximum in the language of fuzzy answer set optimization programming to allow minimization or maximization of some desired criteria under fuzzy environments. We show the application of the proposed logical fuzzy optimization framework under the fuzzy answer set optimization programming to the fuzzy water allocation optimization problem.

## Authors

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## 1 Introduction

Fuzzy answer set optimization is a logical framework aims to solve optimization problems in fuzzy environments. It has been shown that many interesting problems including representing and reasoning about quantitative and qualitative preferences in fuzzy environments and fuzzy optimization can be represented and solved using fuzzy answer set optimization. This has been illustrated by applying fuzzy answer set optimization to the course scheduling with fuzzy preferences problem [Saad2013b], where 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 course scheduling with fuzzy preferences problem [Saad2013b] is a fuzzy optimization problem that aims to find the optimum course assignments that meets all the instructors top fuzzy preferences in courses, class rooms, and time slots. Moreover, it has been shown in [Saad2013b] that fuzzy answer set optimization can be used to solve both crisp optimization problems and fuzzy optimization problems in a unified logical framework .

However, the lack of fuzzy aggregates preferences, e.g., minimum and maximum, in fuzzy answer set optimization makes the framework less suitable for representing and solving some fuzzy optimization problems that are based on minimization and maximization of some desired criteria imposed by the problem. For example, consider the following fuzzy optimization problem from [Loucks et al.2005].

###### Example 1

Assume that we want to find the water allocation for each of the three firms, which are located along a river, in a way that maximizes the total benefits of the three firms. Consider , , are the units of water allocation to firms one, two, and three respectively. Consider also that the benefits of the three firms denoted by , , and respectively are given by , , and . The water allocations cannot exceed the amount of water available in the river minus the amount of water that must remain in the river. Assume that amount is units. The target is to maximize the total benefits, , the objective function, which is

 maximizeT(X)=(6x1−x21)+(7x2−1.5x22)+(8x3−0.5x23)

subject to .

However, the set of possible values of are not precisely defined, rather each possible value of , for , is known to some degree, where the higher the value of the higher the degree of . The degree of each value of is given by the fuzzy membership function (objective membership function),

 Dg(X)=(6x1−x21)+(7x2−1.5x22)+(8x3−0.5x23)49.17

In addition, the amount of water available for allocations is not precisely defined either. It is more or less about units of water, which is a fuzzy constraint that is defined by the fuzzy membership function:

 Dc(X)=1ifx1+x2+x3≤5Dc(X)=7−(x1+x2+x3)2if5≤x1+x2+x3≤7Dc(X)=0ifx1+x2+x3≥7

In this fuzzy environment optimization problem, the target turns to maximize the degree of the total benefits, , having that the total amount of available water is more or less units of water, since the higher the value of , whose from is within the vicinity of , the higher the degree of . Thus, this fuzzy optimization problem becomes:

 maximizeminimum(Dg(X),Dc(X))

subject to

 Dg(X)=(6x1−x21)+(7x2−1.5x22)+(8x3−0.5x23)49.17Dc(X)=7−(x1+x2+x3)2

The optimal fuzzy solution of this fuzzy water allocation optimization problem is , , , , and and with total benefits , where .

To represent this fuzzy optimization problem in fuzzy answer set optimization and to provide correct solution to the problem, the fuzzy answer set optimization representation of the problem has to be able to represent the fuzzy membership function of the objective function (objective membership function) and the fuzzy membership function of the problem constraints (the fuzzy constraints) along with the preference relation that maximizes the minimum of both fuzzy membership functions, and to be able to compare for the maximum of the minimum of both membership functions across the generated fuzzy answer sets.

However, the current syntax and semantics of fuzzy answer set optimization do not define fuzzy preference relations or rank fuzzy answer sets based on minimization or maximization of some desired criterion specified by the user. Therefore, in this paper we extend fuzzy answer set optimization with fuzzy aggregate preferences to allow the ability to represent and reason and intuitively solve fuzzy optimization problems. Fuzzy aggregates fuzzy answer set optimization framework modifies and generalizes the classical aggregates classical answer set optimization presented in [Saad and Brewka2011] as well as the classical answer set optimization introduced in [Brewka et al.2003]. We show the application of fuzzy aggregates fuzzy answer set optimization to the fuzzy water allocation problem described in Example (1), where a fuzzy answer set program [Saad2010]

(disjunctive fuzzy logic program with fuzzy answer set semantics) is used as fuzzy answer sets generator rules.

The framework of fuzzy aggregates fuzzy answer set optimization is built upon both the fuzzy answer set optimization programming [Saad2013b] and the fuzzy answer set programming with fuzzy aggregates [Saad2013a].

## 2 Fuzzy Aggregates Fuzzy Answer Set Optimization

### 2.1 Basic Language

Let be a first-order language with finitely many predicate symbols, function symbols, constants, and infinitely many variables. A term is a constant, a variable or a function. A literal is either an atom, , in or the negation of , denoted by , where is the Herbrand base of and is the classical negation. Non-monotonic negation or the negation as failure is denoted by . The Herbrand universe of is denoted by . Let be the set of all literals in , where . Grade membership values are assigned to literals in as values from . The set and the relation form a complete lattice, where the join () operation is defined as and the meet () is defined as .

A fuzzy annotation, , is either a constant in (called fuzzy annotation constant), a variable ranging over (called fuzzy annotation variable), or (called fuzzy annotation function) where is a representation of a monotone, antimonotone, or nonmonotone total or partial function and are fuzzy annotations. If is literal and is a fuzzy annotation then is called a fuzzy annotated literal.

A symbolic fuzzy set is an expression of the form , where is a variable or a function term and is fuzzy annotation variable or fuzzy annotation function, and is a conjunction of fuzzy annotated literals. A ground fuzzy set is a set of pairs of the form such that is a constant term and is fuzzy annotation constant, and is a ground conjunction of fuzzy annotated literals. A symbolic fuzzy set or ground fuzzy set is called a fuzzy set term. Let be a fuzzy aggregate function symbol and be a fuzzy set term, then is said a fuzzy aggregate, where , , , , . If is a fuzzy aggregate and is a constant, a variable or a function term, called guard, then we say is a fuzzy aggregate atom, where .

A fuzzy optimization aggregate is an expression of the form , , , , , and , where is a fuzzy aggregate function symbol and is a fuzzy set term.

### 2.2 Fuzzy Preference Rules Syntax

Let be a set of fuzzy annotated literals, fuzzy annotated fuzzy aggregate atoms, and fuzzy optimization aggregates. A boolean combination over is a boolean formula over fuzzy annotated literals, fuzzy annotated fuzzy aggregate atoms, and fuzzy optimization aggregates in constructed by conjunction, disjunction, and non-monotonic negation (), where non-monotonic negation is combined only with fuzzy annotated literals and fuzzy annotated fuzzy aggregate atoms.

###### Definition 1

Let be a set of fuzzy annotated literals, fuzzy annotated fuzzy aggregate atoms, and fuzzy optimization aggregates. A fuzzy preference rule, , over is an expression of the form

 C1≻C2≻…≻Ck←lk+1:μk+1,…,lm:μm, notlm+1:μm+1,…,notln:μn (1)

where are fuzzy annotated literals or fuzzy annotated fuzzy aggregate atoms and are boolean combinations over .

Let be a fuzzy preference rule of the form (1), , and . Intuitively, a fuzzy preference rule, , of the form (1) 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.

Let be a fuzzy aggregate. A variable, , is a local variable to if and only if appears in and does not appear in the fuzzy preference rule that contains . A global variable is a variable that is not a local variable. Therefore, the ground instantiation of a symbolic fuzzy set

 S={X:U|C}

is the set of all ground pairs of the form
, where is a substitution of every local variable appearing in to a constant from . A ground instantiation of a fuzzy preference rule, , is the replacement of each global variable appearing in to a constant from , then followed by the ground instantiation of every symbolic fuzzy set, , appearing in . The ground instantiation of a fuzzy aggregates fuzzy answer set optimization program, , is the set of all possible ground instantiations of every fuzzy rule in .

###### Definition 2

Formally, a fuzzy aggregates 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.

###### Example 2

The fuzzy water allocation optimization problem presented in Example (1) can be represented as as a fuzzy aggregates fuzzy answer set optimization program , where is a set of disjunctive fuzzy logic rules with fuzzy answer set semantics [Saad2010] of the form:

 domX1(0.91)∨domX1(1)∨domX1(2)∨domX1(3)∨domX1(4)∨domX1(5)∨domX1(6)∨domX1(7).domX2(0.94)∨domX2(1)∨domX2(2)∨domX2(3)∨domX2(4)∨domX2(5)∨domX2(6)∨domX2(7).domX3(1)∨domX3(2)∨domX3(3)∨domX3(3.81)∨domX3(4)∨domX3(5)∨domX3(6)∨domX3(7).
 firm1(X,6∗X−X∗X)←domX1(X).firm2(X,7∗X−1.5∗X∗X)←domX2(X).firm3(X,8∗X−0.5∗X∗X)←domX3(X).objective(X1,X2,X3,y):B1+B2+B349.17←firm1(X1,B1),firm2(X2,B2),firm3(X3,B3).constr(X1,X2,X3,y):7−(X1+X2+X3)2←domX1(X1),domX2(X2),domX3(X3),5≤X1+X2+X3≤7.←domX1(X1),domX2(X2),domX3(X3),X1+X2+X3≤5.←domX1(X1),domX2(X2),domX3(X3),X1+X2+X3≥7.

where , , are predicates represent the domains of possible values for the variables , , that represent the units of water allocations to firms one, two and three respectively, is a predicate that represents the amounts of benefits, , that firm, , gets after allocated, , units of water, for , is a fuzzy annotated predicate that represents the objective membership value, , for the assignments of units of water to the variables , , , where

is a dummy constant to encode the vector of constant values

, and is a fuzzy annotated predicate that represents the fuzzy constraint membership value, , for the assignments of units of water to the variables , , , where is a dummy constant to encode the vector of constant values .

The set of fuzzy preference rules, , of consists of the fuzzy preference rule

 maxμ{Y:min(V1,V2)|objective(X1,X2,X3,Y):V1,constr(X1,X2,X3,Y):V2}←

## 3 Fuzzy Aggregates Fuzzy Answer Set Optimization Semantics

Let denotes a set of objects. Then, we use to denote the set of all multisets over elements in . Let denotes the set of all real numbers and denotes the set of all natural numbers, and denotes the Herbrand universe. Let be a symbol that does not occur in . Therefore, the semantics of the fuzzy aggregates are defined by the mappings: , , , , . The application of and on the empty multiset return and respectively. The application of on the empty multiset returns . However, the application of and on the empty multiset is undefined.

The semantics of fuzzy aggregates and fuzzy optimization aggregates in fuzzy aggregates fuzzy answer set optimization is defined with respect to a fuzzy answer set, which is, in general, a total or partial mapping, , from to . In addition, the semantics of fuzzy optimization aggregates , , , , , and are based on the semantics of the fuzzy aggregates . We say, a fuzzy annotated literal, , is true (satisfied) with respect to a fuzzy answer set, , if and only if . The negation of a fuzzy annotated literal, , is true (satisfied) with respect to if and only if or is undefined in . The evaluation of fuzzy aggregates and the truth valuation of fuzzy aggregate atoms with respect to fuzzy answer sets are given as follows. Let be a ground fuzzy aggregate and be a fuzzy answer set. In addition, let be the multiset constructed from elements in , where is true w.r.t. . Then, the evaluation of with respect to is, , the result of the application of to , where if is not in the domain of and

### 3.1 Fuzzy Preference Rules Semantics

In this section, we define the notion of satisfaction of fuzzy preference rules with respect to fuzzy answer sets.

Let be a ground fuzzy aggregates fuzzy answer set optimization program, be fuzzy answer sets of (possibly partial), and be a fuzzy preference rule in . Then the satisfaction of a boolean combination, , appearing in , by is defined inductively as follows:

1. satisfies iff .

2. satisfies iff or is undefined in .

3. satisfies iff and and .

4. satisfies iff or and or .

5. satisfies iff and for any , and or and .

6. satisfies iff and for any , and or and .

7. satisfies iff and for any , and or and .

8. satisfies iff and for any , and or and .

9. satisfies iff and for any , and and or and .

10. satisfies iff and for any , and and or and .

11. satisfies iff and .

12. satisfies iff or .

The satisfaction of by is defined inductively as:

• satisfies iff

• satisfies iff or is undefined in .

• satisfies iff and and .

• satisfies iff or and or .

• satisfies iff , satisfies and , satisfies .

The application of any fuzzy aggregate, , except , on a singleton , returns , i.e., . Therefore, we use , , , , and as abbreviations for the fuzzy optimization aggregates , , , , , and respectively, whenever is a singleton and is arbitrary fuzzy aggregate except .

###### Definition 3

Let be a ground fuzzy aggregates 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 .

### 3.2 Fuzzy Answer Sets Ranking

In this section we define the ranking of the fuzzy answer sets with respect to a boolean combination, a fuzzy preference rule, and with respect to a set of fuzzy preference rules.

Let be a ground fuzzy aggregates 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 (except is a fuzzy optimization aggregate) and one of the following holds:

• implies iff .

• implies iff or is undefined in but defined in .

• implies iff , , and .

• implies iff

• and or

• , , and

• implies and .

• 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 , , and .

• implies iff

• and or

• , , and

• implies iff and .

• implies iff

 ∀t∈{i1,i2},I1=tI2.
• implies iff

 |{I1⪰tI2|∀t∈{i1,i2}}|=|{I2⪰tI1|∀t∈{i1,i2}}|.

We say, is at least as preferred as w.r.t. , denoted by , iff or .

###### Definition 4

Let be a ground fuzzy aggregates 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