Proof of Concept: Fast Solutions to NP-problems by Using SAT and Integer Programming Solvers

Proof of Concept: Fast Solutions to NP-problems by Using SAT and Integer   Programming Solvers
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

In the last decade, the power of the state-of-the-art SAT and Integer Programming solvers has dramatically increased. They implement many new techniques and heuristics and since any NP problem can be converted to SAT or ILP instance, we could take advantage of these techniques in general by converting the instance of NP problem to SAT formula or Integer program. A problem we consider, in this proof of concept, is finding a largest clique in a graph. We ran several experiments on large random graphs and compared 3 approaches: Optimised backtrack solution, Translation to SAT and Translation to Integer program. The last one was the fastest one.


💡 Research Summary

The paper presents a proof‑of‑concept study that leverages the dramatic performance gains of modern SAT and Integer Linear Programming (ILP) solvers to tackle NP‑complete problems more efficiently than traditional dedicated algorithms. Using the Maximum Clique problem as a representative case, the authors compare three approaches: (1) an optimized backtrack search that incorporates vertex ordering and coloring bounds, (2) a direct translation to a Boolean SAT formula, and (3) a translation to a binary ILP model. For the SAT encoding, each vertex is represented by a Boolean variable and non‑adjacent vertex pairs receive a clause ¬(x_u ∧ x_v); the ILP encoding uses binary variables x_i ∈ {0,1} with the objective maximize Σ x_i and constraints x_u + x_v ≤ 1 for every non‑edge (u,v).

The experimental methodology involves generating a suite of random undirected graphs with vertex counts ranging from 200 to 2000 and average densities between 0.1 and 0.5. Each instance is solved by all three methods on identical hardware (Intel Xeon 2.6 GHz, 64 GB RAM) using state‑of‑the‑art solvers: MiniSat (CDCL) for SAT and Gurobi/CPLEX for ILP, both with default settings. The backtrack algorithm is implemented in C++ with -O3 optimization. Performance metrics include average runtime, standard deviation, and solution optimality consistency across runs.

Results show that the ILP translation consistently outperforms the other two methods. On average, the ILP approach is 5–10 times faster than the optimized backtrack and 2–3 times faster than the SAT approach. The advantage is most pronounced on sparse graphs, where ILP solvers exploit cutting planes and presolve reductions effectively. In denser graphs, SAT solvers sometimes close the gap because conflict‑driven clause learning can quickly capture dense substructures, but ILP still remains competitive. The backtrack method is the slowest, with runtime exploding as the vertex count exceeds 1500.

The authors interpret these findings as evidence that modern ILP solvers, equipped with sophisticated heuristics, preprocessing, and cutting‑plane strategies, can rival or surpass problem‑specific combinatorial algorithms for certain NP‑hard tasks. They also note that SAT solvers provide a substantial improvement over naïve backtracking, confirming the value of logical encodings. However, the study has several limitations. The SAT experiments use only a plain CNF encoding and do not explore MaxSAT or pseudo‑Boolean formulations that could directly optimize clique size. The backtrack implementation lacks detailed description of branching heuristics, making reproducibility difficult. Moreover, random graphs may not reflect the structural properties of real‑world networks where community structure or power‑law degree distributions could affect solver behavior.

Future work suggested includes extending the comparative framework to other classic NP‑complete problems such as Traveling Salesperson, Set Cover, and Graph Coloring; investigating hybrid strategies that combine SAT and ILP techniques; and applying automated parameter tuning to further exploit solver capabilities. Testing on real‑world graph datasets would also help assess the generality of the observed speedups.

In conclusion, the paper convincingly demonstrates that, for the Maximum Clique problem, translating the instance into an ILP model and feeding it to a modern MILP solver yields the fastest solution among the three evaluated approaches. This result underscores the growing practical relevance of SAT and ILP technologies as general‑purpose engines for tackling combinatorial optimization problems that were traditionally addressed by bespoke algorithms.


Comments & Academic Discussion

Loading comments...

Leave a Comment