1 / 22

# Distributed Constraint Optimization - PowerPoint PPT Presentation

Distributed Constraint Optimization. * some slides courtesy of P. Modi http://www.cs.drexel.edu/~pmodi/. Outline. DCOP and real world problems DiMES Algorithms to solve DCOP Synchronous Branch and Bound ADOPT (distributed search) DPOP (dynamic programming) DCPOP Future work.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Distributed Constraint Optimization' - jubal

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Distributed Constraint Optimization

* some slides courtesy of P. Modi http://www.cs.drexel.edu/~pmodi/

• DCOP and real world problems

• DiMES

• Algorithms to solve DCOP

• Synchronous Branch and Bound

• DPOP (dynamic programming)

• DCPOP

• Future work

• Definition:

• V = A set of variables

• Di = A domain of values for Vi

• U = A set of utility functions on V

• Goal is to optimize global utility

• can also model minimal cost problems by using negative utilities

• One agent per variable

• Each agent knows Uiwhich is the set of all utility functions that involve Vi

• Framework for capturing real-world domains involving joint-activities

• {R1,...,RN} is a set of resources

• {E1,...,EK} is a set of events

• Some ∆ st T*∆ = Tlatest – Tearliest and T is a natural number

• Thus we can characterize the time domain as the set Ŧ = {1,...,T}

• An event, Ek, is then the tuple (Ak,Lk;Vk) where:

• Ak is the subset of resources required by the event

• Lk is the number of contiguous time slots for which the resources Ak are needed

• Vk denotes the value per time slot of the kth resource in Ak

• It was shown in [Maheswaran et al. 2004] that DiMES can be translated into DCOP

• Events are mapped to variables

• The domain for each event is the time slot at which that event will start

• Utility functions are somewhat complex but were able to be restricted to binary functions

• It was also shown that several resource allocation problems can be represented in DiMES (including distributed sensor networks)

• Agents are prioritized into a chain (Hirayama97) or tree

• Root chooses value, sends to children

• Children choose value, evaluate partial solution, send partial solution (with cost) to children

• When cost exceeds upper bound, backtrack

• Agent explores all its values before reporting to parent

• Solid line

• parent/child relationship

• Dashed line

• pseudo-parent/pseudo-child relationship

• Common structure used in search procedures to allow parallel processing of independent branches

• A node can only have constraints with nodes in the path to root or with descendants

• SyncBB backtracks only when suboptimality is proven (current solution is greater than an upper bound)

• ADOPT’s backtrack condition – when lower bound gets too high

• backtrack before sub-optimality is proven

• solutions need revisiting

• Agents are ordered in a Pseudotree

• Agents concurrently choose values

• VALUE messages sent down

• COST messages sent up only to parent

• THRESHOLD messages sent down only to child

• Suppose parent has two values, “white” and “black”

• Three phase algorithm:

• Pseudotree generation

• Utility message propagation bottom-up

• Optimal value assignments top-down

• Propagation starts at leaves, goes up to root

• Each agent waits for UTIL messages from children

• does a JOIN

• sends UTIL message to parent

• How many total messages in this phase?

• UTIL Message

• maximum utility for all value combinations of parent/pseudo-parents

• includes maximum utility values for all children

• Value Propagation

• After Phase 2, root has a summary view of the global UTIL information

• Root can then pick the value for itself that gives the best global utility

• This value is sent to all children

• Children can now choose their own value, given the value of the root, that optimizes the global utility

• This process continues until all nodes are assigned a value

• distributed search

• linear size messages

• worst case exponential number of messages

• with respect to the depth of the pseudotree

• DPOP

• dynamic programming

• worst case exponential size messages

• with respect to the induced width of the pseudotree

• linear number of messages

• Are pseudotrees the most efficient translation?

• The minimum induced width pseudotree is currently the most efficient known translation

• Finding it is NP-Hard and may require global information

• Heuristics are used to produce the pseudotrees

• Current distributed heuristics are all based on some form of DFS or BestFS

• We prove in a recent paper that pseudotrees produced by these heuristics are suboptimal

• Pseudotrees that include edges between nodes in separate branches

• The dashed line is a cross-edge

• This relaxed form of a pseudotree can produce shorter trees, as well as less overlap between constraints

• Our extension to DPOP that correctly handles Cross-Edged Pseudotrees

• We have proved that using an edge-traversal heuristic (DFS, BestFS) it is impossible to produce a traditional pseudotree that outperforms a well chosen cross-edged pseudotree

• Edge-traversal heuristics are popular because they are easily done in a distributed fashion and require no sharing of global information

• Computation size is closer to the minimum induced width than with DPOP

• Message size can actually be smaller than the minimum induced width

• A new measurement of sequential path cost (represents the maximal amount of parallelism achieved) also shows improvement

• DCOP mapping for a TAEMS based task/resource allocation problem

• Full integration of uncertainty characteristics into the DCOP model