SAT

PSAT

Basics

Algorithms

Recent

Logic Probabilistic Reasoning Part 1: Inference and Algorithms Marcelo Finger Department of Computer Science Instituto de Matemathics and Statistics University of Sao Paulo, Brazil Joint work with Glauber De Bona

2015

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Are they all speaking the truth?

Every night, at least two of them are at the table Each says he comes “only” 60% of the nights

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Is the Hypothesis Consistent with the Data

Doctor investigating disease D Examine role of genes G1 , G2 , G3 Hypothesis At least two genes have to be present for D to develop Data Gene occurrence in D-patients G1 G2 G3

Marcelo Finger LogProb Part01

60% 60% 60%

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Is Prob Logic a Zombie Idea?

An idea that refuses to die! Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Or a Wild Amazonian Flower?

Awaits special conditions to bloom! (optimization + SAT-based techniques)

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Only for the tough

Logic Probability

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Only for the tough

Logic Probability Linear Algebra Linear Programming Optimization Algorithms

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Student Profile

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Student Profile

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Topics

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Next Topic

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

(P)SAT The Centrality of SAT

Satisfiability is a central problem in Computer Science Both theoretical and practical interests SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now]

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

(P)SAT The Centrality of SAT

Satisfiability is a central problem in Computer Science Both theoretical and practical interests SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now] SAT has very efficient implementations SAT has become the “assembly language” of hard-problems

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

(P)SAT The Centrality of SAT

Satisfiability is a central problem in Computer Science Both theoretical and practical interests SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now] SAT has very efficient implementations SAT has become the “assembly language” of hard-problems SAT has many applications SAT is logic

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The SAT Setting: the language

Atoms: P = {p1 , . . . , pn } Literals: pi and ¬pj p¯ = ¬p, ¬p = p A clause is a set of literals. Ex: {p, q¯, r } or p ∨ ¬q ∨ r A formula C is a set of clauses

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Setting: semantics

Valuation for atoms v : P → {0, 1} An atom p is satisfied if v (p) = 1 Valuations are extended to all formulas ¯ = 1 ⇔ v (λ) = 0 v (λ) A clause c is satisfied (v (c) = 1) if some literal λ ∈ c is satisfied A formula C is satisfied (v (C ) = 1) if all clauses in C are satisfied

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Problem

A formula C is satisfiable if exits v , v (C ) = 1. Otherwise, C is unsatisfiable

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Problem

A formula C is satisfiable if exits v , v (C ) = 1. Otherwise, C is unsatisfiable

The SAT Problem Given a formula C , decide if C is satisfiable. Witness: If C is satisfiable, provide a v such that v (C ) = 1.

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Problem

A formula C is satisfiable if exits v , v (C ) = 1. Otherwise, C is unsatisfiable

The SAT Problem Given a formula C , decide if C is satisfiable. Witness: If C is satisfiable, provide a v such that v (C ) = 1. SAT has small witnesses

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

An NP Algorithm for SAT

NP-SAT(C ) Input: C , a formula in clausal form Output: v , if v (C ) = 1; no, otherwise. 1:

try

Guess a v Show, in polynomial time, that v (C ) = 1 4: return v 5: catch // no such v is guessable 6: return no 2: 3:

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A Brief History of SAT Solvers

[Davis & Putnam, 1960; Davis, Longemann & Loveland, 1962] The DPLL Algorithm, a complete SAT Solver

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A Brief History of SAT Solvers

[Davis & Putnam, 1960; Davis, Longemann & Loveland, 1962] The DPLL Algorithm, a complete SAT Solver [Tseitin, 1966] DPLL has exponential lower bound

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A Brief History of SAT Solvers

[Davis & Putnam, 1960; Davis, Longemann & Loveland, 1962] The DPLL Algorithm, a complete SAT Solver [Tseitin, 1966] DPLL has exponential lower bound [Cook 1971] SAT is NP-complete

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Incomplete SAT methods

Incomplete methods compute valuation if C is SAT; if C is unSAT, no answer. [Mitchell, Levesque & Selman, 1992] Hard and easy SAT problems [Kautz & Selman, 1992] SAT planning [Gent & Walsh, 1994] SAT phase transition

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The SAT Phase Transition

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Phase Transition Diagram 3-SAT, N is fixed Higher N, more abrupt transition M/N: low (SAT); high (UNSAT) Phase transition point: M/N ≈ 4.3, 50%SAT [Toby & Walsh 1994] Invariant with N Invariant with algorithm!

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Phase Transition Diagram 3-SAT, N is fixed Higher N, more abrupt transition M/N: low (SAT); high (UNSAT) Phase transition point: M/N ≈ 4.3, 50%SAT [Toby & Walsh 1994] Invariant with N Invariant with algorithm! No theoretical explanation [Cheeseman 1991] conjectured there is similar a phase transition for all NP-complete problems

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

