RoutePath Planning Materi Kuliah IF 3051 Strategi Algoritma

  • Slides: 28
Download presentation
Route/Path Planning Materi Kuliah IF 3051 – Strategi Algoritma Teknik Informatika – ITB Oleh:

Route/Path Planning Materi Kuliah IF 3051 – Strategi Algoritma Teknik Informatika – ITB Oleh: Masayu Leylia Khodra

Referensi Materi kuliah IF 3170 Inteligensi Buatan Teknik Informatika ITB, Course Website: http: //kuliah.

Referensi Materi kuliah IF 3170 Inteligensi Buatan Teknik Informatika ITB, Course Website: http: //kuliah. itb. ac. id STEI Teknik Informatika IF 3054 Stuart J Russell & Peter Norvig, Artificial Intelligence: A Modern Approach, 3 rd Edition, Prentice-Hall International, Inc, 2010, Textbook Site: http: //aima. cs. berkeley. edu/ (2 nd edition) Free online course materials | MIT Open. Course. Ware Website: Site: http: //ocw. mit. edu/courses/electrical-engineeringand-computer-science/ Lecture Notes in Informed Heuristic Search, ICS 271 Fall 2008, http: //www. ics. uci. edu/~dechter/courses/ics-271/fall -08/lecture-notes/4. Informed. Heuristic. Search. ppt 2

Route Planning 3

Route Planning 3

Source: Russell’s book Search O 71 151 Z S 99 F 211 75 A

Source: Russell’s book Search O 71 151 Z S 99 F 211 75 A 80 140 R 120 118 T 111 L 70 M 75 97 B P 101 D 146 138 C S: set of cities i. s: A (Arad) g. s: B (Bucharest) Goal test: s = B ? Path cost: time ~ distance 4

Uninformed Search 5

Uninformed Search 5

Breadth-First Search (BFS) Treat agenda as a queue (FIFO) O 71 151 S Z

Breadth-First Search (BFS) Treat agenda as a queue (FIFO) O 71 151 S Z A F 99 211 75 80 140 R 120 118 T 111 L 70 Path: A S F B, Path-cost = 450 M 75 P 97 B 101 Simpul-E D 138 146 C Simpul Hidup A ZA, SA, TA ZA SA, TA, OAZ SA TA, OAZ, OAS, FAS, RAS TA OAZ, OAS, FAS, RAS, LAT OAZ OAS, FAS, RAS, LAT OAS FAS, RAS, LAT FAS RAS, LAT, BASF RAS LAT, BASF, DASR, CASR, P ASR 6 LAT BASF, DASR, CASR, PASR, MATL

Depth-First Search (DFS) Treat agenda as a stack (LIFO) O 71 151 S Z

Depth-First Search (DFS) Treat agenda as a stack (LIFO) O 71 151 S Z A F 99 211 75 80 140 R 120 118 T 111 L 70 M 75 B P 101 D 146 Path: A Z O S F B Path-cost = 607 7 97 138 C Simpul-E Simpul Hidup A ZA, SA, TA ZA OAZ, SA, TA OAZ SAZO, SA, TA SAZO FAZOS, RAZOS, SA, TA FAZOS BAZOSF, RAZOS, SA, TA BAZOSF Solusi ketemu

IDS Z A O 151 71 S F 99 211 75 80 140 R

IDS Z A O 151 71 S F 99 211 75 80 140 R 120 118 T 111 L 70 M 75 97 B P 101 D 146 138 C Depth=0: A: cutoff Depth=1: A ZA, SA, TA ZA: cutoff, SA: cutoff, TA: cutoff Depth=2: A ZA, SA, TA OAZ : cutoff FAS, RAS, TA FAS : cutoff RAS : cutoff LAT : cutoff Depth=3: A ZA, SA, TA OAZ, SA, TA SAZO: cutoff FAS, RAS, TA BASF Stop: B=goal, path: A S F B, path-cost = 450 8

Simpul-E A Uniform Cost Search (UCS) BFS & IDS find path with fewest steps

