Although they are believed to be unsolvable in general, tractability results suggest that some practical NP-hard problems can be efficiently solved. Combinatorial search algorithms are designed to efficiently explore the usually large solution space of these instances by reducing the search space to feasible regions and using heuristics to efficiently explore these regions. Various mathematical formalisms may be used to express and tackle combinatorial problems, among them the constraint satisfaction problem (CSP) and the propositional satisfiability problem (SAT). These algorithms, or constraint solvers, apply search space reduction through inference techniques, use activity-based heuristics to guide exploration, diversify the searches through frequent restarts, and often learn from their mistakes.
In this book the author focuses on knowledge sharing in combinatorial search, the capacity to generate and exploit meaningful information, such as redundant constraints, heuristic hints, and performance measures, during search, which can dramatically improve the performance of a constraint solver. Information can be shared between multiple constraint solvers simultaneously working on the same instance, or information can help achieve good performance while solving a large set of related instances. In the first case, information sharing has to be performed at the expense of the underlying search effort, since a solver has to stop its main effort to prepare and commu
nicate the information to other solvers; on the other hand, not sharing information can incur a cost for the whole system, with solvers potentially exploring unfeasible spaces discovered by other solvers. In the second case, sharing performance measures can be done with little overhead, and the goal is to be able to tune a constraint solver in relation to the characteristics of a new instance - this corresponds to the selection of the most suitable algorithm for solving a giveninstance.
The book is suitable for researchers, practitioners, and graduate students working in the areas of optimization, search, constraints, and computational complexity.
In this book the author focuses on knowledge sharing in combinatorial search, the capacity to generate and exploit meaningful information, such as redundant constraints, heuristic hints, and performance measures, during search, which can dramatically improve the performance of a constraint solver. Information can be shared between multiple constraint solvers simultaneously working on the same instance, or information can help achieve good performance while solving a large set of related instances. In the first case, information sharing has to be performed at the expense of the underlying search effort, since a solver has to stop its main effort to prepare and commu
nicate the information to other solvers; on the other hand, not sharing information can incur a cost for the whole system, with solvers potentially exploring unfeasible spaces discovered by other solvers. In the second case, sharing performance measures can be done with little overhead, and the goal is to be able to tune a constraint solver in relation to the characteristics of a new instance - this corresponds to the selection of the most suitable algorithm for solving a giveninstance.
The book is suitable for researchers, practitioners, and graduate students working in the areas of optimization, search, constraints, and computational complexity.
"The book deals with combinatorial search algorithms for NP-hard problems, focusing on knowledge sharing in combinatorial search. ... The diversity and originality of the proposed methods could be helpful for researchers, practitioner and graduate students working in optimization, search, and computational complexity." (Smaranda Belciug, zbMATH 1317.68003, 2015)
"The focus of this book is knowledge sharing in combinatorial search, a topic that is of considerable current importance in the quest for solutions to NP-hard problems. ... This is an exceptionally well-written book, which, while primarily presenting the author's own research, also provides a context for that work and many useful insights for the reader. Researchers, and possibly also practitioners, will find it well worth reading." (Amelia Regan, Computing Reviews, May, 2014)
"The main purpose of this book is to describe several aspects of combinatorial search algorithms and systems in a unified manner. ... The book is well written and will be useful for researchers and graduate students in computer science, operations research, and applied mathematics." (Petrica Pop, Computing Reviews, January, 2014)
"The focus of this book is knowledge sharing in combinatorial search, a topic that is of considerable current importance in the quest for solutions to NP-hard problems. ... This is an exceptionally well-written book, which, while primarily presenting the author's own research, also provides a context for that work and many useful insights for the reader. Researchers, and possibly also practitioners, will find it well worth reading." (Amelia Regan, Computing Reviews, May, 2014)
"The main purpose of this book is to describe several aspects of combinatorial search algorithms and systems in a unified manner. ... The book is well written and will be useful for researchers and graduate students in computer science, operations research, and applied mathematics." (Petrica Pop, Computing Reviews, January, 2014)