FOPL, Part Deux

1 / 16

# FOPL, Part Deux - PowerPoint PPT Presentation

## FOPL, Part Deux

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. FOPL, Part Deux Lecture 8-1 November 16th, 1999 CS250 CS250: Intro to AI/Lisp

2. First-Order Logic • World consists of objects and predicates on objects • Get to keep Boolean operators • Add quantifiers • Example “The wumpus is dead” could be Dead(wumpus) “All wumpi are dead” could be x Wumpi(x)Dead(x) CS250: Intro to AI/Lisp

3. Return to the Land of the Wumpus • Use Tell to add assertions to the knowledge base • Use Ask to pose queries • Answers to Asked queries are binding lists (aka substitutions) Tell(KB,Percept([Smell, Breeze, None],5)) Ask(KB,a Action(a, 5)) Does the KB entail any particular action at t=5? {a/Shoot} (That’s a yes) CS250: Intro to AI/Lisp

4. A Little Syntax • Given a sentence S, and a substitution,  S  denotes the result of plugging  into S S = Smarter(x, y)  = {x/Hillary, y/Bill} S  = Smarter(Hillary, Bill) What does Ask(KB, S) do in these terms? Returns some (or all)  such that: KB |= S CS250: Intro to AI/Lisp

5. KB for WW • Represent perceptions more abstractly • Write rules to transform percepts into predicates • Map from predicates to actions Why is this a better approach? CS250: Intro to AI/Lisp

6. “The Only Constant is Change” • How do we reason about changing situations? • Minimal internal state, but story history of percepts • Build an internal model of the world • Need diachronic rules • Already use time, but not the whole context CS250: Intro to AI/Lisp

7. Be here now. • Predicate calculus doesn’t have time for time • “For all x” means “for all x, today, tomorrow and the day after, and the day after that...” • Fine for the immutable things in this world, but need a fix for changing predicates CS250: Intro to AI/Lisp

8. Three’s Company • Add situations to predicate calculus CS250: Intro to AI/Lisp

9. Ever-Changing Predicates • Add a situation argument to properties that change over time, Si • Actions move from one situation to the next situation Result(action, situation) • Actions have effects Example: “If something that’s portable is present, then if you grab it, you’ll be holding it” (x, s) Present(x, s)  Portable(x)  Holding(x, Result(Grab,s)) CS250: Intro to AI/Lisp

10. Tracking Action Effects If the agent is at a location with gold, and grabs the gold, the agent is then holding the gold in the next situation Portable(Gold) s AtGold(s)  Present(Gold, s) x,s Present(x,s)  Portable(x)  Holding(x, Result(Grab, s)) And if the agent releases the gold? x,s Holding(x, Result(Release, s)) CS250: Intro to AI/Lisp

11. Flavors of Axioms • State the effects of actions (Effect axioms) • What about the non-effects of inaction? (Frame axioms) If the agent is Holding an object in a situation, and performs any action except Release, then the agent is Holding the object in the resulting situation Don’t forget about not Holding! CS250: Intro to AI/Lisp

12. Frame Problems • Representational frame problem • Writing down what doesn’t change • Inferential frame problem • Reasoning about what doesn’t change • Situation calculus requires carrying every property through time - even if it doesn’t change • What if most of the world doesn’t change? CS250: Intro to AI/Lisp

13. A New Flavor Combination • Successor state axioms combine effect and frame axioms • Each axiom is “about” a predicate: • true afterwards  [an action made it true •  true already and no action made it false] CS250: Intro to AI/Lisp

14. Other problems? • Qualification problem • Exactly describing when a an action will occur • Ramification problem • Inferring what goes with what CS250: Intro to AI/Lisp

15. Doin’ the Sherlock Thing Squares are near a breezy pit • Diagnostic - infer cause from effect • Causal - infer effect from cause Model-based reasoning versus diagnostic approaches CS250: Intro to AI/Lisp

16. Planning • Special search systems for reasoning about actions • Different representations • Making good choices • Preferences among actions CS250: Intro to AI/Lisp