# Resource Allocation with Answer-Set Programming

Save this PDF as:

Size: px
Start display at page:

## Transcription

3 João Leite, José Alferes, Belopeta Mito Resource Allocation with Answer-Set Programming where wmax Π and lmax Π denote the maximum weight and maximum level over the weak constraints in Π, respectively; Ni Π (A) denotes the set of the weak constraints in level i that are violated by A, and weight(w) denotes the weight of the weak constraint w. Intuitively, the function f Π handles priority levels. It guarantees that the violation of a single constraint of priority level i is more expensive than the violation of all weak constraints of the lower levels (i.e., all levels <i). For a DLV program Π (possibly with weak constraints), a set A is an (optimal) answer set of Π if and only if: 1) A is an answer set of Rules(Π) and 2) H P (A) is minimal over all the answer sets of Rules(Π). Let AS (Π) denote the set of (optimal) answer sets of Π. DLV also allows for aggregate functions whose syntax is defined as follows. A (DLV) symbolic set is a pair {Vars: Conj} where Varsis a list of variables and Conj is a conjunction of standard literals. Intuitively, a symbolic set {X:a(X,Y),p(Y)} stands for the set of X-values making a(x,y),p(y) true. An aggregate function is of the form f (S) where S is a symbolic set, and f is a function name among #count, #min, #max, #sum, #times. An aggregate atom is Lg 1 f (S) 2 Rg where f (S) is an aggregate function, 1, 2 {=,<,,>, }and Lg and Rg are terms. One of Lg and Rg can be omitted. Rules can also include aggregate atoms in their bodies. As an example, consider a predicate person(name,age,salary). The aggregate atom 19<#min{A:person(N,A,S)} 30 then evaluates to true iff the age of the youngest person is in the range [20..30]. The aggregate function #sum{s,n:person(n,a,s)}=t returns the sum of the salaries of all the employees 1. The formal semantics of aggregates can be found in [7]. 3. RESOURCE ALLOCATION In this Section we take a closer look at resources, agents, allocations and preference representations, presenting, as we proceed, ASP encodings of these concepts that serve as the building blocks of the ASP programs used to solve the different MARA problems. Before we proceed with a detailed account of the relevant concepts related to MARA we set forth a more formal definition both of the input and the solution space. A Multi-Agent Resource Allocation Setting (MARA Setting) is a triple A, R, U where A = {a 1,a 2,..., a n} is a set of n agents, R = {r 1,r 2,..., r m} is a set of m resources and U = {ur a1,ur a2,..., ur an } is a set of preference representations of the agents. An allocation is a mapping M : A 2 R from agents to a subset of resources R such that M (a i) M (a j)= for any two agents a i a j. If Θ= A, R, U is a MARA Setting, then, Ag (Θ) = A, Res (Θ) = R, Pref (Θ) = U and M Θ denotes the set of all possible allocations. 3.1 Resources, Agents and Allocations Resources play a central role in any resource allocation problem. We can categorise resources according to their nature and the way they are treated during allocation. They are usually categorised as continuous or discrete, indivisible or divisible, sharable or non sharable and static or non static (c.f. [5] for explanation). In this paper we deal with the allocation of discrete, indivisible, non sharable and static resources, each represented by a fact in ASP. Likewise, agents will be represented by simple facts in ASP. Let Θ be a MARA Setting. Then Π Θ AR contains: ag(a). a Ag (Θ). res(r). r Res (Θ). 1 The sum is formed over the first variable. The second, N, ensures that one value per person is summed. Otherwise, two people with the same salary would only be summed once. Before we proceed, we introduce the ASP encoding of an allocation. Let M i : A 2 R be an allocation. Then Π Mi contains: has(a,r,i). a, r : r M i (A). al(i). 3.2 Preference Representation Agents preferences represent the relative or the absolute agent s satisfaction with a particular allocation, and are necessary for defining the quality aspects of a solution to a resource allocation problem. A preference structure represents the preferences of an agent over a possible set of alternatives. We will consider two preference structures: cardinal and ordinal. The cardinal preference structure consists of a utility function u :2 R Valwhere 2 R is the set of alternative bundles (sets of resources), and Valis a set of numeric values or a totally ordered scale of qualitative values (e.g. very bad, bad, average, good...). The former is called quantitative while the latter alternatives qualitative preference structure. In this paper we do not consider the qualitative case as it can be reduced to the quantitative one. The ordinal preference structure consist of binary relations between alternatives x y denoting that the bundle x is at least as preferred as the bundle y. Strict preference is denoted by x y. Other kinds not considered here include the binary preference structure which partitions the set of alternatives into good ones and bad ones, and fuzzy preference structure which is a fuzzy relation over the set of alternatives 2 R, i.e. a function f :2 R 2 R [0, 1] defining the degree to which one alternative is preferred over the other. Since such preferences have not been extensively studied and are rarely used in practice, they are not further considered here. Preferences must be properly represented when used in practice. Since the number of alternatives is exponential wrt. the number of resources, an explicit representation (listing all alternatives with their utility values for cardinal preference, or the full relation for ordinal preferences) is exponentially large. For this reason, languages for succinct preference representation are important. In what follows, we present some common languages, first for the quantitative cardinal preference representation and then for the ordinal preference representation, together with their ASP encodings Bundle Form Preferences The bundle form is the most basic approach for representing quantitative preferences. It simply enumerates all bundles for which the agent has a non-zero utility. Thus, a preference representation in the bundle form is a set of pairs B,u(B) for all bundles B such that u (B) 0. In ASP, we will encode quantitative preferences through the definition of a predicate ut(a i,v,a j,x)which represents the utility V agent A i assigns to the set of resources (bundle) given to agent A j in allocation X. Let Θ be a MARA Setting with maximum utility u max and preferences in the bundle form 2. Then Π Θ BFS contains the rules: utg(0..u max ). ut(a,u,a,x):-al(x),ag(a), has(a,r 1,X),...,has(A,r i,x), not has(a,r j,x),...,not has(a,r n,x). B,u ur a : B = {r 1,..., r i} Res (Θ) B = {r j,..., r n} and ur a Pref (Θ). The first two predicates in the body of the rule, al(x),ag(a), are required to make the rules safe. Similar predicates will be used in other ASP encodings. 2 u max is the highest utility expressed by an agent, rather than the highest utility expressible by an agent, hence easy to determine. 651