Simpul-E A Uniform Cost Search (UCS) BFS & IDS find path with fewest steps If steps ≠ cost, this is not relevant (to optimal solution) How can we find the shortest path (measured by sum of distances along path)? O 71 F S 151 Z ZA-75 TA-118, SA-140, OAZ-146 TA-118 SA-140, OAZ-146, LAT-229 SA-140 OAZ-146, RAS-220, LAT-229, FAS 239, OAS-291 OAZ-146 RAS-220, LAT-229, FAS-239, OAS- RAS-220 LAT-229, FAS-239, OAS-291, PASR 317, DASR-340, CASR-366 LAT-229 FAS-239, OAS-291, MATL-299, PASR -317, DASR-340, CASR-366 FAS-239 OAS-291, MATL-299, PASR 317, DASR-340, CASR-366, BASF-450 OAS-291 MATL-299, PASR-317, DASR 340, CASR-366, BASF-450 MATL-299 PASR-317, DASR-340, DATLM 364, CASR-366, BASF-450 PASR-317 DASR-340, DATLM-364, CASR-366, BASRP-418, CASRP-455, BASF-450 DASR-340 DATLM-364, CASR-366, BASRP-418, CASRP-455, BASF-450 DATLM-364 CASR-366, BASRP-418, CASRP-455, BASF-450 CASR-366 BASRP-418, CASRP-455, BASF-450 211 A 80 140 R 120 118 T 111 L 70 M 75 B P 101 D 146 Path: A S R P B Path-cost = 418 9 97 138 C ZA-75, TA-118, SA-140 291 99 75 Simpul Hidup

Informed Search 10

Informed Search 10

Greedy Best-First Search Idea: use an evaluation function f(n) for each node f(n) =

Greedy Best-First Search Idea: use an evaluation function f(n) for each node f(n) = h(n) estimates of cost from n to goal e. g. , h. SLD(n) = straight-line distance from n to Bucharest Greedy best-first search expands the node that appears to be closest to goal Romania with step costs in km 11

Greedy best-first search example 12

Greedy best-first search example 12

Greedy best-first search example 13

Greedy best-first search example 13

Greedy best-first search example 14

Greedy best-first search example 14

Greedy best-first search example 15

Greedy best-first search example 15

Problems with Greedy Best First Search Not complete Get Stuck with Local Minima/ Plateu

Problems with Greedy Best First Search Not complete Get Stuck with Local Minima/ Plateu Irrevocable (not able to be reversed/ changed) Can we incorporate heuristics in systematic search? 16

Heuristic Search Heuristic estimates value of a node promise of a node difficulty of

Heuristic Search Heuristic estimates value of a node promise of a node difficulty of solving the subproblem quality of solution represented by node the amount of information gained f(n)- heuristic evaluation function. 17 depends on n, goal, search so far, domain

A* Search Idea: avoid expanding paths that are already expensive Evaluation function f(n) =

A* Search Idea: avoid expanding paths that are already expensive Evaluation function f(n) = g(n) + h(n) g(n) = cost so far to reach n h(n) = estimated cost from n to goal f(n) = estimated total cost of path through n to 18 goal

A* search example 19

A* search example 19

A* search example 20

A* search example 20

A* search example 21

A* search example 21

A* search example 22

A* search example 22

A* search example 23

A* search example 23

A* search example 24

A* search example 24

A* Special Goal: find a minimum sum-cost path Notation: f(n) estimates the cheapest cost

A* Special Goal: find a minimum sum-cost path Notation: f(n) estimates the cheapest cost solution path that goes through n. c(n, n’) - cost of arc (n, n’) g(n) = cost of current path from start to node n in the search tree. h(n) = estimate of the cheapest cost of a path from n to a goal. Special evaluation function: f = g+h h*(n) is the true cheapest cost from n to a goal. g*(n) is the true shortest path from the start s, to n. If the heuristic function, h always underestimate the true cost (h(n) is smaller than h*(n)), then A* is guaranteed to find an optimal solution admissible; and also has to be 25 consistent

Properties of A* Complete? Yes, unless there are infinitely many nodes with f ≤

Properties of A* Complete? Yes, unless there are infinitely many nodes with f ≤ f(G) Time? Exponential: O(bm) Space? Keep all the nodes in memory: O(bm) Optimal? Yes 26

Branch-and-Bound vs A* As in A*, look for a bound which is guaranteed lower

Branch-and-Bound vs A* As in A*, look for a bound which is guaranteed lower than the true cost Search the branching tree in any way you like Cut off search if cost + bound > best solution found If heuristic is cost + bound, search = best first e. g. depth first (no guarantee), best first then Bn. B = A* Bounds often much more sophisticated 27 e. g. using mathematical programming optimisations

THANK YOU

THANK YOU