From DPLL to CDCL With the addition of learning DPLL became Conflict Driven Clause Learning (late 1990’s) Aggregation of several techniques to SAT, such as learning, unlearning, backjumping, watched literal, special heuristics. SAT competitions since 2002: www.satcompetition.org Very competitive SAT solvers: GRASP [1999], Chaff [2001], BerkMin [2002], zChaff [2004], MiniSAT[2003]. Applications to planning, microprocessor test and verification, software design and verification, AI search, games, etc. Some non-DPLL SAT solvers incorporate CDCL techniques [Dixon 2004] Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Next Topic

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Why PSAT? 3 forms of reasoning (According to Peirce) Deductive reasoning Inductive reasoning Abductive reasoning

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Why PSAT? 3 forms of reasoning (According to Peirce) Deductive reasoning Probabilistic reasoning Abductive reasoning

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Why PSAT? 3 forms of reasoning (According to Peirce) Deductive reasoning Probabilistic reasoning Abductive reasoning

PSAT is at the intersection

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A Brief History of PSAT Probabilistic satisfiability (PSAT) was proposed in On the Laws of Thought [Boole 1854] Classical probability No assumption of a priori statistical independence Rediscovered several times since Boole De Finetti [1937, 1974], Good [1950], Smith [1961] Studied by Hailperin [1965] Nilsson [1986] (re)introduces PSAT to AI Nilsson [1993]: “complete impracticability” of PSAT computation Many other works; see Hansen & Jaumard [2000]

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT is NP-complete

PSAT is NP-complete: [Georgakopoulos & Kavvadias & Papadimitriou 1988] But PSAT harder than SAT. Why? Extensions with conditional, imprecise, coherent probabilities exist

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT is NP-complete

PSAT is NP-complete: [Georgakopoulos & Kavvadias & Papadimitriou 1988] But PSAT harder than SAT. Why? Extensions with conditional, imprecise, coherent probabilities not covered in this work

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Other Logic-Probabilistic Models Bayesian Networks [Pearl 1989] Logics for Reasoning about Probabilities [Fagin, Halpern & Megiddo 1990] Probabilistic Inductive Logic Programming: MaxEnt [Dehaspe 1997]; Bayesian nets [Kersting & De Raedt 2001] Lifted first-order probabilistic inference [Braz, Amir, & Roth 2005] Markov Logic [Richardson & Domingos 2006] All rely in some form of independence assumption Some may not even become inconsistent Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Potential Applications of PSAT

PSAT has many potential applications

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Potential Applications of PSAT

PSAT has many potential applications Computer models of biological processes Mutations of APC-gene and colon cancer Switching effect of “DNA dark matter”

Machine learning Semantic Web (Ontologies + Probabilities) Fault tolerance/detection Software design and analysis Economics, econometrics, etc.

But there are no practical algorithms for PSAT

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Potential Applications of PSAT PSAT has many potential applications Computer models of biological processes Mutations of APC-gene and colon cancer Switching effect of “DNA dark matter”

Machine learning Semantic Web (Ontologies + Probabilities) Fault tolerance/detection Software design and analysis Economics, econometrics, etc.

But there are were, until 2011, no practical algorithms for PSAT

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Next Topic

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Setting: the language

Logical variables or atoms: P = {x1 , . . . , xn } Connectives: ∧, ∨, ¬, →, ↔. Formulas (L) are inductively composed form atoms using connectives Formulas can be brought to clausal form, but need not be.

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Semantics Propositional valuation v : P → {0, 1} Generalized for any propositional formula (clausal or not) v : L → {0, 1}

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Semantics Propositional valuation v : P → {0, 1} Generalized for any propositional formula (clausal or not) v : L → {0, 1} A probability distribution over propositional valuations π : V → [0, 1] n

2 X

π(vi ) = 1

i=1

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Semantics Propositional valuation v : P → {0, 1} Generalized for any propositional formula (clausal or not) v : L → {0, 1} A probability distribution over propositional valuations π : V → [0, 1] n

2 X

π(vi ) = 1

i=1