4 AAMAS th International Conference on Autonomous Agents and Multiagent Systems May, 2009 Budapest, Hungary For some problems it is useful to explicitly define a predicate ut(a i,0,a j,x) when the utility value is equal to zero: Π Θ BF = Π Θ BFS Π Θ Z where Π Θ Z contains the rule: has_ut(a 1,A 2,X):-al(X),ag(A 1 ;A 2 ), ut(a 1,V,A 2,X),V!=0. ut(a 1,0,A 2,X):-al(X),ag(A 1 ;A 2 ), not has_ut(a 1,A 2,X) K-additive Preferences Another approach is the k-additive form [6] which exploits regularities in a function in order to build efficiently computable succinct representations. Given k N, a utility function u is k- additive if and only if for every set of resources T of size less or equal to k there exists a coefficient α T such that u (R) = T R αt, for every set of resources R. If a utility function is represented in terms of such coefficients then it is given in the k-additive form. Thus, a preference representation in the k-additive form is a set of pairs of the form T,α T. Intuitively the coefficient α T represents the additional gain of utility when having all the resources in T together i.e. it represents the synergetic value of T. Let Θ be a MARA Setting with maximum utility u max and preferences in k-additive form. Then Π Θ KA contains the rules: utg(0..u max ). c(a,α,i,a,x):-al(x),ag(a), has(a,r 1,X),...,has(A,r n,x). ut(a 1,U,A 2,X):-al(X),ag(A 1 ;A 2 ),utg(u), #sum{c,i:c(a 1,C,I,A 2,X)}=U. t i = T,α ur a : T = {r 1,..., r n} and ur a Pref (Θ) Logic-based Preferences An alternative approach for compact representation of preferences is the explicit use of logic languages [13]. In a logic-based preference representation each resource r i corresponds to a propositional formula p ri that is true if the agent owns that resource and false otherwise. Every bundle corresponds to a model. Agents express their preferences in terms of propositional formulae (goals) they want to be satisfied. The simplest such representation is to have one propositional formula representing the goal G. The agent s utility is 1 if the received bundle R satisfies the goal G (R = G), and 0 otherwise (R = G). We adopt a refinement where we consider a preference representation as a set of goals {G 1,...,G n} and then count the number of satisfied goals in R. We assume propositional formulae to be in disjunctive normal form. Let Θ be a MARA Setting with maximum utility u max and preferences in logic-based form. Then Π Θ LB contains the rules: utg(0..u max ). g(a,i,a,x):-al(x),ag(a), has(a,r 1,X),...,has(A,r h,x), not has(a,r i,x),...,not has(a,r j,x). ut(a 1,U,A 2,X):-al(X),ag(A 1 ;A 2 ),utg(u), #count{g:g(a 1,G,A 2,X)}=U. d k = p r1... p rh p ri... p rj :1 k m where d 1... d m = G i, G i ur a and ur a Pref (Θ). Another refinement is to associate a weight w i to each goal (i.e. the preference representation is { G 1,w 1,..., G n,w n }). The weight represents the importance of a goal and is used to associate penalties to the bundles that do not satisfy it. Here, for simplicity, we consider the utility of a bundle to be the sum of the weights of all the goals it satisfies. This representation is called weighted goals. As the k-additive representation, this representation can express the synergetic value of having two resources together. Let Θ be a MARA Setting with maximum utility u max and preferences as weighted goals. Then Π Θ WG contains the rules: utg(0..u max ). g(a,i,w,a,x):-al(x),ag(a), has(a,r 1,X),...,has(A,r h,x), not has(a,r i,x),...,not has(a,r j,x). ut(a 1,U,A 2,X):-al(X),ag(A 1 ;A 2 ),utg(u), #sum{w,g:g(a 1,G,W,A 2,X)}=U. d k = p r1... p rh p ri... p rj :1 k m where d 1... d m = G i, G i,w ur a and ur a Pref (Θ) Prioritized Goals We now turn our attention to ordinal preference representations and consider prioritized goals. When representing ordinal preferences, logic based languages play a central role. In essence, a very similar representation to the one of weighted goals is used for representing ordinal preferences. The only difference is that instead of weights this representation uses priority relation on goals and thus it is called prioritized goals. A goal base is a set of goals with an associated function {G 1,...,G n},r where if r(g i)=j then j is the rank of the goal G i. By convention a smaller rank means a higher priority. In this case, we define the predicate sat(a 1,G,A 2,X) indicating that goal G of agent A 1 is satisfied by the bundle assigned to agent A 2 in allocation X. These predicates will subsequently be used to define preference relations between bundles and allocations. Let Θ be a MARA Setting and preferences in logic-based form as prioritized goals with maximum rank r max. Then Π Θ PG contains the rules: r(1..r max +1). g(a,g,r). sat(a,g,a,x):-al(x),ag(a), has(a,r 1,X),...,has(A,r h,x), not has(a,r i,x),...,not has(a,r j,x). d k = p r1... p rh p ri... p rj :1 k m where d 1... d m = G i, G i GB, GB, r ur a,r = r (G i), ur a Pref (Θ) and g =Φ(G i) where Φ is a function that returns a unique identifier for each goal. For each agent, a preference relation can be defined over the allocations (resp. the bundles allocated to different agents in extended preferences) with respect to the ordinal preferences. There are three common orderings: best out, descrimin and leximin [4]. For each, the ASP encoding defines a predicate pref_al(a,x 1,X 2) meaning that an agent A prefers the bundle received in allocation X 1 at least as much as the one received in allocation X 2 (resp. pref_b(a,a 1,A 2,X) meaning that in allocation X, agent A prefers the bundle allocated to A 1 at least as much as the one allocated to A 2). Some auxiliary predicates, common to the definition of both pref_al and pref_b will also be defined. Best-out ordering: An allocation M 2 is best out preferred over an allocation M 1 if the minimal rank of goal(s) not satisfied in M 1 is less or equal to the minimal rank of goal(s) not satisfied in M 2. Formally, M 1 bo GB M 2 iff min {r (G i):m 1 = G i} min {r (G i):m 2 = G i}. The encoding in ASP is accomplished by the programs Π BOc containing the common predicates, Π BOal and Π BOb defining the pref_al and pref_b predicates respectively. Π BOc contains the rules: nsat(a 1,A 2,R,X):-al(X),ag(A 1 ;A 2 ),g(a 1,G,R), not sat(a 1,G,A 2,X). hasmin(a,a 1,X):-nsat(A,A 1,R,X). Π BOal =Π BOc together with the rules: M 2<=M 1,#min{R 1 :nsat(a,a,r 1,X 1 )}=M 1, #min{r 2 :nsat(a,a,r 2,X 2 )}=M

