Combinatorial Search: From Algorithms to Systems

  • Youssef Hamadi

Table of contents

  1. Front Matter
    Pages I-XIII
  2. Youssef Hamadi
    Pages 1-3
  3. Youssef Hamadi
    Pages 5-26
  4. Youssef Hamadi
    Pages 27-48
  5. Youssef Hamadi
    Pages 49-69
  6. Youssef Hamadi
    Pages 71-82
  7. Youssef Hamadi
    Pages 83-97
  8. Youssef Hamadi
    Pages 99-122
  9. Youssef Hamadi
    Pages 123-126
  10. Back Matter
    Pages 127-139

About this book


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 given instance.

The book is suitable for researchers, practitioners, and graduate students working in the areas of optimization, search, constraints, and computational complexity.


Autonomous search Constraint networks Constraint programming (CP) Constraint satisfaction problem (CSP) Constraints Continuous search Knowledge sharing Machine learning Satisfiability problem (SAT) Search

Authors and affiliations

  • Youssef Hamadi
    • 1
  1. 1.Microsoft Research CambridgeCambridgeUnited Kingdom

Bibliographic information

Industry Sectors
Materials & Steel
Chemical Manufacturing
Finance, Business & Banking
IT & Software
Consumer Packaged Goods
Energy, Utilities & Environment
Oil, Gas & Geosciences