Professional Documents
Culture Documents
1.1
Latar belakang
Kemajuan teknologi tidak hanya menuntut kecepatan penyebaran informasi tetapi juga dalam
bidang ilmu Artificial Intelligence untuk melakukan metode pencarian dan pelacakan yang
merupakan suatu hal penting dalam suatu sistem. Karena pencarian dan pelacakan ini adalah hal
yang menentukan keberhasilan sistem tersebut. sebuah algoritma pencarian dijelaskan secara
luas adalah sebuah algoritma yang menerima masukan berupa sebuah masalah dan menghasilkan
sebuah solusi untuk masalah tersebut, yang biasanya didapat dari evaluasi beberapa
kemungkinan solusi. Sebagian besar algoritma yang dipelajari oleh ilmuwan komputer adalah
algoritma pencarian. Pada dasarnya, metode pencarian dan pelacakan dibagi dua, yaitu pencarian
buta (blind search) dan pencarian tersusun (heuristic search).
Pada makalah ini kami akan membahas satu metode pencarian dan pelacakan saja, yaitu
pencarian buta (blind search). Blind Searchg adalah model pencarian buta atau pencarian yang
tidak memiliki informasi awal. Algoritma Pencarian ini menggunakan Metode yang bermacam
macam namun yang paling banyak dibahas adalah Breadth Fisrt Search (BFS) dan Depth First
Search (DFS). Sehingga makalah ini
penyelesaian masalah melalui metode Breadth Fisrt Search (BFS) dan Depth First Search (DFS).
1.2 Rumusan masalah
Berdasarkan latar belakang diatas, maka ada beberapa masalah yang akan di bahas dalam
makalah ini, yaitu :
1.2.1 Apa yang dimaksud dengan pencarian buta (blind search)?
1.2.2 Apa yang dimaksud dengan metode Breadth Fisrt Search (BFS)?
1.2.3 Apa yang dimaksud dengan metode Depth First Search (DFS)?
1.2.4 apa yang dimaksud dengan Best First Search?
1.2.5 Bagaimana pengaplikasian metode Breadth Fisrt Search (BFS) dan Depth First
Search (DFS) dalam menyelesaikan masalah?
1.3 Tujuan
BAB II PEMBAHASAN
2.1 Blind Search
Blind Search merupakan pencarian asal. Jika solusi sudah ditemukan, maka pencarian
akan dihentikan. Jika dibuat skemanya, pencarian buta hanya mengenal 3 bagian yaitu
[masalah]-[pencarian]-[solusi]. Blind Searching pencarian ini memiliki tiga ciri ciri utama
yaitu:
Blind search tidak mempunyai atribut atau informasi tambahan. Algoritma yang termasuk Blind
search yaitu:
Hanya saja yang paling banyak dibahas adalah Breadth Fisrt Search (BFS) dan Depth First
Search (DFS).
2.2 Breadth - First Search
Breadth - First Search Metode ini akan mulai mencari dari node yang paling kiri, kemudian
berpindah ke-node se-level dengannya, dan berulang - ulang trus hingga menemukan solusi yang
dimaksud atau dpat dikatakan metode breadth-first search, yaitu 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 ke-1 dari kiri ke kanan, kemudian berpindah ke level berikutnya,
demikian pula dari kiri ke kanan hingga ditemukannya solusi
Algoritma ini memerlukan sebuah antrian q untuk menyimpan simpul yang telah dikunjungi.
Simpulsimpul ini diperlukan sebagai acuan untuk mengunjungi simpul-simpul yang
bertetanggaan dengannya. Tiap simpul yang telah dikunjungu masuk ke dalam antrian hanya satu
kali. Algoritma ini juga membutuhkan table Boolean untuk menyimpan simpul yang te lah
dikunjungi sehingga tidak ada simpul yang dikunjungi lebih dari satu kali.
2.
Ambil simpul dari awal antrian, lalu cek apakah simpul merupakan solusi
3.
4.
Jika simpul bukan solusi, masukkan seluruh simpul yang bertetangga dengan simpul
tersebut (simpul anak) ke dalam antrian
5.
Jika antrian kosong dan setiap simpul sudah dicek, pencarian selesai dan mengembalikan
hasil solusi tidak ditemukan
6.
ruang adalah sama seperti untuk luas pencarian pertama dan pilihan yang kedua algoritma untuk
menggunakan kurang tergantung pada kompleksitas dan lebih pada sifat-sifat yang berbeda dari
orderings titik dua algoritma menghasilkan. Untuk aplikasi dari DFS untuk mencari masalah
dalam kecerdasan buatan , Namun, grafik yang akan dicari sering terlalu besar untuk
mengunjungi secara keseluruhan atau bahkan tak terbatas, dan DFS mungkin menderita dari nonpemutusan kontrak kerja ketika panjang jalur di pohon pencarian tak terbatas. Oleh karena itu,
pencarian hanya dilakukan dengan kedalaman terbatas, dan karena ketersediaan memori yang
terbatas biasanya tidak menggunakan struktur data yang melacak himpunan semua node yang
sudah dikunjungi sebelumnya.
Dalam hal ini, waktu masih linier dalam jumlah vertex diperluas dan tepi (walaupun
nomor ini tidak sama dengan ukuran keseluruhan grafik karena beberapa titik bisa dicari lebih
dari sekali dan lain-lain tidak sama sekali) tetapi ruang kompleksitas ini varian dari DFS hanya
sebanding dengan batas kedalaman, jauh lebih kecil daripada ruang yang dibutuhkan untuk
mencari sampai kedalaman yang sama dengan -pertama pencarian luas . Untuk aplikasi tersebut,
DFS juga meminjamkan sendiri jauh lebih baik untuk heuristik metode memilih cabang yang
tampak mungkin. Ketika suatu batas kedalaman yang tepat tidak diketahui apriori, pertama cari
memperdalam kedalaman-iteratif berlaku DFS berulang kali dengan urutan batas meningkat;
dalam modus kecerdasan buatan analisis, denganfaktor percabangan lebih besar dari satu,
meningkatkan memperdalam berulang kali berjalan dengan hanya faktor konstan selama kasus di
mana batas kedalaman yang benar dikenal karena pertumbuhan geometrik jumlah node per
tingkat.
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
Best first search (BFS) juga merupakan sebuah metode yang membangkit kan simpul dari
simpul sebelumnya. Best first search memilih simpul baru yang memiliki biaya terkecil diantara
semua leaf nodes (simpul-simpul pada level terdalam) yang pernah dibangkitkan. Penentuan
simpul terbaik dilakukan dengan menggunakan sebuah fungsi yang disebut fungsi
evaluasi f(n). fungsi evaluasi best-first search dapat berupa biaya perkiraan dari suatu simpul
menuju ke goal atau gabungan antara biaya sebenarnya dan biaya perkiraan tersebut.
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 heuristic
merupakan suatu strategi untuk melakukan proses pencarian ruang keadaan suatu problema
secara selektif, yang memandu proses pencarian yang kita lakukan sepanjang jalur yang
memiliki kemungkinan sukses paling besar.
Ada beberapa istilah yang sering digunakan pada metode best first search, yaitu:
1.
Start node adalah sebuah terminology untuk posisi awal sebuah pencarian
2.
Curret node adalah simpul yang sedang dijalankan dalam algoritma pencarian jalan terpendek
3.
Suksesor adalah simpul-simpul yang yang akan diperiksa setelah current node
4.
5.
Open list adalah tempat menyimpan data simpul yang mungkin diakses dari starting node
maupun simpul yang sedang dijalankan
6.
Closed list adalah tempat menyimpan data simpul yang juga merupakan bagian dari jalur
terpendek yang telah berhasil didapatkan
7.
8.
3. Kondisi akhir permainan adalah state dengan semua role berada di sebelah kiri sungai tanpa
ada satu pun role yang hilang karena dimakan.
4. Setiap state untuk role di sisi sungai disimpan ke dalam sebuah simpul dengan notasi berikut
<{role di kiri}, {role di kanan}>*
Contoh:
Kondisi awal permainan
<{}, { F,W,S,C }>
Konsisi akhir permainan
<{ F,W,S,C }, {}>
*notasi {} menunjukkan sebuah himpunan, maka {F,W} = {W,F}
5. Petani yang membawa hewan dan barang akan dimasukkan ke dalam himpunan di mana sisi
perahu menepi.
6. State yang terdapat salah satu dari {W,S} atau {S,C} akan dianggap tidak valid.
Berikut adalah batasan yang digunakan dalam pembangunan pohon :
1. Simpul yang berulang akan digambarkan tetapi tidak akan diteruskan
2. Simpul yang tidak valid tidak akan digambarkan
Perlu diperhatikan bahwa pohon yang didapat pada bagian BFS dan DFS adalah pohon dengan
simpul yang dilewati oleh pencarian BFS atau DFS.
2.4.1 Pemecahan dengan BFS
Algoritma BFS yang digunakan :
1. Masukkan state awal ke dalam antrian
2. Cek apakah sudah memenuhi state akhir jika ya kembalikan solusi, jika tidak masukkan state
yang mungkin dari state sebelumnya ke dalam antrian.
3. Cek antrian, jika kosong pencarian berakhir dengan dengan solusi kosong.
4. Kembali lagi ke 2.
Berikut adalah pohon yang dihasilkan dari pencarian dengan algoritma BFS :
Jumlah penelusuran yang dilakukan oleh algoritma BFS adalah 14 (empat belas)
kali. Jumlah state yang diperlukan untuk mencapai state akhir adalah delapan. Hasil yang
didapatkan dari pencarian ini adalah optimal.
2.4.2 Pemecahan dengan DFS
Algoritma DFS yang digunakan :
1.
2.
Cek apakah sudah memenuhi state akhir jika ya kembalikan solusi, jika tidak masukkan state
yang mungkin dari state sebelumnya ke dalam antrian.
3.
Cek tumpukan, jika kosong pencarian berakhir dengan dengan solusi kosong.
4.
Kembali lagi ke 2.
Berikut adalah pohon yang dihasilkan dari pencarian dengan algoritma DFS dengan prioritas
yang digunakan adalah kiri ke kanan :
Jumlah penelusuran yang dilakukan oleh algoritma DFS adalah tujuh kali. Jumlah
state yang diperlukan untuk mencapai state akhir adalah delapan. Hasil yang didapatkan dari
pencarian ini sama dengan hasil yang didapatkan pencarian BFS.
Blind Search merupakan pencarian asal. Jika solusi sudah ditemukan, maka pencarian
akan dihentikan
Breadth-first search (BFS) melakukan proses searching pada semua node yang berada
pada level atau hirarkitetangga yang terdekat terlebih dahulu sebelum melanjutkan proses
level yang lebih tinggi. Proses ini diulangi terus hingga ditemukannya solusi
Best First Search (BFS) merupakan suatu cara yang menggabungkan keuntungan atau
kelebihan dari pencarian Breadth First Search dan Depth First Search.
http://aenstein.blogspot.co.id/2012/03/blind-seacrhing.html
http://nrmcoretan.blogspot.co.id/2016/03/makalah-metode-pencarian-best-first.html
http://coretanrissa.blogspot.co.id/2012/04/penerapan-metode-bfs-dan-dfs-dalam.html
http://fahrululumsholihin.blogspot.co.id/2015/05/v-behaviorurldefaultvmlo.html
http://jidun12ispcom.blogspot.co.id/2010/04/depth-first-search.html