Anda di halaman 1dari 25

Kecerdasan Buatan

Metode Pencarian dan Pelacakan


(Searching)
Metode Pencarian dan Pelacakan
• Pencarian : suatu proses mencari solusi dari
suatu permasalahan melalui sekumpulan
kemungkinan ruang keadaan (state space)
• Ruang keadaan : merupakan suatu ruang yang
berisi semua keadaan yang mungkin
Metode Pencarian dan Pelacakan
• Untuk mengukur perfomansi metode
pencarian, terdapat empat kriteria yang dapat
digunakan
– Completeness
– Time complexity
– Space complexity
– Optimality
Teknik pencarian
• Pencarian buta (blind search)  (Uninformed, non-
optimal) : tidak ada informasi awal yang digunakan
dalam proses pencarian
– Pencarian melebar pertama (Breadth – First Search)
– Pencarian mendalam pertama (Depth – First Search)
• Uninformed, optimal:
– Uniform-Cost
• Pencarian terbimbing (heuristic search) : adanya
informasi awal yang digunakan dalam proses pencarian
– Pembangkit & pengujian (Generate and Test)
– Pendakian Bukit (Hill Climbing)
– Pencarian Terbaik Pertama (Best First Search)
Pencarian Buta (Blind Search)
• Pencarian melebar pertama (Breadth – First Search)
– Semua node pada level n akan dikunjungi terlebih dahulu
sebelum mengunjungi node-node pada level n+1
– Pencarian dimulai dari node akar terus ke level 1 dari kiri
ke kanan, kemudian berpindah ke level berikutnya dari kiri
ke kanan hingga solusi ditemukan
Pencarian Buta (Blind Search)
• Algoritma Pencarian melebar pertama (Breadth – First Search) :
• Prosedur breadth_first_search
• Inisialisasi : open = [start]; closed [ ]
• While open = [ ] do
• Begin
• Hapuskan keadaan paling kiri dari keadaan open,
• sebutlah keadaan itu dengan X;
• Jika X merupakan tujuan then return (sukses);
• Buatlah semua child dari X;
• Ambillah X dan masukkan pada closed;
• Eliminasilah setiap child X yang telah berada pada
• open atau closed, yang akan menyebabkan loop
• dalam search;
• Ambillah turunan di ujung kanan open sesuai urutan
• penemuan-nya;
• End;
Pencarian Buta (Blind Search)
• Keuntungan Pencarian melebar pertama
(Breadth – First Search)
– Tidak akan menemui jalan buntu
– Menjamin ditemukannya solusi (jika solusinya
memang ada) dan solusi yang ditemukan pasti
yang paling baik
– Jika ada satu solusi maka bread-first search akan
menemukannya
Contoh :
Pencarian Buta (Blind Search)
• Kelemahannya Pencarian melebar pertama
(Breadth – First Search)
– Membutuhkan memori yang cukup banyak
– Membutuhkan waktu yang cukup lama
Pencarian Buta (Blind Search)
• Depth – First Search
– Pencarian dilakukan pada suatu simpul dalam setiap level
dari yang paling kiri
– Proses pencarian dilakukan pada semua anaknya sebelum
dilakukan pencarian ke node-node yang selevel
Pencarian Buta (Blind Search)
• Algoritma Depth – First Search :
• sprosedur depth_first_search
• inisialisasi: open = [Start]; closed = []
• while open x [] do
• begin
• hapuskan keadaan berikutnya dari sebelah kiri open, sebutlah keadaan itu dengan
X;
• jika X merupakan tujuan then return(sukses);
• buatlah semua child yang dimungkinkan dari X;
• ambilah X dan masukkan pada closed;
• eliminasilah setiap child X yang telah berada pada
• open atau closed, yang akan menyebabkan loop
• dalam search;
• ambilah child X yang tersisa di ujung kanan open
• sesuai urutan penemuannya;
• end
Contoh :
Pencarian Buta (Blind Search)
• Keuntungan Depth – First Search
– Memori yang relatif kecil
– Secara kebetulan, akan menemukan solusi tanpa
harus menguji lebih banyak lagi (waktu relatif
cepat)
Pencarian Buta (Blind Search)
• Kelemahan Depth – First Search :
• Memungkinkan tidak ditemukannya tujuan yang
diharapkan, karena jika pohon yang dibangkitkan
mempunyai level yang sangat dalam (tak terhingga) 
tidak complete karena tidak ada jaminan menemukan
solusi
• Hanya mendapat 1 solusi pada setiap pencarian,
karena jika terdapat lebih dari satu solusi yang sama
tetapi berada pada level yang berbeda, maka DFS tidak
menjamin untuk menemukan solusi yang paling baik 
tidak optimal
Uninformed, optimal
• Uniform-Cost
• Biaya lintasan sampai node N adalah jumlah biaya
akumulatif mulai dari node awal sampai node N:

g(N) =  biaya akumulatif semua langkah

• Cari biaya minimal sampai ke tujuan (goal)


Contoh: Uniform-Cost Search

16
Uniform-Cost Search

17
Uniform-Cost Search

18
Uniform-Cost Search

19
Uniform-Cost Search

20
Uniform-Cost Search

21
Latihan 1
• Buat proses pencarian dengan Depth First
Search dan Breadth Firs Search dari A-G pada
Gambar berikut :
C

A
G

B
Latihan 2
• Tunjukkan proses pelacakannya untuk mencari
kota mana saja yang bisa dilalui dari Arad ke
Bucharest dengan metode Uniform Cost
Search

Anda mungkin juga menyukai