Logical Agents.

Slides:



Advertisements
Similar presentations
Knowledge Representation using First-Order Logic
Advertisements

First-Order Logic: Better choice for Wumpus World Propositional logic represents facts First-order logic gives us Objects Relations: how objects relate.
Agents That Reason Logically Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 7 Spring 2004.
First-Order Logic Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 8 Spring 2004.
Artificial Intelligence Knowledge-based Agents Russell and Norvig, Ch. 6, 7.
Knowledge Representation & Reasoning.  Introduction How can we formalize our knowledge about the world so that:  We can reason about it?  We can do.
Class Project Due at end of finals week Essentially anything you want, so long as its AI related and I approve Any programming language you want In pairs.
First-Order Logic Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 8 Spring 2007.
Logical Agents Chapter 7. Why Do We Need Logic? Problem-solving agents were very inflexible: hard code every possible state. Search is almost always exponential.
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Lecture 8 Jim Martin.
First-Order Logic: Better choice for Wumpus World Propositional logic represents facts First-order logic gives us Objects Relations: how objects relate.
LOGICAL AGENTS Yılmaz KILIÇASLAN. Definitions Logical agents are those that can:  form representations of the world,  use a process of inference to.
Logical Agents Chapter 7 Feb 26, Knowledge and Reasoning Knowledge of action outcome enables problem solving –a reflex agent can only find way from.
A toy world for logical exploration The Wumpus example.
1 Knowledge Representation and Reasoning Focus on Sections , 10.6 Guest Lecturer: Eric Eaton University of Maryland Baltimore County Lockheed.
CMSC 471 Fall 2002 Class #12/14 – Wednesday, October 9 / Wednesday, October 16.
1 Logical Agents CS 171/271 (Chapter 7) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Dr. Shazzad Hosain Department of EECS North South Universtiy Lecture 04 – Part A Knowledge Representation and Reasoning.
Class Project Due at end of finals week Essentially anything you want, so long as its AI related and I approve Any programming language you want In pairs.
1 Knowledge Representation Propositional Logic Vumpus World Knowledge Representation Propositional Logic Vumpus World.
1 Logical Agents CS 171/271 (Chapter 7) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Logical Agents. Logical agents for the Wumpus World Three (non-exclusive) agent architectures: Reflex agents –Have rules that classify situations based.
Logical Agents. Logical agents for the Wumpus World Three (non-exclusive) agent architectures: Reflex agents –Have rules that classify situations based.
For Wednesday Read chapter 9, sections 1-4 Homework: –Chapter 8, exercise 6 May be done in groups.
1 Propositional logic (cont…) 命題論理 Syntax&Semantics of first-order logic 構文論と意味論 Deducing hidden properties Describing actions Propositional logic (cont…)
Lecture 8-1CS250: Intro to AI/Lisp FOPL, Part Deux Lecture 8-1 November 16 th, 1999 CS250.
CMSC 671 Fall 2003 Class #12 – Wednesday, October 8.
1 UNIT-3 KNOWLEDGE REPRESENTATION. 2 Agents that reason logically(Logical agents) A Knowledge based Agent The Wumpus world environment Representation,
First-Order Logic Chapter 8. Problem of Propositional Logic  Propositional logic has very limited expressive power –E.g., cannot say "pits cause breezes.
CMSC 671 Fall 2001 Class #12/13 – Thursday, October 11 / Tuesday, October 16.
1 Knowledge Representation Logic and Inference Propositional Logic Vumpus World Knowledge Representation Logic and Inference Propositional Logic Vumpus.
Artificial Intelligence Logical Agents Chapter 7.
Logical Agents. Inference : Example 1 How many variables? 3 variables A,B,C How many models? 2 3 = 8 models.
LOGICAL AGENTS CHAPTER 7 AIMA 3. OUTLINE  Knowledge-based agents  Wumpus world  Logic in general - models and entailment  Propositional (Boolean)
Propositional Logic: Logical Agents (Part I)
First-Order Logic Knowledge Representation
Knowledge and reasoning – second part
First-Order Logic Chapter 8.
Class #12 – Thursday, October 8
Logical Agents.
EA C461 – Artificial Intelligence Logical Agent
First-Order Logic Knowledge Representation
Knowledge Representation
Learning and Knowledge Acquisition
Artificial Intelli-gence 1: logic agents
Class #12 – Tuesday, October 12
First-Order Logic Knowledge Representation
First-Order Logic Knowledge Representation
Logical Agents Chapter 7.
First-Order Logic Chapter 8.
Introduction to Artificial Intelligence
Artificial Intelligence
Artificial Intelligence: Logic agents
Class #9– Thursday, September 29
Knowledge and reasoning – second part
Logical Agents Chapter 7.
First-order Logic Propositional logic (cont…)
Knowledge Representation using First-Order Logic (Part III)
First-Order Logic Knowledge Representation
Logical Agents Chapter 7 How do we reason about reasonable decisions
CS 416 Artificial Intelligence
Artificial Intelligence Lecture 10: Logical Agents
Knowledge Representation I (Propositional Logic)
Logical Agents.
First-Order Logic Chapter 8.
CMSC 471 Fall 2011 Class #10 Tuesday, October 4 Knowledge-Based Agents
Lecture 5-2 February 4th, 1999 CS250
Logical Agents.
Logical Agents Prof. Dr. Widodo Budiharto 2018
Presentation transcript:

