0% found this document useful (0 votes)
82 views23 pages

Problem Solving Ai

The document describes a problem-solving agent that uses a search algorithm to solve problems by formulating goals and finding solutions. The agent (1) senses the environment and formulates a goal, (2) formulates the problem as an initial state, actions, and transition model, and (3) searches for a solution by expanding nodes in a search tree until finding a path of actions from the initial state to a goal state. The document outlines components of well-defined problems, search tree structures, search strategies, and performance measures for search algorithms.

Uploaded by

Kane Williamson
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)
82 views23 pages

Problem Solving Ai

The document describes a problem-solving agent that uses a search algorithm to solve problems by formulating goals and finding solutions. The agent (1) senses the environment and formulates a goal, (2) formulates the problem as an initial state, actions, and transition model, and (3) searches for a solution by expanding nodes in a search tree until finding a path of actions from the initial state to a goal state. The document outlines components of well-defined problems, search tree structures, search strategies, and performance measures for search algorithms.

Uploaded by

Kane Williamson
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/ 23

Problem-Solving Agent

sensors

?
environment
agent

actuators
Problem-Solving Agent

sensors

?
environment
agent

actuators
• Formulate Goal
• Formulate Problem
• States
• Actions
• Find Solution
Example Problem

Start Street

Street with
Parking
Looking for Parking
• Going home; need to find street parking
• Formulate Goal:
Car is parked
• Formulate Problem:
States: street with parking and car at that street
Actions: drive between street segments
• Find solution:
Sequence of street segments, ending with a street with parking
Problem Formulation

Start Street Search


Path

Street with
Parking
Problem-solving agent
• Problem-solving agent
• A kind of goal-based agent
• It solves problem by
• finding sequences of actions that lead to desirable states (goals)
• To solve a problem,
• the first step is the goal formulation, based on the current situation
Goal formulation
• The goal is formulated
• as a set of world states, in which the goal is
satisfied
• Reaching from initial state  goal state
• Actions are required
• Actions are the operators
• causing transitions between world states
• Actions should be abstract enough at a certain
degree, instead of very detailed
• E.g., turn left VS turn left 30 degree, etc.
Problem formulation
• The process of deciding
• what actions and states to consider
• E.g., driving Amman  Zarqa
• in-between states and actions defined
• States: Some places in Amman & Zarqa
• Actions: Turn left, Turn right, go straight, accelerate & brake,
etc.
Search
• Because there are many ways to achieve
the same goal
• Those ways are together expressed as a tree
• Multiple options of unknown value at a point,
• the agent can examine different possible sequences
of actions, and choose the best
• This process of looking for the
best sequence is called search
• The best sequence is then a list
of actions, called solution
Search algorithm
• Defined as
• taking a problem
• and returns a solution
• Once a solution is found
• the agent follows the solution
• and carries out the list of actions – execution
phase
• Design of an agent
• “Formulate, search, execute”
Well-defined problems and
solutions
A problem is defined by 5
components:
• Initial state
• Actions
• Transition model or
(Successor functions)
• Goal Test.
• Path Cost.
Well-defined problems and
solutions
• A problem is defined by 4 components:
• The initial state
• that the agent starts in
• The set of possible actions
• Transition model: description of what each
action does.
(successor functions): refer to any state
reachable from given state by a single action
• Initial state, actions and Transition model define
the state space
• the set of all states reachable from the initial state by
any sequence of actions.
• A path in the state space:
• any sequence of states connected by a sequence of
actions.
Assumptions in Basic Search
• The environment is static
• The environment is discretizable
• The environment is observable
• The actions are deterministic
Simple Agent Algorithm
Problem-Solving-Agent
1. initial-state  sense/read state
2. goal  select/read goal
3. successor  select/read action models
4. problem  (initial-state, goal, successor)
5. solution  search(problem)
6. perform(solution)
Basic Search Concepts
• Search tree
• Search node
• Node expansion
• Search strategy: At each stage it determines which
node to expand
Search Tree: Node Data Structure

• STATE • A node is having five components:


• STATE: which state it is in the state space
• PARENT • PARENT-NODE: from which node it is generated
• ACTION • ACTION: which action applied to its parent-node to
generate it
• COST • PATH-COST: the cost, g(n), from initial state to the
node n itself
• DEPTH • DEPTH: number of steps along the path from the
initial state
Search tree
• A node is having five components:
• STATE: which state it is in the state space
• PARENT-NODE: from which node it is generated
• ACTION: which action applied to its parent-node to
generate it
• PATH-COST: the cost, g(n), from initial state to the
node n itself
• DEPTH: number of steps along the path from the
initial state
Fringe
• Set of search nodes that have not been expanded yet
• Implemented as a queue FRINGE
• INSERT(node,FRINGE)
• REMOVE(FRINGE)
• The ordering of the nodes in FRINGE defines the search
strategy
Search Algorithm
1. If GOAL?(initial-state) then return initial-state
2. INSERT(initial-node,FRINGE)
3. Repeat:
If FRINGE is empty then return failure
n  REMOVE(FRINGE)
s  STATE(n)
For every state s’ in SUCCESSORS(s)
 Create a node n’
 If GOAL?(s’) then return path or goal state
 INSERT(n’,FRINGE)
Search Strategies
• A strategy is defined by picking the order of node expansion
• Performance Measures:
• Completeness – does it always find a solution if one exists?
• Time complexity – number of nodes generated/expanded
• 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 ∞)
Measuring problem-solving
performance
• For effectiveness of a search algorithm
• we can just consider the total cost
• The total cost = path cost (g) of the solution
found + search cost
• search cost = time necessary to find the solution
• Tradeoff:
• (long time, optimal solution with least g)
• vs. (shorter time, solution with slightly larger
path cost g)

You might also like