Intelligent Systems
description
Transcript of Intelligent Systems
www.sti-innsbruck.at © Copyright 2008 STI INNSBRUCK www.sti-innsbruck.at
Intelligent SystemsIntelligent Systems
Propositional Logic – Lecture 2
Prof. Dieter Fensel (& James Scicluna)
www.sti-innsbruck.at
Agenda
• Motivation• Propositional Logic
– Inference by Enumeration– Validity and Satisfiability– Logical Equivalence– Proof Methods – Resolution– Soundness and Completeness
• Horn Clauses– Forward Chaining– Backward Chaining
• Efficient Propositional Inference – The DPLL Algorithm• Limitations of Propositional Logic• Summary
2
www.sti-innsbruck.at
Motivation – Why Logics?
• Origins of Logic– Ancient Greece– Philosophers argued about themes, but who was right in the end?– When Socrates claimed that one statement followed from another, was it actually true?
• Logics today– Verification (e.g. Circuits)– Proofs– Robotics– ...others
• Logics are formal languages for representing information such that conclusions can be drawn.
– Syntax defines the sentences in the language.– Semantics define the "meaning" of sentences, i.e., defines the truth of each sentence
w.r.t. each possible world (model)
3
www.sti-innsbruck.at
Motivation – Basic Ideas
• Entailment means that one thing follows from anotherKB╞ α
• Knowledge base KB entails sentence α if and only if α is true in all worlds where KB is true
– E.g., the KB containing “Innsbruck is in Tirol” and “Tirol is in Austria” entails “Innsbruck is in Austria”
– E.g., the KB containing x+y = 4 entails 4 = x+y
• Entailment is a relationship between sentences (i.e., syntax) that is based on semantics
4
www.sti-innsbruck.at
Motivation – Models/Interpretations
• Possible worlds – environments in which the agent might or might not be in
• Models – mathematical abstractions, formally structured worlds with respect to which truth of sentences can be evaluated
• m is a model of a sentence α if α is true in m
• M(α) is the set of all models of α
• KB ╞ α iff M(KB) M(α)
• Knowledge base KB entails sentence α if and only if all models of the KB are models of α
5
www.sti-innsbruck.at
Motivation – Inference
• KB ├i α : sentence α can be derived from KB by procedure i, i proves α
• Soundness: i is sound if whenever KB ├i α, it is also true that KB╞ α
• Completeness: i is complete if whenever KB╞ α, it is also true that KB ├i α
• A sound and complete procedure answers any question whose answer follows from what is known by the KB correctly.
6
www.sti-innsbruck.at
Solution – Propositional Logic
Syntax
• Propositional logic is the simplest logic and illustrates basic ideas of logic
• The proposition symbols P1, P2,…are sentences (formulae)– If S is a sentence, S is a sentence (negation)– If S1 and S2 are sentences, S1 S2 is a sentence (conjunction)– If S1 and S2 are sentences, S1 S2 is a sentence (disjunction)– If S1 and S2 are sentences, S1 S2 is a sentence (implication)– If S1 and S2 are sentences, S1 S2 is a sentence (biconditional)
7
www.sti-innsbruck.at
Solution – Propositional Logic
Semantics
• Each model specifies true/false values for each proposition symbol (8 possible models)– E.g. P1,2 P2,2 P3,1
false true false
• Rules for evaluating truth with respect to an interpretation m:
S is true iff S is false S1 S2 is true iff S1 is true and S2 is trueS1 S2 is true iff S1 is true or S2 is trueS1 S2 is true iff S1 is false or S2 is trueS1 S2 is false iff S1 is true and S2 is falseS1 S2 is true iff S1S2 is true and S2S1 is true
• Simple recursive process evaluates an arbitrary sentence w.r.t. an interpretation, e.g.,
P1,2 (P2,2 P3,1) : true (true false) = true true = true
8
www.sti-innsbruck.at
Solution – Propositional Logic
Truth Tables
9
www.sti-innsbruck.at
Solution – Propositional Logic
α1 = "[1,2] is safe"
10
www.sti-innsbruck.at
Procedure - Inference by Enumeration
• Depth-first enumeration of all models is sound and complete
– PL-TRUE evaluates a sentence recursively wrt. to an interpretation– EXTEND(s,v,m) extends the partial model m by assigning value v to symbol s.
• For n symbols, time complexity is O(2n), space complexity is O(n)
11
www.sti-innsbruck.at
Definition - Validity and Satisfiability
A sentence is valid if it is true in all models,e.g., True, A A, A A, (A (A B)) B
Validity is connected to inference via the Deduction Theorem:KB ╞ α if and only if (KB α) is valid
A sentence is satisfiable if it is true in some modele.g., A B, C
A sentence is unsatisfiable if it is true in no modelse.g., A A
Satisfibility is connected to inference via the following
KB ╞ α if and only if (KB α) is unsatisfiable
–
12
www.sti-innsbruck.at
Definition - Logical equivalence
• Two sentences are logically equivalent iff they are true in same models: α ≡ ß iff α╞ β and β╞ α
13
www.sti-innsbruck.at
Procedure - Proof Methods
• Proof methods divide into (roughly) two kinds
– Application of inference rules• Legitimate (sound) generation of new sentences from old ones• Proof = a sequence of inference rule applications• Can use inference rules as operators in a standard search algorithm• Typically requires transformation of sentences into a normal form
– Model checking• Truth table enumeration (always exponential in n)• Improved backtracking, e.g., Davis-Putnam-Logemann-Loveland (DPLL)• Heuristic search in model space (sound but incomplete) e.g., min-conflicts-
like hill-climbing algorithms
14
www.sti-innsbruck.at
Procedure - Resolution
Conjunctive Normal Form (CNF) conjunction of disjunctions of literals often called clauses
E.g., (A B) (B C D)
• Resolution inference rule (for CNF):li … lk, m1 … mn
li … li-1 li+1 … lk m1 … mj-1 mj+1 ... mn
where li and mj are complementary literals.
E.g., P1,3 P2,2, P2,2
P1,3
• Resolution is sound and complete for propositional logic
15
www.sti-innsbruck.at
Procedure - Conversion to CNF
B1,1 (P1,2 P2,1)
1. Eliminate , replacing α β with (α β) (β α).(B1,1 (P1,2 P2,1)) ((P1,2 P2,1) B1,1)
2. Eliminate , replacing α β with α β.(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)
3. Move inwards using de Morgan's rules:(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)
4. Apply distributivity law ( over ) and flatten:(B1,1 P1,2 P2,1) (P1,2 B1,1) (P2,1 B1,1)
16
www.sti-innsbruck.at
Definition - Soundness
Whenever KB ├r α, it is also true that KB╞ α
li … lk, m1 … mn
li … li-1 li+1 … lk m1 … mj-1 mj+1 ... mn
li and mj are complementary literals.
(li … li-1 li+1 … lk) li mj (m1 … mj-1 mj+1 ... mn)
(li … li-1 li+1 … lk) (m1 … mj-1 mj+1 ... mn)
using the rule (a b) (b a) which can be written also as (a b) ( a b).
17
www.sti-innsbruck.at
Definition - Completeness
• Whenever KB╞ α, it is also true that KB ├r α
• KB ╞ α if and only if (KB α) is unsatisfiable
• Ground resolution theorem– If a set of clauses is unsatisfiable, then the resolution closure of those
clauses contains the empty clause.
• Proof by contradiction– Assume KB ╞ α and that the closure does not contain the empty clause.
18
www.sti-innsbruck.at
Procedure - Forward and backward chaining
• Horn clauses: disjunction of literals of which at most one is positive– Important because Horn clauses can be written as an implication whose
premise is a conjuction of positive literals and whose conclusion is a single positive literal
• Definite clauses: exactly one positive literal– Positive literal forms the head– Negative literals form the body
• Inference with Horn clauses can be done by forward or backward chaining in a time that is linear in the size of the KB.
19
www.sti-innsbruck.at
Procedure - Forward chaining
• Fire any rule whose premises are satisfied in the KB• Add its conclusion to the KB, until query is found
20
www.sti-innsbruck.at
Procedure - Forward chaining algorithm
• agenda: true symbols not yet processed• count: how many premises are unknown
– for each new symbol processed, count is reduced by one for each implication in whose premise this symbol appears
• Count = 0 conclusion can be added to the agenda• Forward chaining is sound and complete for Horn KB
21
www.sti-innsbruck.at
Example - Forward Chaining
22
www.sti-innsbruck.at
Example - Forward Chaining
23
www.sti-innsbruck.at
Example - Forward Chaining
24
www.sti-innsbruck.at
Example - Forward Chaining
25
www.sti-innsbruck.at
Example - Forward Chaining
26
www.sti-innsbruck.at
Example - Forward Chaining
27
www.sti-innsbruck.at
Example - Forward Chaining
28
www.sti-innsbruck.at
Example - Forward Chaining
29
www.sti-innsbruck.at
Procedure - Backward chaining
• Work backwards from the query q
• To prove q by BC, check if q is known already, or prove by BC all premises of some rule concluding q
• Avoid loops: check if new sub-goal is already on the goal stack
• Avoid repeated work: check if new sub-goal has already been proved true, or has already failed
31
www.sti-innsbruck.at
Example – Backward Chaining
32
www.sti-innsbruck.at
Example – Backward Chaining
33
www.sti-innsbruck.at
Example – Backward Chaining
34
www.sti-innsbruck.at
Example – Backward Chaining
35
www.sti-innsbruck.at
Example – Backward Chaining
36
www.sti-innsbruck.at
Example – Backward Chaining
37
www.sti-innsbruck.at
Example – Backward Chaining
38
www.sti-innsbruck.at
Example – Backward Chaining
39
www.sti-innsbruck.at
Example – Backward Chaining
40
www.sti-innsbruck.at
Example – Backward Chaining
41
www.sti-innsbruck.at
Explanation: Forward vs. Backward chaining
• FC is data-driven, automatic, unconscious processing,– e.g., object recognition, routine decisions
• May do lots of work that is irrelevant to the goal !!!
• BC is goal-driven, appropriate for problem-solving,– e.g., Where are my keys? How do I get into a PhD program?
• Complexity of BC can be much less than linear in size of KB (only relevant facts are considered)
42
www.sti-innsbruck.at
Procedure: Efficient propositional inference
• Two families of efficient algorithms for propositional inference
– Complete backtracking search algorithms• DPLL algorithm (Davis, Putnam, Logemann, Loveland)
– Incomplete local search algorithms
• WalkSAT algorithm (Incomplete, local search algorithm)
43
www.sti-innsbruck.at
Procedure: The DPLL algorithm
Determine if an input propositional logic sentence (in CNF) is satisfiable.
Improvements over truth table enumeration1. Early termination
• A clause is true if any literal is true (disjunction of literals)• A sentence is false if any clause is false (conjunction of clauses)
2. 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. • If a sentence has a model then it has a model with the pure symbols assigned so as
to make their literals true.
3. Unit clause heuristic• Unit clause: only one literal in the clause• The only literal in a unit clause must be true.
44
www.sti-innsbruck.at
Procedure: The DPLL algorithm
45
www.sti-innsbruck.at
Procedure: The DPLL algorithm
46
www.sti-innsbruck.at
• KB contains “physics” sentences for every single square
• For every time t and every location [x,y],
• Rapid proliferation of clauses
Limitation of propositional logic
1,1,
tyx
tttyx LForwardtFacingRighL
47
www.sti-innsbruck.at
Summary
• Logical agents apply inference to a knowledge base to derive new information and make decisions
• Basic concepts of logic:– syntax: formal structure of sentences– semantics: truth of sentences w.r.t. models– entailment: necessary truth of one sentence given another– inference: deriving sentences from other sentences– soundness: derivations produce only entailed sentences– completeness: derivations can produce all entailed sentences
• Resolution is complete for propositional logic• Forward, backward chaining are linear-time, complete for Horn clauses• Propositional logic lacks expressive power
48
www.sti-innsbruck.at
References
• S. Russell, P. Norvig: Artificial Intelligence – A Modern Approach
49