Logical Agents

Logical agents for the Wumpus World Three (non-exclusive) agent architectures: Reflex agents Have rules that classify situations based on percepts and specify how to react to each possible situation Model-based agents Construct an internal model of their world Goal-based agents Form goals and try to achieve them

A simple reflex agent Rules to map percepts into observations: b,g,u,c,t Percept([Stench, b, g, u, c], t)  Stench(t) s,g,u,c,t Percept([s, Breeze, g, u, c], t)  Breeze(t) s,b,u,c,t Percept([s, b, Glitter, u, c], t)  AtGold(t) Rules to select an action given observations: t AtGold(t)  Action(Grab, t); Some difficulties: Consider Climb: There’s no percept that indicates the agent should climb out – position and holding gold are not part of the percept sequence Loops – the percept will be repeated when you return to a square, which should cause the same response (unless we maintain some internal model of the world)

Representing change Representing change in the world in logic can be tricky One way is just to change the KB Add and delete sentences from the KB to reflect changes How do we remember the past, or reason about changes? Situation calculus is another way A situation is a snapshot of the world at some instant in time When the agent performs action A in situation S1, the result is a new situation S2.

Situations

Situation calculus A situation is a snapshot of the world at an interval of time during which nothing changes w.r.t a particular situation Add situation variables to every predicate. at(Agent,1,1) becomes at(Agent,1,1,s0): at(Agent,1,1) is true in situation (i.e., state) s0 Or, add a special 2nd-order predicate, holds(f,s), meaning “f is true in situation s”, e.g., holds(at(Agent,1,1),s0) Add a new function, result(a,s), mapping situation s into a new situation as a result of performing action a. E.g., result(forward, s) is a function returning next situation Example: The action agent-walks-to-location-y could be represented by (x)(y)(s) (at(Agent,x,s)  onbox(s))  at(Agent,y,result(walk(y),s))

Deducing hidden properties From the perceptual information we obtain in situations, we can infer properties of locations l,s at(Agent,l,s)  Breeze(s)  Breezy(l) l,s at(Agent,l,s)  Stench(s)  Smelly(l) Neither Breezy nor Smelly need situation arguments because pits and Wumpuses do not move around

Deducing hidden properties II We need to write rules relating various aspects of a single world state (as opposed to across states) There are two main kinds of such rules: Causal rules reflect assumed direction of causality in the world: (l1,l2,s) At(Wumpus,l1,s)  Adjacent(l1,l2)  Smelly(l2) ( l1,l2,s) At(Pit,l1,s)  Adjacent(l1,l2)  Breezy(l2) Systems that reason with causal rules are model-based reasoning systems Diagnostic rules infer presence of hidden properties directly from the percept-derived information, e.g. ( l,s) At(Agent,l,s)  Breeze(s)  Breezy(l) ( l,s) At(Agent,l,s)  Stench(s)  Smelly(l)

