Skip to main content
QUICK REVIEW

[论文解读] Enhancing SAT solvers with glue variable predictions

Jesse Michael Han|arXiv (Cornell University)|Jul 6, 2020
Constraint Satisfaction and Optimization参考文献 35被引用 6
一句话总结

本文提出通过训练轻量级神经网络来预测粘合变量(glue variables)——这是高效冲突子句生成的关键因素——以增强SAT求解器,采用监督学习与强化学习相结合的方法。通过基于这些预测结果定期重新聚焦分支启发式策略,该方法在无需GPU加速的情况下,提升了CaDiCaL求解器在SATCOMP 2018、SATRACE 2019以及SHA-1原像攻击基准测试中的表现,达到当前最先进水平。

ABSTRACT

Modern SAT solvers routinely operate at scales that make it impractical to query a neural network for every branching decision. NeuroCore, proposed by Selsam and Bjorner, offered a proof-of-concept that neural networks can still accelerate SAT solvers by only periodically refocusing a score-based branching heuristic. However, that work suffered from several limitations: their modified solvers require GPU acceleration, further ablations showed that they were no better than a random baseline on the SATCOMP 2018 benchmark, and their training target of unsat cores required an expensive data pipeline which only labels relatively easy unsatisfiable problems. We address all these limitations, using a simpler network architecture allowing CPU inference for even large industrial problems with millions of clauses, and training instead to predict {\em glue variables}---a target for which it is easier to generate labelled data, and which can also be formulated as a reinforcement learning task. We demonstrate the effectiveness of our approach by modifying the state-of-the-art SAT solver CaDiCaL, improving its performance on SATCOMP 2018 and SATRACE 2019 with supervised learning and its performance on a dataset of SHA-1 preimage attacks with reinforcement learning.

研究动机与目标

  • 解决先前深度学习方法在SAT求解中的局限性,即需要GPU推理且在真实世界基准测试中泛化能力差的问题。
  • 通过使用更简单、兼容CPU的神经网络架构来预测粘合变量,克服全局启发式策略的高成本问题。
  • 通过基于预测的粘合变量定期重新聚焦分支启发式策略,提升当前最先进CaDiCaL SAT求解器的性能。
  • 在多样化基准测试(包括SATCOMP 2018、SATRACE 2019以及SHA-1原像攻击数据集)上验证方法的有效性,结合监督学习与强化学习。
  • 提出一种可扩展、与硬件无关的方法,将神经网络集成到高性能SAT求解器中,其核心是聚焦于更易获取且更丰富的训练信号:粘合变量。

提出的方法

  • 训练一个小型高效前馈神经网络,以预测哪些变量可能参与粘合子句——即显著提升求解效率的冲突子句。
  • 基于从现有SAT求解运行中提取的标注数据,采用监督学习方法,通过冲突解决过程中的子句分析识别粘合变量。
  • 将粘合变量预测建模为强化学习任务,以学习特定问题的启发式策略,尤其在SHA-1原像攻击等专用问题类别中表现优异。
  • 通过基于预测的粘合变量得分,定期重新聚焦CaDiCaL SAT求解器中的EVSIDS分支启发式策略,避免每次决策都进行推理。
  • 通过采用轻量级架构确保仅使用CPU进行推理,从而实现对包含数百万个子句的大规模工业问题的可扩展性。
  • 通过仅在关键决策点查询神经网络,而非在每个分支步骤都进行,从而分摊全局推理的开销。

实验结果

研究问题

  • RQ1能否通过训练轻量级神经网络预测粘合变量,在不依赖GPU加速的前提下,提升当前最先进SAT求解器的性能?
  • RQ2粘合变量预测是否能提供比以往依赖未满足核心预测的方法更可扩展、更高效的数据替代方案?
  • RQ3强化学习能否有效用于学习粘合变量预测的问题特定启发式策略,特别是在专用基准测试中?
  • RQ4基于粘合变量预测的周期性重新聚焦策略,在多样化SAT基准测试中与随机或基线启发式策略相比表现如何?
  • RQ5粘合变量预测在多大程度上能提升真实世界工业级与密码学问题实例的决策效率与求解时间?

主要发现

  • 所提出的neuro-cadical方法在SATCOMP 2018上取得3194.81的PAR-2得分,优于原生CaDiCaL求解器(3249.99)和随机基线(3293.62)。
  • 在SATRACE 2019上,neuro-cadical取得4344.87的PAR-2得分,显著优于原生CaDiCaL(4405.69)和随机基线(4419.33)。
  • 在SHA-1原像攻击基准测试中,neuro-cadical取得279.29的PAR-2得分,比原生CaDiCaL(282.78)提升1.23%,比随机基线(304.19)提升8.19%。
  • 在SATCOMP 2018上,neuro-cadical在66.5%的问题中取得更高的GLR(解的质量比),在54.9%的问题中实现更低的平均粘合层级,优于原生求解器。
  • 在SATRACE 2019上,neuro-cadical在54.2%的问题中取得更高的GLR,在48.8%的问题中实现更低的平均粘合层级,优于两种基线。
  • neuro-cadical的强化学习变体在SHA-1原像攻击数据集上表现更优,证明基于策略的粘合变量预测在领域特定优化中具有可行性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。