METODE
PENCARIAN DAN PELACAKAN
(Alexander Joharico 10114786,
(Alexander Joharico 10114786,
Ridho Satria 19114301, Anggit Pangestu 11114242,
·
Hal
penting dalam menentukan keberhasilan sistem cerdas adalah kesuksesan
dalam pencarian.
· 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.
·
Untuk
mengukur perfomansi metode pencarian, terdapat 4 kriteria yang dapat
digunakan :
1. Completeness : apakah
metode tersebut menjamin penemuan solusi jika solusinya memang ada?
2. Time complexity : berapa
lama waktu yang diperlukan? [semakin cepat, semakin baik]
3. Space complexity : berapa
banyak memori yang diperlukan
4. Optimality : apakah metode
tersebut menjamin menemukan solusi yang terbaik jika terdapat beberapa solusi
berbeda?
Dua
teknik pencarian dan pelacakan
– Pencarian
buta (blind search)
Blind Searching adalah model
pencarian buta atau pencarian yang tidak memiliki inforamasi awal, model
pencarian ini memiliki tiga ciri – ciri utama yaitu:
-
Membangkitkan simpul berdasarkan urutan
-
Kalau ada solusi maka solusi akan ditemukan
- Hanya memiliki
informasi tentang node yang telah dibuka (node selanjutnya tidak diketahui).
Blind Searching sendiri dibagi menjadi dua macam yaitu :
• Pencarian melebar pertama (Breadth –
First Search)
Breadth First Search yaitu model
pencarian yang memakai metode melebar. Untuk mencari hasilnya, model BFS ini
menggunakan teknik pencarian persoalannya dengan cara membuka node (titik) pada
tiap levelnya.
Lebih jelasnya dapat dilihat
pada gambar dibawah ini :

·
Semua
node pada level n akan dikunjungi terlebih dahulu sebelum level n+1
·
Mulai
dari akar terus ke level 1 dari kiri ke kanan
·
Kemudian
ke level selanjutnya hingga solusi ditemukan
Keuntungan
:
– 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
Kelemahannya
:
– Membutuhkan
memori yang cukup banyak
– Membutuhkan
waktu yang cukup lama
• Pencarian mendalam pertama (Depth – First
Search)
DFS (Depth-first Search) sering
disebut juga pencarian mendalam. Sesuai dengan namanya “pencarian mendalam”,
DFS tidak mencari solusi per level, namun mencari pada kedalaman sebelah kiri
terlebih dahulu, kemudian bila belum ditemuakn “goal”nya dilanjutkan ke sisi
sebelah kanan dan seterusnya sampai ditemukan target/goal.
Dengan menggunakan permasalahan yang sama dengan penjelasan
di awal tadi, maka pada model DFS akan di dapatkan solusi seperti gambar di
bawah ini :

Keuntungan
:
– Memori
yang relatif kecil
– Secara
kebetulan, akan menemukan solusi tanpa harus menguji lebih banyak lagi
– Pencarian
terbimbing (heuristic search)
Heuristic Search merupakan
metode pencarian yang memperhatikan nilai heuristik (nilai perkiraan).
Teknik
pencarian heuristik (heuristic searching) merupakan suatu strategi untuk
melakukan proses pencarian ruang keadaan (state space) suatu problema
secara selektif, yang memandu proses pencarian yang kita lakukan di sepanjang
jalur yang memiliki kemungkinan sukses paling besar, dan mengesampingkan usaha
yang bodoh dan memboroskan waktu.
Heuristik adalah sebuah teknik yang
mengembangkan efisiensi dalam proses pencarian, namun dengan kemungkinan
mengorbankan kelengkapan (completeness).
Heuristic
Search memperkirakan jarak menuju Goal
(yang disebut dengan fungsi heuristik).
Fungsi heuristik ini digunakan untuk mengevaluasi keadaan-keadaan problema individual dan menentukan seberapa jauh hal tersebut dapat digunakan untuk mendapatkan solusi yang diinginkan.
Fungsi heuristik ini digunakan untuk mengevaluasi keadaan-keadaan problema individual dan menentukan seberapa jauh hal tersebut dapat digunakan untuk mendapatkan solusi yang diinginkan.
Jenis-jenis Heuristic
Searching :
·
Generate and Test
·
Hill Climbing
·
Best First Search
·
Alpha Beta Prunning
·
Means-End-Anlysis
·
Constraint Satisfaction
Kali ini yang akan dibahas adalah
metode Generate and Test, Hill Climbing dan Best First
Search. Karena ketiga metode tersebut adalah metode Heursistic
Searching yang paling sering digunakan dan paling optimal hasilnya.
• Pendakian Bukit (Hill Climbing)
Hill
Climbing (mendaki bukit) merupakan salah
satu variasi metode buat dan uji (generate and test) dimana umpan balik
yang berasal dari prosedur uji digunakan untuk memutuskan arah gerak dalam
ruang pencarian (search).
Dalam
prosedur buat dan uji yang murni, respon fungsi uji hanyalah ya atau tidak.
Dalam prosedurHill Climbing, fungsi uji dikombinasikan dengan fungsi
heuristik yang menyediakan pengukuran kedekatan suatu keadaan yang diberikan
dengan tujuan (goal).
Prosedur Hill Climbing :
Prosedur Hill Climbing :
1.
Buatlah solusi usulan pertama dengan
cara yang sama seperti yang dilakukan dalam prosedur buat dan uji (generate and
test). Periksalah apakah solusi usulan itu merupakan sebuah solusi. Jika ya,
berhentilah. Jika tidak, kita lanjutkan ke langkah berikutnya.
2.
Dari solusi ini, terapkan sejumlah
aturan yang dapat diterapkan untuk membuat sekumpulan solusi usulan yang baru.
3.
Untuk setiap elemen kumpulan solusi
tersebut, lakukanlah hal-hal berikut ini :
1.
Kirimkanlah elemen ini ke fungsi
uji. Jika elemen ini merupakan sebuah solusi, berhentilah.
2.
Jika tidak, periksalah apakah elemen
ini merupakan yang terdekat dengan solusi yang telah diuji sejauh ini. Jika
tidak, buanglah.
3.
Ambilah elemen terbaik yang
ditemukan di atas dan pakailah sebagai solusi usulan berikutnya. Langkah ini
bersesuaian dengan langkah dalam ruang problema dengan arah yang muncul sebagai
yang tercepat dalam mencapai tujuan.
4.
Kembalilah ke langkah 2.
Masalah-masalah yang mungkin timbul
pada prosedur Hill Climbing :
-
Maksimum lokal adalah suatu keadaan
yang lebih baik daripada semua tetangganya namun masih belum lebih baik dari
suatu keadaan lain yang jauh letaknya darinya.
-
Daratan (Plateau) adalah suatu
daerah datar dari ruang pencarian (search) dimana semua himpunan keadaan
tetangganya memiliki nilai yang sama.
-
Punggung (Ridge) adalah suatu daerah
ruang pencarian (search) yang lebih tinggi daripada daerah sekitarnya, namun
tidak dapat dibalikkan oleh langkah–langkah tunggal ke arah manapun.
Solusinya:
-
Melakukan langkah balik
(backtracking) ke simpul yang lebih awal dan mencoba bergerak ke arah yang
lain.
-
Melakukan lompatan besar ke suatu
arah untuk mencoba bagian ruang pencarian yang baru.
-
Menerapkan dua atau lebih aturan
sebelum melakukan uji coba. Ini bersesuaian dengan bergerak ke beberapa arah
sekaligus.
• Pencarian Terbaik Pertama (Best First
Search)
Pencarian
terbaik pertama (Best First Search) merupakan suatu cara yang
menggabungkan keuntungan atau kelebihan dari pencarian Breadth-First
Search dan Depth-First Search. Pada setiap langkah proses
pencarian terbaik pertama, kita memilih node-node dengan menerapkan fungsi
heuristik yang memadai pada setiap node/simpul yang kita pilih dengan
menggunakan aturan-aturan tertentu untuk menghasilkan penggantinya.
Fungsi
Heuristik yang digunakan merupakan prakiraan (estimasi) cost dari initial
state ke goal state, yang dinyatakan dengan :
f’ = g +
h’
dimana
f’ =
prakiraan cost dari initial ke goal
g = cost
dari initial state ke current state
h’ =
prakiraan cost dari current state ke goal state
Terdapat dua jenis algoritma Best
First Search, yaitu:
- Greddy
Best yang hanya memperhitungkan biaya perkiraan saja.
- A* yang
memperhitungkan gabungan dua biaya, biaya sebenarnya dan biaya perkiraan.
1. Greddy Best
1. Greddy Best
Greedy
Best First Search hanya memperhitungkan biaya
perkiraan (estimated cost) saja, yakni:
f(n) =
h(n)
Dimana : h(n)= perkiraan biaya dari
simpul n ke goal.
Biaya
yang sebenarnya (actual cost) tidak diperhitungkan. Dengan hanya
memperhitungkan biaya perkiraan yang belum tentu kebenarannya maka algoritma
ini menjadi tidak optimal.
Algoritma greddy best ini membentuk solusi langkah per langkah (step by step). Pada setiap langkah, terdapat banyak pilihan yang perlu dieksplorasi. Oleh karena itu, pada setiap langkah harus dibuat keputusan yang terbaik dalam menentukan pilihan.
Algoritma greddy best ini membentuk solusi langkah per langkah (step by step). Pada setiap langkah, terdapat banyak pilihan yang perlu dieksplorasi. Oleh karena itu, pada setiap langkah harus dibuat keputusan yang terbaik dalam menentukan pilihan.
2. A*
Algoritma
ini merupakan algoritma Best First Search yang
menggabungkan Uniform Cost Search danGreddy Best First
Search.
Algoritma ini memperhitungkan biaya
dari biaya sebenarnya ditambah dengan biaya perkiraan.
Dalam notasi matematika dituliskan sebagai:
Dalam notasi matematika dituliskan sebagai:
f(n) =
g(n) + h(n)
dimana :
g(n) = biaya sebenarnya untuk
mencapai simpul n
h(n) = perkiraan biaya dari simpul n
ke goal.
f(n) = perkiraan total biaya jalur
yang melalui simpul n ke goal.
Dengan
perhitungan biaya seperti ini, algoritma A* adalah complete dan optimal.
REFERENSI
:
diakses 3 Oktober 2015 pukul 12.23
diakses 1 Oktober 2015 pukul 01.14
Pengantar
Inteligensia Buatan – Heuristic Searching (Anonymous Writer)
http://najibzot.blogspot.co.id/p/teknik-searching-kecerdasan-buatan-di.htmlMata Kuliah : PENG. TEKNOLOGI SISTEM CERDAS
Tidak ada komentar:
Posting Komentar