5 João Leite, José Alferes, Belopeta Mito Resource Allocation with Answer-Set Programming not hasmin(a,a,x 1 ). Π BOb =Π BOc together with the rules: pref_b(a,a 1,A 2,X):-al(X),ag(A,A 1 ;A 2 ),A 1!=A 2, M 2<=M 1,#min{R 1 :nsat(a,a 1,R 1,X)}=M 1, #min{r 2 :nsat(a,a 2,R 2,X)}=M 2. pref_b(a,a 1,A 2,X):-al(X),ag(A,A 1 ;A 2 ),A 1!=A 2, not hasmin(a,a 1,X). Descrimin ordering: An allocation M 2 is descrimin preferred over an allocation M 1 if the minimal rank of goal(s) not satisfied in M 1 but satisfied in M 2 is lower than the minimal rank of goal(s) not satisfied in M 2 but satisfied in M 1, or if the sets of goals satisfied in each allocation are equal. Formally, let d (M 1,M 2) = min{r (G i):m 1 = G i M 2 = G i}. Then M 1 do GB M 2 iff d (M 1,M 2) <d(m 2,M 1) or {G i : M 1 = G i} = {G i : M 2 = G i}. The encodings in ASP are: Π DOal contains the rules: ald(a,x 1,X 2,D):-al(X 1 ;X 2 ),X 1!=X 2,ag(A), g(a,g,d),not sat(a,g,a,x 1 ),sat(a,g,a,x 2 ). hasd(a,x 1,X 2 ):-al(x 1 ;X 2 ),X 1!=X 2,ag(A), ald(a,x 1,X 2,D). G 2<G 1,#min{D 1 :ald(a,x 1,X 2,D 1 )}=G 1, #min{d 2 :ald(a,x 2,X 1,D 2 )}=G 2. not hasd(a,x 1,X 2 ). Π DOb contains the rules: bd(a,a 1,A 2,X,D):-al(X),ag(A;A 1 ;A 2 ),g(a,g,d), not sat(a,g,a 1,X),sat(A,G,A 2,X). hasbd(a,a 1,A 2,X):-al(X),ag(A;A 1 ;A 2 ), bd(a,a 1,A 2,X,D). pref_b(a,a 1,A 2,X):-al(X),ag(A,A 1 ;A 2 ),G 2 <G 1, #min{d 1 :bd(a,a 1,A 2,X,D 1 )}=G 1, #min{d 2 :bd(a,a 2,A 1,X,D 2 )}=G 2. pref_b(a,a 1,A 2,X):-al(X),ag(A,A 1 ;A 2 ), not hasbd(a,a 1,A 2,X). Leximin ordering: An allocation M 2 is leximin preferred over an allocation M 1 if it satisfies more goals of certain rank i, and an equal number of goals for all ranks which are smaller than i. Formally, let d k (M) = {G i : M = G i r (G i)=k}. Then, M 1 lo GB M 2 iff k : d k (M 1) < d k (M 2) and j < k : d j (M 1) = d j (M 2). M 1 lo GB M 2 iff M 1 lo GB M 2 or j : d j (M 1)=d j (M 2). The encodings in ASP are: Π LOc contains the rules: dk(a,a 2,R,DK,X):-al(X),ag(A;A 2 ),r(r), #count{g:sat(a,g,a 2,X),goal(A,G,R)}=DK. Π LOal =Π LOc together with the rules: difalp(a,x 1,X 2,R):-al(X 1 ;X 2 ),X 1!=X 2,ag(A), r(r;r 2 ),R>R 2,dk(A,A,R 2,DK 1,X 1 ), dk(a,a,r 2,DK 2,X 2 ),DK 1!=DK 2. r(r),dk(a,a,r,dk 1,X 1 ),dk(a,a,r,dk 2,X 2 ), DK 1>DK 2,not difalp(a,x 1,X 2,R). not difalp(a,x 1,X 2,r max +1). Π LOb =Π LOc together with the rules: difbr(a,a 1,A 2,X,R):-ag(A;A 1 ;A 2 ),A 1!=A 2,al(X), r(r;r 2 ),R>R 2,dk(A,A 2,R 2,DK 2,X), dk(a,a 1,R 2,DK 1,X),DK 1!=DK 2. pref_b(a,a 1,A 2,X):-al(X),ag(A;A 1 ;A 2 ),A 1!=A 2, r(r),dk(a,a 1,R,DK 1,X),dk(A,A 2,R,DK 2,X), DK 1>DK 2,not difbr(a,a 1,A 2,X,R). pref_b(a,a 1,A 2,X):-al(X),ag(A;A 1 ;A 2 ),A 1!=A 2, not difbr(a,a 1,A 2,X,r max +1). 3.3 Qualitative Issues In general, the quality of a solution to a resource allocation problem is defined by a metric that depends, in one way or another, on the preferences of the agent. The aggregation of the individual preferences in such metric is often modeled using the notion of social welfare as studied in Welfare Economics and Social Choice Theory. Depending on the system s goals, different social welfare functions can be used for measuring the quality of an allocation [1, 15]. The most fundamental quality criterion for a solution is Pareto Optimality. Given a MARA Setting Θ, an allocation M is paretodominated by another allocation Q if and only if: 1) a i Ag (Θ) : M (a i) ai N (a i) and 2) a i Ag (Θ) : M (a i) ai N (a i). In the case of utility functions, we simply replace M (a i) ai N (a i) and M (a i) ai N (a i) with u i (M (a i)) u i (N (a i)) and u i (M (a i)) <u i (N (a i)). An allocation is pareto-optimal if and only if it is not pareto-dominated by any other allocation. The ASP encodings of pareto dominance define a predicate pd(x 1,X 2) indicating that allocation X 2 is dominated by allocation X 1. They are, for the cardinal and ordinal preferences respectively: Π POc contains the rules: pd(x 1,X 2 ):-al(x 1 ;X 2 ),dm(x 1,X 2 ),not dm(x 2,X 1 ). dm(x 1,X 2 ):-al(x 1 ;X 2 ),ag(a),ut(a,u 1,A,X 1 ), ut(a,u 2,A,X 2 ),U 1 >U 2. Π POo contains the rules: pd(x 1,X 2 ):-al(x 1 ;X 2 ),dm(x 1,X 2 ),not dm(x 2,X 1 ). dm(x 1,X 2 ):-al(x 1 ;X 2 ),ag(a),pref_al(a,x 1,X 2 ), not pref_al(a,x 2,X 1 ). Envy freeness is also a purely ordinal quality criterion. An allocation is envy-free when every agent is at least as satisfied with the bundle allocated to it as with the bundles allocated to other agents. Given a MARA Setting Θ, an allocation M is envy-free if and only if a i,a j Ag (Θ) : M (a j) ai M (a i) for the case of ordinal preferences, and a i,a j Ag (Θ) : u i (M (a j)) u i (M (a i)). The ASP encodings of envy-freeness define a predicate ef(x) indicating that allocation X is not envy-free. They are, for the cardinal and ordinal preferences respectively: Π EFc contains the rules: ef(x):-al(x),ag(a 1 ;A 2 ),A 1!=A 2, ut(a 1,U 1,A 1,X),ut(A 1,U 2,A 2,X),U 2 >U 1. Π EFo contains the rules: ef(x):-al(x),ag(a 1 ;A 2 ),A 1!=A 2, pref_b(a 1,A 2,A 1,X),not pref_b(a 1,A 1,A 2,X). In some cases, when no envy-free allocation exists, we may be interested in minimizing some measure of the degree of envyness. Given an allocation, the degree of envyness of some agent wrt. another agent is given by the difference between its utility and the other agent s utility, in case its own is smaller. This is encoded in ASP as follows: Π EFod contains the rules: envy(a 1,A 2,D,X):-al(X),ag(A 1 ;A 2 ),A 1!=A 2, ut(a 1,U 1,A 1,X),ut(A 1,U 2,A 2,X),U 2 >U 1,U 2 -U 1=D. Given a MARA Setting Θ and an allocation M, envy (M) denotes the sum of the degree of envyness of all pairs of agents Social Welfare When the agents have their preferences expressed with a utility function, then every allocation M gives rise to the utility vector u 1 (M),..., u n (M). A collective utility function (CUF) is a mapping from such a vector to a numeric value. Since every allocation determines a utility vector, CUF can also be considered as a function from allocations to numeric values which represent the social welfare of the corresponding allocation. Thus, given a CUF sw, an allocation M is socially preferred to allocation N if and 653