Probability of a formula α according to π X Pπ (α) = {π(vi )|vi (α) = 1} Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Kolmogorov Axioms for Probability α, β ∈ L (K1) 0 ≤ P(α) ≤ 1 (K2) P(>) = 1 (K3) If |= ¬(α ∧ β) then P(α ∨ β) = P(α) + P(β)

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Kolmogorov Axioms for Probability α, β ∈ L (K1) 0 ≤ P(α) ≤ 1 (K2) P(>) = 1 (K3) If |= ¬(α ∧ β) then P(α ∨ β) = P(α) + P(β) From which we can derive: (K4) P(¬α) = 1 − P(α) (K5) If α |= β then P(α) ≤ P(β) (K6) If α ≡ β then P(α) = P(β) (K7) P(α ∨ β) = P(α) + P(β) − P(α ∧ β)

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The PSAT Problem

Consider k formulas α1 , . . . , αk defined on n atoms {x1 , . . . , xn } A PSAT problem Σ is a set of k restrictions Σ = {P(αi ) = pi |1 ≤ i ≤ k} Probabilistic Satisfiability: are these restrictions consistent?

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A PSAT example

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A PSAT example

 Σ=

Marcelo Finger LogProb Part01

P(a ∨ b) = P(a ∨ c) = P(b ∨ c) = 1 P(a) = P(b) = P(c) = 0.6



IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The PSAT Problem: An Algebraic Formalization Vector of probabilities p of dimension k × 1 (given) Consider a “large” matrix Ak×2n = [aij ] (computed) aij = vj (αi ) ∈ {0, 1} PSAT: decide if there is vector π of dimension 2n × 1 such that Aπ = p P πi = 1 π ≥ 0 π: probability distribution of exponential size Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT is NP-complete PSAT is NP-complete: [Georgakopoulos & Kavvadias & Papadimitriou 1988] A PSAT problem has a solution, then there is a solution π with at most k + 1 elements πi > 0 Carath´eodory’s Lemma So PSAT has a polynomial size witness    1 ··· 1 π1  0/1   π2 · · · 0/1     .. ..  ·  .. ..  . . .   . 0/1 ··· 0/1 πk+1

Marcelo Finger LogProb Part01





    =  

1 p1 .. .

    

pk

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT is NP-complete PSAT is NP-complete: [Georgakopoulos & Kavvadias & Papadimitriou 1988] A PSAT problem has a solution, then there is a solution π with at most k + 1 elements πi > 0 Carath´eodory’s Lemma So PSAT has a polynomial size witness    1 ··· 1 π1  0/1   π2 · · · 0/1     .. ..  ·  .. ..  . . .   . 0/1 ··· 0/1 πk+1





    =  

1 p1 .. .

    

pk

Why is PSAT harder than SAT? Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Previous Algorithms for PSAT

All algorithms were algebraic Try to solve an exponential linear program Column generation heuristics

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Previous Algorithms for PSAT

All algorithms were algebraic Try to solve an exponential linear program Column generation heuristics No phase-transition observed [Kavvadias-Papadimitriou 1990, Hansen-Jaumard 1997]

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Idea Goal: Obtain a “decent” algorithm for PSAT Study its empiric properties

Both SAT and PSAT are NP-complete problems SAT has good implementations

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Idea Goal: Obtain a “decent” algorithm for PSAT Study its empiric properties

Both SAT and PSAT are NP-complete problems SAT has good implementations Let’s reduce PSAT to SAT. Finger & De Bona. Probabilistic Satisfiability: Logic-based Algorithms and Phase Transition. IJCAI 2011.

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Next Topic

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A PSAT Normal Form

PSAT atomic normal form Σ = (Γ, Ψ) Γ is a SAT problem, i.e. {α|P(α) = 1} Ψ = {P(xi ) = pi |xi is an atom}

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

A PSAT Normal Form

PSAT atomic normal form Σ = (Γ, Ψ) Γ is a SAT problem, i.e. {α|P(α) = 1} Ψ = {P(xi ) = pi |xi is an atom}

Theorem Every PSAT problem has an equivalent atomic normal form, that can be computed in linear time.

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

That PSAT example is already normal form!

   a∨b  a∨c Γ= Ψ = {P(a) = P(b) = P(c) = 0.6}   b∨c

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Another Example

 Σ=

P(a ∨ b ∨ c) = 1 P(a ∧ b) = 0.61; P(a ∧ c) = 0.60; P(b ∧ c) = 0.59

Can be put in normal form (Γ, Ψ)  y¯ ∨ a  x¯ ∨ a x¯ ∨ b y¯ ∨ c Γ=  a¯ ∨ b¯ ∨ x a¯ ∨ c¯ ∨ y

z¯ ∨ b z¯ ∨ c b¯ ∨ c¯ ∨ z



 a∨b∨c  

Ψ = {P(x) = 0.61; P(y ) = 0.60; P(z) = 0.59}

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Properties of Atomic Normal Form (Γ, Ψ) has a solution iff there is A = [ai,j ] and π satisfying 

1

··· ··· .. .

 a1,1   ..  . ak,1 · · ·

1

 

a1,k+1 .. .

    ·  

ak,k+1

ai,j ∈ {0, 1}

π1 π2 .. .





    =  

πk+1

1 p1 .. . pk

    

(1)

πj ≥ 0

If πj > 0 then Aj is a valuation satisfying Γ.

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Canonical Reductions of PSAT to SAT

A reduction transforms an instance of PSAT into one of SAT One such reduction in polynomial time exists, due to NP-completeness

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Canonical Reductions of PSAT to SAT

A reduction transforms an instance of PSAT into one of SAT One such reduction in polynomial time exists, due to NP-completeness A reduction is canonical if it encodes an NP-witness Easier if witness has a simple format

Normal forms simplify the study of complex objects

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Canonical Reduction Canonical reduction direct encoding of the solution A · π = p of the normal form (Γ, Ψ). Γ(x1 , . . . , xk ; y1 , . . . yl ) Ψ = {P(xi ) = pi }

Aj = [1 a1,j · · · ak,j ]t , so Γ(a1,j , . . . , ak,j ; y1j , . . . ylj ) must hold Each πi is encoded as a sequence of b bits Each pi is encoded as a sequence of b + k bits Direct encoding of sums of bits Direct encoding of bit product as a conjunction Number of variables is O(b · k 2 )

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

The Canonical Reduction Canonical reduction direct encoding of the solution A · π = p of the normal form (Γ, Ψ). Γ(x1 , . . . , xk ; y1 , . . . yl ) Ψ = {P(xi ) = pi }

Aj = [1 a1,j · · · ak,j ]t , so Γ(a1,j , . . . , ak,j ; y1j , . . . ylj ) must hold Each πi is encoded as a sequence of b bits Each pi is encoded as a sequence of b + k bits Direct encoding of sums of bits Direct encoding of bit product as a conjunction Number of variables is O(b · k 2 ) b=

(k+1) 2 dlog(k

+ 1)e − k

Number of variables in the canonical reduction is O(k 3 · log k) Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Complexity profile

Implementation: canonical reduction of PSAT to SAT SAT solver: zchaff n = 80 variables, k = 7, b = 5 52 hours to compute!

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Complexity profile

Implementation: canonical reduction of PSAT to SAT SAT solver: zchaff n = 80 variables, k = 7, b = 5 52 hours to compute! AWFUL!

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Complexity profile

Implementation: canonical reduction of PSAT to SAT SAT solver: zchaff n = 80 variables, k = 7, b = 5 52 hours to compute! AWFUL! Phase-transition found for PSAT

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Complexity profile

Implementation: canonical reduction of PSAT to SAT SAT solver: zchaff n = 80 variables, k = 7, b = 5 52 hours to compute! AWFUL! Phase-transition found for PSAT Yippee!

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT Phase Transition

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

What to do now?

Explore other reduction strategies and forms of reductions Turing reduction: an algorithm that invokes a polynomial number of SAT problems (NP oracle) Turing reductions explore properties of PSAT problems Linear Programming using Column Generation

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT by existing Linear Programs: No Phase Transition

Linear program of exponential size Bare column generator Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT by existing Linear Programs: No Phase Transition

Linear program of exponential size Bare column generator Idea: Logic based, normal form base column generation Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT Solving as Optimization Problem PSAT Normal Form Linear Program minimize subject to

Probability of Γ-inconsistent columns A · π = p, π ≥ 0, aij ∈ {0, 1}

Theorem A PSAT problem hΓ, Ψi has a solution iff cost of Γ-inconsistent columns is 0

Two Column Generation Heuristics Columns (valuations) left implicit and generated on-the fly via SAT via weighted MAXSAT Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Second Example – Part III   y¯ ∨ a z¯ ∨ b a∨b∨c   x¯ ∨ a x¯ ∨ b y¯ ∨ c z¯ ∨ c Γ=   ¯ a¯ ∨ b ∨ x a¯ ∨ c¯ ∨ y b¯ ∨ c¯ ∨ z Ψ = {P(x) = 0.61; P(y ) = 0.60; P(z) = 0.59} The initial (relaxed) feasible  1 1 1  x  0 1 1 y  0 0 1 z 0 0 0

Marcelo Finger LogProb Part01

