0% found this document useful (0 votes)
57 views59 pages

02 - Agent Models and Stated Based Search

This document discusses problem solving using state space representations. It describes how agents and environments can be modeled as state spaces, with states, operators/actions, start states, and goal states. Rational agents are defined as selecting actions that are expected to maximize their performance measure. The document uses examples like traveling in Romania to illustrate state space formulations of problems, where the goal is to search the state space to find a path from the initial state to a goal state.

Uploaded by

milanialfredo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views59 pages

02 - Agent Models and Stated Based Search

This document discusses problem solving using state space representations. It describes how agents and environments can be modeled as state spaces, with states, operators/actions, start states, and goal states. Rational agents are defined as selecting actions that are expected to maximize their performance measure. The document uses examples like traveling in Romania to illustrate state space formulations of problems, where the goal is to search the state space to find a path from the initial state to a goal state.

Uploaded by

milanialfredo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 59

Lecture 2: Problem Solving using

State Space Representations

Alfredo Milani
Overview

• Characteristics of agents and environments

• Problem-solving agents where search consists of


– state space
– operators
– start state
– goal states

• Abstraction and problem formulation

• Search trees: an effective way to represent the search process

• Reading: chapter 2 and chapter 3.1, 3.2, 3.3

• Homework 1 will be announced shortly


Agents

• An agent is anything that can be viewed as perceiving its


environment through sensors and acting upon that
environment through actuators

Human agent:
eyes, ears, and other organs for sensors;
hands, legs, mouth, and other body parts for
actuators

Robotic agent:
cameras and infrared range finders for sensors; various motors
for actuators
Agents and environments

• The agent function maps from percept histories to


actions:
[f: P*  A]

• The agent program runs on the physical architecture to


produce f

• agent = architecture + program


Vacuum-cleaner world

• Percepts: the current location and cleanliness of the


environment in the current location, e.g., [A,Dirty],
[A,Clean], [B,Dirty]

• Actions: Left, Right, Suck, NoOp


Rational agents
• Performance measure: An objective criterion for success of
an agent's behavior, e.g.,
– Robot driver?
– Chess-playing program?
– Spam email classifier?

• Rational Agent: selects actions that is expected to


maximize its performance measure,
– given percept sequence
– given agent’s built-in knowledge

– sidepoint: how to maximize expected future performance,


given only historical data
Rational agents
• Rationality is distinct from omniscience (all-knowing
with infinite knowledge)

• Agents can perform actions in order to modify future


percepts so as to obtain useful information (information
gathering, exploration)

• An agent is autonomous if its behavior is determined


by its own percepts & experience (with ability to learn
and adapt) without depending solely on built-in
knowledge
Agents Features & Task Environment

• Before we design an intelligent agent, we must specify


its “task environment” features and the available sensors
and actuators:

PEAS:
• Performance measure
• Environment
• Actuators
• Sensors

Then we need to abstract the elements modeling the agent


PAGE:
• Percepts, obtained from sensors
• Actions, realized by actuators
• Goal, which can be Boolean and/or measured by the
performance
• Environment
PEAS

• Example: Agent = robot car driver in DARPA


Challenge

– Performance measure:
• Time to complete course

– Environment:
• Roads, other traffic, obstacles

– Actuators:
• Steering wheel, accelerator, brake, signal, horn

– Sensors:
• Optical cameras, lasers, sonar, accelerometer,
speedometer, GPS, odometer, engine sensors,
PEAS

• Example: Agent = Medical diagnosis system

Performance measure:
Healthy patient, minimize costs, lawsuits

Environment:
Patient, hospital, staff

Actuators:
Screen display (questions, tests, diagnoses, treatments,
referrals)

