[논문 리뷰] Learning a SAT Solver from Single-Bit Supervision
NeuroSAT는 SAT/UNSAT만 예측하도록 훈련된 메시지 전달 신경망이며, 그 활성화로 만족하는 할당을 디코딩하고 더 많은 반복을 실행하여 더 크거나 다른 SAT 문제를 해결할 수 있습니다.
We present NeuroSAT, a message passing neural network that learns to solve SAT problems after only being trained as a classifier to predict satisfiability. Although it is not competitive with state-of-the-art SAT solvers, NeuroSAT can solve problems that are substantially larger and more difficult than it ever saw during training by simply running for more iterations. Moreover, NeuroSAT generalizes to novel distributions; after training only on random SAT problems, at test time it can solve SAT problems encoding graph coloring, clique detection, dominating set, and vertex cover problems, all on a range of distributions over small random graphs.
연구 동기 및 목표
- Develop a neural network that learns to solve SAT problems by being trained as a SAT classifier with minimal supervision.
- Enforce permutation and negation invariances through graph-based encoding of SAT problems.
- Demonstrate the model’s ability to solve larger problems and transfer to different domains.
- Show that solving can be achieved by decoding solutions from network activations.
- Explore unsat-core detection and its use for unsatisfiability proofs.
제안 방법
- Encode SAT problems as bipartite graphs with literal and clause nodes and complementary literal edges.
- Use a message-passing neural network (NeuroSAT) with two-stage updates per iteration (clause->literals, literals->clauses) and LSTMs for state updates.
- Maintain permutation and negation invariance by graph-based topology and literal-complement relations.
- Compute a scalar vote per literal after T iterations and predict satisfiability via a sigmoid loss.
- Train on a single-bit labeled dataset generated from SR(n) where one satisfiable and one unsatisfiable instance differ by one literal.
- Demonstrate decoding of satisfying assignments from final literal embeddings via clustering.
실험 결과
연구 질문
- RQ1Can a neural network trained only to classify SAT problems learn a procedure to find satisfying assignments?
- RQ2Does NeuroSAT generalize beyond the training distribution to larger sizes and entirely different problem domains encoded as SAT?
- RQ3Can the same architecture be used to identify unsat cores and assist in proving unsatisfiability?
- RQ4What mechanisms underlie the decoding of solutions from NeuroSAT activations, and how reliable is it across instances?
주요 결과
| 지표 | 값 |
|---|---|
| 전체 테스트 정확도 | 85% |
| 무슨 문제에서의 정확도 | 96% |
| SAT 문제에서의 정확도 | 73% |
| 해결된 SAT 문제의 비율 | 70% |
- NeuroSAT achieves 85% accuracy on SR(U(10,40)) test set for satisfiability classification.
- On satisfiable problems, NeuroSAT correctly predicts SAT with 73% accuracy and decodes a satisfying assignment for 70% of such problems.
- On unsatisfiable problems, NeuroSAT achieves 96% accuracy for UNSAT.
- NeuroSAT can solve significantly larger problems than seen during training by running more iterations (e.g., 25% of SR(n) for n=200 with extended iterations).
- NeuroSAT generalizes to SAT problems encoding graph coloring, clique detection, dominating set, and vertex cover across various random graph distributions.
- NeuroUNSAT can achieve 100% accuracy on detecting satisfiability when trained on data with small unsat cores, and can decode core literals from activations.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.