solution is  1 0.39   1   0.01 · 1   0.01 1 0.59

 

 1   0.61  =    0.60  0.59

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Second Example – Part III   y¯ ∨ a z¯ ∨ b a∨b∨c   x¯ ∨ a x¯ ∨ b y¯ ∨ c z¯ ∨ c Γ=   ¯ a¯ ∨ b ∨ x a¯ ∨ c¯ ∨ y b¯ ∨ c¯ ∨ z Ψ = {P(x) = 0.61; P(y ) = 0.60; P(z) = 0.59} The initial (relaxed) feasible  1 1 1  x  0 1 1 y  0 0 1 z 0 0 0

Marcelo Finger LogProb Part01

solution is  1 0.39   1   0.01 · 1   0.01 1 0.59

 

 1   0.61  =    0.60  0.59

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

PSAT solving via Logic Column Generation Decrease in cost can be expressed as a linear inequality a1 x1 + · · · + aq xq ≥ b If xi ∈ {0, 1}, it can be seen as a SAT formula Built in polynomial time, but large Guarantees a decrease in cost during column generation (CG) Heuristics 1: SAT-based CG Heuristics 2: weighted MAXSAT-based CG Heuristics 3: SMT-based CG

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Second Example – Part IV

Choose a column j, replace it with [1 x1 · · · xk ]t 

1  0 A0 =   0 0

1 1 0 0

1 x y z

 1 1   1  1

Cost minimization: y¯ + z ≤ 0

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Second Example – Part IV (cont.) When x, y , z ∈ {0, 1}, α = [¯ y + z ≤ 0] is a formula α = y ∧ ¬z Γ ∪ {α} must be satisfiable if problem is P-SAT Γ ∪ {α}-SAT valuation: [1 0 1 0]t Guaranteed to decrease total cost  x y z

1  0   0 0

1 1 0 0

1 0 1 0

 1 0.38  0.02 1  · 1   0.01 1 0.59

 

 1   0.61  =    0.60  0.59

As all columns are Γ-consistent, the problem is P-satisfiable Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Back to the First Example

Initial relaxed solution  a b c

1  0   0 0

1 1 0 0

1 1 1 0

 1 0.4  0 1  · 1  0 1 0.6

 

 1   0.6  =    0.6  0.6

No Γ-consistent column may be introduced (unSAT formula) So the problem is P-UNSAT Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Phase Transition for SAT-based Column Generation

Better performance than canonical reduction [k=12]

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

CG based on weighted MAXSAT

Each step is a call to weighted MAXSAT Decreases number of steps, but each step takes longer to compute Results Displays phase transition Better performance of all

All 3 implementations freely available (license GPL-3) at

psat.sourceforge.net

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Next Topic

1

Non-Probabilistic (Practical) Reasoning

2

Probabilistic Satisfiability

3

Basics

4

Algorithms for PSAT

5

Recent Results

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Sparse Models Parameter s must be known a priori, 0 ≤ s ≤ n Useful if s  n An s-sparse model is a boolean valuation v |{xi : v (xi ) = 1}| ≤ s

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Sparse Models Parameter s must be known a priori, 0 ≤ s ≤ n Useful if s  n An s-sparse model is a boolean valuation v |{xi : v (xi ) = 1}| ≤ s

Lemma The size of the class of s-sparse models is

n s



= O(ns )

Increasing s: family of logics that approximate classical logic “from above” [Cadoli & Schaerf 95, Dalal 96, Finger & Wassermann 2007] Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Sparse PSAT

Given a probability assignment Find a distribution over s-sparse models

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Sparse PSAT

Given a probability assignment Find a distribution over s-sparse models

Theorem The s-sparse PSAT problem can be solved in polynomial time

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Sparse PSAT

Given a probability assignment Find a distribution over s-sparse models

Theorem The s-sparse PSAT problem can be solved in polynomial time Proof 1: reduction to MaxSAT using elipsoid method, yields an algorithm O(n3s log n) Proof 2: Hirsch Conjecture for (0, 1)-polytopes, yields an algorithm O(n2s log n)

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

In the following

Practical Logic Probabilistic Reasoning Dealing with probabilistic inconsistencies Modeling using probabilistic inconsistencies

Marcelo Finger LogProb Part01

IME-USP

SAT

PSAT

Basics

Algorithms

Recent

Thank you

Visit psat.sourceforge.net

Marcelo Finger LogProb Part01

IME-USP

SlidesNatalogic2015-Part1.pdf

SAT PSAT Basics Algorithms Recent. Logic Probabilistic Reasoning. Part 1: Inference and Algorithms. Marcelo Finger. Department of Computer Science.

811KB Sizes 1 Downloads 216 Views

Recommend Documents

No documents