Sensors:
Keyboard (entry of symptoms, findings, patient's answers)
Environment types

• Fully observable (vs. partially observable):


– An agent's sensors give it access to the complete state of
the environment at each point in time.

• Deterministic (vs. stochastic):


– The next state of the environment is completely
determined by the current state and the action executed by
the agent.
– If the environment is deterministic except for the actions of
other agents, then the environment is strategic
– Deterministic environments can appear stochastic to an
agent (e.g., when only partially observable)

• Episodic (vs. sequential):


– An agent’s action is divided into atomic episodes. Decisions
do not depend on previous decisions/actions.
Environment types

• Static (vs. dynamic):


– The environment is unchanged while an agent is
deliberating.
– The environment is semidynamic if the environment itself
does not change with the passage of time but the agent's
performance score does

• Discrete (vs. continuous):


– A discrete set of distinct, clearly defined percepts and
actions.
– How we represent or abstract or model the world

• Single agent (vs. multi-agent):


– An agent operating by itself in an environment. Does the
other agent interfere with my performance measure?
task observable deterministic/ episodic/ static/ discrete/ agents
environm. stochastic sequential dynamic continuous

crossword fully determ. sequential static discrete single


puzzle

chess with fully strategic sequential semi discrete multi


clock

poker

taxi partial stochastic sequential dynamic continuous multi


driving
medical
diagnosis

image fully determ. episodic semi continuous single


analysis

partpicking partial stochastic episodic dynamic continuous single


robot

refinery partial stochastic sequential dynamic continuous single


controller

interact. partial stochastic sequential dynamic discrete multi


tutor
What is the environment for the DARPA Challenge?

• Agent = robotic self-driven vehicle

• Environment = 130-mile route through desert


– Observable?
– Deterministic?
– Episodic?
– Static?
– Discrete?
– Agents?
Agent types
• Basic types in order of increasing generality:

– Simple reflex agents (if-then rules based on


percept)

– State Model-based reflex agents (if-then rules


based on percept history and model)

– Goal-based agents
• Problem-solving agents

– Utility-based agents
• Can distinguish between different goals
• Implicit goals

Others types
– Learning agents
– Multiagents
– Distributed coordinating agents …..
Agent types: Simple Reflex Agent

No history, no memory
Agent types: Reflex Agent with State

Model of “How world evolves”


Agent types: Goal based Agent

Model of how world evolves


Goal: problem solving agent
Agent types: Utility based Agent
Problem Solving Agents
• Intelligent agents can solve problems by searching a state-
space

• State-space Model
– the agent’s model of the world
– usually a set of discrete states
– e.g., in driving, the states in the model could be towns/cities

• Goal State(s)
– a goal is defined as a desirable state for an agent
– there may be many states which satisfy the goal test
• e.g., drive to a town with a ski-resort
– or just one state which satisfies the goal
• e.g., drive to Mammoth

• Operators (actions, successor function)


– operators are legal actions which the agent can take to move from
one state to another
– actions are instances of operators
Problem Solving Agents

S ≡ States an approximate representation of the world

A ≡ Actions/Operators a A a: SS
(a is executable in some states Ea S)

G ≡ set of goal states

P ≡ Problems ≡ (s0, A, G) con s0  S and G S

S ≡ Solution ≡ (a0, a1 , … , ak-1) a sequence of actions


if s0Ea0 (a0 is executable in s0 ) and a0(s0)=s1
and siEai (ai is executable in si) and ai(si)=si+1
and sk G
State Space

• Space of the States reachable from a state s0 by executing actions


• A graph with actions function a  A defining recheability among states
• Problem solving ≡ searching paths in the state space from initial state s0 toward a
goal state sg , sequences of actions in a solution are sequences of labels in the path

• Optimizing the solution with respect to a criteria (e.g. shortest path, minimum cost,
highest payoff etc.)

s4 s17
s24 s18
s5 s19
s1
s6 s3
s7 s22
s2 s21
s0 sg s20
s9 s15
s3 s16
s10 s12
s11 s13
Initial Simplifying Assumptions

• Environment is static
– no changes in environment while problem is being solved

• Environment is observable

• Environment and actions are discrete


– (typically assumed, but we will see some exceptions)

• Environment is deterministic
Example: Traveling in Romania

• On holiday in Romania; currently in Arad


• Flight leaves tomorrow from Bucharest

• Formulate goal:
– be in Bucharest

• Formulate problem:
– states: various cities, a single state: to be in a city X
– actions/operators: drive between cities, e.g. drive from X to Y, one
action for each directed arc on the map

• Find solution
– By searching through states to find a goal
– sequence of drive action between cities, e.g., Arad, Sibiu, Fagaras,
Bucharest

• Execute path that lead to a solution


Example: Traveling in Romania
State-Space Problem Formulation

A problem is defined by four items:

1. initial state e.g., "at Arad“

2. actions or successor function


S(x) = set of action–state pairs
e.g., S(Arad) = {<Arad  Zerind, Zerind>, … }

3. goal test (or set of goal states)


e.g., x = "at Bucharest”, Checkmate(x)

4. path cost (additive)


e.g., sum of distances, number of actions executed, etc.
c(x,a,y) is the step cost, assumed to be ≥ 0

A solution is a sequence of actions leading from the


initial state to a goal state, also called a solution plan
Example: Formulating the Navigation Problem

• Set of States
– individual cities
– e.g., Irvine, SF, Las Vegas, Reno, Boise, Phoenix, Denver

• Operators
– freeway routes from one city to another
– e.g., Irvine to SF via 5, SF to Seattle, etc

• Start State
– current city where we are, Irvine

• Goal States
– set of cities we would like to be in
– e.g., cities which are closer than Irvine

• Solution
– a specific goal city, e.g., Boise
– a sequence of operators which get us there,
• e.g., Irvine to SF via 5, SF to Reno via 80, etc
Abstraction

• Definition of Abstraction:
Process of removing irrelevant detail to create an abstract
representation: ``high-level”, ignores irrelevant details

• Navigation Example: how do we define states and operators?


– First step is to abstract “the big picture”
• i.e., solve a map problem
• nodes = cities, links = freeways/roads (a high-level
description)
• this description is an abstraction of the real problem
– Can later worry about details like freeway onramps, refueling, etc

• Abstraction is critical for automated problem solving


– must create an approximate, simplified, model of the world for the
computer to deal with: real-world is too detailed to model exactly
– good abstractions retain all important details
Selecting a State Space Model
The State-Space Graph

• Graphs:
– nodes, arcs, directed arcs, paths

• Search graphs:
– States are nodes
– operators are directed arcs
– solution is a path from start S to goal G

• Problem formulation:
– Give an abstract description of states, operators, initial state
and goal state.

• Problem solving:
– Generate a part of the search space that contains a solution
The Traveling Salesperson Problem

• Find the shortest tour that visits all cities without visiting any city
twice and return to starting point.
• State: sequence of cities visited
• S0 = A
C

B
A D
F

• G = a complete tour E
Example: 8-queens problem
State-Space problem formulation

• states? -any arrangement of n<=8 queens


-or arrangements of n<=8 queens in leftmost n
columns, 1 per column, such that no queen
attacks any other.

• initial state? no queens on the board

• actions? -add queen to any empty square


-or add queen to leftmost empty square such
that it is not attacked by other queens.

• goal test? 8 queens on the board, none attacked.

• path cost? 1 per move


Vacuum World State Space Graph
Example: Robot Assembly

• States

• Initial state

• Actions

• Goal test

• Path Cost
Example: Robot Assembly

• States: configuration of robot (angles, positions) and object parts

• Initial state: any configuration of robot and object parts

• Actions: continuous motion of robot joints

• Goal test: object assembled?

• Path Cost: time-taken or number of actions


Learning a spam email classifier

• States

• Initial state

• Actions

• Goal test

• Path Cost
Learning a spam email classifier

• States: settings of the parameters in our model

• Initial state: random parameter settings

• Actions: moving in parameter space

• Goal test: optimal accuracy on the training data

• Path Cost: time taken to find optimal parameters

(Note: this is an optimization problem – many machine learning


problems can be cast as optimization)
Example: 8-puzzle

• states?

• initial state?

• actions?

• goal test?

• path cost?
Example: 8-puzzle

• states? locations of tiles

• initial state? given

• Actions? Different representation, different number of action


– move each tile: left, right, up, down Total: 32 actions
– move blank: left, right, up, down Total: 4 actions

• goal test? goal state (given)

• path cost? 1 per move


A Water Jug Problem

• You have a 4-gallon


and a 3-gallon water
jug

• You have a faucet with


an unlimited amount drain
of water
• You can empty into the
drain any jug
• You need to get
exactly 2 gallons in 4-
gallon jug
Puzzle-solving as Search

• State representation: (x, y)


– x: Contents of four gallon
– y: Contents of three gallon

• Start state: (0, 0)

• Goal state (2, n)

• Operators
– Fill 3-gallon from faucet, fill 4-gallon from faucet
– Fill 3-gallon from 4-gallon , fill 4-gallon from 3-gallon
– Empty 3-gallon into 4-gallon, empty 4-gallon into 3-gallon
– Dump 3-gallon down drain, dump 4-gallon down drain
Production Rules for the Water Jug Problem

1 (x,y)  (4,y) Fill the 4-gallon jug


if x < 4

2 (x,y)  (x,3) Fill the 3-gallon jug


if y < 3

3 (x,y)  (x – d,y) Pour some water out of the 4-gallon jug


if x > 0

4 (x,y)  (x,y – d) Pour some water out of the 3-gallon jug


if x > 0
Empty the 4-gallon jug on the ground
5 (x,y)  (0,y)
if x > 0
Empty the 3-gallon jug on the ground
6 (x,y)  (x,0)
if y > 0

7 (x,y)  (4,y – (4 –x)) Pour water from the 3-gallon jug into the 4-
if x + y ≥ 4 and y > 0 gallon jug until the 4-gallon jug is full
The Water Jug Problem (cont’d)

8 (x,y)  (x – (3 – y),3) Pour water from the 4-gallon jug into the 3-
if x + y ≥ 3 and x > 0 gallon jug until the 3-gallon jug is full

9 (x,y)  (x + y, 0) Pour all the water from the 3-gallon jug into
if x + y ≤ 4 and y > 0 the 4-gallon jug

10 (x,y)  (0, x + y) Pour all the water from the 4-gallon jug into
if x + y ≤ 3 and x > 0 the 3-gallon jug
One Solution to the Water Jug Problem

Gallons in the 4- Gallons in the 3- Rule Applied


Gallon Jug Gallon Jug

0 0 2

0 3 9

3 0 2

3 3 7

4 2 5

0 2 9

2 0
Generalizing the Water Jug Problem

• Assume to have N jugs of different capacity and different initial


configurations
• Assume that the goal can be specified
• Calculating a complete table for a table-driven agent is
intractable then a more complex problem solving search is
required
Tree-based Search

• Basic idea:
– Exploration of state space by generating successors of already-
explored states (a.k.a. expanding states).

– Every state is evaluated: is it a goal state?

• In practice, the solution space can be a graph, not a tree


– E.g., 8-puzzle
– More general approach is graph search
– Tree search can end up repeatedly visiting the same nodes
• Unless it keeps track of all nodes visited
• …but this could take vast amounts of memory
Tree search example
Tree search example
Tree search example
Tree search example

This “strategy” is
what differentiates
different search
algorithms
States versus Nodes

• A state is a (representation of) a physical configuration

• A node is a data structure constituting part of a search tree contains info


such as: state, parent node, action, path cost g(x), depth

• The Expand function creates new nodes, filling in the various fields and
using the SuccessorFn of the problem to create the corresponding states.
State Spaces versus Search Trees

• State Space
– Set of valid states for a problem
– Linked by operators
– e.g., 20 valid states (cities) in the Romanian travel problem

• Search Tree
– Root node = initial state
– Child nodes = states that can be visited from parent
– Note that the depth of the tree can be infinite
• E.g., via repeated states
– Partial search tree
• Portion of tree that has been expanded so far
– Fringe
• Leaves of partial search tree, candidates for expansion

Search trees = data structure to search state-space


Search Tree for the 8 puzzle problem
Search Strategies

• A search strategy is defined by picking the order of node


expansion

• Strategies are evaluated along the following dimensions:


– completeness: does it always find a solution if one exists?
– time complexity: number of nodes generated
– space complexity: maximum number of nodes in memory
– optimality: does it always find a least-cost solution?

• Time and space complexity are measured in terms of


– b: maximum branching factor of the search tree
– d: depth of the least-cost solution
– m: maximum depth of the state space (may be ∞)
Why Search can be hard

Assuming b=10, 1000 nodes/sec, 100 bytes/node

Depth of Nodes to
Solution Expand Time Memory

0 1 1 millisecond 100 bytes

2 111 0.1 seconds 11 kbytes

4 11,111 11 seconds 1 megabyte

8 108 31 hours 11 giabytes

12 1012 35 years 111 terabytes


Next Topics

• Uninformed search
– Breadth-first, depth-first
– Uniform cost
– Iterative deepening

• Informed (heuristic) search


– Greedy best-first
– A*
– Memory-bounded heuristic search
– And more….

• Local search and optimization


– Hill-climbing
– Simulated annealing
– Genetic algorithms
Summary

• Characteristics of agents and environments

• Problem-solving agents where search consists of


– state space
– operators
– start state
– goal states
– Solutions: sequences of action instantiations

• Abstraction and problem formulation

• Search trees: an effective way to represent the search process

• Reading: chapter 2 and chapter 3.1, 3.2, 3.3

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy