Intelligent Systems (2II40) C3 Alexandra I. Cristea September 2005
Outline II.Intelligent agents III.Search 1.Uninformed 2.Informed A.Heuristic B.Local C.Online
Iterative deepening search Depth first search with growing depth l l = allowed maximal depth in tree
Iterative deepening search example Arad l = 0
Iterative deepening search example Arad l = 1
Iterative deepening search example l = 1 Arad ZerindSibiuTimisoara
Iterative deepening search example Arad l = 2
Iterative deepening search example l = 2 Arad ZerindSibiuTimisoara
Iterative deepening search example l = 2 AradOradea Arad ZerindSibiuTimisoara
Iterative deepening search example l = 2 Arad SibiuTimisoara OradeaFagarash Ramnicu Valcea
Iterative deepening search example l = 2 Arad Timisoara AradLugoj
Proprieties of iterative deepening search Complete?Complete? Yes (b,d finite) Time?Time? (d+1) + db + (d-1)b 2 + …+ b d = O(b d ) Space?Space? O(bd) Optimal?Optimal? Yes (b,d finite & cost/step=1)
Outline II.Intelligent agents III.Search 1.Uninformed 2.Informed A.Heuristic B.Local C.Online
Uniform cost search Expand least cost node first Implementation: increasing cost order queue = min(cost/step): the smallest step cost
Ex: Romania w. step costs (km)
Uniform cost example Arad
Uniform cost example Arad ZerindSibiuTimisoara
Uniform cost example Arad Sibiu AradOradea Zerind 75+75= = 146 Timisoara AradLugoj = 229
Uniform cost example Arad Sibiu AradOradea Zerind Timisoara AradLugoj AradOradea Ramnicu Valcea Fagarash
Uniform cost example Arad Sibiu AradOradea Zerind Timisoara AradLugoj AradOradea Ramnicu Valcea Fagarash Zerind Sibiu
Uniform cost example Arad Sibiu AradOradea Zerind Timisoara AradLugoj AradOradea Ramnicu Valcea Fagarash Zerind Sibiu
Uniform cost example Arad Sibiu AradOradea Zerind Timisoara AradLugoj AradOradea Ramnicu Valcea Fagarash Zerind Sibiu SibiuPitestiCraiova
Uniform cost example Arad Sibiu AradOradea Zerind Timisoara AradLugoj AradOradea Ramnicu Valcea Fagarash Zerind Sibiu SibiuPitestiCraiova
Properties of uniform cost search Complete?Complete? Yes (b,d finite & cost/step ) Optimal?Optimal? Yes (b,d finite & cost/step ) Time?Time? O(b C*/ ) ( C* : cost optimal solution) Space?Space? O(b C*/ )
III.2. Informed search algorithms
III.2. Informed Search Strategies A. Heuristic –Best-first search Greedy search A* search B. Local –Hill climbing –Simulated annealing –Genetic algorithms
Best first search f(n)f(n) : evaluation function: –desirability of n Implementation: –queue of decreasing desirability
Greedy search f(n) = h(n)f(n) = h(n), h(n): heuristic : distance from n to goal expands n closest to goal admissibleImportant: heuristic should be admissible: –h(n) h*(n), with: –h*(n)= real cost from n to goal
Example Greedy search Map of Romania possible heuristic : h sld (n) = straight_line_distance (n, Bucharest)
Greedy search example Arad 366
Greedy search example 366 Arad ZerindTimisoara Sibiu
Greedy search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash 374
Greedy search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash SibiuBucharest
Properties of Greedy search Complete?Complete? No (could get stuck in loops) Optimal?Optimal? No Time?Time? O(b m ) Space?Space? O(b m )
Homework 3 – part 1 1.Check Dijkstra’s Greedy algorithm and shortly compare! 2.Give 3 recent applications of a (modified) Greedy algorithm. Explain in what consists the application, evtl. the modification, and give your source.
A* search f(n) = g(n) + h(n)f(n) = g(n) + h(n): –g(n) –g(n): real (!!) cost from start to n –h(n) –h(n): heuristic: distance from n to goal NOTE: –considers the whole cost incurred from start to goal at all times !!
A* search example Arad 366
A* search example 366 Arad ZerindTimisoara = Sibiu
A* search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash
A* search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash SibiuCraiovaPitesti
A* search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash SibiuCraiovaPitesti Rm.VilceaCraiova Bucharest
A* search example 366 Arad ZerindTimisoara Arad Sibiu Oradea Ramnicu Valcea Fagarash Sibiu Bucharest SibiuCraiovaPitesti Rm.VilceaCraiova Bucharest
Properties of A* search Complete?Complete? Yes (if # nodes w. f C* finite) Optimal?Optimal? Yes; optimally efficient!! Time?Time? O (b (rel. err. in h) x (length of solution) ) Space?Space? All nodes in memory
Optimality A* Be G optimal goal state (path cost f*) Be G2 suboptimal goal state (local minimum) f(G2) = g(G2) (heuristic zero in goal state) f(G2) > f* (G2 suboptimal) n fringe node on optimal path to G h is admissible : f(n) = g(n) + h(n) g(n) + h*(n) = f*. f(n) f*< f(G2) n will be chosen instead of G2, q.e.d.
Improved A* alg. IDA* = A* + iterative deepening depending on f RBFS = recursive depth first search + remembering value of best ancestor; space=O(bd) MA* = memory bound A* (use of available memo only) SMA* = simple MA* (A*; if memo full, discard worst node, but store f value of children w. parents)
Summary (un-)informed search Uninformed – ‘blind’ –computationally cheaper (heuristic?) Research continues on finding better search –i.e., problem solving algorithms Informed + uninformed: –global search algorithms –exponential time+space ( molecules in universe)
Homework 3 - part 2 3. Read the LAO* paper find the different notations used by the author for the properties of the search algorithm and make a table of equivalences; Describe LAO* in terms of these properties; comment upon dimensions of AI (as in C1) that you find in the LAO* algorithm.LAO* paper
II.2.B. Local Search Greedy local search (hill-climbing) Simulated annealing Genetic algorithms
Homework 3 – part 2 7.Perform steps FAQ 5-6 of the project.