Knowledge Representation II Inference in Propositional Logic CSE

  • Slides: 33
Download presentation
Knowledge Representation II (Inference in Propositional Logic) CSE 473 © Daniel S. Weld

Knowledge Representation II (Inference in Propositional Logic) CSE 473 © Daniel S. Weld

473 Topics Perception Inference Logic NLP Robotics Supervised Learning Knowledge Representation Multi-agent Reinforcement Learning

473 Topics Perception Inference Logic NLP Robotics Supervised Learning Knowledge Representation Multi-agent Reinforcement Learning Planning Probability Search Problem Spaces Agency © Daniel S. Weld 2

Propositional Logic • Syntax Atomic sentences: P, Q, … Connectives: , , , •

Propositional Logic • Syntax Atomic sentences: P, Q, … Connectives: , , , • Semantics Truth Tables • Inference Modus Ponens Resolution DPLL GSAT • Complexity © Daniel S. Weld 3

Semantics • Syntax: a description of the legal arrangements of symbols (Def “sentences”) •

Semantics • Syntax: a description of the legal arrangements of symbols (Def “sentences”) • Semantics: what the arrangement of symbols means in the world Sentences Facts © Daniel S. Weld Sentences Semantics World Semantics Representation Inference Facts 4

Satisfiability, Validity, & Entailment • S is satisfiable if it is true in some

Satisfiability, Validity, & Entailment • S is satisfiable if it is true in some world • S is unsatisfiable if it is false all worlds • S is valid if it is true in all worlds • S 1 entails S 2 if wherever S 1 is true S 2 is also true © Daniel S. Weld 5

Today • Inference Algorithms As search Systematic & stochastic • Themes Expressivity vs. Tractability

Today • Inference Algorithms As search Systematic & stochastic • Themes Expressivity vs. Tractability © Daniel S. Weld 6

Reasoning Tasks • Model finding KB = background knowledge S = description of problem

Reasoning Tasks • Model finding KB = background knowledge S = description of problem Show (KB S) is satisfiable A kind of constraint satisfaction • Deduction S = question Prove that KB |= S Two approaches: 1. Rules to derive new formulas from old 2. Show (KB S) is unsatisfiable © Daniel S. Weld 7

Inference 1: Forward Chaining Forward (& Backward) Chaining Based on rule of modus ponens

Inference 1: Forward Chaining Forward (& Backward) Chaining Based on rule of modus ponens If know P 1, …, Pn & know (P 1 . . . Pn )=> Q Then can conclude Q Pose as Search thru Problem Space? States? Operators? © Daniel S. Weld 8

Analysis • Sound? • Complete? Can you prove { } |= Q Q ©

Analysis • Sound? • Complete? Can you prove { } |= Q Q © Daniel S. Weld 9

Special Syntactic Forms: CNF • General Form: ((q r) s)) (s t) • Conjunction

Special Syntactic Forms: CNF • General Form: ((q r) s)) (s t) • Conjunction Normal Form (CNF) ( q r s ) ( s t) Set notation: { ( q, r, s ), ( s, t) } empty clause () = false © Daniel S. Weld 10

