FRODO: A FRamework for Open/Distributed constraint Optimization
We present a framework for distributed combinatorial optimization. The framework is implemented in Java, and simulates a multiagent environment in a single Java virtual machine. Each agent in the environment is executed asynchronously in a separate execution thread, and communicates with its peers through message exchange. The framework is highly customizable, allowing the user to implement and experiment with any distributed optimization algorithm. Support for synchronous/asynchronous message passing, monitoring and statistics, as well as problem visualization tools are provided. A number of distributed algorithms are already implemented in this framework, like the Distributed Breakout Algorithm and the DPOP Algorithm. A number of random evaluation problems are also provided, from two distinct domains: meeting scheduling and resource allocation in a sensor network.