6 AAMAS th International Conference on Autonomous Agents and Multiagent Systems May, 2009 Budapest, Hungary only if sw (N) <sw(m). The most common CUF is the utilitarian social welfare defined as the sum of the individual utilities of the agents. Formally, given a MARA Setting Θ, sw ut (M) = a Ag(Θ) ua (M). This CUF is useful e.g. when the concern is the overall profit in e-commerce applications. This CUF is encoded in ASP as follows: let Θ be a MARA Setting with a agents and maximum utility u max. Let i = a u max and np = u a max Then Π Θ SWut contains the rules: w(0..i). sw(s,x):-al(x),w(s),#sum{u,a:ut(a,u,a,x)}=s. If ensuring fairness is a priority, then the appropriate CUF is egalitarian social welfare defined by the utility of the agent that is currently worst off. Formally, given a MARA Setting Θ, sw eg (M) = min (u a (M) :a Ag (Θ)). This CUF is useful when there is the need to satisfy the minimum needs of a large number of customers. Considering the same setting, this CUF is encoded in ASP with Π Θ SWeg which contains the rules: w(0..u max). sw(s,x):-al(x),w(s),#min{u:ut(a,u,a,x)}=s. The opposite of the above CUF is the elitist social welfare defined by the utility of the agent that is currently best off. Formally, given a MARA Setting Θ, sw el (M) =max (u a (M) :a Ag (Θ)). This CUF is useful when only one agent is required to achieve its goals. Considering the same setting, this CUF is encoded in ASP with Π Θ SWel containing the rules: w(0..u max). sw(s,x):-al(x),w(s),#max{u:ut(a,u,a,x)}=s. A compromise between the utilitarian and egalitarian social welfare in the sense that it favors overall utility and reduces inequalities between agents is provided by the Nash product, defined as the product of the individual utilities. Formally, given a MARA Setting Θ, sw ut (M) = a Ag(Θ) ua (M). Considering the same setting, this CUF is encoded in ASP with Π Θ SWnp containing the rules: w(0..np). sw(s,x):-al(x),w(s), #times{u,a:ut(a,u,a,x)}=s. 4. ASP BASED SOLUTIONS OF MARA Now that we have ASP representations of the main MARA related concepts, we can turn our attention to the use of ASP to solve the MARA problems. Solving problems using DLV implementation of ASP follows the classical Guess/Check/optimise programming methodology. This is done by guessing a possible allocation (or enumerating all possible valid allocations), checking its compliance with a certain criteria (or eliminating the ones which do not satisfy such criteria) and optimise among the ones that passed the previous check (further eliminating the non-optimal ones). As will be seen, this last step is not always required. We start with a program module to enumerate the possible allocations. The preference representations do not matter at this stage since they are only used for the checking part. One possible approach to the enumeration of all allocations is to use the DLV rule: has(a,r,o); has(a,r,o):-ag(a),res(r). whose meaning is that for each agent A and each resource R, in allocation o either the agent has the resource, represented by the predicate has(a,r,o) or the agent does not have the resource, represented by the predicate has(a,r,o). This encoding would have to be accompanied by a set of rules to eliminate allocations in which some resource is allocated to more than one agent, and those where not all resources are allocated. Instead, we opt for a different encoding in ASP which allocates each resource to exactly one agent using a technique known as general enumeration of exactly one [2]. Let Θ be a MARA Setting. Then: Π Θ G =Π Θ AR Π Θ Gen where Π Θ Gen contains the rules: al(o). has(a,r,o):-ag(a),res(r),not has(a,r,o). has(a,r,o):-ag(a;b),res(r),has(b,r,o),a!=b. Note that we are already including the rules of Π Θ AR, previously defined, in Π Θ G since they will always be present. 4.1 Welfare Optimisation Problem The welfare optimisation problem is the problem of checking whether there is an allocation which exceeds a certain value in respect to a particular social welfare function. The input is a MARA Setting Θ and a value k. Then Π k WOd contains the rule: :-sw(sw,o),sw<=k. THEOREM 1 (DECISION). Let Θ be a MARA Setting with a agents, maximum utility u max and preferences in one of bundle, k- additive, logic based or weighted goals form. Let k u a max. Let sw be one of utilitarian, egalitarian, elitist or Nash-product social welfare functions. Let Π Θ Pref and Π Θ SW be defined according to the table below. Then 3 : for each allocation M M Θ : sw (M) > k there is an answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π k WOd) such that has(a,r,o) S iff r M (a). for each answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π k WOd) there is an allocation M M Θ such that has(a,r,o) S iff r M (a) and sw (M) >k. Preference Form Π Θ Pref Social Welfare Π Θ SW bundle Π Θ BF Utilitarian Π Θ k-additive Π Θ SWut KA Egalitarian Π Θ logic based Π Θ SWeg LB Elitist Π Θ weighted goals Π Θ SWel WG Nash-product Π Θ SWnp The above theorem indicates that deciding if such allocation exists is equivalent to deciding if an answer set exists, and finding one (resp. all) such allocation(s) is equivalent to finding one (resp. all) answer-set(s). We now turn our attention to finding the optimal solutions. As this is a problem that falls outside the NP and conp complexity classes, it can only be solved with weak constraints. Π WOo contains the rule: :~w(sw),not sw(sw,o).[sw:1]. THEOREM 2 (OPTIMISATION). Let Θ be a MARA Setting with preferences in one of bundle, k-additive, logic based or weighted goals form. Let sw be one of utilitarian, egalitarian, elitist or Nash-product social welfare functions. Let Π Θ Pref and Π Θ SW be defined according to the table above, and Π Θ G and Π WOo as before. Then: for each allocation M M Θ : M M Θ,sw(M ) > sw (M) there is an answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π WOo) such that has(a,r,o) S iff r M (a). for each answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π WOo) there is an allocation M M Θ such that has(a,r,o) S iff r M (a) and M M Θ,sw(M ) >sw(m). 4.2 Welfare Improvement Problem The welfare improvement problem is the problem of checking whether a given allocation is optimal with respect to a particular social welfare function or, in other words, if there is another allocation which improves the value of such welfare function. The input is a MARA Setting Θ and an initial allocation M. Π WI contains the rule: :-sw(sw i,i),sw(sw o,o),sw i>=sw o. 3 Lack of space prevents the presentation of the proofs of theorems. 654

7 João Leite, José Alferes, Belopeta Mito Resource Allocation with Answer-Set Programming THEOREM 3 (DECISION). Let Θ be a MARA Setting with preferences in one of bundle, k-additive, logic based or weighted goals form. Let M i M Θ be an allocation. Let sw be one of utilitarian, egalitarian, elitist or Nash-product social welfare functions. Let Π Θ Pref and Π Θ SW be defined according to the table above, and Π Θ G, Π Mi and Π WI as before. Then: for each allocation M o M Θ : sw (M o) >sw(m i) there is an answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π WI Π Mi ) such that has(a,r,o) S iff r M o (a). for each answer set S AS(Π Θ G Π Θ Pref Π Θ SW Π WI Π Mi ) there is an allocation M o M Θ such that has(a,r,o) S iff r M o (a) and sw (M o) >sw(m i). 4.3 Pareto Optimality Problem The pareto optimality problem is the problem of checking whether a particular allocation is pareto optimal, i.e. it is not pareto dominated (there is no other allocation which increases the utilities of at least one agent without decreasing the utility of the others). The input is a MARA Setting Θ and an initial allocation M. Π PO contains the rule: :-not pd(o,i). THEOREM 4 (DECISION - CARDINAL PREFERENCES). Let Θ be a MARA Setting with preferences in one of bundle, k-additive, logic based or weighted goals form. Let M i M Θ be an allocation. Let Π Θ Pref be defined according to the table above, and Π Θ G, Π POc, Π Mi and Π PO as before. Then: for each allocation M o M Θ such that M o pareto dominates M i there is an answer set S AS(Π Θ G Π Θ Pref Π POc Π PO Π Mi ) such that has(a,r,o) S iff r M o (a). for each answer set S AS(Π Θ G Π Θ Pref Π POc Π PO Π Mi ) there is an allocation M o M Θ such that has(a,r,o) S iff r M o (a) and M o pareto dominates M i. THEOREM 5 (DECISION - ORDINAL PREFERENCES). Let Θ be a MARA Setting with preferences in logic-based form as prioritized goals. Let the preference relation defined over bundles be based on one of best out, descrimin and leximin orderings. Let M i M Θ be an allocation. Let Π Ordal be defined according to the table below, and Π Θ G, Π POo, Π Θ PG, Π Mi and Π PO as before. Then: for each allocation M o M Θ such that M o pareto dominates M i there is an answer set S AS(Π Θ G Π Θ PG Π POo Π Ordal Π PO Π Mi ) such that has(a,r,o) S iff r M o (a). for each answer set S AS(Π Θ G Π Θ PG Π POo Π Ordal Π PO Π Mi ) there is an allocation M o M Θ such that has(a,r, o) S iff r M o (a) and M o pareto dominates M i. Preference Ordering Π Ordb Π Ordal best out Π BOb Π BOal descrimin Π DOb Π DOal leximin Π LOb Π LOal The optimisation version of the Pareto Optimality problem i.e. finding all allocations which are not pareto dominated, is in the Σ P 2 complexity class which can be captured by a strictly disjunctive logic program under the answer set semantics. However, the guess and check formalization of such problems in ASP is not as intuitive as in the case of NP or conp problems since the use of default negation is restricted in the check part of the program. Essentially, representing Σ P 2 problems in ASP is accomplished through a method known as saturation [9, 8] in which the minimal property of ASP is explicitly exploited. Lack of space prevents us from presenting such program which, besides the initial data representation, would not reuse any previously presented code. Furthermore, unlike other problems, the POO problem will require a separate formalization for every type of preference representation. 4.4 Envy Free Problem The envy free problem is the problem of checking whether there exists an allocation which is envy free, i.e. an allocation in which all agents prefer the bundle allocated to them when compared to the bundles allocated to other agents. Π EF contains the rule: :- ef(o). THEOREM 6 (DECISION - CARDINAL PREFERENCES). Let Θ be a MARA Setting with preferences in one of bundle, k-additive, logic based or weighted goals form. Let Π Θ Pref be defined according to the table above, and Π Θ G, Π EFq and Π EF as before. Then: for each allocation M o M Θ such that M o is envy free, there is an answer set S AS(Π Θ G Π Θ Pref Π EFc Π EF ) such that has(a,r,o) S iff r M o (a). for each answer set S AS(Π Θ G Π Θ Pref Π EFc Π EF ) there is an allocation M o M Θ such that has(a,r,o) S iff r M o (a) and M o is envy free. THEOREM 7 (DECISION - ORDINAL PREFERENCES). Let Θ be a MARA Setting with preferences in logic-based form as prioritized goals. Let the preference relation defined over bundles be based on one of best out, descrimin and leximin orderings. Let Π Ordb be defined according to the table above, and Π Θ G, Π Θ PG, Π EFo and Π EF as before. Then: for each allocation M o M Θ such that M o is envy free, there is an answer set S AS(Π Θ G Π Θ PG Π Ordb Π EFo Π EF ) such that has(a,r,o) S iff r M o (a). for each answer set S AS(Π Θ G Π Θ PG Π Ordb Π EFo Π EF ) there is an allocation M o M Θ such that has(a,r,o) S iff r M o (a) and M o is envy free. Finally, we turn to the problem of finding allocations that minimize the overall degree of envyness, given by the sum of individual agent s envyness. Π EFom contains the rule: :~envy(a 1,A 2,D,o).[D:1] THEOREM 8 (OPTIMISATION). Let Θ be a MARA Setting with preferences in one of bundle, k-additive, logic based or weighted goals form. Let Π Θ Pref be defined according to the table above, and Π Θ G, Π EFod, and Π EFom as before. Then: for each allocation M M Θ : M M Θ, envy (M ) < envy (M) there is an answer set S AS(Π Θ G Π Θ Pref Π EFod Π EFom) such that has(a,r,o) S iff r M (a). for each answer set S AS(Π Θ G Π Θ Pref Π EFod Π EFom) there is an allocation M M Θ such that has(a,r,o) S iff r M (a) and M M Θ, envy (M ) < envy (M). 5. DISCUSSION AND CONCLUSIONS In this paper we used Answer-Set Programming to provide modular, declarative, sound and complete solutions to 66 different multiagent resource allocation problems. We have privileged the main MARA problems, for illustrative purposes, leaving out other problems which we have equally solved in ASP, such as determining the next proposal under the Zeuthen strategy in the Monotonic Concession protocol and the winner determination problem in combinatorial auctions (for bids in XOR and OR languages). Since our main concern was the modularity and declarative nature of the ASP encodings, the solutions presented can, sometimes, be optimised at the cost of modularity. As an example, for the 655

