Distributed constraint optimization and its application to multiagent resource allocation

Distributed optimization requires the optimization of a global objective function that is distributed among a set of autonomous, communicating agents and is unknown by any individual agent. The problem is inherently distributed and the Solution strategy has no control over the given distribution. Constraint based techniques offer a promising approach for these types of problems. However, previous work has either limited representation to binary good/nogood constraints or relied on synchronous sequential computation to find optimal solutions. Asynchronous methods have previously lacked any guarantees of Optimality, This work proposes <i>Adopt,</i> an asynchronous, distributed, complete method for solving distributed constraint optimization problems. The fundamental ideas in Adopt are to represent constraints as discrete functions (or valuations)-- instead of binary good/nogood values -- and to use the evaluation of these constraints to measure progress towards optimality. In addition, Adopt uses a sound and complete partial solution combination method to allow non-sequential, asychronous computation. Adopt is applied to a real-world distributed resource allocation problem. Distributed resource allocation is a general problem in which a set of agents must optimally assign their resources to a set of tasks with respect to certain criteria. It arises in many real-world domains such as distributed sensor networks, disaster rescue, hospital scheduling, and others.