MODUL PERKULIAHAN
W152100012 -
Penghantar
Kecerdasan
Buatan
Algoritma Iterative Deepening
(IDS)
Abstrak Sub-CPMK 2
04
Muhaimin Hasanudin, S.T., M.Kom
Ilmu Komputer Teknik Informatika
Pendahuluan
Algoritma pencarian (searching algorithm) adalah algoritma yang menerima
sebuah argumen kunci dan dengan langkah-langkah tertentu akan mencari rekaman
dengan kunci tersebut. Setelah proses pencarian dilaksanakan, akan diperoleh
salah satu dari dua kemungkinan, yaitu data yang dicari ditemukan ( successful )
atau tidak ditemukan (unsuccessful).
0 0 -
0 3 2
3 0 9
3 3 2
4 2 7
0 2 5 atau 12
2 0 9 atau 11
Algortima IDS
Contoh cara kerja iterative deepening search dapat dilihat pada gambar:
Gambar 4.1. Empat iterasi pencarian pendalaman(IDS) berulang pada pohon biner.
Penjelasan Gambar
Proses 1
Pada Proses pertama ini batas kedalamannya masih 0 atau kosong sehingga akan
dilihat apakah solusi sudah ditemukan pada node root. Jika belum ditemukan maka
nilai limit akan dinaikkan menjadi 1.
Proses 2
Proses 3
Proses ketiga batas kedalaman sudah menjadi 2 sehingga pencarian akan dilakukan
sampai level 2. Jika belum menemukan solusinya, limit akan kembali dinaikan
menjadi 3.
Proses 4
Pada proses ketiga pencarian akan dihentikan pada node M karena itu merupakan goal
state.
Asumsi lingkungan:
Statik: tidak ada perubahan lingkungan saat menyelesaikan persoalan
Diskret: Banyaknya keadaan lingkungan terbatas (jumlah kota)
Deterministik: memilih sebuah jalan dari suatu kota, pasti akan membawa ke satu
kota tertentu
Teramati sepenuhnya: informasi mengenai keadaan lingkungan lengkap, agen
sedang berada di mana juga diketahui
Ukuran kinerja dari urutan states biasanya:
o Jumlah jarak yang ditempuh
o Jumlah waktu yang dipelrukan dari kota awal ke kota tujuan
Pencarian
1. Pencarian Buta (UnInformed/Blind Search)
- Lihat sekeliling, tidak tahu jalan mana yang mengarahkan ke kota tujuan
- Tidak ada informasi tambahan selain yang disediakan oleh definisi
persoalan (4 komponen persoalan)
- Contoh: DFS, BFS, IDS, UCS , DLS
2. Pencarian dengan Tambahan Informasi (Informed Search)
- Pencarian Heuristik
- Agen mendapatkan informasi tambahan yang bisa berguna
- Agen mengetahui apakah suatu keadaan (state) lebih menjanjikan untuk
sampai ke tujuan dibandingkan keadaan yang lain
- Contoh: Greedy Best First Search, A*,
3. Pencarian Lokal (Local Search) untuk persoalan optimasi melebihi
pencarian klasik
- Jalur ke tujuan tidak penting
- Menggunakan memory yang cukup kecil
- Dapat menemukan solusi yang masuk akal dalam ruang pencarian tidak
terbatas, sehingga algoritma sistematis sesuai untuk pencarian ini
4. Contoh: Hill-climbing search, simulated annealing search, Genetic Algorithm
Pesudocode IDS
Function Iterative-Deepening_Search(problem) returns solution/ failure
for depth = 0 to ∞do
result DLS(problem, depth)
if result ≠ cutoff then result
Pseudocode DPS
Function DLS (problem, limit) returns solution/ cutoff/ failure
rec_DLS(make_node(init_state),problem,limit)
Function Rec_DLS (node,problem, limit) returns solution/ cutoff/ failure
if is Goal(node) then solution(node)
else if limit=0 then cutoff else
cutoff_occured false
Kesimpulan
Breadth First Search (BFS); Pencarian dengan Breadth First Search menggunakan
teknik dimana langkah pertamanya adalah root node diekspansi, setelah itu dilanjutkan
semua successor dari root node juga di-expand. Hal ini terus dilakukan berulang-ulang
hingga leaf (node pada level paling bawah yang sudah tidak mempunyai successor lagi).
3. Iterative Deepening Depth First Search (IDS); merupakan sebuah strategi umum
yang biasanya dikombinasikan dengan depth first tree search, yang akan menemukan
berapa depth limit terbaik untuk digunakan. Hal ini dilakukan dengan secara
menambah limit secara bertahap, mulai dari 0,1, 2, dan seterusnya sampai goal
sudah ditemukan.
Tugas
Berikan contoh Penerapan/Implementasi algoritma Iterative deepening search(IDS) pada
dunia nyata, jelaskan!