ebook img

Algorithms and Ordering Heuristics for Distributed Constraint Satisfaction Problems PDF

166 Pages·2013·4.998 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Algorithms and Ordering Heuristics for Distributed Constraint Satisfaction Problems

Algorithms and Ordering Heuristics for Distributed Constraint Satisfaction Problems In memoryof a great man, Mouhamed Moumane FOCUS SERIES Series Editor Narendra Jussien Algorithms and Ordering Heuristics for Distributed Constraint Satisfaction Problems Mohamed Wahbi Firstpublished2013 inGreatBritainandtheUnitedStatesbyISTELtdandJohnWiley&Sons,Inc. Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permittedundertheCopyright,DesignsandPatentsAct1988,thispublicationmayonlybereproduced, storedortransmitted,inanyformorbyanymeans,withthepriorpermissioninwritingofthepublishers, or in the case of reprographic reproduction in accordance with the terms and licenses issued by the CLA. Enquiries concerning reproduction outside these terms should be sent to the publishers at the undermentionedaddress: ISTELtd JohnWiley&Sons,Inc. 27-37StGeorge’sRoad 111RiverStreet LondonSW194EU Hoboken,NJ07030 UK USA www.iste.co.uk www.wiley.com ©ISTELtd2013 TherightsofMohamedWahbitobeidentifiedastheauthorofthisworkhavebeenassertedbyhimin accordancewiththeCopyright,DesignsandPatentsAct1988. LibraryofCongressControlNumber: 2013937865 BritishLibraryCataloguing-in-PublicationData ACIPrecordforthisbookisavailablefromtheBritishLibrary ISSN:2051-2481(Print) ISSN:2051-249X(Online) ISBN:978-1-84821-594-8 PrintedandboundinGreatBritainbyCPIGroup(UK)Ltd.,Croydon,SurreyCR04YY Contents PREFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii PART1.BACKGROUNDONCENTRALIZEDAND DISTRIBUTEDCONSTRAINTREASONING . . . . . . . . . . . . . . . . . . . 1 CHAPTER1.CONSTRAINTSATISFACTION PROBLEMS . . . . . . . . . . . 3 1.1.Centralizedconstraintsatisfactionproblems. . . . . . . . . . . . . . . . 3 1.1.1.Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1.2.ExamplesofCSPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2.AlgorithmsandtechniquesforsolvingcentralizedCSPs. . . . . . . . . 10 1.2.1.AlgorithmsforsolvingcentralizedCSPs . . . . . . . . . . . . . . . 10 1.2.2.VariableorderingheuristicsforcentralizedCSPs . . . . . . . . . . . 23 1.3.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 CHAPTER2.DISTRIBUTEDCONSTRAINTSATISFACTION PROBLEMS . . 29 2.1.Distributedconstraintsatisfaction problems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.1.1.Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.1.2.ExamplesofDisCSPs . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.1.3.Distributedmeetingschedulingproblem(DisMSP) . . . . . . . . . 32 2.1.4.Distributedsensornetworkproblem (SensorDCSP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.2.MethodsforsolvingDisCSPs . . . . . . . . . . . . . . . . . . . . . . . . 36 2.2.1.SynchronoussearchalgorithmsonDisCSPs . . . . . . . . . . . . . 37 2.2.2.AsynchronoussearchalgorithmsonDisCSPs. . . . . . . . . . . . . 40 vi AlgorithmsandOrderingHeuristicsforDisCSPs 2.2.3.DynamicorderingheuristicsonDisCSPs . . . . . . . . . . . . . . . 44 2.2.4.MaintainingarcconsistencyonDisCSPs . . . . . . . . . . . . . . . 47 2.3.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 PART2.SYNCHRONOUSSEARCHALGORITHMSFOR DISCSPS . . . . . 49 CHAPTER3.NOGOOD-BASED ASYNCHRONOUSFORWARD CHECKING(AFC-NG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.Nogood-basedasynchronousforwardchecking . . . . . . . . . . . . . . 53 3.2.1.Descriptionofthealgorithm . . . . . . . . . . . . . . . . . . . . . . 53 3.2.2.Asimpleexampleofthebacktrackoperation onAFC-likealgorithms . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.3.Correctnessproofs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.4.Experimentalevaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.4.1.UniformbinaryrandomDisCSPs . . . . . . . . . . . . . . . . . . . 61 3.4.2.Distributedsensor-targetproblems . . . . . . . . . . . . . . . . . . . 62 3.4.3.Distributedmeetingschedulingproblems . . . . . . . . . . . . . . . 64 3.4.4.Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.5.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 CHAPTER4.ASYNCHRONOUSFORWARD-CHECKING TREE (AFC-TREE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 4.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 4.2.Pseudo-treeordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 4.3.Distributeddepth-firstsearchtreeconstruction . . . . . . . . . . . . . . 72 4.4.TheAFC-treealgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 4.4.1.Descriptionofthealgorithm . . . . . . . . . . . . . . . . . . . . . . 77 4.5.Correctnessproofs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 4.6.Experimentalevaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 4.6.1.UniformbinaryrandomDisCSPs . . . . . . . . . . . . . . . . . . . 80 4.6.2.Distributedsensor-targetproblems . . . . . . . . . . . . . . . . . . . 82 4.6.3.Distributedmeetingschedulingproblems . . . . . . . . . . . . . . . 84 4.6.4.Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.7.Otherrelatedworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 4.8.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 CHAPTER5.MAINTAININGARCCONSISTENCY ASYNCHRONOUSLY INSYNCHRONOUSDISTRIBUTEDSEARCH . . . . . . . . . . . . . . . . . . 87 5.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 5.2.Maintainingarcconsistency. . . . . . . . . . . . . . . . . . . . . . . . . 88 5.3.Maintainingarcconsistencyasynchronously . . . . . . . . . . . . . . . 89 5.3.1.EnforcingACusingdelmessages(MACA-del) . . . . . . . . . . . 90 Contents vii 5.3.2.EnforcingACwithoutadditionalkindofmessage (MACA-not) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 5.4.Theoreticalanalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.5.Experimentalresults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5.1.Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.6.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 PART3.ASYNCHRONOUSSEARCHALGORITHMSAND ORDERINGHEURISTICSFORDISCSPS . . . . . . . . . . . . . . . . . . . . 101 CHAPTER6.CORRIGENDUMTO“MIN-DOMAINRETROACTIVE ORDERING FORASYNCHRONOUSBACKTRACKING” . . . . . . . . . . . . 103 6.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 6.2.Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.3.ABT_DO-Retromaynotterminate . . . . . . . . . . . . . . . . . . . . . 106 6.4.Therightwaytocompareorders . . . . . . . . . . . . . . . . . . . . . . 108 6.5.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 CHAPTER7.AGILEASYNCHRONOUSBACKTRACKING (AGILE-ABT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.2.Introductorymaterial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 7.2.1.Reorderingdetails . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 7.2.2.Thebacktrackingtarget . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.2.3.Decreasingterminationvalues . . . . . . . . . . . . . . . . . . . . . 116 7.3.Thealgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 7.4.Correctnessandcomplexity . . . . . . . . . . . . . . . . . . . . . . . . . 120 7.5.Experimentalresults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 7.5.1.UniformbinaryrandomDisCSPs . . . . . . . . . . . . . . . . . . . 124 7.5.2.Distributedsensortargetproblems . . . . . . . . . . . . . . . . . . . 125 7.5.3.Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 7.6.Relatedworks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 7.7.Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 PART4.DISCHOCO2.0: APLATFORMFORDISTRIBUTED CONSTRAINTREASONING . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 CHAPTER8.DISCHOCO2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 8.1.Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 8.2.Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 8.2.1.Communicationsystem . . . . . . . . . . . . . . . . . . . . . . . . . 135 8.2.2.Eventmanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 8.2.3.Observersinlayers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 viii AlgorithmsandOrderingHeuristicsforDisCSPs 8.3.UsingDisChoco2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8.4.Experimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 8.5.Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 CONCLUSIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 BIBLIOGRAPHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Preface Constraintprogrammingisanareaincomputersciencethathasgainedincreasing interestinrecentyears.Constraintprogrammingisbasedonitspowerfulframework called constraint satisfaction problem (CSP). CSP is a general framework that can formalize many real-world combinatorial problems such as resource allocation, car sequencing, natural language understanding and machine vision. A CSP consists of looking for solutions to a constraint network, i.e. a set of assignments of values to variables that satisfy the constraints of the problem. These constraints represent restrictionsonvaluecombinationsallowedforconstrainedvariables. Various applications that are of a distributed nature exist. In this kind of application, the knowledge about the problem, i.e. variables and constraints, is distributed among physically distributed agents. This distribution is mainly due to privacyand/orsecurityrequirements: constraintsorpossiblevaluesmaybestrategic information that should not be revealed to other agents that can be seen as competitors. Several applications in multi-agent coordination are of such kind. Examplesofapplicationsaresensornetworks[JUN01,BÉJ05],militaryunmanned aerialvehicleteams[JUN01],distributedschedulingproblems[WAL02,MAH04], distributed resource allocation problems [PET04], log-based reconciliation [CHO06], distributed vehicle routing problems [LÉA11], etc. Therefore, the distributedframeworkdistributedconstraintsatisfactionproblem(DisCSP)isusedto modelandsolvethiskindofproblem. A DisCSP is composed of a group of autonomous agents, where each agent has controlofsomeelementsofinformationaboutthewholeproblem, i.e.variablesand constraints. Each agent owns its local constraint network. Variables in different agents are connected by constraints. Agents must assign, in a distributed manner, values to their variables so that all constraints are satisfied. Hence, agents assign values to their variables, attempting to generate locally consistent assignments that arealsoconsistentwithconstraintsbetweenagents[YOK98,YOK00a].Toachieve thisgoal,agentscheckthevaluesassignedtotheirvariablesforlocalconsistencyand x AlgorithmsandOrderingHeuristicsforDisCSPs exchange messages to check the consistency of their proposed assignments against constraintsthatcontainvariablesthatbelongtootheragents. Many distributed algorithms for solving DisCSPs have been designed in the last two decades. They can be divided into two main groups: synchronous and asynchronous algorithms. The first category includes algorithms in which agents assign values to their variables in a synchronous and sequential way. The second category includes algorithms in which the process of proposing values to the variables and exchanging these proposals is performed asynchronously between the agents. In the former category, agents do not have to wait for decisions of others, whereas, in general, only one agent has the privilege of making a decision in the synchronousalgorithms. Thisbooktriestoextendthestateoftheartbyproposingseveralalgorithmsand heuristicsforsolvingtheDisCSPs.Thebookstartswithabriefintroductiontothestate oftheartintheareaofcentralizedconstraintprogramming.The(CSP)formalismis definedandsomeacademicandrealexamplesofproblemsthatcanbemodeledand solvedbyCSParepresented.Then,typicalmethodsforsolvingcentralizedCSPsare briefly reported. Next, preliminary definitions on the DisCSP formalism are given. Afterward, the main algorithms that have been developed in the literature to solve DisCSPsaredescribed. The second part of this book provides three algorithms for solving DisCSPs. These algorithms are classified under the category of synchronous algorithms. The first algorithm is the nogood-based asynchronous forward checking (AFC-ng). AFC-ng is a nogood-based version of the asynchronous forward checking (AFC) [MEI07] algorithm. Besides its use of nogoods as justification of value removals, AFC-ng allows simultaneous backtracks to go from different agents to different destinations. AFC-ng only needs polynomial space. Proofs of the correctness of the AFC-ng are also given. A comparison of its performance with other well-known distributed algorithms for solving DisCSP is presented. The results are reported for random DisCSPs and instances from real benchmarks: sensor networks and distributedmeetingscheduling. The second algorithm, called asynchronous forward-checking tree (AFC-tree), extends the AFC-ng algorithm using a pseudo-tree arrangement of the constraint graph. To achieve this goal, agents are ordered a priori in a pseudo-tree such that agentsindifferentbranchesofthetreedonotshareanyconstraint.AFC-treedoesnot address the process of ordering the agents in a pseudo-tree arrangement. The construction of the pseudo-tree is done in a preprocessing step. Using this priority ordering, AFC-tree performs multiple AFC-ng processes on the paths from the root to the leaves of the pseudo-tree. The good properties of the AFC-tree are demonstrated. AFC-tree is compared to AFC-ng on random DisCSPs and instances fromrealbenchmarks: sensornetworksanddistributedmeetingscheduling.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.