8 AAMAS th International Conference on Autonomous Agents and Multiagent Systems May, 2009 Budapest, Hungary case of egalitarian social welfare we could replace Π WOo with Π W Oout and not include Π Θ SWeg where Π W Oout contains the rule: :~utg(u),ag(a),not ut(a,u,a,o).[u:1] Furthermore, the declarative general and modular character of the proposed solutions makes them amenable to several extensions, refinements and addition of constraints. For example, if we wish to impose that two specific resources r 1 and r 2 should always be allocated together, we simply add the rule: :-ag(a 1 ;A 2 ),has(a 1,r 1,o),has(A 2,r 2,o),A 1!=A 2. To impose that resource r can only be allocated to the agents a 1 and a 2, we simply add the rule: :-ag(a),has(a,r,o),a!=a 1,A!=a 2. To impose that the utility of each agent should not be less than 10, we simply add the rule: :-ag(a),ut(a,u,a,o),u<10. To impose that every agent should be allocated at least 5 resources we add the rule: :-ag(a),#count{r,a:has(a,r,o)}<5. The possibility to easily extend and refine ASP encodings makes the work here presented an excellent tool to investigate and experiment with other MARA notions, of possible interest in some applications, before tailored and more efficient algorithms are developed. For example, we could combine the notions of welfare improvement and envy freeness to check if there is some allocation which improves the value of some welfare function and is envy free by combining both programs i.e. use the program Π Θ G Π Θ Pref Π Θ SW Π WI Π Mi Π EFq Π EF. The k-rank dictator welfare notion could be implemented using the rule: sw(s,x):-al(x),w(s),#min{u,a:ut(a,u,a,x), #count{a 1 :ut(a 1,U 1,A 1,X),U>=U 1 }>=k}=s. But we could also as easily define new notions and combine with the already existing ones. Concerning efficiency, lack of space prevents us from showing and discussing our preliminary results. These are, however, quite good given the fact that we are solving problems which are NP at least, but more thorough testing is mandatory, as there are many variables involved. In any case, the uniformity of these encodings makes this implementation an excellent candidate to be used as the basis for benchmarking other more efficient solutions. In this respect, MARA is not the only one that can benefit from answer-set programming. In fact, the programs discussed here can be used as benchmarks for testing different answer set solvers, as well as provide very interesting examples illustrating the use of ASP for solving problems in different complexity classes. Other nice features include the possibility to use this implementation as an off-the-shelf MARA solver for certain domains where correctness, instead of efficiency, is the crucial requirement. In what concerns related work, it is worth mentioning the implementation of the winner determination problem in ASP of [3]. Here we chose a more extensive and comprehensive set of MARA problems, although we also have an implementation of the winner determination problem for bids in the XOR and OR languages. Most other implementations of MARA focus on specialized settings, using domain knowledge to improve their efficiency. Thus, they are not comparable with our work in a fair way. On the one hand they are much faster than ours but, on the other hand, they completely lack the generality, modularity, declarative nature, and amenability to change and incorporation of new notions. Future work includes thorough benchmarking, implementing other kinds of preference representations, extending to other MARA problems of high complexity, studying other constraints and relaxations, and exploring the use of ASP in distributed allocation mechanisms which need to consider the complexity of communication [10]. To conclude, we believe that our modular, declarative, sound and complete solutions can be used as an off-the-shelf implementation in certain scenarios where MARA is needed, and as a framework in which to experiment both with the different notions implemented and with new ones that can easily be incorporated. 6. ACKNOWLEDGMENTS We would like to thank Martin Slota and the anonymous referees for very helpful comments and suggestions. 7. REFERENCES [1] K. Arrow, A. Sen, and K. Suzumura, editors. Handbook of Social Choice and Welfare, volume 1. North-Holland, [2] C. Baral. Knowledge Representation, Reasoning, and Declarative Problem Solving. Cambridge Univ. Press, [3] C. Baral and C. Uyan. Declarative specification and solution of combinatorial auctions using logic programming. In Procs. of LPNMR 01, volume 2173 of LNAI. Springer, [4] S. Benferhat, C. Cayrol, D. Dubois, J. Lang, and H. Prade. Inconsistency management and prioritized syntax-based entailment. In Procs. of IJCAI 93, [5] Y. Chevaleyre, P. E. Dunne, U. Endriss, J. Lang, M. Lemaître, N. Maudet, J. Padget, S. Phelps, J. A. Rodríguez-Aguilar, and P. Sousa. Issues in multiagent resource allocation. Informatica, 30(1):3 31, [6] Y. Chevaleyre, U. Endriss, S. Estivie, and N. Maudet. Multiagent resource allocation in k-additive domains: preference representation and complexity. Annals of Operations Research, 163(1):49 62, [7] T. Dell Armi, W. Faber, G. Ielpa, N. Leone, and G. Pfeifer. Aggregate functions in disjunctive logic programming: Semantics, complexity, and implementation in DLV. In Procs of IJCAI 03, [8] T. Eiter, G. Gottlob, and H. Mannila. Disjunctive Datalog. ACM Transactions on Database Systems, 22(3): , Sept [9] T. Eiter and A. Polleres. Towards automated integration of guess and check programs in answer set programming: a meta-interpreter and applications. Theory and Practice of Logic Programming, 6(1-2):23 60, [10] U. Endriss and N. Maudet. On the communication complexity of multilateral trading. Autonomous Agents and Multi-Agent Systems, 11(1):91 107, [11] M. Gelfond and V. Lifschitz. Classical negation in logic programs and disjunctive databases. New Generation Computing, 9(3 4): , [12] T. Ibaraki and N. Katoh. Resource Allocation Problems: Algorithmic Approaches. MIT Press, [13] J. Lang. Logical preference representation and combinatorial vote. Annals of Mathematics and Artificial Intelligence, 42(1 3):37 71, [14] N. Leone, G. Pfeifer, W. Faber, T. Eiter, G. Gottlob, S. Perri, and F. Scarcello. The DLV system for knowledge representation and reasoning. ACM Transactions on Computational Logic, 7(3): , [15] H. Moulin. Axioms of Cooperative Decision Making. Cambridge University Press, [16] T. Sandholm. Distributed rational decision making. In G. Weiss, editor, Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence, chapter 5, pages The MIT Press,

