A generalized implicit enumeration algorithm for graph coloring
Communications of the ACM - Lecture notes in computer science Vol. 174
Short proofs for tricky formulas
Acta Informatica
Approximating clique is almost NP-complete (preliminary version)
SFCS '91 Proceedings of the 32nd annual symposium on Foundations of computer science
Exact coloring of real-life graphs is easy
DAC '97 Proceedings of the 34th annual Design Automation Conference
Efficient coloring of a large spectrum of graphs
DAC '98 Proceedings of the 35th annual Design Automation Conference
A linear-time transformation of linear inequalities into conjunctive normal form
Information Processing Letters
GRASP: A Search Algorithm for Propositional Satisfiability
IEEE Transactions on Computers
New methods to color the vertices of a graph
Communications of the ACM
A machine program for theorem-proving
Communications of the ACM
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Computers and Intractability: A Guide to the Theory of NP-Completeness
Computers and Intractability: A Guide to the Theory of NP-Completeness
CP '01 Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming
Global Cut Framework for Removing Symmetries
CP '01 Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming
CP '02 Proceedings of the 8th International Conference on Principles and Practice of Constraint Programming
Scatter Search for Graph Coloring
Selected Papers from the 5th European Conference on Artificial Evolution
Generic ILP versus specialized 0-1 ILP: an update
Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design
A fast pseudo-boolean constraint solver
Proceedings of the 40th annual Design Automation Conference
BerkMin: A Fast and Robust Sat-Solver
Proceedings of the conference on Design, automation and test in Europe
Breaking Instance-Independent Symmetries in Exact Graph Coloring
Proceedings of the conference on Design, automation and test in Europe - Volume 1
Exploiting structure in symmetry detection for CNF
Proceedings of the 41st annual Design Automation Conference
ShatterPB: symmetry-breaking for pseudo-Boolean formulas
Proceedings of the 2004 Asia and South Pacific Design Automation Conference
Efficient symmetry breaking for boolean satisfiability
IJCAI'03 Proceedings of the 18th international joint conference on Artificial intelligence
Tractable symmetry breaking for CSPs with interchangeable values
IJCAI'03 Proceedings of the 18th international joint conference on Artificial intelligence
A structure-based variable ordering heuristic for SAT
IJCAI'03 Proceedings of the 18th international joint conference on Artificial intelligence
IJCAI'01 Proceedings of the 17th international joint conference on Artificial intelligence - Volume 1
Solving difficult instances of Boolean satisfiability in the presence of symmetry
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Exploiting hierarchy and structure to efficiently solve graph coloring as SAT
Proceedings of the 2007 IEEE/ACM international conference on Computer-aided design
Comparison of Boolean satisfiability encodings on FPGA detailed routing problems
Proceedings of the conference on Design, automation and test in Europe
Breaking symmetries in SAT matrix models
SAT'07 Proceedings of the 10th international conference on Theory and applications of satisfiability testing
Adjustable Module Isolation for Distributed Computing Infrastructures
GRID '11 Proceedings of the 2011 IEEE/ACM 12th International Conference on Grid Computing
Hi-index | 0.00 |
Code optimization and high level synthesis can be posed as constraint satisfaction and optimization problems, such as graph coloring used in register allocation. Graph coloring is also used to model more traditional CSPs relevant to AI, such as planning, time-tabling and scheduling. Provably optimal solutions may be desirable for commercial and defense applications. Additionally, for applications such as register allocation and code optimization, naturally-occurring instances of graph coloring are often small and can be solved optimally. A recent wave of improvements in algorithms for Boolean satisfiability (SAT) and 0-1 Integer Linear Programming (ILP) suggests generic problem-reduction methods, rather than problem-specific heuristics, because (1) heuristics may be upset by new constraints, (2) heuristics tend to ignore structure, and (3) many relevant problems are provably inapproximable. Problem reductions often lead to highly symmetric SAT instances, and symmetries are known to slow down SAT solvers. In this work, we compare several avenues for symmetry breaking, in particular when certain kinds of symmetry are present in all generated instances. Our focus on reducing CSPs to SAT allows us to leverage recent dramatic improvement in SAT solvers and automatically benefit from future progress. We can use a variety of black-box SAT solvers without modifying their source code because our symmetry-breaking techniques are static, i.e., we detect symmetries and add symmetry breaking predicates (SBPs) during pre-processing. An important result of our work is that among the types of instance-independent SBPs we studied and their combinations, the simplest and least complete constructions are the most effective. Our experiments also clearly indicate that instance-independent symmetries should mostly be processed together with instance-specific symmetries rather than at the specification level, contrary to what has been suggested in the literature.