166 research outputs found
Community Structure in Industrial SAT Instances
Modern SAT solvers have experienced a remarkable progress on solving
industrial instances. Most of the techniques have been developed after an
intensive experimental process. It is believed that these techniques exploit
the underlying structure of industrial instances. However, there are few works
trying to exactly characterize the main features of this structure.
The research community on complex networks has developed techniques of
analysis and algorithms to study real-world graphs that can be used by the SAT
community. Recently, there have been some attempts to analyze the structure of
industrial SAT instances in terms of complex networks, with the aim of
explaining the success of SAT solving techniques, and possibly improving them.
In this paper, inspired by the results on complex networks, we study the
community structure, or modularity, of industrial SAT instances. In a graph
with clear community structure, or high modularity, we can find a partition of
its nodes into communities such that most edges connect variables of the same
community. In our analysis, we represent SAT instances as graphs, and we show
that most application benchmarks are characterized by a high modularity. On the
contrary, random SAT instances are closer to the classical Erd\"os-R\'enyi
random graph model, where no structure can be observed. We also analyze how
this structure evolves by the effects of the execution of a CDCL SAT solver. In
particular, we use the community structure to detect that new clauses learned
by the solver during the search contribute to destroy the original structure of
the formula. This is, learned clauses tend to contain variables of distinct
communities
On Continuous Local BDD-Based Search for Hybrid SAT Solving
We explore the potential of continuous local search (CLS) in SAT solving by
proposing a novel approach for finding a solution of a hybrid system of Boolean
constraints. The algorithm is based on CLS combined with belief propagation on
binary decision diagrams (BDDs). Our framework accepts all Boolean constraints
that admit compact BDDs, including symmetric Boolean constraints and
small-coefficient pseudo-Boolean constraints as interesting families. We
propose a novel algorithm for efficiently computing the gradient needed by CLS.
We study the capabilities and limitations of our versatile CLS solver, GradSAT,
by applying it on many benchmark instances. The experimental results indicate
that GradSAT can be a useful addition to the portfolio of existing SAT and
MaxSAT solvers for solving Boolean satisfiability and optimization problems.Comment: AAAI 2
MaxSAT Evaluation 2020 : Solver and Benchmark Descriptions
Non peer reviewe
Community structure in industrial SAT instances
Modern SAT solvers have experienced a remarkable progress on solving industrial instances. It is believed that most of these successful techniques exploit the underlying structure of industrial instances. Recently, there have been some attempts to analyze the structure of industrial SAT instances in terms of complex networks, with the aim of explaining the success of SAT solving techniques, and possibly improving them.
In this paper, we study the community structure, or modularity, of industrial SAT instances. In a graph with clear community structure, or high modularity, we can find a partition of its nodes into communities such that most edges connect variables of the same community. Representing SAT instances as graphs, we show that most application benchmarks are characterized by a high modularity. On the contrary, random SAT instances are closer to the classical Erdös-Rényi random graph model, where no structure can be observed. We also analyze how this structure evolves by the effects of the execution of a CDCL SAT solver, and observe that new clauses learned by the solver during the search contribute to destroy the original structure of the formula. Motivated by this observation, we finally present an application that exploits the community structure to detect relevant learned clauses, and we show that detecting these clauses results in an improvement on the performance of the SAT solver. Empirically, we observe that this improves the performance of several SAT solvers on industrial SAT formulas, especially on satisfiable instances.Peer ReviewedPostprint (published version
SAT-based Analysis, (Re-)Configuration & Optimization in the Context of Automotive Product documentation
Es gibt einen steigenden Trend hin zu kundenindividueller Massenproduktion (mass customization), insbesondere im Bereich der Automobilkonfiguration. Kundenindividuelle Massenproduktion führt zu einem enormen Anstieg der Komplexität. Es gibt Hunderte von Ausstattungsoptionen aus denen ein Kunde wählen kann um sich sein persönliches Auto zusammenzustellen. Die Anzahl der unterschiedlichen konfigurierbaren Autos eines deutschen Premium-Herstellers liegt für ein Fahrzeugmodell bei bis zu 10^80.
SAT-basierte Methoden haben sich zur Verifikation der Stückliste (bill of materials) von Automobilkonfigurationen etabliert. Carsten Sinz hat Mitte der 90er im Bereich der SAT-basierten Verifikationsmethoden für die Daimler AG Pionierarbeit geleistet. Darauf aufbauend wurde nach 2005 ein produktives Software System bei der Daimler AG installiert. Später folgten weitere deutsche Automobilhersteller und installierten ebenfalls SAT-basierte Systeme zur Verifikation ihrer Stücklisten.
Die vorliegende Arbeit besteht aus zwei Hauptteilen. Der erste Teil beschäftigt sich mit der Entwicklung weiterer SAT-basierter Methoden für Automobilkonfigurationen. Wir zeigen, dass sich SAT-basierte Methoden für interaktive Automobilkonfiguration eignen. Wir behandeln unterschiedliche Aspekte der interaktiven Konfiguration. Darunter Konsistenzprüfung, Generierung von Beispielen, Erklärungen und die Vermeidung von Fehlkonfigurationen. Außerdem entwickeln wir SAT-basierte Methoden zur Verifikation von dynamischen Zusammenbauten. Ein dynamischer Zusammenbau repräsentiert die chronologische Zusammenbau-Reihenfolge komplexer Teile.
Der zweite Teil beschäftigt sich mit der Optimierung von Automobilkonfigurationen. Wir erläutern und vergleichen unterschiedliche Optimierungsprobleme der Aussagenlogik sowie deren algorithmische Lösungsansätze. Wir beschreiben Anwendungsfälle aus der Automobilkonfiguration und zeigen wie diese als aussagenlogisches Optimierungsproblem formalisiert werden können. Beispielsweise möchte man zu einer Menge an Ausstattungswünschen ein Test-Fahrzeug mit minimaler Ergänzung weiterer Ausstattungen berechnen um Kosten zu sparen. DesWeiteren beschäftigen wir uns mit der Problemstellung eine kleinste Menge an Fahrzeugen zu berechnen um eine Testmenge abzudecken.
Im Rahmen dieser Arbeit haben wir einen Prototypen eines (Re-)Konfigurators, genannt AutoConfig, entwickelt. Unser (Re-)Konfigurator verwendet im Kern SAT-basierte Methoden und besitzt eine grafische Benutzeroberfläche, welche interaktive Konfiguration erlaubt. AutoConfig kann mit Instanzen von drei großen deutschen Automobilherstellern umgehen, aber ist nicht alleine darauf beschränkt. Mit Hilfe dieses Prototyps wollen wir die Anwendbarkeit unserer Methoden demonstrieren
- …