LEARNING A SAT SOLVER FROM SINGLE-BIT SUPERVISION 2020-05-01

LEARNING A SAT SOLVER FROM SINGLE-BIT SUPERVISION

Abstract

NeuroSAT : a classifier to predict satisfiability of a propositional formula

train NN ,2* LSTM+3* MLP (每个t : literal & variable 相互更新)
监督学习, 二分类器。
contribution:虽然结果一般,但是用监督学习的过程中,运用可视化发现,sat时可以发现解(PCA降维,聚类); generalization

NeuroSAT generalizes to novel distributions

代码:
HTTP://github.com/dselsam/neurosat

Introduction

backtracking search 回溯算法的SAT solver 可以解决millions of(数百万) variables的问题

Can a neural network learn to solve SAT problems?
给 NeuroSAT提供 a single bit of标签(satisfiable or not) supervision 监督学习 for each SAT problem

  1. encoding any kind of search problem.
    test domain is totally different from training. Generalization.
  2. NeuroUNSAT
    help construct proofs for unsatisfiable problems, learns to detect contradictions (矛盾的x)
    instead of searching for satisfying assignments.

Background

For every formula, there exists an equisatisfiable formula in conjunctive normal form (CNF).
Each conjunct of a formula in CNF is called a clause, and each (possibly negated) variable within a clause is called a literal。


image.png

CNF:


image.png
image.png

SAT problem: the goal is to determine if the formula is satisfiable, and if so, to produce a satisfying assignment of truth values to variables.

Classification Task
learn a classifier that approximates φ.

MODEL

否定不变性:
image.png

排列不变性:literal,clause,variable各自都可以在自己的范围换位置,

NeuroSAT(神经元SAT)
每轮iteration:
1.clause receives messages from its neighboring literals and updates its embedding accordingly. (2a)
2.each literal receives messages from its neighboring clauses as well as from its complement (2b)


image.png
image.png

先以较低概率猜测unset, 直到找到satisfy。 否则, 一直low-confidence。 it only guesses sat once it has found one. embeddings L(T) ∈ R^ (2n×d) to the literal votes L(T) ∗ using the MLP L_vote.
L_vote -> L(T) scalar for each literal ; mean(L(T) ) -> y(T)
(vote: 每个变量有个投票, 例如 :经过sigmoid后, 正表示这个variable投问题satisfy票, 负为投unstatisfy票,最后平均)
PCA降维后聚类:一类variable为1,一类为0就是最后的解

image.png

image.png

FINDING UNSAT CORES

NeuroUNSAT is able to predict satisfiability on the test set with 100% accuracy.

WORD & PHRASE

a boolean expression built using the constants true (1) and false (0), variables, negations(非), conjunctions(and), and disjunctions(or).

substantially: to a great or significant extent. substantially larger: 大的多

in any context 在任何情况下, context:上下文

a satisfying assignment of a propositional formula 一个命题公式的令人满意的赋值

construct an appropriate SAT problem and then call an SAT solver 构造SAT问题,调用solver

has yielded not A: 没有产生A

phase transition相变

evolve == develop (发展/演变)network+~

As we stressed early on 正如我们早期强调的那样

vastly 极大的 very, extremely, remarkably, especially, exceedingly, vastly

A is less reliable than the state-of-the-art. 不如最先进方法可靠

recognize, admit, acknowledge, confess, accept, concede 承认

你可能感兴趣的:(LEARNING A SAT SOLVER FROM SINGLE-BIT SUPERVISION 2020-05-01)