Zhanguang Zhang,Didier Chetelat,Joseph Cotnareanu,Amur Ghose,Wenyi Xiao,Hui-Ling Zhen,Yingxue Zhang,Jianye Hao,Mark Coates,Mingxuan Yuan
Abstract:Boolean satisfiability (SAT) problems are routinely solved by SAT solvers in real-life applications, yet solving time can vary drastically between solvers for the same instance. This has motivated research into machine learning models that can predict, for a given SAT instance, which solver to select among several options. Existing SAT solver selection methods all rely on some hand-picked instance features, which are costly to compute and ignore the structural information in SAT graphs. In this paper we present GraSS, a novel approach for automatic SAT solver selection based on tripartite graph representations of instances and a heterogeneous graph neural network (GNN) model. While GNNs have been previously adopted in other SAT-related tasks, they do not incorporate any domain-specific knowledge and ignore the runtime variation introduced by different clause orders. We enrich the graph representation with domain-specific decisions, such as novel node feature design, positional encodings for clauses in the graph, a GNN architecture tailored to our tripartite graphs and a runtime-sensitive loss function. Through extensive experiments, we demonstrate that this combination of raw representations and domain-specific choices leads to improvements in runtime for a pool of seven state-of-the-art solvers on both an industrial circuit design benchmark, and on instances from the 20-year Anniversary Track of the 2022 SAT Competition.
What problem does this paper attempt to address?
The problem that this paper attempts to solve is: in Boolean satisfiability (SAT) problem solving, the solving time of different solvers for the same instance may vary greatly. Therefore, researchers are committed to developing machine - learning models that can predict and select the optimal SAT solver to reduce the solving time.
Specifically, the existing SAT solver selection methods rely on manually selected instance features, which are costly to calculate and ignore the structural information in the SAT graph. This paper proposes GraSS (Graph Neural Network SAT Solver Selector), a new method based on tri - partite graph representation and heterogeneous graph neural network (GNN) models, aiming to automatically select SAT solvers. Compared with previous methods, GNN can not only handle the original data representation, but also combine domain - specific knowledge, such as novel node feature design, position encoding of clauses, and GNN architectures customized for tri - partite graphs and runtime - sensitive loss functions. Verified by a large number of experiments, GraSS performs well in both industrial circuit design benchmark tests and instances of the 2022 SAT competition, significantly improving the performance of seven state - of - the - art solvers.
### Formula Presentation
1. **Position Encoding Formula**:
To capture the influence of clause order on solver running time, the author introduced position encoding. For the \( k \) - th clause, its position encoding is a 10 - dimensional vector \( PE(k, :) \), which is defined as follows:
\[
PE(k, 2i)=\sin\left(\frac{k}{10000^{2i / 10}}\right), \quad PE(k, 2i + 1)=\cos\left(\frac{k}{10000^{2i / 10}}\right)
\]
where \( i = 0,\ldots,4 \).
2. **Loss Function**:
To minimize the solving time, the author proposed a regret - like loss function:
\[
L=\frac{1}{N}\sum_{i = 1}^N\left(\sum_{k = 1}^K p_{ik}t_{ik}-t_i^*\right)^2
\]
where \( p_{ik} \) is the probability of using the \( k \) - th solver predicted by the model, \( t_{ik} \) is the actual running time of the \( k \) - th solver, and \( t_i^*=\min_k t_{ik} \) is the best running time among all solvers.
### Summary
This paper proposes a new graph - neural - network - based method GraSS for automatically selecting SAT solvers. By combining domain - specific knowledge and novel graph representation methods, GraSS performs well in multiple benchmark tests and significantly reduces the solving time. This method not only improves the selection efficiency of existing solvers but also provides new ideas for future research.