160 likes | 330 Views
A Distributed, Complete Method for Multi-Agent Constraint Optimization.
E N D
A Distributed, Complete Method forMulti-Agent Constraint Optimization Adrian Petcu, Boi Faltingsadrian.petcu@epfl.ch; boi.faltings@epfl.chArtificial Intelligence LaboratorySwiss Federal Institute of Technology (EPFL)IN-Ecublens, 1015 Lausanne, Switzerlandhttp://liawww.epfl.ch/People/apetcu/
Overview • Problem description • DTREE – tree propagation algorithm • CyPro – utility propagation with cycles • CyCopt – splitting the problem • Conclusions & future work
Multi-agent Constraint Optimization (MCOP) • Constraint Optimization Problems (COP) – tuple <X, D, R> • MCOP – multi-agent version of COP: in general, one variable per agent • MCOP – solutions have a “quality” to be maximized (constraints are utility functions, not predicates)
Overview • Problem description • DTREE – tree propagation algorithm • CyPro – utility propagation with cycles • CyCopt – splitting the problem • Conclusions & future work
DTREE (1) – main ideas • Distributed utility propagation algorithm • The leaves of the tree initiate the propagation, and then all nodes forward messages by the “k-1 rule” • Nodes terminate after receiving all k messages (k neighbors, one message each) • 2 x (n-1) fixed size messages transmitted.
DTREE (2) – message dynamics x0 x4 x1 x3 x6 x7 x5 x2 Done!
DTREE (3) – computation details X2X1 X1X0 X3X1 R(X1,X0)
Overview • Problem description • DTREE – tree propagation algorithm • CyPro – utility propagation with cycles • CyCopt – splitting the problem • Conclusions & future work
CyPro(1) • Idea: reduce a complex problem (with cycles) to separate cycle-free parts • Choose a set of cycle cut nodes, and initiate propagation from them. • Explore all combinations of values of CC nodes, and have them “assemble” the results
CyPro(2) “normal” nodes forward by the k-1 rule, and combine contexts Xj,Xk Xj,Xk Xk=vk0 Xj=vj0 Tree parts send messages as before Cycle cuts act like leaves
Overview • Problem description • DTREE – tree propagation algorithm • CyPro – utility propagation with cycles • CyCopt – splitting the problem • Conclusions & future work
CyCOpt(1) • Cyclic sub graphs can be processed independently if they are connected through only one CC node. • A meta-tree is formed by CC nodes and cyclic sub graphs • Processing in the meta-tree proceeds like in DTREE
CyCOpt(2) Xj Xk
Overview • Problem description • DTREE – tree propagation algorithm • CyPro – utility propagation with cycles • CyCopt – splitting the problem • Conclusions & future work
Conclusions & future work • Linear message size, linear memory • Reduction in complexity from domn >> dom|CC|>> dom|CCs in largest subgraph| • Choice of the cycle cutset is important • Exhaustive search within a cyclic subgraph is maybe not necessary
References • F. Kschischang, B.Frey, and H. Loeliger. Factor graphs and the sum-product algorithm. IEEE TRANSACTIONS ON INFORMATION THEORY, 2001. • Rina Dechter. Constraint Processing. Morgan Kaufmann, 2003. • P. Modi, W. Shen, M. Tambe, and M. Yokoo. An asynchronous complete method for distributed constraint optimization, 2003.