Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Pencarian Tanpa Informasi
Pertemuan III Pencarian Tanpa Informasi BFS DFS Uniform Search Iterative Deepening Bidirectional Search
2
Tujuan Instruksional Mahasiswa dapat merancang dan mengkodekan algoritma pencarian: Greedy search BFS DFS Uniform search Iterative deepening search Bidirectional search Mahasiswa dapat menganalisis sebuah algoritma pencarian dari sisi: Kompleksitas waktu Kompleksitas ruang Terminasi algoritma Optimasi
3
Konsep Pencarian Himpunan keadaan Operator dan biaya Keadaan awal
Tes untuk menentukan tujuan tercapai atau tidak
4
Contoh Situasi Pencarian
Anda kehilangan sesuatu di rumah, dan ingin menemukannya.
5
Data Tipe dalam Algoritma Pencarian
List OPEN (Fringe) and CLOSED Graph: Node (State), Arc (Cost) Search Space / Tree
6
General Tree Search
7
The Romania Case
8
Node Representation
9
Evaluasi Strategi Pencarian
Kelengkapan (completeness): apakah dapat diberikan garansi bahwa solusi terdapat dalam ruang pencarian? Optimal (optimality): apakah solusi yang akan didapatkan merupakan kualitas terbaik (hanya memerlukan biaya minimal/ jalur terpendek)? Bagaimana dengan penghitungan biaya pencarian, dikaitkan dengan waktu dan ruang pencarian? Kompleksitas waktu: Waktu yang diperlukan (jumlah simpul yang dibuka) buruk atau sesuai dengan kasus yang terjadi. Kompleksitas ruang: Ruang yang dipakai oleh algoritma, diukur dari ukuran (jumlah) bukaan fringe yang terbentuk.
10
Pendekatan terhadap Algoritma Pencarian
Pencarian exhaustive search (brute force) Pencarian buta (blind search): BFS, DFS Pencarian dengan informasi: heuristik Pencarian dengan batasan (constraints satisfaction) Pencarian saling berlawanan (adversary)
11
Pohon Pencarian Root node Leaf node Branching factor
Deskripsi keadaan Pointer ke parent Kedalaman simpul Operator yang membuka simpul ini Biaya total dari simpul awal sampai simpul ini Root node Leaf node Branching factor Ancestor / descendant Path Level
12
Breadth First Search Ambil fringe sebagai list berisi keadaan awal
Loop if fringe kosong return failure Node remove-first (fringe) if Node is a goal then return jalur dari keadaan awal sampai Node else buka semua suksesor Node, dan (satukan Nodes baru ke dalam fringe) tambahkan Nodes baru ke akhir fringe End Loop
13
Ilustrasi BFS
14
Ilustrasi BFS
15
Ilustrasi BFS
16
Ilustrasi BFS
17
Ilustrasi BFS
18
Ilustrasi BFS
19
Ilustrasi BFS
20
Properti BFS Komplit Optimal Eksponensial
b + b bd = (b(d+1) - 1)
21
Keuntungan dan Kerugian BFS
Keuntungan BFS: Menemukan jalur solusi dengan jalur tersingkat, karena selalu mengambil lebar dari pohon pencarian. Kerugian BFS: Memerlukan ruang dan waktu pencarian yang eksponensial pada kedalaman pencarian.
22
Uniform Cost Search Modifikasi BFS untuk mendapatkan biaya terendah sepanjang jalur pencarian, bukan hanya dilihat dari solusi yang didapat saja. (lowest cost vs. lowest depth) Urutan biaya selalu menaik g(SUCCESSOR(n)) > g(n) g(n) = biaya jalur pencarian dari titik awal sampai node n. Properti dari algoritma pencarian ini adalah: komplit, optimal / admissible, dan exponensial dalam kompleksiatas waktu dan ruang, O(bd).
23
Uniform Cost Search Pada graf di atas, proses pencarian berlangsung sebagai berikut: 1. OPEN S (start) 2. OPEN A, B, C (cost = 1, 5, 15) 3. OPEN B, G, C (cost = 5, 11, 15) 4. OPEN G, G, C (cost = 10, 11, 15) 5. SOLUTION G (path S-B-G)
24
Depth First Search Ambil fringe sebuah list berisi initial state Loop
if fringe is empty return failure Node remove-first(fringe) if Node adalah tujuan then return jalur dari initial state ke Node else buka semua suksesor Node, dan satukan simpul baru ke dalam fringe tambahkan node baru ke depan, sebagai head dalam fringe End Loop
25
Ilustrasi DFS
26
Ilustrasi DFS
27
Ilustrasi DFS
28
Ilustrasi DFS
29
Ilustrasi DFS
30
Properti DFS Kompleksitas waktu O(bd)
Kompleksitas ruang O(bN) tidak komplit N = maksimum depth
31
Depth Limited Search Ambil fringe yang memiliki initial state Loop
if fringe kosong return failure Node remove-first(fringe) if Node adalah tujuan then return jalur dari initial state sampai Node else if kedalaman Node = limit return cutoff else tambahkan node yang baru dibuka ke depan fringe End Loop
32
Depth First Iterative Deepening
33
Ilustrasi DFID
34
Properti DFID Komplit Optimal Kompleksitas waktu: Kompleksitas ruang:
bd + 2b(d-1) db <= bd / (1 - 1/b)2 = O(bd). Kompleksitas ruang: O(bd), seperti DFS
35
Bidirectional Search Jika seandainya ada jalur yang dapat dibalik arah pencariannya, maka sebenarnya pencarian akan dapat dilakukan secara terbalik, satu memulai dari keadaan awal sampai tujuan, yang lainnya memulai dari keadaan akhir / tujuan hingga mencapai keadaan awal.
36
Problem Pencarian Dua ARah
Pencarian dua arah akan berhasil dengan baik, jika ada simpul awal dan akhir yang spesifik (unik). Algoritma ini akan sulit diterapkan, jika ada lebih dari satu simpul tujuan.
37
Properti Pencarian Dua Arah
Kompleksitas waktu dan ruang O(bd/2) Komplit Optimal
38
Perbandingan Strategi Pencarian But
Breadth first Depth first Iterative deepening Bidirectional (if applicable) Time Space Optimum? Complete? bd Yes bN No bd/2
39
Pencarian Dalam Graph Let FRINGE be a list containing the initial state Let CLOSED be initially empty Loop if fringe is empty return failure Node remove-first (FRINGE) if Node is a goal then return the path from initial state to Node else put Node in CLOSED generate all successors of Node S for all nodes m in S if m is not in FRINGE or CLOSED merge m into FRINGE End Loop
40
Pertanyaan state next cost A B 4 C 1 D 3 E 8 2 F 6 G
Diketahui tabel keadaan dan jalur sebagai berikut: state next cost A B 4 C 1 D 3 E 8 2 F 6 G Gambarkan pohon ruang pencarian dari tabel di atas.
41
Pertanyaan (cont’d) Asumsikan keadaan awal adalah A, dan tujuan adalah G. Tunjukkan bagaimana proses pencarian terjadi untuk setiap algoritma berikut, gunakan pohon pencarian yang sama: BFS, DFS, DFID. Untuk setiap algoritma tampilkan isi fringe, dan bagaimana urutan pembukaan simpul terjadi. Hitunglah pula biaya jalurnya.
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.