Teams of agents often have to coordinate their decisions in a distributed manner to achieve both individual and shared goals. Examples include service-oriented computing, sensor network problems, and smart devices coordination homes problems. The resulting Distributed Constraint Optimization Problem (DCOP) is NP-hard to solve, and the multi-agent coordination process non-trivial.
This tutorial is composed of two parts and will provide an overview of DCOPs, focusing on its algorithms and its applications to the Internet-of-Things (IoT).
In the first part, we will present an accessible and structured overview of the available optimal and suboptimal approaches to solving DCOPs. We will discuss recent extensions to the DCOP framework to capture agents acting in a dynamic environment and/or using asymmetric costs/rewards.
In the second part, we will review the application of DCOP methods that are suitable for the IoT context, illustrate a case study on how to model a real smart home, and, finally, show how to program and deploy DCOP algorithms on a real IoT environment composed of Raspberry PIs.
The tutorial will conclude with the most recurrent challenges and open questions.