artificial intelligence lecture : heuristic search-i ghulam irtaza sheikh– dept cs-bzu adapted...

Post on 26-Mar-2015

225 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Artificial Intelligence

Lecture : Heuristic Search-I

Ghulam Irtaza Sheikh– Dept CS-BZU

Adapted from original course material & others

Today

Hill-climbing

Heuristic search algorithm

Heuristic Evaluation Function

“A commonsense rule (or set of rules) intended to increase the probability of solving some problem”

Heuristic

Heuristics

Rules for choosing paths in a state space that most likely lead to an acceptable problem solution

Purpose Reduce the search space

Reasons May not have exact solutions, need approximations Computational cost is too high

Fallible

First three levels of the tic-tac-toe state space reduced by symmetry

The “most wins” heuristic applied to the first children in tic-tac-toe

Heuristically reduced state space for tic-tac-toe

Today

Hill-climbing

Heuristic search algorithm

Heuristic Evaluation Function

Hill-Climbing Analog

Go uphill along the steepest possible path until no farther up

Principle Expand the current state of the search and evaluate

its children Select the best child, ignore its siblings and parent No history for backtracking

Problem Local maxima – not the best solution

The local maximum problem for hill-climbing with 3-level look ahead

Today

Hill-climbing

Heuristic search algorithm

Heuristic Evaluation Function

The Best-First Search

Also heuristic search – use heuristic (evaluation) function to select the best state to explore

Can be implemented with a priority queue Breadth-first implemented with a queue Depth-first implemented with a stack

Best-First Search

Best-First / Greedy Search

Expand the node that seems closest…

What can go wrong?

Best-First / Greedy Search A common case:

Best-first takes you straight to the goal on a wrong path

Worst-case: like a badly-guided DFS in the worst case Can explore everything Can get stuck in loops if

no cycle checking

Like DFS in completeness (finite states w/ cycle checking)

…b

…b

Best First Search

Algorithm Complete Optimal Time SpaceGreedy Best-First Search

What do we need to do to make it complete? Can we make it optimal?

Y* N O(bm) O(bm)

…b

m

The best-first search algorithm

Heuristic search of a hypothetical state space

A trace of the execution of best-first-search

Heuristic search of a hypothetical state space with open and closed states highlighted

Today

Hill-climbing

Heuristic search algorithm

Heuristic Evaluation Function

Heuristic Evaluation Function

Heuristics can be evaluated in different ways 8-puzzle problem

Heuristic 1: count the tiles out of places compared with the goal state

Heuristic 2: sum all the distances by which the tiles are out of pace, one for each square a tile must be moved to reach its position in the goal state

Heuristic 3: multiply a small number (say, 2) times each direct tile reversal (where two adjacent tiles must be exchanged to be in the order of the goal)

The start state, first moves, and goal state for an example-8 puzzle

Three heuristics applied to states in the 8-puzzle

Heuristic Design

Use the limited information available in a single state to make intelligent choices

Must be its actual performance on problem instances The solution path consists of two parts: from the starting

state to the current state, and from the current state to the goal state

The first part can be evaluated using the known information The second part must be estimated using unknown

information The total evaluation can be

f(n) = g(n) + h(n)g(n) – from the starting state to the current state nh(n) – from the current state n to the goal state

The heuristic f applied to states in the 8-puzzle

State space generated in heuristic search of the 8-puzzle graph

The successive stages of open and closed that generate the graph are:

Open and closed as they appear after the 3rd iteration of heuristic search

Heuristic Design Summary f(n) is computed as the sum of g(n) and h(n)

g(n) is the depth of n in the search space and has the search more of a breadth-first flavor.

h(n) is the heuristic estimate of the distance from n to a goal

The h value guides search toward heuristically promising states

The g value grows to determine h and force search back to a shorter path, and thus prevents search from persisting indefinitely on a fruitless path

top related