Learn More
The most popular architecture for parallel search is work stealing: threads that have run out of work (nodes to be searched) steal from threads that still have work. Work stealing not only allows for dynamic load balancing, but also determines which parts of the search tree are searched next. Thus the place from where work is stolen has a dramatic effect on(More)
Many constraint problems exhibit dominance relations which can be exploited for dramatic reductions in search space. Dominance relations are a generalization of symmetry and conditional symmetry. However , unlike symmetry breaking which is relatively well studied, dominance breaking techniques are not very well understood and are not commonly applied. In(More)
Many search problems contain large amounts of redundancy in the search. In this paper we examine how to automatically exploit remaining subproblem equivalence, which arises when two different search paths lead to identical remaining subproblems, that is the problem left on the remaining unfixed variables. Subproblem equivalence is exploited by caching(More)
Current SAT solvers are well engineered and highly efficient, and significant research effort has been put into creating data structures that can produce maximal efficiency for the core propagation engine within SAT solvers. However, there is still substantial room for improvement. As the disparity between CPU speeds and cache sizes have increased, cache(More)
Lazy clause generation is a powerful approach to reducing search in constraint programming. This is achieved by recording sets of domain restrictions that previously led to failure as new clausal prop-agators. Symmetry breaking approaches are also powerful methods for reducing search by recognizing that parts of the search tree are symmetric and do not need(More)
The Maximum Density Sill-Life Problem is to fill an n × n board of cells with the maximum number of live cells so that the board is stable under the rules of Conway's Game of Life. We reformulate the problem into one of minimising " wastage " rather than maximising the number of live cells. This reformulation allows us to compute strong upper bounds on the(More)
The Resource-constrained Project Scheduling Problem (Rcpsp), in which a schedule must obey the resource constraints and the precedence constraints between pairs of activities, is one of the most studied scheduling problems. An important variation of the problem (RcpspDc) is to find a schedule which maximises the net present value (discounted cash flow),(More)