• Aucun résultat trouvé

This thesis is organized as follows:

Part I: Preliminaries and Background: Chapter2introduces the DCOP problem, and a set of definitions, notations and conventions. Chapter3overviews related work and the current state of the art.

Part II: The DPOP Algorithm: Chapter4introduces the dynamic programmingDPOPalgorithm.

Chapter5introduces the H-DPOP algorithm, which shows how consistency techniques from search can be exploited in DPOP to reduce message size. This is a technique that is orthogonal to most of the following algorithms, and can therefore be applied in combination with them as well.

Part III: Tradeoffs: This part discussesextensionsto the DPOP algorithm which offer different tradeoffs for difficult problems. Chapter6introduces MB-DPOP, an algorithm which provides a cus-tomizable tradeoff between Memory/Message Size on one hand, and Number of Messages on the other hand. Chapter7discusses two algorithms (A-DPOP and LS-DPOP) that trade optimality for reductions in memory and communication requirements. Chapter8discusses an alternative approach to difficult problems, which centralizes high width subproblems and solves them in a centralized way.

Part IV: Dynamics: This part discusses distributed problem solving indynamic environments, i.e.

problems can change at runtime. Chapter9introduces two self-stabilizing algorithms that can operate in dynamic, distributed environments. Chapter10discussessolution stabilityin dynamic environments, and introduces a self-stabilizing version of DPOP that maintains it.

Part V: Incentives: In this part we turn to systems with self-interested agents. Chapter11discusses systems withself-interested users, and introduces the M-DPOP algorithm, which is the first distributed algorithm that ensureshonest behaviourin such a setting. Chapter12discusses the issue ofbudget

balance, and introduces two algorithms that extend M-DPOP in that they allow forredistributing(some of) the VCG payments back to the agents, thus avoiding the welfare loss caused by wasting the taxes.

Finally, Chapter13presents an overview of the main contributions of this thesis in Section13.1, and then concludes.

Preliminaries and Background

7

Distributed Constraint Optimization Problems

“United we can’t be, divided we stand.”

This chapter introduces the Distributed Constraint Optimization formalism (Section2.1), a set of assumptions we make for the most part of this thesis (Section2.2), and a number of applications of DCOP techniques (Section2.3).

2.1 Definitions and Notation

We start this section by introducing the centralized Constraint Optimization Problem (COP) [19,189].

Formally,

Definition 1 (COP) A discreteconstraint optimization problem(COP) is a tupleX,D,Rsuch that:

• X ={X1, ..., Xn}is a set ofvariables(e.g. start times of meetings);

• D={d1, ..., dn}is a set of discrete, finite variabledomains(e.g. time slots);

• R = {r1, ..., rm} is a set of utility functions, where eachri is a function with the scope (Xi1,· · ·, Xik),ri : di1×..×dik → R. Such a function assigns autility (reward)to each possible combination of values of the variables in the scope of the function. Negative amounts meancosts. Hard constraints (which forbid certain value combinations) are a special case of

9

utility functions, which assign 0 to feasible tuples, and−∞to infeasible ones;1

The goal is to find a complete instantiationXfor the variablesXithatmaximizesthe sum of utilities of individual utility functions. Formally,

X=argmaxX

ri∈R

ri(X)

⎠ (2.1)

where the values ofriare their corresponding values for the particular instantiationX. Theconstraint graphis a graph which has a node for each variableXi∈ Xand a hyper-edge for each relationri∈ R.

Using Definition1of a COP, we define the Constraint Satisfaction Problem as a special case of a COP:

Definition 2 (CSP) A discreteconstraint satisfaction problem(CSP) is a COPX,D,Rsuch that all relationsri∈ Rare hard constraints.

Remark 1 (Solving CSPs) CSPs can obviously be solved with algorithms designed for optimization:

the algorithm has to search for the solution of minimal cost (which is 0, if the problem is satisfiable).

Definition 3 (DCOP) A discretedistributed constraint optimization problem(DCOP) is a tuple of the following form:A,COP,Riasuch that:

• A={A1, . . . , Ak}is a set of agents (e.g. people participating in meetings);

• COP ={COP1, . . . COPk}is a set of disjoint, centralized COPs (see Def.1); eachCOPiis called thelocal subproblem of agentAi, and is owned and controlled by agentAi;

• Ria = {r1, . . . rn}is a set of interagent utility functionsdefined over variables from several different local subproblemsCOPi. Eachri:scope(ri)→Rexpresses the rewards obtained by the agents involved inrifor some joint decision. The agents involved inrihave full knowledge ofriand are called “responsible” forri. As in a COP, hard constraints are simulated by utility functions which assign 0 to feasible tuples, and−∞to infeasible ones;

Informally, a DCOP is thus a multiagent instance of a COP, where each agent holds its own local subproblem. Only the owner agent has full knowledge and control of its local variables and constraints.

Local subproblems owned by different agents can be connected byinteragent utility functionsRiathat specify the utility that the involved agents extract from some joint decision.Interagent hard constraints

1Maximizing the sum of all valuations in the constraint network will choose a feasible solution, if one exists.

that forbid or enforce some combinations of decisions can be simulated as in a COP by utility functions which assign 0 to feasible tuples, and−∞to infeasible ones. The interagent hard constraints are typically used to model domain-specific knowledge like “a resource can be allocated just once”, or “we need to agree on a start time for a meeting”. It is assumed that the interagent utility functions are known to all involved agents.

We call theinterface variablesof agentAithe subset of variablesXiext⊆ XiofCOPi, which are connected via interagent relations to variables of other agents. The other variables ofAi,Xiint ⊂ Xi

are calledinternal variables, and are only visible toAi. We have thatXi=Xiint Xiext.

As in centralized COP, we define theconstraint graphas the graph which is obtained by connecting all thevariableswhich share a utility function. We callneighborstwo agents which share an interagent utility function. Theinteraction graphis the graph which is obtained by connecting pairwise all the agentswhich are neighbors. Subsequently, we will assume that only agents which are connected in the interaction graph are able to communicate directly.

As in the centralized case, the task is to find the optimal solution to theCOPproblem. In traditional centralized COP, we try to have algorithms that minimize the running time. In DCOP, the algorithm performance measure is not just the time, but also the communication load, most commonly the number of messages.

As for centralized CSPs, we can use Definition3of a DCOP to define the Distributed Constraint Satisfaction Problem as a special case of a DCOP:

Definition 4 (DisCSP) A discretedistributedconstraint satisfaction problem (DisCSP) is a DCOP

<A,COP,Ria>such that (a)∀COPi∈ COPis a CSP (all internal relations are hard constraints) and (b) allri∈ Riaare hard constraints as well.

Remark 2 (Solving DisCSPs) DisCSPs can obviously be solved with algorithms designed for DCOP:

the algorithm has to search for the solution of minimal cost (which is 0, if the problem is satisfiable).

Remark 3 (DCOP is NP-hard)