### Plan for Today. Multiagent Systems: Spring Types of Resources. Multiagent Resource Allocation

Plan for Today Multiagent Systems: Spring 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Concerning the specification of MARA problems: Overview of different types

### Efficiency and Fairness in Distributed Resource Allocation

Efficiency and Fairness in Distributed Resource Allocation Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam joint work with Nicolas Maudet, Yann Chevaleyre, Sylvia Estivie,

### Negotiating over Small Bundles of Resources

Negotiating over Small Bundles of Resources Yann Chevaleyre 1, Ulle Endriss 2, Jérôme Lang 3 and Nicolas Maudet 1 1 LAMSADE, Université Paris-Daupine (France) 2 Department of Computing, Imperial College

### Complexity of Social Welfare Optimization in Multiagent Resource Allocation

Complexity of Social Welfare Optimization in Multiagent Resource Allocation Magnus Roos and Jörg Rothe Institut für Informatik, Heinrich-Heine-Universität Düsseldorf, 40225 Düsseldorf, Germany {roos,rothe}@cs.uni-duesseldorf.de

### One More Decidable Class of Finitely Ground Programs

One More Decidable Class of Finitely Ground Programs Yuliya Lierler and Vladimir Lifschitz Department of Computer Sciences, University of Texas at Austin {yuliya,vl}@cs.utexas.edu Abstract. When a logic

### Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison

Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison Tomi Janhunen 1, Ilkka Niemelä 1, Johannes Oetsch 2, Jörg Pührer 2, and Hans Tompits 2 1 Aalto University, Department

### Tutorial on Fair Division

Tutorial on Fair Division Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam " COST-ADT Doctoral School on Computational Social Choice Estoril, Portugal, 9 14 April 2010

### Magic Sets and their Application to Data Integration

Magic Sets and their Application to Data Integration Wolfgang Faber, Gianluigi Greco, Nicola Leone Department of Mathematics University of Calabria, Italy {faber,greco,leone}@mat.unical.it Roadmap Motivation:

### CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

### Data Validation with OWL Integrity Constraints

Data Validation with OWL Integrity Constraints (Extended Abstract) Evren Sirin Clark & Parsia, LLC, Washington, DC, USA evren@clarkparsia.com Abstract. Data validation is an important part of data integration

