Anda di halaman 1dari 14

| S1 Pagi Teknik Informatika | 1

STIKOM Banyuwangi

ARTIFICIAL INTELLIGENCE
A L G O R I T M A P E N C A R I A N (Searching
Algorithm)

Dosen Pengampu :
Sulaibatul Aslamiyah, S.Kom
Disusun oleh :

Nurul Ichwanti (1111100736)

S1 TEKHNIK INFORMATIKA

Kecerdasan Buatan | Artificial Intelligence


| S1 Pagi Teknik Informatika | 2
STIKOM Banyuwangi

Jl. Ahmad Yani 80 Banyuwangi Telp.( 0333) - 7766990

E-mail :www.stikombanyuwangi.ac.id

DAFTAR ISI

Halaman Judul 1

Daftar Isi 2

BAB 1 PENDAHULUAN 3

BAB 2 BEST FIRST SEARCH

2.1 Metode Best First Search 5

2.1.1 Greedy Best First Search 6

2.1.2 Algoritma A* 8

2.1.3 Perbandingan Greedy Best First Searh dan Algoritma A* 10

BAB 3 BRANCH AND BOUND

3.1 Metode Branch and Bound 11

3.2 Contoh soal dan penyelesaian 11

3.3 Kelebihan dan kekurangan 12

BAB 4 BRANCH AND BOUND DENGAN DYNAMIC PROGRAMMING

4.1 Metode Branch and Bound dengan Dynamic Programmming 13

4.2 Contoh soal dan penyelesaian 13

4.3 Kelebihan dan kekurangan 14

BAB 5 KESIMPULAN 15

Kecerdasan Buatan | Artificial Intelligence


BAB 1

PENDAHULUAN

Permasalahan pencarian adalah merupakan yang sering dijumpai oleh


peneliti di bidang Kecerdasan Buatan. Permasalahan ini merupakan hal penting
dalam menentukan keberhasilan system kecerdasan buatan. Metode pencarian
dibagi menjadi 3 bagian, dapat dilihat pada bagan dibawah ini :

Gambar 1.1 Bagan Metode Penelusuran


(Searching)

Keterangan :

1. Metode Pencarian Buta, merupakan metode sederhana yang hanya


berusaha mencari kemungkinan penyelesaian. Metode yang termasuk pada
bagian ini adalah Breadth First Search, Depth First Search, Hill climbing, Beam
Fisrt, dan Best First Search.
2. Metode Penyelesaian Optimal, merupakan metode yang lebih kompleks
yang akan mencari jarak terpendek. Metode yang termasuk pada bagian ini
adalah British Museum Procedure, Branch and Bound, Dynamic Programming
dan A*. Metode-metode ini digunakan pada saat harga perjalanan untuk
mencari kemungkinan menjadi perhitungan.

Kecerdasan Buatan | Artificial Intelligence


3. Metode Permainan, merupakan metode yang digunakan saat berhadapan
dengan musuh. Prosedur ini adalah minimax search, alpha beta pruning.
Metode ini banyak digunakan pada program-program permainan seperti
catur,dsb.

Metode pencarian dikatakan penting untuk menyelesaikan permasalahan


karena setiap state (keadaan) menggambarkan langkah-langkah untuk
menyelesaikan permasalahan.
Metode pencarian dikatakan penting untuk perencanaan karena dalam
sebuah permainan akan menentukan apa yang harus dilakukan, dimana
setiap state menggambarkan kemungkinan posisi pada suatu saat.
Metode pencarian adalah bagian dari kesimpulan, dimana setiap state
menggambarkan hipotesis dalam sebuah rangkaian deduktif.
Secara umum, untuk mendeskripsikan suatu permasalahan dengan baik
harus :
a. Mendefinisikan suatu ruang keadaan.
b. Menerapkan satu atau lebih keadaan awal.
c. Menetapkan satu atau lebih tujuan.
d. Menetapkan kumpulan aturan.

Pada makalah ini saya hanya membahas tiga pokok bahasan saja
(menyesuaikan tugas), yakni :
1) Best First Search
2) Branch and Bound
3) Branch and Bound dengan Dynamic Programming

BAB 2

BEST FIRST SEARCH

2.1 Metode Best First Search

Kecerdasan Buatan | Artificial Intelligence


Merupakan metode/teknik search yang menggabungkan
kebaikan yang ad a dari teknik Depth First Search dan Breadth
First Search.
Tujuan menggabungkan dua tekhnik search ini adalah
untuk menelusuri satu jalur saja pada satu saat, tapi dapat
berpindah ketika jalur lain terlihat lebih menjanjikan dari jalur
yang sedang ditelusuri. Untuk mendapatkan jalur yang
menjanjikan adalah dengan memberikan skala prioritas pada
setiap state saat dihasilkan dengan fungsi heuristic.

Pencarian diperkenankan mengunjungi node yang ada di level


yg lebih rendah jika ternyata node pada level yg lebih tinggi
ternyata memiliki nilai heuristik yg buruk.

Contoh :

Untuk mengimplementasikan metode ini, dibutuhkan 2 antrian


yang berisi node- node, yaitu :
1. OPEN berisi simpul-simpul yang masih memiliki peluang
(peluangnya masih terbuka ) untuk terpilih sebagai simpul
terbaik.
2. CLOSED berisi simpul-simpul yang tidak mungkin
terpilih sebagai simpul terbaik ( peluang untuk terpilih
sudah tertutup )
Best First Search akan membangkitkan node berikutnya dari
semua node yg pernah dibangkitkan.

Kecerdasan Buatan | Artificial Intelligence


Pertanyaannya :
Bagaimana menentukan sebuah node terbaik saat
ini?
Dilakukan dengan menggunakan biaya perkiraan.
Bagaimana caranya menentukan biaya perkiraan?
Biaya perkiraan dapat ditentukan dengan fungsi
heuristic .

