1
|
|
2
|
- Knowledge-based agents
- Wumpus world
- Logic in general - models and entailment
- Propositional (Boolean) logic
- Equivalence, validity, satisfiability
- Inference rules and theorem proving
- forward chaining
- backward chaining
- resolution
|
3
|
- Knowledge base = set of sentences in a formal language
- Declarative approach to building an agent (or other system):
- Tell it what it needs to know
- Then it can Ask itself what to do - answers should follow from the KB
- Agents can be viewed at the knowledge level
- i.e., what they know, regardless of how implemented
- Or at the implementation level
- i.e., data structures in KB and algorithms that manipulate them
|
4
|
- The agent must be able to:
- Represent states, actions, etc.
- Incorporate new percepts
- Update internal representations of the world
- Deduce hidden properties of the world
- Deduce appropriate actions
|
5
|
- Performance measure
- gold +1000, death -1000
- -1 per step, -10 for using the arrow
- Environment
- Squares adjacent to wumpus are smelly
- Squares adjacent to pit are breezy
- Glitter iff gold is in the same square
- Shooting kills wumpus if you are facing it
- Shooting uses up the only arrow
- Grabbing picks up gold if in same square
- Releasing drops the gold in same square
- Sensors: Stench, Breeze, Glitter, Bump, Scream
- Actuators: Left turn, Right turn, Forward, Grab, Release, Shoot
|
6
|
- Fully Observable No – only local perception
- Deterministic Yes – outcomes exactly specified
- Episodic No – sequential at the level of actions
- Static Yes – Wumpus and Pits do
not move
- Discrete Yes
- Single-agent? Yes – Wumpus is essentially a natural feature
|
7
|
|
8
|
|
9
|
|
10
|
|
11
|
|
12
|
|
13
|
|
14
|
|
15
|
- 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., define truth of a sentence in a world
- E.g., the language of arithmetic
- x+2 ≥ y is a sentence; x2+y > {} is not a sentence
- x+2 ≥ y is true iff the number x+2 is no less than the number y
- x+2 ≥ y is true in a world where x = 7, y = 1
- x+2 ≥ y is false in a world where x = 0, y = 6
|
16
|
- Entailment means that one thing follows from another:
- KB ╞ α
- Knowledge base KB entails sentence α if and only if α is true
in all worlds where KB is true
- E.g., the KB containing “the Giants won” and “the Reds won” entails
“Either the Giants won or the Reds won”
- E.g., x+y = 4 entails 4 = x+y
- Entailment is a relationship between sentences (i.e., syntax) that is
based on semantics
|
17
|
- Logicians typically think in terms of models, which are formally
structured worlds with respect to which truth can be evaluated
- We say m is a model of a sentence α if α is true in m
- M(α) is the set of all models of α
- Then KB ╞ α iff M(KB) Í M(α)
- E.g. KB = Giants won and Reds
won α = Giants won
|
18
|
- Situation after detecting nothing in [1,1], moving right, breeze in
[2,1]
- Consider possible models for KB assuming only pits
- 3 Boolean choices Þ 8
possible models
|
19
|
|
20
|
- KB = wumpus-world rules + observations
|
21
|
- KB = wumpus-world rules + observations
- α1 = "[1,2] is safe", KB ╞ α1,
proved by model checking
|
22
|
- KB = wumpus-world rules + observations
|
23
|
- KB = wumpus-world rules + observations
- α2 = "[2,2] is safe", KB ╞ α2
|
24
|
- Define: KB ├i α = sentence α can be derived
from KB by procedure i
- 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 α
- Preview: we will define a logic (first-order logic) which is expressive
enough to say almost anything of interest, and for which there exists a
sound and complete inference procedure.
- That is, the procedure will answer any question whose answer follows
from what is known by the KB.
|
25
|
- Propositional logic is the simplest logic – illustrates basic ideas
- The proposition symbols P1, P2 etc are sentences
- 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)
|
26
|
- Each model specifies true/false for each proposition symbol
- E.g. P1,2 P2,2 P3,1
- false true false
- With these symbols, 8 possible models, can be enumerated automatically.
- Rules for evaluating truth with respect to a model m:
- ØS is true iff S is false
- S1 Ù S2 is true iff S1 is true and
S2 is true
- S1 Ú S2 is true iff S1is true or
S2 is true
- S1 Þ S2
is true iff S1 is false or S2 is true
- i.e., is false iff S1 is true and S2 is false
- S1 Û S2 is
true iff S1ÞS2 is true andS2ÞS1 is true
- Simple recursive process evaluates an arbitrary sentence, e.g.,
- ØP1,2 Ù (P2,2 Ú P3,1) = true
Ù (true Ú false) = true Ù true = true
|
27
|
|
28
|
- Let Pi,j be true if there is a pit in [i, j].
- Let Bi,j be true if there is a breeze in [i, j].
- "Pits cause breezes in adjacent squares"
- B1,1 Û (P1,2 Ú P2,1)
- B2,1 Û (P1,1 Ú P2,2 Ú P3,1)
|
29
|
|
30
|
- Depth-first enumeration of all models is sound and complete
- For n symbols, time complexity is O(2n), space complexity is O(n)
|
31
|
- Two sentences are logically equivalent iff true in same models: α ≡
ß iff α╞ β and β╞ α
|
32
|
- 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 model
- A sentence is unsatisfiable if it is true in no models
- Satisfiability is connected to inference via the following:
- KB ╞ α if and only if (KB ÙØα) is unsatisfiable
|
33
|
- Proof methods divide into (roughly) two kinds:
- Application of inference rules
- Legitimate (sound) generation of new sentences from old
- Proof = a sequence of inference rule applications
Can use inference rules as operators in a standard search
algorithm
- Typically require 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
|
34
|
- Conjunctive Normal Form (CNF)
- conjunction of disjunctions of
literals
- 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
|
35
|
- Soundness of resolution inference rule:
- Ø(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)
- where li and mj are complementary literals.
|
36
|
- B1,1 Û (P1,2 Ú P2,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 and double-negation:
- (Ø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)
|
37
|
- Proof by contradiction, i.e., show KBÙØα unsatisfiable
|
38
|
- KB = (B1,1 Û (P1,2Ú P2,1)) ÙØ B1,1
- α = ØP1,2 (negate
the premise for proof by refutation)
|
39
|
- Horn Form (restricted)
- KB = conjunction of Horn clauses
- Horn clause =
- proposition symbol; or
- (conjunction of symbols) Þ symbol
- E.g., C Ù (B Þ A) Ù (C Ù D Þ B)
- Modus Ponens (for Horn Form): complete for Horn KBs
- α1, … ,αn, α1 Ù … Ù αn Þ β
- β
- Can be used with forward chaining or backward chaining.
- These algorithms are very natural and run in linear time
|
40
|
- Idea: fire any rule whose premises are satisfied in the KB,
- add its conclusion to the KB, until query is found
|
41
|
- Forward chaining is sound and complete for Horn KB
|
42
|
|
43
|
|
44
|
|
45
|
|
46
|
|
47
|
|
48
|
|
49
|
|
50
|
- FC derives every atomic sentence that is entailed by KB
- FC reaches a fixed point where no new atomic sentences are derived
- Consider the final state as a model m, assigning true/false to symbols
- Every clause in the original KB is true in m
- Hence m is a model of KB
- If KB╞ q, q is true in every model of KB, including m
|
51
|
- Idea: 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 subgoal is already on the goal stack
- Avoid repeated work: check if new subgoal
- has already been proved true, or
- has already failed
|
52
|
|
53
|
|
54
|
|
55
|
|
56
|
|
57
|
|
58
|
|
59
|
|
60
|
|
61
|
|
62
|
- 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
|
63
|
- Two families of efficient algorithms for propositional inference:
- Complete backtracking search algorithms
- DPLL algorithm (Davis, Putnam, Logemann, Loveland)
- Incomplete local search algorithms
|
64
|
- 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.
|
65
|
|
66
|
- Incomplete, local search algorithm
- Evaluation function: The min-conflict heuristic of minimizing the number
of unsatisfied clauses
- Balance between greediness and randomness
|
67
|
|
68
|
- 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)
|
69
|
|
70
|
- Median runtime for 100 satisfiable random 3-CNF sentences, n = 50
|
71
|
- A wumpus-world agent using propositional logic:
- ØP1,1
- ØW1,1
- Bx,y Û (Px,y+1
Ú Px,y-1 Ú Px+1,y Ú Px-1,y)
- Sx,y Û (Wx,y+1
Ú Wx,y-1 Ú Wx+1,y Ú Wx-1,y)
- W1,1 Ú W1,2
Ú … Ú W4,4
- ØW1,1 Ú ØW1,2
- ØW1,1 Ú ØW1,3
- …
- Þ 64 distinct proposition
symbols, 155 sentences
|
72
|
|
73
|
- KB contains "physics" sentences for every single square
- For every time t and every location [x,y],
- Lx,y Ù FacingRightt
Ù Forwardt Þ Lx+1,y
- Rapid proliferation of clauses
|
74
|
- 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 wrt 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
- Wumpus world requires the ability to represent partial and negated
information, reason by cases, etc.
- Resolution is complete for propositional logic
Forward, backward chaining are linear-time, complete for Horn
clauses
- Propositional logic lacks expressive power
|