You are on page 1of 30

Informed Search Algorithms -

II
ITERATIVE DEEPENING A*
RECURSIVE BEST FIRST SEARCH
MEMORY BOUNDED A*
SIMPLIFIED MEMORY BOUNDED A*
Memory Bounded Heuristic Search
• There are, however, algorithms that overcome the
space problem without sacrificing optimality or
completeness, at a small cost in execution time.
• IDA* - Iterative Deepening A*
• Recursive Best First Search
• MA* - Memory Bounded A*
• Simplified Memory Bounded A*
Iterative Deepening A*
https://www.slideshare.net/hemak15/lecture-17-iterative-deepening-a-star-algorithm
Recursive Best First Search
• Mimics BFS in linear
spaces
• Uses a variable f_limit
to keep track of the
f_value of the best
alternative path from
the ancestor
380
node
s.f= 449
374

366
253
node.f = 366
s.f=393
best

329
s.f= 447
alternate
380
s.F = 671
node
s.f= 449
374

366
253 alternative
s.F = 646 447
node.f=393
176 s.F = 415

329 193
s.f = 413
best
380

374

node
366
253
s.F = 553
176

329 415 193


node.f = 413 100

s.F = 417
best

160
s.F = 526
Less than f_limit (415) – returns failure and updates f of best
380
s.F = 671
node

374

366
253 alternative
s.F = 646 447
node.f=393
176 s.F = 415
193
329
s.f = 417 min(417, 447)
best
380
s.F = 671
node

374

366
253 best
s.F = 646 447
node.f=393
176 s.F = 415

329 193
s.f = 417
alternative
380

374 node

s.F = 591
366
253 417

176 node.F = 415

329 193

Best
s.F = 450

> f_limit (417)


380
s.F = 671
node
s.f= 449
374

366
253 alternative
s.F = 646 447
node.f=393
176 s.F = 447 min(450,447)

329 193
s.f = 417
best
380

374

node
366
253
s.f=553
176

329 447
node.f = 417 193 100
best

s.F = 417
best
160

s.F = 526
alternative
380

374

366
253
node
176

329 s.F = 607


193
100
best 447
node.F = 417
0

s.f= 418
best
160
s.F = 615
Problems with IDA* and Recusrive Best First
Search
• Using of too little memory
• Algorithms that utilizes the available memory
• Memory Bounded A*
• Simplified Memory Bounded A*
• Expand Best leaf till memory is full
• Once Expands best leaf and deletes worst leaf after backing up the cost as in Recursive
Best First Search which is restored when the paths in memory have cost higher than the
deleted sub tree
• When costs of leaf nodes are same the oldest leaf is deleted and newest is expanded
Example 2
• Demonstrate the
search tree
constructions for
Best First Search,
Recursive Best First
Search to find the
path from Drobeta
to Bucharest using
the heuristic given in
Slide 5
Best First Search
Path cost = 120+138+101
=359

193

100
241
0

242
160
Best First Search – Search Tree

Drobeta

Craiova
Pitest Mehadia
Drobeta Rimnicu
Vilcea

Craiova Rimnicu Bucharest


Vilcea
Recursive Best First Search

Drobeta

g = 120 Craiova 316 g = 75


best h = 160 Mehadia h = 241
alternative
f = g + h = 280 f = g+h = 316

Drobeta Rimnicu Vilcea 459


Pitesti
g = 120+120 = 240 Alternative
Best
h= 242 g=120+146=266
g = 120+138=258
f= 482 h=193
h = 100
f = 459
f = 358
548
Bucharest Best
g=258+138=396 Craiova
h=160 g = 258+101=359
Rimnicu Vilcea
f = 556 h=0
g=258+97=355 f = 359
h=193
Alternative f = 548
Recursive Best First Search

Drobeta

g = 120 Craiova 316 g = 75


best h = 160 Mehadia h = 241
alternative
f = g + h = 280 f = g+h = 316

Drobeta Rimnicu Vilcea 459


Pitesti
g = 120+120 = 240 Alternative
Best
h= 242 g=120+146=266
g = 120+138=258
f= 482 h=193
h = 100
f = 459
f = 358
548
Bucharest Best
g=258+138=396 Craiova
h=160 g = 258+101=359
Rimnicu Vilcea
f = 556 h=0
g=258+97=355 f = 359
h=193
Alternative f = 548

Drobeta
∞ g = 120 Craiova g = 75
Drobeta h = 160 Mehadia h = 241
f = g + h = 280 f = g+h = 316
Designing the heuristic function
Exercise
• Demonstrate
informed search
algorithms for
the given graph

You might also like