Inference 2: Resolution [Robinson 1965] { (p ), ( p ) } |-R (

Inference 2: Resolution [Robinson 1965] { (p ), ( p ) } |-R ( ) Correctness If S 1 |-R S 2 then S 1 |= S 2 Refutation Completeness: If S is unsatisfiable then S |-R () © Daniel S. Weld 11

Resolution If the unicorn is mythical, then it is immortal, but if it is

Resolution If the unicorn is mythical, then it is immortal, but if it is not mythical, it is a mammal. If the unicorn is either immortal or a mammal, then it is horned. Prove: the unicorn is horned. ( A H) M = mythical I = immortal A = mammal H = horned (M A) ( I H) ( A) ( I) (M) ( M I) ( M) () © Daniel S. Weld 12

Inference 3: Model Enumeration for (m in truth assignments){ if (m makes true) then

Inference 3: Model Enumeration for (m in truth assignments){ if (m makes true) then return “Sat!” } return “Unsat!” View as Search? Critique? © Daniel S. Weld 13

Inference 4: DPLL (Enumeration of Partial Models) [Davis, Putnam, Loveland & Logemann 1962] Version

Inference 4: DPLL (Enumeration of Partial Models) [Davis, Putnam, Loveland & Logemann 1962] Version 1 dpll_1(pa){ if (pa makes F false) return false; if (pa makes F true) return true; choose P in F; if (dpll_1(pa U {P=0})) return true; return dpll_1(pa U {P=1}); } Returns true if F is satisfiable, false otherwise © Daniel S. Weld 14

DPLL Version 1 a (a b c) (a ¬c) (¬a c) © Daniel S.

DPLL Version 1 a (a b c) (a ¬c) (¬a c) © Daniel S. Weld b b (a ¬b) c c 15

DPLL as Search • Search Space? • Algorithm? © Daniel S. Weld 16

DPLL as Search • Search Space? • Algorithm? © Daniel S. Weld 16

Improving DPLL © Daniel S. Weld 17

Improving DPLL © Daniel S. Weld 17

DPLL version 2 Davis – Putnam – Loveland – Logemann dpll_2(F, literal){ remove clauses

DPLL version 2 Davis – Putnam – Loveland – Logemann dpll_2(F, literal){ remove clauses containing literal shorten clauses containing literal if (F contains no clauses)return true; if (F contains empty clause) return false; choose V in F; if (dpll(F, V))return true; return dpll_2(F, V); } Partial assignment corresponding to a node is the set of chosen literals on the path from the root to the node © Daniel S. Weld 18

DPLL Version 2 a (a b c) (a ¬c) (¬a c) © Daniel S.

DPLL Version 2 a (a b c) (a ¬c) (¬a c) © Daniel S. Weld b b (a ¬b) c c 19

Structure in Clauses • Unit Literals A literal that appears in a singleton clause

Structure in Clauses • Unit Literals A literal that appears in a singleton clause {{ b c}{a b e}{d b}{e a c}} Might as well set it true! And simplify {{ b} {a b e}{d b}} {{d}} • Pure Literals A symbol that always appears with same sign {{a b c}{ c d e}{ a b e}{d b}{e a c}} Might as well set it true! And simplify {{a b c} { a b e} {e a c}} © Daniel S. Weld 20

Further Improvements May view this as adding constraint propagation techniques into play © Daniel

Further Improvements May view this as adding constraint propagation techniques into play © Daniel S. Weld 21

DPLL (for real!) Davis – Putnam – Loveland – Logemann dpll(F, literal){ remove clauses

DPLL (for real!) Davis – Putnam – Loveland – Logemann dpll(F, literal){ remove clauses containing literal shorten clauses containing literal if (F contains no clauses) return true; if (F contains empty clause) return false; if (F contains a unit or pure L) return dpll(F, L); choose V in F; if (dpll(F, V))return true; return dpll_2(F, V); } © Daniel S. Weld 22

DPLL (for real) a (a b c) b (a ¬b) c (a ¬c) (¬a

DPLL (for real) a (a b c) b (a ¬b) c (a ¬c) (¬a c) c Note: bug in animation? !? © Daniel S. Weld 23

Heuristic Search in DPLL • Heuristics are used in DPLL to select a (nonunit,

Heuristic Search in DPLL • Heuristics are used in DPLL to select a (nonunit, non-pure) proposition for branching • Idea: identify a most constrained variable Likely to create many unit clauses • MOM’s heuristic: Most occurrences in clauses of minimum length © Daniel S. Weld 25

Success of DPLL • • 1962 – DPLL invented 1992 – 300 propositions 1997

Success of DPLL • • 1962 – DPLL invented 1992 – 300 propositions 1997 – 600 propositions (satz) Additional techniques: Learning conflict clauses at backtrack points Randomized restarts 2002 (z. Chaff) 1, 000 propositions – encodings of hardware verification problems © Daniel S. Weld 26

Horn Theories • Recall the special case of Horn clauses: { ( q r

Horn Theories • Recall the special case of Horn clauses: { ( q r s ), ( s t) } { ((q r) s ), ((s t) false) } • Many problems naturally take the form of such if/then rules If (fever) AND (vomiting) then FLU • Unit propagation is refutation complete for Horn theories Good implementation – linear time! © Daniel S. Weld 29

Walk. Sat • Local search over space of complete truth assignments With probability P:

Walk. Sat • Local search over space of complete truth assignments With probability P: flip any variable in any unsatisfied clause With probability (1 -P): flip best variable in any unsat clause • Like fixed-temperature simulated annealing • SAT encodings of N-Queens, scheduling • Best algorithm for random K-SAT Best DPLL: 700 variables Walksat: 100, 000 variables © Daniel S. Weld 30

Random 3 -SAT • Random 3 -SAT sample uniformly from space of all possible

Random 3 -SAT • Random 3 -SAT sample uniformly from space of all possible 3 clauses n variables, l clauses • Which are the hard instances? around l/n = 4. 3 © Daniel S. Weld 31

Random 3 -SAT • Varying problem size, n • Complexity peak appears to be

Random 3 -SAT • Varying problem size, n • Complexity peak appears to be largely invariant of algorithm backtracking algorithms like Davis-Putnam local search procedures like GSAT • What’s so special about 4. 3? © Daniel S. Weld 32

Random 3 -SAT • Complexity peak coincides with solubility transition l/n < 4. 3

Random 3 -SAT • Complexity peak coincides with solubility transition l/n < 4. 3 problems underconstrained and SAT l/n > 4. 3 problems overconstrained and UNSAT l/n=4. 3, problems on “knife-edge” between SAT and UNSAT © Daniel S. Weld 33

Real-World Phase Transition Phenomena • Many NP-hard problem distributions show phase transitions job shop

Real-World Phase Transition Phenomena • Many NP-hard problem distributions show phase transitions job shop scheduling problems TSP instances from TSPLib exam timetables @ Edinburgh Boolean circuit synthesis Latin squares (alias sports scheduling) • Hot research topic: predicting hardness of a given instance, & using hardness to control search strategy (Horvitz, Kautz, Ruan 2001 -3) © Daniel S. Weld 34

Summary: Algorithms • • • Forward Chaining Resolution Model Enumeration of Partial Models (DPLL)

Summary: Algorithms • • • Forward Chaining Resolution Model Enumeration of Partial Models (DPLL) Walksat © Daniel S. Weld 35

Themes • Expressiveness Expressive but awkward No notion of objects, properties, or relations Number

Themes • Expressiveness Expressive but awkward No notion of objects, properties, or relations Number of propositions is fixed • Tractability NPC in general Completeness / speed tradeoff Horn clauses, binary clauses © Daniel S. Weld 36