Skip to content

dmeoli/NeuroSAT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d09ec73 · Jul 13, 2022
Sep 14, 2021
Dec 26, 2021
Dec 7, 2021
Dec 27, 2021
Dec 27, 2021
Dec 12, 2021
Dec 20, 2021
Dec 24, 2021
Dec 25, 2021
Jul 18, 2021
Jul 13, 2022
Dec 7, 2021
Dec 7, 2021

Repository files navigation

NeuroSAT

Open in Colab Open in Colab

Open in Colab

Neuro-symbolic approaches to the SAT problem.

This code has been developed in the context of Pattern Recognition and Reinforcement Learning courses @ Department of Computer Science @ University of Pisa under the supervision of prof. Davide Bacciu.

Contents

  • Reinforcement Learning (Alpha Zero (MCTS)) approach described in [1].

  • Supervised Learning (GNN) + Reinforcement Learning (DQN) approach described in [2].

    The experimental results of GraphQSAT and GATQSAT models can be viewed here.

The final presentation of the course project can be found here.

Getting the code

Getting the whole project and all the subprojects updated at the latest version can be done with:

git clone --recurse-submodules https://gitlab.com/smspp/neuroSAT.git
git submodule foreach --recursive "git checkout master"
git submodule foreach --recursive "git pull"

Split datasets

bash train_val_test_split.sh {uniform-random-3-sat | graph-coloring}

License License: MIT

This software is released under the MIT License. See the LICENSE file for details.

References

[1] Wang, Fei, and Tiark Rompf, From Gameplay to Symbolic Reasoning: Learning SAT Solver Heuristics in the Style of Alpha(Go) Zero.

[2] Kurin, Vitaly, et al., Can Q-Learning with Graph Networks Learn a Generalizable Branching Heuristic for a SAT Solver?.

About

Neuro-symbolic approaches to the SAT problem

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published