Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?

We present Graph-Q-SAT, a branching heuristic for a Boolean SAT solver trained with value-based reinforcement learning (RL) using Graph Neural Networks for function approximation. Solvers using Graph-Q-SAT are complete SAT solvers that either provide a satisfying assignment or proof of unsatisfiabil...

Full description

Bibliographic Details
Main Authors: Kurin, V, Godil, S, Whiteson, S, Catanzaro, B
Format: Conference item
Language:English
Published: NeurIPS 2020
_version_ 1826288700282109952
author Kurin, V
Godil, S
Whiteson, S
Catanzaro, B
author_facet Kurin, V
Godil, S
Whiteson, S
Catanzaro, B
author_sort Kurin, V
collection OXFORD
description We present Graph-Q-SAT, a branching heuristic for a Boolean SAT solver trained with value-based reinforcement learning (RL) using Graph Neural Networks for function approximation. Solvers using Graph-Q-SAT are complete SAT solvers that either provide a satisfying assignment or proof of unsatisfiability, which is required for many SAT applications. The branching heuristics commonly used in SAT solvers make poor decisions during their warm-up period, whereas Graph-Q-SAT is trained to examine the structure of the particular problem instance to make better decisions early in the search. Training Graph-Q-SAT is data efficient and does not require elaborate dataset preparation or feature engineering. We train Graph-Q-SAT using RL interfacing with MiniSat solver and show that Graph-Q-SAT can reduce the number of iterations required to solve SAT problems by 2-3X. Furthermore, it generalizes to unsatisfiable SAT instances, as well as to problems with 5X more variables than it was trained on. We show that for larger problems, reductions in the number of iterations lead to wall clock time reductions, the ultimate goal when designing heuristics. We also show positive zero-shot transfer behavior when testing Graph-Q-SAT on a task family different from that used for training. While more work is needed to apply Graph-Q-SAT to reduce wall clock time in modern SAT solving settings, it is a compelling proof-of-concept showing that RL equipped with Graph Neural Networks can learn a generalizable branching heuristic for SAT search.
first_indexed 2024-03-07T02:17:39Z
format Conference item
id oxford-uuid:a2d1a2cf-8f74-408d-9587-00dcc5d6cadd
institution University of Oxford
language English
last_indexed 2024-03-07T02:17:39Z
publishDate 2020
publisher NeurIPS
record_format dspace
spelling oxford-uuid:a2d1a2cf-8f74-408d-9587-00dcc5d6cadd2022-03-27T02:22:36ZCan Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?Conference itemhttp://purl.org/coar/resource_type/c_5794uuid:a2d1a2cf-8f74-408d-9587-00dcc5d6caddEnglishSymplectic ElementsNeurIPS2020Kurin, VGodil, SWhiteson, SCatanzaro, BWe present Graph-Q-SAT, a branching heuristic for a Boolean SAT solver trained with value-based reinforcement learning (RL) using Graph Neural Networks for function approximation. Solvers using Graph-Q-SAT are complete SAT solvers that either provide a satisfying assignment or proof of unsatisfiability, which is required for many SAT applications. The branching heuristics commonly used in SAT solvers make poor decisions during their warm-up period, whereas Graph-Q-SAT is trained to examine the structure of the particular problem instance to make better decisions early in the search. Training Graph-Q-SAT is data efficient and does not require elaborate dataset preparation or feature engineering. We train Graph-Q-SAT using RL interfacing with MiniSat solver and show that Graph-Q-SAT can reduce the number of iterations required to solve SAT problems by 2-3X. Furthermore, it generalizes to unsatisfiable SAT instances, as well as to problems with 5X more variables than it was trained on. We show that for larger problems, reductions in the number of iterations lead to wall clock time reductions, the ultimate goal when designing heuristics. We also show positive zero-shot transfer behavior when testing Graph-Q-SAT on a task family different from that used for training. While more work is needed to apply Graph-Q-SAT to reduce wall clock time in modern SAT solving settings, it is a compelling proof-of-concept showing that RL equipped with Graph Neural Networks can learn a generalizable branching heuristic for SAT search.
spellingShingle Kurin, V
Godil, S
Whiteson, S
Catanzaro, B
Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title_full Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title_fullStr Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title_full_unstemmed Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title_short Can Q-learning with graph networks learn a generalizable branching heuristic for a SAT solver?
title_sort can q learning with graph networks learn a generalizable branching heuristic for a sat solver
work_keys_str_mv AT kurinv canqlearningwithgraphnetworkslearnageneralizablebranchingheuristicforasatsolver
AT godils canqlearningwithgraphnetworkslearnageneralizablebranchingheuristicforasatsolver
AT whitesons canqlearningwithgraphnetworkslearnageneralizablebranchingheuristicforasatsolver
AT catanzarob canqlearningwithgraphnetworkslearnageneralizablebranchingheuristicforasatsolver