Distributed Incremental SAT Solving with Mallob: Report and Case Study with Hierarchical Planning
Dominik Schreiber
TL;DR
Problem: SAT-based hierarchical planning incurs heavy SAT solving across many incremental calls; Approach: extend Mallob with a low-latency, revision-based incremental job interface and an IPASIR-like bridge, using CaDiCaL/Lingeling with clause sharing; Contributions: a scalable architecture and an empirical evaluation on 587 tasks showing a total speedup of $2.63$ and a median speedup of $1.018$ across diverse planning domains, with five domains achieving median speedup $\\ge 2$; Significance: demonstrates Mallob as a viable distributed backend for incremental SAT solving and points to broader applications such as EDA, model checking, and multi-agent path finding.
Abstract
This report describes an extension of the distributed job scheduling and SAT solving platform Mallob by incremental SAT solving, embedded in a case study on SAT-based hierarchical planning. We introduce a low-latency interface for incremental jobs and specifically for IPASIR-style incremental SAT solving to Mallob. This also allows to process many independent planning instances in parallel via Mallob's scheduling capabilities. In an experiment where 587 planning inputs are resolved in parallel on 2348 cores, we observe significant speedups for several planning domains where SAT solving constitutes a major part of the planner's running time. These findings indicate that our approach to distributed incremental SAT solving may be useful for a wide range of SAT applications.