Representing change: frame problem Frame axioms: If property x doesn’t change as a result of applying action a in state s, then it stays the same. On (x, z, s)  Clear (x, s)  On (x, table, Result(Move(x, table), s))  On(x, z, Result (Move (x, table), s)) On (y, z, s)  y x  On (y, z, Result (Move (x, table), s)) The proliferation of frame axioms becomes very cumbersome in complex domains

The frame problem II Successor-state axiom: General statement that characterizes every way in which a particular predicate can become true: Either it can be made true, or it can already be true and not be changed: On (x, table, Result(a,s))  [On (x, z, s)  Clear (x, s)  a = Move(x, table)] v [On (x, table, s)  a  Move (x, z)] In complex worlds, where you want to reason about longer chains of action, even these types of axioms are too cumbersome Planning systems use special-purpose inference methods to reason about the expected state of the world at any point in time during a multi-step plan

Qualification problem How can you characterize every effect of an action, or every exception that might occur? When I put my bread into the toaster, and push the button, it will become toasted after two minutes, unless… The toaster is broken, or… The power is out, or… I blow a fuse, or… A neutron bomb explodes nearby and fries all electrical components, or… A meteor strikes the earth, and the world we know it ceases to exist, or…

Ramification problem It’s nearly impossible to characterize every side effect of every action, at every possible level of detail When I put my bread into the toaster, and push the button, the bread will become toasted after two minutes, and… The crumbs that fall off the bread onto the bottom of the toaster over tray will also become toasted, and… Some of the those crumbs will become burnt, and… The outside molecules of the bread will become “toasted,” and… The inside molecules of the bread will remain more “breadlike,” and… The toasting process will release a small amount of humidity into the air because of evaporation, and… The heating elements will become a tiny fraction more likely to burn out the next time I use the toaster, and… The electricity meter in the house will move up slightly, and…

Knowledge engineering! Modeling the right conditions and the right effects at the right level of abstraction is very difficult Knowledge engineering (creating and maintaining KBs for intelligent reasoning) is an entire field of investigation Many hope that automated knowledge acquisition and machine learning tools can fill the gap: Our intelligent systems should be able to learn about the conditions and effects, just like we do! Our intelligent systems should be able to learn when to pay attention to, or reason about, certain aspects of processes, depending on the context!

Preferences among actions A problem with the Wumpus world KB described so far is that it’s difficult to decide which action is best among a number of possibilities For example, to decide between a forward and a grab, axioms describing when it is OK to move to a square would have to mention glitter This is not modular! We can solve this problem by separating facts about actions from facts about goals This way our agent can be reprogrammed just by asking it to achieve different goals

Preferences among actions The first step is to describe the desirability of actions independent of each other. In doing this we will use a simple scale: actions can be Great, Good, Medium, Risky, or Deadly Obviously, the agent should always do the best action it can find: (a,s) Great(a,s)  Action(a,s) (a,s) Good(a,s)  (b) Great(b,s)  Action(a,s) (a,s) Medium(a,s)  ((b) Great(b,s)  Good(b,s))  Action(a,s) ...

Preferences among actions Use this action quality scale in the following way Until it finds the gold, basic agent strategy is: Great actions include picking up the gold when found and climbing out of the cave with the gold Good actions include moving to a square that’s OK and hasn't been visited yet Medium actions include moving to a square that is OK and has already been visited Risky actions include moving to a square that is not known to be deadly or OK Deadly actions are moving into a square that is known to have a pit or a Wumpus

Goal-based agents Once the gold is found, we must change strategies. So now we need a new set of action values. We could encode this as a rule: (s) Holding(Gold,s)  GoalLocation([1,1]),s) We must now decide how the agent will work out a sequence of actions to accomplish the goal Three possible approaches are: Inference: good versus wasteful solutions Search: make a problem with operators and set of states Planning: to be discussed later

Coming up next Logical inference Knowledge representation Planning