Gadi Solotorevsky and Ehud Gudes
This paper investigates Constraint Satisfaction Problems (CSPs) that axe distributed by nature, i.e., there is a division of the CSP into sub components (agents) that axe connected via constraints, where each subcomponent includes several of the CSP variables with the constraints between them. We call such a problem a Distributed CSP (DCSP). In this paper we give a formal definition of DCSPs and present four algorithms for solving them. Two of the algorithms are based on the difference between the difficulty of solving the internal constraints in the CSP components (we call them the peripheral components) of the DCSP and the difficulty of solving the constraints between the different CSPs (the central component). The two other algorithms use local and global views of the DCSP respectively. All the algorithms permit the use of different techniques (CSP, knowledge based, and operation research algorithms) in solving each of the problem components. We probe that as long as all the selected techniques axe sound and complete, our algorithms are sound and complete. The algorithms were tested in a real distributed environment; the results show that when there is a difference between the difficulty of solving the peripheral components and the central one, taking advazltage of it may reduce significantly the amount of work (constraint checks and message passing) needed for solving the DCSP.