solving problems by searching cps 4801-01. outline problem-solving agents example problems basic...

27
Solving Problems by Searching CPS 4801-01

Upload: reynard-casey

Post on 26-Dec-2015

237 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Solving Problems by Searching

CPS 4801-01

Page 2: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Outline• Problem-solving agents• Example problems• Basic search algorithms

Page 3: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Problem-Solving Agents

• Intelligent agents are supposed to maximize their performance measure.o If the agent can adopt a goal and aim at

satisfying it.

Page 4: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Problem-Solving Agents

• “formulate, search , execute” design

Page 5: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Problem-Solving Agents

• Goal formulation, based on the current situation and the agent’s performance measure, is the first step in problem solving.

• Problem formulation is the process of deciding what actions and states to consider, given a goal.

• The process of looking for a sequence of actions that reaches the goal is search.

• Execution phase: once a solution is found, the actions it recommended can be carried out.

Page 6: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Example: Romania• On holiday in Romania; currently in Arad.• Flight leaves tomorrow from Bucharest• Formulate goal: be in Bucharest• Formulate problem:

o states: various citieso action: drive between cities

• Find solution:o sequence of cities: e.g., Arad, Sibiu, Fagaras,

Bucharest

Page 7: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Example: Romania

Page 8: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Problem Formulation• A problem is defined by five components.• Initial state e.g., “at Arad”• Actions (s) {a1, a2, a3, … }

o e.g., {Go(Sibiu), Go(Timisoara), Go(Zerind)}

• Transition model: Result (s,a) s’o e.g., Result(In(Arad), Go(Timisoara)) =

In(Timisoara)

• Goal test (s) T/F e.g., “at Bucharest”• Path cost (sss) n (additive)

o sum of cost of individual steps, e.g., number of miles traveled, number of minutes to get to destination

Page 9: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Example Problems• Toy problems: to illustrate or exercise

various problem-solving methods, given a concise, exact description.

• Real-world problems: tend not to have a single agreed-upon description.

Page 10: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Example: Vacuum World

• states?• initial state?• actions?• transition model?• goal test?• path cost?

Page 11: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

• states? location and dirt, 2*22=8, n*2n

• initial state? any state• actions? Left, Right, Suck (Up, Down)• transition model? • goal test? no dirt at all locations• path cost? 1 per action (0 for NoOp)

Page 12: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Example: The 8-Puzzle

• states?• initial state?• actions?• transition model?• goal test?• path cost?

Page 13: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

• states? A state description specifies the location of the eight tiles and the blank one.

• initial state? any state• actions? movement of the blank space: Left,

Right, Up, Down• transition model? (s,a)s’• goal test? goal state (given)• path cost? 1 per move

Page 14: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

The 8-Queens Problem

• states?• initial state?• actions?• transition model?• goal test?• path cost?

Page 15: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

• states? Any arrangement of 0 to 8 queens • initial state? No queens on the board• actions? Add a queen to any empty square• transition model? Return the board with a

queen added• goal test? 8 queens, none attacked• path cost? no interest

Incremental formulation

Page 16: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

The 8-Queens Problem• 64*63*…*57 ~= 1.8*1014

• A better formation:• states: All possible arrangement of n

queens, one per column in the leftmost n columns, with no queen attacking another. (0<=n<=8)

• actions: Add a queen to any square in the leftmost empty column such that it is not attacked by any other queen.

Page 17: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

• Donald Knuth (1964): starting with the number 4, a sequence of factorial, square root, and floor operation will reach any desired positive integer.

• states? Positive numbers• initial state? 4• actions? Apply factorial, square root, or floor

operation• transition model? definition of the

operations• goal test? desired positive integer• path cost? number of operations

Page 18: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Real-World Problems• Route-finding problem• Touring problems

o e.g., visit every city in the Romania example at least once, starting and ending in Bucharest.

• Traveling salesman problem (TSP)o each city must be visited exactly onceo shortest tour

Page 19: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Tree Search Algorithms

• search tree: initial state as the root, the branches as actions and the nodes as states.

• We expand the current state and generate a new set of states.

• parent node, child nodes• leaf node: a node with no children (frontier)• search strategy: how to choose which state

to expand next• repeated state, redundant paths

Page 20: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Tree Search Example• The initial state

Page 21: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Tree Search Example• After expanding Arad

Page 22: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Tree Search Example• After expanding Sibiu

Page 23: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Graph Search Algorithm

• explored set: remembers every expanded node

• Newly generated nodes that are in the explored set are discarded.

• The frontier separates the explored region and the unexplored region.

Page 24: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Data Structure

• For each node n, • n.State• n.Parent• n.Action: parent generated the node• n.Path-Cost

Page 25: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Data Structure• Frontier: queue

o Empty? (queue) : T/Fo Pop (queue)o Insert (queue)o FIFO, LIFO, priority

• Explored set: hash table

Page 26: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Search Strategies• A search strategy is defined by picking the order

of node expansion• Strategies are evaluated along the following

dimensions:o completeness: does it always find a solution if one

exists?o time complexity: number of nodes generatedo space complexity: maximum number of nodes in

memoryo optimality: does it always find a least-cost solution?

• Time and space complexity are measured in terms of o b: branching factor or maximum number of successors

of any nodeo d: depth of the least-cost solutiono m: maximum length of any path in the state space (may

be ∞)

Page 27: Solving Problems by Searching CPS 4801-01. Outline Problem-solving agents Example problems Basic search algorithms

Uninformed Search Strategies

• Uninformed search strategies use only the information available in the problem definition.

Breadth-first searchUniform-cost searchDepth-first search• Depth-limited search