Cooperating Answer Set Programming Davy Van Nieuwenborgh 1,, Stijn Heymans 2, and Dirk Vermeir 1 1 Dept. of Computer Science Vrije Universiteit Brussel, VUB Pleinlaan 2, B1050 Brussels, Belgium {dvnieuwe,

### Foundations of Artificial Intelligence

Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard, Bernhard Nebel and Martin Riedmiller Albert-Ludwigs-Universität Freiburg Contents 1 Agents

Computing and Informatics, Vol. 20, 2001,????, V 2006-Nov-6 UPDATES OF LOGIC PROGRAMS Ján Šefránek Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics, Comenius University,

### Updating Action Domain Descriptions

Updating Action Domain Descriptions Thomas Eiter, Esra Erdem, Michael Fink, and Ján Senko Institute of Information Systems, Vienna University of Technology, Vienna, Austria Email: (eiter esra michael jan)@kr.tuwien.ac.at

### Computational Methods for Database Repair by Signed Formulae

Computational Methods for Database Repair by Signed Formulae Ofer Arieli (oarieli@mta.ac.il) Department of Computer Science, The Academic College of Tel-Aviv, 4 Antokolski street, Tel-Aviv 61161, Israel.

### ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS

PROCEEDINGS OF THE YEREVAN STATE UNIVERSITY Physical and Mathematical Sciences 2012 1 p. 43 48 ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS I nf or m at i cs L. A. HAYKAZYAN * Chair of Programming and Information

### Investigación Operativa. The uniform rule in the division problem

Boletín de Estadística e Investigación Operativa Vol. 27, No. 2, Junio 2011, pp. 102-112 Investigación Operativa The uniform rule in the division problem Gustavo Bergantiños Cid Dept. de Estadística e

### Modelling and Implementing a Knowledge Base for Checking Medical Invoices with DLV

Modelling and Implementing a Knowledge Base for Checking Medical Invoices with DLV Christoph Beierle 1, Oliver Dusso 1, Gabriele Kern-Isberner 2 1 Dept. of Computer Science, FernUniversität in Hagen, 58084

### Approximated Probabilistic Answer Set Programming

Approximated Probabilistic Answer Set Programming Department of Computer Science Universidade de São Paulo São Paulo, Brazil 2014 Toy Example 4 6 2 5 1 3 Limit the percentage of time the edge (1, 3) is

### Welfare Engineering in Practice: On the Variety of Multiagent Resource Allocation Problems

Welfare Engineering in Practice: On the Variety of Multiagent Resource Allocation Problems Yann Chevaleyre 1, Ulle Endriss 2, Sylvia Estivie 1 and Nicolas Maudet 1 (1)LAMSADE, Univ. Paris IX-Dauphine (2)Dept.

### Discrete Mathematics, Chapter 5: Induction and Recursion

Discrete Mathematics, Chapter 5: Induction and Recursion Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 5 1 / 20 Outline 1 Well-founded

### 1 Polyhedra and Linear Programming

CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

### Empirical Hardness for Mixed Auctions

Empirical Hardness for Mixed Auctions Pablo Almajano 1,Jesús Cerquides 2, and Juan A. Rodriguez-Aguilar 1 1 IIIA, Artificial Intelligence Research Institute CSIC, Spanish National Research Council {palmajano,jar}@iiia.csic.es

### 1.3 Induction and Other Proof Techniques

4CHAPTER 1. INTRODUCTORY MATERIAL: SETS, FUNCTIONS AND MATHEMATICAL INDU 1.3 Induction and Other Proof Techniques The purpose of this section is to study the proof technique known as mathematical induction.

### University of Ostrava. Reasoning in Description Logic with Semantic Tableau Binary Trees

University of Ostrava Institute for Research and Applications of Fuzzy Modeling Reasoning in Description Logic with Semantic Tableau Binary Trees Alena Lukasová Research report No. 63 2005 Submitted/to

### Equilibrium computation: Part 1

Equilibrium computation: Part 1 Nicola Gatti 1 Troels Bjerre Sorensen 2 1 Politecnico di Milano, Italy 2 Duke University, USA Nicola Gatti and Troels Bjerre Sørensen ( Politecnico di Milano, Italy, Equilibrium

### Gains from Trade. Christopher P. Chambers and Takashi Hayashi. March 25, 2013. Abstract

Gains from Trade Christopher P. Chambers Takashi Hayashi March 25, 2013 Abstract In a market design context, we ask whether there exists a system of transfers regulations whereby gains from trade can always

### Language. Johann Eder. Universitat Klagenfurt. Institut fur Informatik. Universiatsstr. 65. A-9020 Klagenfurt / AUSTRIA

PLOP: A Polymorphic Logic Database Programming Language Johann Eder Universitat Klagenfurt Institut fur Informatik Universiatsstr. 65 A-9020 Klagenfurt / AUSTRIA February 12, 1993 Extended Abstract The

### Decision-making with the AHP: Why is the principal eigenvector necessary

European Journal of Operational Research 145 (2003) 85 91 Decision Aiding Decision-making with the AHP: Why is the principal eigenvector necessary Thomas L. Saaty * University of Pittsburgh, Pittsburgh,

### Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

### Why? A central concept in Computer Science. Algorithms are ubiquitous.

Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

### npsolver A SAT Based Solver for Optimization Problems

npsolver A SAT Based Solver for Optimization Problems Norbert Manthey and Peter Steinke Knowledge Representation and Reasoning Group Technische Universität Dresden, 01062 Dresden, Germany peter@janeway.inf.tu-dresden.de

### 24. The Branch and Bound Method

24. The Branch and Bound Method It has serious practical consequences if it is known that a combinatorial problem is NP-complete. Then one can conclude according to the present state of science that no

### ! " # The Logic of Descriptions. Logics for Data and Knowledge Representation. Terminology. Overview. Three Basic Features. Some History on DLs

,!0((,.+#\$),%\$(-&.& *,2(-\$)%&2.'3&%!&, Logics for Data and Knowledge Representation Alessandro Agostini agostini@dit.unitn.it University of Trento Fausto Giunchiglia fausto@dit.unitn.it The Logic of Descriptions!\$%&'()*\$#)

### INTRODUCTORY SET THEORY

M.Sc. program in mathematics INTRODUCTORY SET THEORY Katalin Károlyi Department of Applied Analysis, Eötvös Loránd University H-1088 Budapest, Múzeum krt. 6-8. CONTENTS 1. SETS Set, equal sets, subset,

### Counting Falsifying Assignments of a 2-CF via Recurrence Equations

Counting Falsifying Assignments of a 2-CF via Recurrence Equations Guillermo De Ita Luna, J. Raymundo Marcial Romero, Fernando Zacarias Flores, Meliza Contreras González and Pedro Bello López Abstract

### Logic in general. Inference rules and theorem proving

Logical Agents Knowledge-based agents Logic in general Propositional logic Inference rules and theorem proving First order logic Knowledge-based agents Inference engine Knowledge base Domain-independent

### 2. The Language of First-order Logic

2. The Language of First-order Logic KR & R Brachman & Levesque 2005 17 Declarative language Before building system before there can be learning, reasoning, planning, explanation... need to be able to

### Artificial Intelligence

Artificial Intelligence ICS461 Fall 2010 1 Lecture #12B More Representations Outline Logics Rules Frames Nancy E. Reed nreed@hawaii.edu 2 Representation Agents deal with knowledge (data) Facts (believe

### Min-cost flow problems and network simplex algorithm

Min-cost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.

### NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

### EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP

EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP Hong Jiang Mathematics & Computer Science Department, Benedict College, USA jiangh@benedict.edu ABSTRACT DCSP (Distributed Constraint Satisfaction Problem) has

### ON LIMIT LAWS FOR CENTRAL ORDER STATISTICS UNDER POWER NORMALIZATION. E. I. Pancheva, A. Gacovska-Barandovska

Pliska Stud. Math. Bulgar. 22 (2015), STUDIA MATHEMATICA BULGARICA ON LIMIT LAWS FOR CENTRAL ORDER STATISTICS UNDER POWER NORMALIZATION E. I. Pancheva, A. Gacovska-Barandovska Smirnov (1949) derived four

### Access Control Models Part I. Murat Kantarcioglu UT Dallas

UT DALLAS Erik Jonsson School of Engineering & Computer Science Access Control Models Part I Murat Kantarcioglu UT Dallas Introduction Two main categories: Discretionary Access Control Models (DAC) Definition:

### Bounded Treewidth in Knowledge Representation and Reasoning 1

Bounded Treewidth in Knowledge Representation and Reasoning 1 Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien Luminy, October 2010 1 Joint work with G.

### Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

### Software Verification and Testing. Lecture Notes: Z I

Software Verification and Testing Lecture Notes: Z I Motivation so far: we have seen that properties of software systems can be specified using first-order logic, set theory and the relational calculus

### Integrating Benders decomposition within Constraint Programming

Integrating Benders decomposition within Constraint Programming Hadrien Cambazard, Narendra Jussien email: {hcambaza,jussien}@emn.fr École des Mines de Nantes, LINA CNRS FRE 2729 4 rue Alfred Kastler BP

### Logic Programming with Ordered Disjunction

Logic Programming with Ordered Disjunction Gerhard Brewka Universität Leipzig Institut für Informatik Augustusplatz 10-11 04109 Leipzig, Germany brewka@informatik.uni-leipzig.de Abstract Logic programs

### An Heuristics for Load Balancing and Granularity Control in the Parallel Instantiation of Disjunctive Logic Programs

An Heuristics for Load Balancing and Granularity Control in the Parallel Instantiation of Disjunctive Logic Programs Simona Perri, Francesco Ricca, and Marco Sirianni Dipartimento di Matematica, Università

### Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. We begin by defining the ring of polynomials with coefficients in a ring R. After some preliminary results, we specialize

### Logic in Computer Science: Logic Gates

Logic in Computer Science: Logic Gates Lila Kari The University of Western Ontario Logic in Computer Science: Logic Gates CS2209, Applied Logic for Computer Science 1 / 49 Logic and bit operations Computers

### princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

### Pricing of Limit Orders in the Electronic Security Trading System Xetra

Pricing of Limit Orders in the Electronic Security Trading System Xetra Li Xihao Bielefeld Graduate School of Economics and Management Bielefeld University, P.O. Box 100 131 D-33501 Bielefeld, Germany

### Scalable Automated Symbolic Analysis of Administrative Role-Based Access Control Policies by SMT solving

Scalable Automated Symbolic Analysis of Administrative Role-Based Access Control Policies by SMT solving Alessandro Armando 1,2 and Silvio Ranise 2, 1 DIST, Università degli Studi di Genova, Italia 2 Security

### A set is a Many that allows itself to be thought of as a One. (Georg Cantor)

Chapter 4 Set Theory A set is a Many that allows itself to be thought of as a One. (Georg Cantor) In the previous chapters, we have often encountered sets, for example, prime numbers form a set, domains

### Issues in Multiagent Resource Allocation

TFG-MARA 1 Issues in Multiagent Resource Allocation Yann Chevaleyre LAMSADE, Université Paris-Dauphine (France) Email: chevaley@lamsade.dauphine.fr Paul E. Dunne Department of Computer Science, University

### Sudoku as a SAT Problem

Sudoku as a SAT Problem Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal ines@sat.inesc-id.pt Joël Ouaknine Oxford University Computing Laboratory, UK joel@comlab.ox.ac.uk Abstract Sudoku

### 7. Inconsistency Handling

46 7. Inconsistency Handling What If the database is inconsistent? Inconsistencies can be detected, and data can be changed to reach a physical consistent state This kind of data cleaning may be difficult,

### MINIMAL BOOKS OF RATIONALES

MINIMAL BOOKS OF RATIONALES José Apesteguía Miguel A. Ballester D.T.2005/01 MINIMAL BOOKS OF RATIONALES JOSE APESTEGUIA AND MIGUEL A. BALLESTER Abstract. Kalai, Rubinstein, and Spiegler (2002) propose

### Mathematical Logic. Tableaux Reasoning for Propositional Logic. Chiara Ghidini. FBK-IRST, Trento, Italy

Tableaux Reasoning for Propositional Logic FBK-IRST, Trento, Italy Outline of this lecture An introduction to Automated Reasoning with Analytic Tableaux; Today we will be looking into tableau methods for

### Compact Representations and Approximations for Compuation in Games

Compact Representations and Approximations for Compuation in Games Kevin Swersky April 23, 2008 Abstract Compact representations have recently been developed as a way of both encoding the strategic interactions

### WUCT121. Discrete Mathematics. Logic

WUCT121 Discrete Mathematics Logic 1. Logic 2. Predicate Logic 3. Proofs 4. Set Theory 5. Relations and Functions WUCT121 Logic 1 Section 1. Logic 1.1. Introduction. In developing a mathematical theory,

### The Open University s repository of research publications and other research outputs

Open Research Online The Open University s repository of research publications and other research outputs The degree-diameter problem for circulant graphs of degree 8 and 9 Journal Article How to cite:

### Deductive Systems. Marco Piastra. Artificial Intelligence. Artificial Intelligence - A.A Deductive Systems [1]

Artificial Intelligence Deductive Systems Marco Piastra Artificial Intelligence - A.A. 2012- Deductive Systems 1] Symbolic calculus? A wff is entailed by a set of wff iff every model of is also model of

### The Bi-Objective Pareto Constraint

The Bi-Objective Pareto Constraint Renaud Hartert and Pierre Schaus UCLouvain, ICTEAM, Place Sainte Barbe 2, 1348 Louvain-la-Neuve, Belgium {renaud.hartert,pierre.schaus}@uclouvain.be Abstract. Multi-Objective

### Data Integration: A Theoretical Perspective

Data Integration: A Theoretical Perspective Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza Via Salaria 113, I 00198 Roma, Italy lenzerini@dis.uniroma1.it ABSTRACT

### Task Management under Change and Uncertainty

Task Management under Change and Uncertainty Constraint Solving Experience with the CALO Project Pauline M. Berry, Karen Myers, Tomás E. Uribe, and Neil Yorke-Smith Artificial Intelligence Center, SRI

### DEGREES OF ORDERS ON TORSION-FREE ABELIAN GROUPS

DEGREES OF ORDERS ON TORSION-FREE ABELIAN GROUPS ASHER M. KACH, KAREN LANGE, AND REED SOLOMON Abstract. We construct two computable presentations of computable torsion-free abelian groups, one of isomorphism

### Quotient Rings and Field Extensions

Chapter 5 Quotient Rings and Field Extensions In this chapter we describe a method for producing field extension of a given field. If F is a field, then a field extension is a field K that contains F.

facultad de informática universidad politécnica de madrid On the Confluence of CHR Analytical Semantics Rémy Haemmerlé Universidad olitécnica de Madrid & IMDEA Software Institute, Spain TR Number CLI2/2014.0

### A Logic Approach for LTL System Modification

A Logic Approach for LTL System Modification Yulin Ding and Yan Zhang School of Computing & Information Technology University of Western Sydney Kingswood, N.S.W. 1797, Australia email: {yding,yan}@cit.uws.edu.au

### A Tool for Generating Partition Schedules of Multiprocessor Systems

A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.

### Revenue Management for Transportation Problems

Revenue Management for Transportation Problems Francesca Guerriero Giovanna Miglionico Filomena Olivito Department of Electronic Informatics and Systems, University of Calabria Via P. Bucci, 87036 Rende

### Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

### SJÄLVSTÄNDIGA ARBETEN I MATEMATIK

SJÄLVSTÄNDIGA ARBETEN I MATEMATIK MATEMATISKA INSTITUTIONEN, STOCKHOLMS UNIVERSITET Automated Theorem Proving av Tom Everitt 2010 - No 8 MATEMATISKA INSTITUTIONEN, STOCKHOLMS UNIVERSITET, 106 91 STOCKHOLM

### OHJ-2306 Introduction to Theoretical Computer Science, Fall 2012 8.11.2012

276 The P vs. NP problem is a major unsolved problem in computer science It is one of the seven Millennium Prize Problems selected by the Clay Mathematics Institute to carry a \$ 1,000,000 prize for the

### Query Answering in Inconsistent Databases

Query Answering in Inconsistent Databases Leopoldo Bertossi 1 and Jan Chomicki 2 1 School of Computer Science, Carleton University, Ottawa, Canada, bertossi@scs.carleton.ca 2 Dept. of Computer Science

### Correspondence analysis for strong three-valued logic

Correspondence analysis for strong three-valued logic A. Tamminga abstract. I apply Kooi and Tamminga s (2012) idea of correspondence analysis for many-valued logics to strong three-valued logic (K 3 ).

### Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

### Linear Codes. Chapter 3. 3.1 Basics

Chapter 3 Linear Codes In order to define codes that we can encode and decode efficiently, we add more structure to the codespace. We shall be mainly interested in linear codes. A linear code of length

### arxiv:1112.0829v1 [math.pr] 5 Dec 2011

How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly

### 3. Mathematical Induction

3. MATHEMATICAL INDUCTION 83 3. Mathematical Induction 3.1. First Principle of Mathematical Induction. Let P (n) be a predicate with domain of discourse (over) the natural numbers N = {0, 1,,...}. If (1)

### Static Program Transformations for Efficient Software Model Checking

Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major

### Integrating XML Data Sources using RDF/S Schemas: The ICS-FORTH Semantic Web Integration Middleware (SWIM)

Integrating XML Data Sources using RDF/S Schemas: The ICS-FORTH Semantic Web Integration Middleware (SWIM) Extended Abstract Ioanna Koffina 1, Giorgos Serfiotis 1, Vassilis Christophides 1, Val Tannen

### Solving disjunctive fuzzy answer set programs

Solving disjunctive fuzzy answer set programs Mushthofa Mushthofa 1,3, Steven Schockaert 2, and Martine De Cock 1,4 1 Dept. of Applied Math., Comp. Sc. and Statistics, Ghent University, Belgium, email:

### RESEARCH STATEMENT. Guohua Liu

RESEARCH STATEMENT 1 Introduction My research is focused on computational inference that concerns effective problem solving via inference with data or knowledge. Constraint programming, mathematical programming,

### InvGen: An Efficient Invariant Generator

InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic

### Dynamic Logic Programming and world state evaluation in computer games

Dynamic Logic Programming and world state evaluation in computer games Jozef Šiška Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics, Comenius University, Bratislava, Slovakia,

### Determining Feasible Solution in Imprecise Linear Inequality Systems

Applied Mathematical Sciences, Vol. 2, 2008, no. 36, 1789-1797 Determining Feasible Solution in Imprecise Linear Inequality Systems A. A. Noura and F. H. Saljooghi Department of Mathematics Sistan and

### Concept Learning. Machine Learning 1

Concept Learning Inducing general functions from specific training examples is a main issue of machine learning. Concept Learning: Acquiring the definition of a general category from given sample positive

### A finite-valued solver for disjunctive fuzzy answer set programs

A finite-valued solver for disjunctive fuzzy answer set programs Mushthofa Mushthofa 1 and Steven Schocaert 2 and Martine De Coc 1 3 Abstract. Fuzzy Answer Set Programming (FASP) is a declarative programming

### Two classes of ternary codes and their weight distributions

Two classes of ternary codes and their weight distributions Cunsheng Ding, Torleiv Kløve, and Francesco Sica Abstract In this paper we describe two classes of ternary codes, determine their minimum weight

### Discrete Optimization

Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using

### A Propositional Dynamic Logic for CCS Programs

A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are

### No-Betting Pareto Dominance

No-Betting Pareto Dominance Itzhak Gilboa, Larry Samuelson and David Schmeidler HEC Paris/Tel Aviv Yale Interdisciplinary Center Herzlyia/Tel Aviv/Ohio State May, 2014 I. Introduction I.1 Trade Suppose

### Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

### On Competitiveness in Uniform Utility Allocation Markets

On Competitiveness in Uniform Utility Allocation Markets Deeparnab Chakrabarty Department of Combinatorics and Optimization University of Waterloo Nikhil Devanur Microsoft Research, Redmond, Washington,