6 research outputs found

    Automatically improving SAT encoding of constraint problems through common subexpression elimination in Savile Row

    Get PDF
    The formulation of a Propositional Satisfiability (SAT) problem instance is vital to efficient solving. This has motivated research on preprocessing, and inprocessing techniques where reformulation of a SAT instance is interleaved with solving. Preprocessing and inprocessing are highly effective in extending the reach of SAT solvers, however they necessarily operate on the lowest level representation of the problem, the raw SAT clauses, where higher-level patterns are difficult and/or costly to identify. Our approach is different: rather than reformulate the SAT representation directly, we apply automated reformulations to a higher level representation (a constraint model) of the original problem. Common Subexpression Elimination (CSE) is a family of techniques to improve automatically the formulation of constraint satisfaction problems, which are often highly beneficial when using a conventional constraint solver. In this work we demonstrate that CSE has similar benefits when the reformulated constraint model is encoded to SAT and solved using a state-of-the-art SAT solver. In some cases we observe speed improvements of over 100 times

    Automatically improving constraint models in Savile Row

    Get PDF
    When solving a combinatorial problem using Constraint Programming (CP) or Satisfiability (SAT), modelling and formulation are vital and difficult tasks. Even an expert human may explore many alternatives in modelling a single problem. We make a number of contributions in the automated modelling and reformulation of constraint models. We study a range of automated reformulation techniques, finding combinations of techniques which perform particularly well together. We introduce and describe in detail a new algorithm, X-CSE, to perform Associative-Commutative Common Subexpression Elimination (AC-CSE) in constraint problems, significantly improving existing CSE techniques for associative and commutative operators such as +. We demonstrate that these reformulation techniques can be integrated in a single automated constraint modelling tool, called Savile Row, whose architecture we describe. We use Savile Row as an experimental testbed to evaluate each reformulation on a set of 50 problem classes, with 596 instances in total. Our recommended reformulations are well worthwhile even including overheads, especially on harder instances where solver time dominates. With a SAT solver we observed a geometric mean of 2.15 times speedup compared to a straightforward tailored model without recommended reformulations. Using a CP solver, we obtained a geometric mean of 5.96 times speedup for instances taking over 10 seconds to solve

    Solving Optimization Problems via Maximum Satisfiability : Encodings and Re-Encodings

    Get PDF
    NP-hard combinatorial optimization problems are commonly encountered in numerous different domains. As such efficient methods for solving instances of such problems can save time, money, and other resources in several different applications. This thesis investigates exact declarative approaches to combinatorial optimization within the maximum satisfiability (MaxSAT) paradigm, using propositional logic as the constraint language of choice. Specifically we contribute to both MaxSAT solving and encoding techniques. In the first part of the thesis we contribute to MaxSAT solving technology by developing solver independent MaxSAT preprocessing techniques that re-encode MaxSAT instances into other instances. In order for preprocessing to be effective, the total time spent re-encoding the original instance and solving the new instance should be lower than the time required to directly solve the original instance. We show how the recently proposed label-based framework for MaxSAT preprocessing can be efficiently integrated with state-of-art MaxSAT solvers in a way that improves the empirical performance of those solvers. We also investigate the theoretical effect that label-based preprocessing has on the number of iterations needed by MaxSAT solvers in order to solve instances. We show that preprocessing does not improve best-case performance (in the number of iterations) of MaxSAT solvers, but can improve the worst-case performance. Going beyond previously proposed preprocessing rules we also propose and evaluate a MaxSAT-specific preprocessing technique called subsumed label elimination (SLE). We show that SLE is theoretically different from previously proposed MaxSAT preprocessing rules and that using SLE in conjunction with other preprocessing rules improves empirical performance of several MaxSAT solvers. In the second part of the thesis we propose and evaluate new MaxSAT encodings to two important data analysis tasks: correlation clustering and bounded treewidth Bayesian network learning. For both problems we empirically evaluate the resulting MaxSAT-based solution approach with other exact algorithms for the problems. We show that, on many benchmarks, the MaxSAT-based approach is faster and more memory efficient than other exact approaches. For correlation clustering, we also show that the quality of solutions obtained using MaxSAT is often significantly higher than the quality of solutions obtained by approximative (inexact) algorithms. We end the thesis with a discussion highlighting possible further research directions.Kombinatorinen optimointi on laajasti tutkittu matematiikan ja tietojenkäsittelytieteen osa-alue. Kombinatorisissa optimointiongelmissa diskreetin ratkaisujen joukon yli määritelty kustannusfunktio määrittää kunkin ratkaisun hyvyyden. Tehtävänä on löytää sallittujen ratkaisujen joukosta kustannusfunktion mukaan paras mahdollinen. Esimerkiksi niin sanotussa kauppamatkustajan ongelmassa annettuna joukko kaupunkeja tavoitteena on löytää lyhin mahdollinen reitti, jota kulkemalla voidaan käydä kaikissa kaupungeissa. Kauppamatkustajan ongelma sekä monet muut kombinatoriset optimointiongelmat ovat laskennallisesti haastavia, tarkemmin ilmaistuna NP-vaikeita. Haastavia kombinatorisia optimointiongelmia esiintyy monilla eri tieteen ja teollisuuden aloilla; esimerkiksi useat koneoppimiseen liittyvät ongelmat voidaan esittää kombinatorisina optimointiongelmina. Kombinatoristen optimointiongelmien moninaisuus motivoi tehokkaiden ratkaisualgoritmien kehitystä. Väitöskirjassa kehitetään deklaratiivisia ratkaisumenetelmiä NP-vaikeille optimointiongelmille. Deklaratiivinen ratkaisumenetelmä olettaa, että ratkaistavalle ongelmalle on olemassa jonkin matemaattisen rajoitekielen rajoitemalli, joka kuvaa kunkin ongelman instanssin joukkona matemaattisia rajoitteita siten, että kunkin rajoiteinstanssin optimaalinen ratkaisu voidaan tulkita alkuperäisen ongelman optimaalisena ratkaisuna. Deklaratiivisessa ratkaisumenetelmässä ratkaistavan optimointiongelman instanssi ratkaistaan kuvaamalla ensin instanssi rajoitemallilla joukoksi rajoitteita ja ratkaisemalla sitten rajoiteinstanssi rajoitekielen ratkaisualgoritmilla. Työssä käytetään lauselogiikkaa rajoitekielenä ja keskitytään lauselogiikan toteutuvuusongelman (SAT) laajennukseen optimointiongelmille. Tätä ongelmaa kutsutaan nimellä MaxSAT. Työssä kehitetään sekä sekä yleisiä MaxSAT-ratkaisumenetelmiä että MaxSAT-malleja tietyille koneoppimiseen liittyville optimointiongelmille. Väitöskirjan keskeiset kontribuutiot esitellään kahdessa osassa. Ensimmäisessä osassa kehitetään MaxSAT-ratkaisumenetelmiä, tarkemmin sanottuna MaxSAT-esikäsittelymenetelmiä. Esikäsittelymenetelmät ovat tehokkaasti laskettavissa olevia päättelysääntöjä (esikäsittelysääntöjä), joita käyttämällä annettuja MaxSAT-instansseja voidaan yksinkertaistaa. Esikäsittelyn tavoitteena on tehdä MaxSAT-instansseista helpommin ratkaistavia käytännössä. Väitöstyössä: i) esitellään tapa integroida keskeiset lauselogiikan toteutuvuusongelman esikäsittelysäännöt nykyaikaisiin MaxSAT-ratkaisualgoritmeihin ii) analysoidaan esikäsittelyn vaikutusta ratkaisualgoritmien käyttäytymiseen ja iii) esitellään uusi MaxSAT-esikäsittelysääntö. Kaikkia kontribuutioita MaxSAT-esikäsittelyyn analysoidaan sekä teoreettisella että kokeellisella tasolla. Kirjan toisessa osassa kehitetään MaxSAT-malleja kahdelle koneoppimiseen liittyvälle optimointiongelmalle: korrelaatioklusteroinnille ja Bayes-verkkojen rakenteenoppimisongelmalle. Kehitettäviä malleja analysoidaan sekä teoreettisesti, että kokeellisesti. Teoreettisella tasolla mallit todistetaan oikeellisiksi. Kokeellisella tasolla osoitetaan, että mallit mahdollistavat alkuperäisten ongelmien instanssien tehokkaan ratkaisemisen aiemmin näille ongelmille esiteltyihin eksakteihin ratkaisualgoritmeihin verrattuna

    Tools and Algorithms for the Construction and Analysis of Systems

    Get PDF
    This open access two-volume set constitutes the proceedings of the 27th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2021, which was held during March 27 – April 1, 2021, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021. The conference was planned to take place in Luxembourg and changed to an online format due to the COVID-19 pandemic. The total of 41 full papers presented in the proceedings was carefully reviewed and selected from 141 submissions. The volume also contains 7 tool papers; 6 Tool Demo papers, 9 SV-Comp Competition Papers. The papers are organized in topical sections as follows: Part I: Game Theory; SMT Verification; Probabilities; Timed Systems; Neural Networks; Analysis of Network Communication. Part II: Verification Techniques (not SMT); Case Studies; Proof Generation/Validation; Tool Papers; Tool Demo Papers; SV-Comp Tool Competition Papers

    Automated Reasoning

    Get PDF
    This volume, LNAI 13385, constitutes the refereed proceedings of the 11th International Joint Conference on Automated Reasoning, IJCAR 2022, held in Haifa, Israel, in August 2022. The 32 full research papers and 9 short papers presented together with two invited talks were carefully reviewed and selected from 85 submissions. The papers focus on the following topics: Satisfiability, SMT Solving,Arithmetic; Calculi and Orderings; Knowledge Representation and Jutsification; Choices, Invariance, Substitutions and Formalization; Modal Logics; Proofs System and Proofs Search; Evolution, Termination and Decision Prolems. This is an open access book
    corecore