1 / 17

Explorations in Artificial Intelligence

Explorations in Artificial Intelligence. Prof. Carla P. Gomes gomes@cs.cornell.edu Module 3 Logic Representations (Part 2). Satisfiability. Propositional Satisfiability problem. Satifiability (SAT): Given a formula in propositional calculus, is there a model

dagmar
Download Presentation

Explorations in Artificial Intelligence

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Explorations in Artificial Intelligence Prof. Carla P. Gomes gomes@cs.cornell.edu Module 3 Logic Representations (Part 2)

  2. Satisfiability

  3. Propositional Satisfiability problem • Satifiability (SAT): Given a formula in propositional calculus, is there a model • (i.e., a satisfying interpretation, an assignment to its variables) making it true? • We consider clausal form, e.g.: • ( ab c ) AND ( b c) AND ( ac) possible assignments SAT: prototypical hard combinatorial search and reasoning problem. Problem is NP-Complete. (Cook 1971) Surprising “power” of SAT for encoding computational problems.

  4. Effective propositional inference • Two families of algorithms for propositional inference (checking satisfiability) based on model checking (which are quite effective in practice): • Complete backtracking search algorithms • DPLL algorithm (Davis, Putnam, Logemann, Loveland) • Incomplete local search algorithms • WalkSAT algorithm

  5. The DPLL algorithm • Determine if an input propositional logic sentence (in CNF) is satisfiable. • Improvements over truth table enumeration: • Early termination A clause is true if any literal is true. A sentence is false if any clause is false. • Pure symbol heuristic Pure symbol: always appears with the same "sign" in all clauses. e.g., In the three clauses (A B), (B C), (C  A), A and B are pure, C is impure. Make a pure symbol literal true. • Unit clause heuristic Unit clause: only one literal in the clause The only literal in a unit clause must be true.

  6. The DPLL algorithm

  7. The WalkSAT algorithm • Incomplete, local search algorithm • Evaluation function: The min-conflict heuristic of minimizing the number of unsatisfied clauses • Balance between greediness and randomness

  8. The WalkSAT algorithm

  9. Hard satisfiability problems • Consider random 3-CNF sentences. e.g., • (D B  C)  (B A C)  (C B  E)  (E D  B)  (B  E C) m = number of clauses n = number of symbols • Hard problems seem to cluster near m/n = 4.3 (critical point)

  10. Intuition • At low ratios: • few clauses (constraints) • many assignments • easily found • At high ratios: • many clauses • inconsistencies easily detected

  11. Satisfiability as an Encoding Language

  12. Encoding Latin Square Problems in Propositional Logic • Variables: • Each variables represents a color assigned to a cell. • Clauses: • Some color must be assigned to each cell (clause of length n); • No color is repeated in the same row (sets of negative binary clauses); • No color is repeated in the same column (sets of negative binary clauses);

  13. 3D Encoding or Full Encoding • This encoding is based on the cubic representation of the quasigroup: each line of the cube contains exactly one true variable; • Variables: • Same as 2D encoding. • Clauses: • Same as the 2 D encoding plus: • Each color must appear at least once in each row; • Each color must appear at least once in each column; • No two colors are assigned to the same cell;

  14. Dimacs format • At the top of the file is a simple header. • p cnf <variables> <clauses> • Each variable should be assigned an integer index. Start at 1, as 0 is used to indicate the end of a clause. The positive integer a positive literal, whereas a negative interger represents a negative literal. • Example • -1 7 0  ( x1  x7)

  15. A cell gets at most a color No repetition of color in a column No repetition of color in a row A cell gets a color A given color goes in each column A given color goes in each row Extended Latin Square 2x2 order 2 -1 -1 -1 -1 • p cnf 8 24 • -1 -2 0 • -3 -4 0 • -5 -6 0 • -7 -8 0 • -1 -5 0 • -2 -6 0 • -3 -7 0 • -4 -8 0 • -1 -3 0 • -2 -4 0 • -5 -7 0 • -6 -8 0 • 1 2 0 • 3 4 0 • 5 6 0 • 7 8 0 • 1 5 0 • 2 6 0 • 3 7 0 • 4 8 0 • 1 3 0 • 2 4 0 • 5 7 0 • 6 8 0 1/2 3/4 5/6 7/8 1 – cell 11 is red 2 – cell 11 is green 3 – cell 12 is red 4 – cell 12 is green 5 – cell 21 is red 6 – cell 21 is green 7 – cell 22 is red 8 – cell 22 is green

More Related