• Aucun résultat trouvé

H-DPOP draws mostly from the dynamic programming algorithm DPOP (Chapter4), and Constraint Decision Diagrams (Cheng and Yap [34]). DPOP produces large arity relations that are sent over the network. On the other hand, CDDs can take advantage of hard constraints to represent compactly such large arity relations, thus being a well suited alternative for minimizing network traffic and memory requirements for DPOP.

Recently, And/Or Multi-valued Decision Diagrams (AOMDDs) have been introduced by Mateescu and Dechter in [136]. They first arrange the problem as a pseudo-tree (of which DFS is a special case).

Subsequently, on that pseudotree structure, they start a bottom-up compilation, by computing (and subsequently joining) high-arity relations (as in DPOP). However, their purpose is to have a compact compilation of the entire constraint network in the root node. Therefore, they do not execute projections at each node along the way, thus obtaining a large AOMDD at the root, that represents the entire network. AOMDDs are space- and computation-exponential in the induced width of the DFS ordering used.

In principle, CDDs are OR-based structures, so for a complete compilation of the network, they are exponential in the path-width1of the problem, rather than exponential in the induced width. Therefore, they could be less space-efficient than AOMDDs. However, since each variable projects itself out of the outgoing message, our CDD representations are also guaranteed to be only exponential in the induced width of the DFS ordering used, as opposed to exponential in the problem size.

Wilson [222] introduced SLDDs (Semiring-Labelled Decision Diagrams), a generalization of CDDs to semiring structures. Our dynamic programming framework (DPOP) is easily extendable to semir-ing structures as well, by ussemir-ing SLDDs instead of CDDs as data structures for the message exchange.

As CDDs, SLDDs are also OR-based structures, which means that they are size-exponential in the path-width of the problem. However, for the same reasons cited above, SLDDs applied in our context (variable elimination along a DFS tree) would also be exponential only in the induced width as opposed to the path width.

5.6 Summary

This chapter introduced DPOP, a new algorithm for constraint optimization based on DPOP. H-DPOP applies consistency techniques to reduce message size and memory requirements in H-DPOP by using CDDs. H-DPOP is an orthogonal technique, which means it can be combined with other exten-sions of DPOP like LS-DPOP, MB-DPOP, A-DPOP, etc. Experimental results show that in cases where the problems are highly constrained, this representation allows for as much as 99% space savings as compared to the basic dynamic programming approach.

The second contribution of this chapter is an extensive comparison with search algorithms, which compares the pruning achieved by search with the one achieved by using CDDs in dynamic program-ming. Pruning techniques are very natural to search algorithms, and can boost their performance sig-nificantly. Introducing CDDs into DPOP gives dynamic programming algorithms similar pruning ca-pabilities, and yields similar performance improvements. Our extensive analysis shows that although pruning in H-DPOP works bottom-up as opposed to top-down in search, similar effects are obtained, and the portions of the search space explored by H-DPOP and search are very similar.

There are many realistic scenarios where hard constraints restrict the search space significantly.

1Path-width is the induced width of linear orderings

For example, several types of auctions have this property: auctions where agents bid on paths in space like railroad auctions, auctions for airport time slots, etc. Other examples include advanced versions of the service allocation problem, or scheduling with resource constraints. All these problems are large, highly constrained problems, and can be efficiently solved by H-DPOP.

We conclude that in many applications such as those described above, H-DPOP is an excellent approach, because it combines the best of both search and dynamic programming: it requires only a linear number of messages like dynamic programming (i.e. low networking overhead), and by using CDDs and their pruning power we can effectively limit the size of these messages, like in search.

Tradeoffs

In this part of the thesis we discuss tradeoffs in DCOP along 3 dimensions: solution quality (complete vs.

incomplete algorithms), memory requirements (linear / polynomial / exponential), communication requirements

(few large messages vs. many small messages), degree of distribution (fully distributed algorithms vs. partial

centralization algorithms).

87

Tradeoffs between Memory/Message Size and Number of Messages

In this chapter we discuss possible tradeoffs that variants of the DPOP algorithm can offer for problems with high induced width, where the basic DPOP algorithm cannot be applied due to memory or communication restrictions. The chapter is organized as follows: we start with a quick recapitulation of DPOP, and its main features in Section6.1. Then we present the first contribution of this chapter: a generic, configurable framework for identifying and isolating difficult subprob-lemsof high width, which cannot be solved with the high-performance DPOP propagations. A distributed algorithm to this effect is presented in Section6.2. Once such difficult subproblems are identified, they can be solved with any of a number of alternative methods, and the partial results integrated in the overall DPOP propagation.

The second contribution is MB-DPOP, a configurable algorithm that uses thecycle-cutsetidea to offer a tradeoff between the amount of memory used and the number of messages. MB-DPOP is shown to perform up to 5 orders of magnitude better than ADOPT, the state of the art in memory-bounded search.

The third contribution is O-DPOP, a hybrid of best-first search and dynamic programming, which combines some advantages of both worlds: First, it uses messages whose size only grows linearly (as in search) with the treewidth of the problem. Second, by letting agents explore values in a best-first order, it avoids incurring always the worst case complexity as DPOP, and on average it saves a significant amount of computation and information exchange.