Fungsi Heuristic :
- Suatu fungsi heuristic dikatakan baik jika bisa memberikan
biaya perkiraan yang mendekati biaya sebenarnya.
- Semakin mendekati biaya sebenarnya, fungsi heuristic
tersebut semakin baik.

Ada 2 jenis Pencarian Terbaik Pertama ( Best First Search), yaitu :


1. Greedy Best First Search
2. Algoritma A*

2.1.1 Greedy Best First Search


Algoritma ini merupakan jenis algoritma Best First Search
yg paling sederhana. Algoritma ini hanya memperhitungkan
biaya perkiraan saja,
f(n) = h(n)
Karena hanya memperhitungkan biaya perkiraan yang belum
tentu kebenarannya, maka algoritma ini menjadi tidak optimal.

Contoh

Langkah 1 :

Kecerdasan Buatan | Artificial Intelligence


Langkah 2 :

Langkah 3 :

Solusi :

Kesimpulan :
Dari contoh di atas, Greedy akan menemukan solusi S-B-K-G
dengan total jarak = 105
Padahal ada solusi lain yg lebih optimal, yakni :
S-A-B-F-K-G dengan total jarak hanya 95

2.1.2 Algoritma A*
Berbeda dg Greedy, algoritma ini akan menghitung fungsi
heuristic dengan cara menamb ahkan biaya sebenarnya dengan
biaya perkiraan. Sehingga didap atkan rumus :

Kecerdasan Buatan | Artificial Intelligence


g(n) = Biaya sebenarnya dari Node Awal ke Node n
h(n) = Biaya perkiraan dari Node n ke Node Tujuan

Contoh

Langkah 1 :

Langkah 2 :

Langkah 3 :

Kecerdasan Buatan | Artificial Intelligence


Langkah 4 :

Langkah 5 :

Langkah 6 :

Solusi :

Kecerdasan Buatan | Artificial Intelligence


2.1.3 Perbandingan Greedy Best First Search dan
Algoritma A*

Greedy Best First Search tidak bisa menemukan solusi yang


optimal.
Algoritma A* dapat menemukan solusi yang optimal.

Algoritma A* lebih baik dalam melakukan pencarian


heuristic daripada Greedy Best First Search karena dapat
menghasilkan solusi yang optimal.

BAB 3

BRANCH AND BOUND

3.1 Metode Branch and Bound

Metode Branch and Bound adalah sebuah teknik algoritma


yang secara khusus mempelajari bagaimana caranya
memperkecil Search Tree menjadi sekecil mungkin. Pada
metode ini kita tidak memerlukan estimasi jarak tiap node
menuju GOAL. Selain itu elemen-elemen pada queue bukan tiap
node, melainkan lintasan parsial yang sudah te rcapai.

3.2 Contoh Soal dan Penyelesaian

Kecerdasan Buatan | Artificial Intelligence


- Algoritma
1. Buat sebuah Antrian, inisialisasi node pertama dengan
Root dari tree
2. Bila lintasan parsial tidak sama dengan lintasan GOAL,
maka lintasan parsial diganti dengan lintasan
parsial+node child, semuanya diatur berdasarkan harga
yang diurut secara ascending.
3. Bila node pertama=lintasa GOAL, selesai.

3.3 Kelebihan dan Kekurangan

Metode ini mempunyai beberap a kelebihan, namun selain


kelebihan juga memiliki kelemah an, diantaranya :
Kelebihan
Algoritma berhenti pada nilai optimum sebenarnya
(menemukan optimum global).
Kelemah an
Membutuhkan memori yang cukup banyak, karena bisa
jadi menyimpan semua lintasan parsial yang
memungkinkan.

Kecerdasan Buatan | Artificial Intelligence


BAB 4

BRANCH AND BOUND

DENGAN DYNAMIC PROGRAMMING

4.1 Metode Branch and Bound dengan Dynamic Programming

Metode ini sama dengan Branch and Bound, tetapi lebih


efi sien karena bisa mengurangi lebar/melakukan pemotongan
terhadap lebar dari tree . Hal ini dilakukan dengan cara
mereduksi lintasan parsial yang menuju ke suatu node yang
sudah pernah dikunjungi sebelumnya.

4.2 Contoh Soal dan Penyelesaian

Kecerdasan Buatan | Artificial Intelligence


Algoritma

1. Buat sebuah antrian, inisialisasi node pertama dengan Root


dari tree.
2. Bila lintasan parsial tidak sama dengan lintasan GOAL, jika ada
lintasan parsial dengan node terakhir yang sama (dalam satu
queue) maka diambil yang harganya paling minimal, sedangkan
yang lebih mahal dihapus dari queue, sehingga tree akan lebih
kurus.
3. Bila node pertama=lintasan GOAL, selesai.

Kecerdasan Buatan | Artificial Intelligence


4.3 Kelebihan dan Kekurangan

Metode ini mempunyai beberap a kelebihan, namun selain


kelebihan juga memiliki kelemah an, diantaranya :
Kelebihan
Algoritma berhenti pada nilai optimum sebenarnya.
Lebih efi sien dari metode Bran ch dan Bound dalam
penggunaan memori dan waktu eksekusi karena ad a
pemotongan.

Kelemah an
Harus mengingat node terakhir dari lintasan parsial yang
sudah dicapai sebelumnya.

BAB 5

ANALISA DAN KESIMPULAN

Metode Optimal lebih menguntungkan dan lebih baik daripada metode


non-optimal, karena membutuhkan memori yang relative kecil dan berhenti
pada nilai optimum sebenarnya.

Kecerdasan Buatan | Artificial Intelligence

Anda mungkin juga menyukai