SlideShare a Scribd company logo
1 of 62
Pencarian Heuristik
Dosen Pengampu: Muhammad Zidny Naf’an, M.Kom
• Pencarian buta tidak selalu dapat diterapkan
dengan baik, hal ini disebabkan waktu
aksesnya yang cukup lama serta besarnya
memori yang dibutuhkan.
• Kelemahan ini sebenarnya dapat diatasi jika
ada informasi tambahan (fungsi heuristik) dari
domain yang bersangkutan.
• “Heuristic” berarti menemukan atau mencari
• Heuristic dalam pencarian  suatu fungsi yang
memberikan suatu nilai berupa biaya perkiraan
(estimasi) dari suatu solusi
• Fungsi heuristik digunakan untuk menghitung
biaya perkiraan dari suatu simpul tertentu
menuju ke simpul tujuan.
• Fungsi h(N), memperkirakan biaya dari jalur
termurah dari node n ke node tujuan.
• Jika h(N) = 0 berarti solusi ditemukan
Fungsi heuristik
• Misalkan pada kasus 8-puzzle
– Ada 4 operator yang dapat digunakan untuk
menggerakkan dari satu keadaan (state) ke keadaan
yang baru.
• Geser ubin kosong ke kiri
• Geser ubin kosong ke kanan
• Geser ubin kosong ke atas
• Geser ubin kosong ke bawah
Fungsi heuristik
State Awal
kiri
kanan
atas
Fungsi heuristik
• Informasi yang diberikan dapat berupa jumlah ubin yang menempati posisi
yang benar.
• Jumlah yang lebih tinggi adalah yang diharapkan.
• Sehingga langkah selanjutnya yang harus dilakukan dari state awal adalah
menggeser ubin kosong ke kiri.
Fungsi heuristik
• Informasi yang diberikan berupa straight-line distance (jarak dalam
garis lurus) antara tiap kota dengan Bucharest.
Informed (Heuristic) Search
• Generate and Test
• Simple Hill Climbing
• Steepest-Ascent Hill Climbing
• Greedy Best-First Search
• A*
Generate-and-Test (GT)
• Metode Generate-and-Test (GT) adalah metode yang
paling sederhana dalam teknik pencarian heuristik.
• Di dalam GT, terdapat dua prosedur penting:
1. Pembangkit (generate), yang membangkitkan semua
solusi yang mungkin.
2. Test, yang menguji solusi yang dibangkitkan tersebut.
• Pada bagian generate dapat menggunakan prosedur
Depth First Search.
Generate-and-Test (GT)
• Dengan penggunaan memori yang sedikit, DFS
bisa digunakan sebagai prosedur pembangkit
yang menghasilkan suatu solusi.
• Prosedur Test bisa menggunakan fungsi
heuristik.
Algoritma Generate-and-Test
1. Bangkitkan sebuah solusi yang mungkin.
Solusi bisa berupa suatu keadaan (state) tertentu. Solusi
juga bisa berupa sebuah jalur dari satu posisi asal ke posisi
tujuan, seperti dalam kasus pencarian rute dari satu kota
asal ke kota tujuan.
2. Tes apakah solusi yang dibangkitkan tersebut
adalah sebuah solusi yang bisa diterima
sesuai dengan kriteria yang diberikan.
3. Jika solusi telah ditemukan, keluar. Jika
belum, kembali ke langkah 1.
Generate-and-Test (GT)
• Contoh: Traveling Salesman Problem (TSP)
– Seorang salesman ingin mengunjungi sejumlah n kota.
Akan dicari rute terpendek di mana setiap kota hanya
boleh dikunjungi tepat 1 kali.
– Jarak antara tiap-tiap kota sudah diketahui. Misalkan ada 4
kota dengan jarak antara tiap-tiap kota seperti terlihat
pada gambar berikut.
http://www.dogonews.com/2012/9/30/scientists-learn-how-bumblebees-solve-complex-traveling-salesman-problem-so-effortlessly
Contoh kasus TSP
Sebuah rute yng harus dilewati seorang
sales dimana sales tersebut harus
merlewati setiap kota tepat sekali.
Terdapat 4 kota, dengan jarak masing-
masing kota :
AB=2, AC=4, AD=1, BC=5, BD=3, CD=3.
Tujuannya adalah mencari jarak terpendek
bagi sales untuk mengunjungi semua kota
sekali.
Penyelesaian menggunakan generate-test adalah dengan membangkitkan solusi-
solusi yang mungkin ada sesuai permasalahan yang dihadapi oleh sales tersebut.
Kombinasi abjad sebagai solusi yang mungkin adalah n! = 4! = 24.
Tujuannya adalah mencari solusi dengan panjang terpendek.
A B
C
D
2
4
1
3
5
3
No Pencarian Lintasan
Panjang
Lintasan
Lintasan yang
dipilih
Panjang
Lintasan yang
dipilih
1 ABCD 10 ABCD 10
2 ABDC 8 ABDC 8
3 ACBD 12 ABDC 8
4 ACDB 10 ABDC 8
…. …….. ………. …………… …………
24 DCBA 10 BADC / CDAB 6
A B
C
D
2
4
1
3
5
3
16
• TSP - generation of possible
solutions is done in
lexicographical order of
cities:
1. A - B - C - D
2. A - B - D - C
3. A - C - B - D
4. A - C - D - B
...
Contoh kasus TSP
A B C D
B C D
C D C B
B D
D C B C
D B
Latihan Generate-and-Test Algorithm
Baca problem di tautan berikut dan selesaikan
dengan metode Generate and Test
https://training.ia-
toki.org/training/curriculums/1/courses/11/cha
pters/55/problems/253/
Kebaikan dan Keburukan Generate-and-Test
Jika penurunan solusi yang mungkin dilakukan secara
sistematis, maka procedure diatas akan dapat menemukan
solusi suatu saat, jika memang ada. Tapi sayangnya jika
ruang permasalahan sangat luas maka saat ditemukannya
solusi akan menjadi sangat lama.
Cara terbaik menerapkan generate-and-test yang sistematis
adalah pada tree dari depth-first search dengan
backtracking, yaitu kembali ke state sebelumnya bila
ditemui state yg sudah pernah di test atau memodifikasi
prosedurnya untuk menelusuri state pada bentuk graph.
• Generate and Test
• Simple Hill Climbing
• Steepest-Ascent Hill Climbing
• Simulated Annealing
• Greedy Best-First Search
• A*
Hill Climbing (HC)
• Terdapat 2 jenis HC yang sedikit berbeda, yakni
Simple Hill Climbing (HC sederhana) dan Steepest-
Ascent Hill Climbing (HC dengan memilih kemiringan
yang paling tajam/curam).
• Simple HC, langsung memilih new state yang
memiliki jalur yang lebih baik (“curam”) daripada
jalur-jalur sebelumnya tanpa memperhitungkan
jalur-jalur lain yang lebih “curam”.
• Sedangkan Steepest-Ascent HC, akan mengevaluasi
semua state yang berada di bawah current state dan
memilih state dengan jalur yang paling “curam”.
Algoritma Simple HC
1. Evaluasi initial state. Jika state ini adalah goal state,
maka kembalikan state ini sebagai solusi dan keluar dari
program. Jika state ini bukan goal state, lanjutkan proses
dengan initial state sebagai current state.
2. Ulangi sampai solusi ditemukan atau sampai tidak ada
operator baru yang dapat diaplikasikan terhadap current
state:
a) Pilih sebuah operator yang belum diaplikasikan
terhadap current state dan aplikasikan operator
tersebut sehingga menghasilkan new state.
b) Evaluasi new state:
I. Jika state ini adalah goal state, maka
kembalikan state ini sebagai solusi dan keluar
dari program.
II. Jika state ini bukan goal state tetapi lebih
baik daripada current state, maka jadikan
state ini sebagai current state.
III. Jika state ini tidak lebih baik daripada current
state, kembali ke langkah 2.a.
Pencarian solusi menggunakan Simple HC
• S menyatakan initial state, sedangkan G menyatakan goal state.
• Variable f di setiap state menyatakan biaya antara state tersebut
dengan goal state. Nilai f pada goal state = 0.
Pencarian solusi menggunakan Simple HC
• Simple HC langsung memilih state B sebagai next state karena nilai f
pada state B lebih kecil dibandingkan nilai f pada state S.
• Di sini tidak dipertimbangkan nilai f pada state C.
• Misalkan pada akhir iterasi, Simple HC mengembalikan solusi G
yang berada di level 6, padahal ada solusi yang lebih baik pada level
2. Dengan demikian Simple HC tidak optimal.
Contoh Simple Hill Climbing pada TSP
• Operator yang digunakan adalah operator yang dapat menghasilkan kombinasi lintasan
kota yang berbeda-beda, yaitu dengan cara menukar posisi masing-masing kota.
• Untuk mempermudah penukaran posisi, kita cukup menukar posisi 2 kota, operator
untuk kombinasi lintasan dengan menukar posisi 2 kota dapat dihitung dengan
kalkulasi:
• Yaitu :
1. (1,2) menukar posisi kota kesatu dan kedua
2. (1,3) menukar posisi kota kesatu dan ketiga
3. (1,4) menukar posisi kota kesatu dengan keempat
4. (2,3) menukar posisi kota kedua dengan kota ketiga
5. (2,4) menukar posisi kota kedua dengan keempat
6. (3,4) menukar posisi kota ketiga dengan keempat
• Penggunaan pengurutan operator harus konsisten, tidak boleh berbeda tiap levelnya.
urutan penggunaan operator juga sangat menentukan kecepatan dalam menemukan
solusii
Pencarian simple hill climbing dimulai dari anak kiri. Apabila nilai heuristik anak kiri
lebih baik maka digunakan sebagai current state pencarian selanjutnya. Jika tidak
maka akan dilihat tetangga dari anak kiri tersebut, dan seterusnya.
Level 1 : (ABCD=10 > BACD =9) buka node BACD tanpa harus mengecek node
yang selevel dengan BACD.
Level 2 : node ABCD dilewati.
(BACD=9 = CABD=9) periksa node tetangga CABD
(BACD=9 < DABC=10) periksa node tetangga DABC
(BACD=9 < BCAD=10) periksa node tetangga BCAD
(BACD=9 < BDAC=10) periksa node tetangga BDAC
(BACD=9 > BADC=6 ) buka node BADC
Level 3 : (BADC=6 < ABDC=8) periksa tetangga ABDC
(BADC=6 < DABC=8) periksa tetangga DABC
(BADC=6 < CADB=8) periksa tetangga CADB
(BADC=6 < BDAC=8) periksa tetangga BDAC
(BADC=6 < BCDA=9) periksa tetangga BCDA
(BADC=6 < BADC=9) selesai.
• Generate and Test
• Simple Hill Climbing
• Steepest-Ascent Hill Climbing
• Greedy Best-First Search
• A*
Steepest-Ascent Hill Climbing
• Sebenarnya hampir sama dengan simple hill
climbing. Hanya saja gerakan pencarian tidak
dimulai dari posisi paling kiri.
• Gerakan selanjutnya dicari berdasarkan nilai
heuristik terbaik. Dalam hal ini urutan
penggunaan operator tidak menentukan
penemuan solusi.
Algoritma Steepest-Ascent Hill
Climbing
1. Mulai dari keadaan awal, lakukan pengujian: jika merupakan tujuan,
maka berhenti ; dan jika tidak, lanjutkan dengan keadaan sekarang
sebagai keadaan awal.
2. Kerjakan hingga tujuan tercapai atau hingga iterasi tidak memberikan
perubahan pada keadaan sekarang.
1. Tentukan SUCC sebagai nilai heuristik terbaik dari successor-
successor
2. Kerjakan untuk tiap operator yang digunakan oleh keadaan sekarang
3. Gunakan operator tersebut dan bentuk keadaan baru.
4. Evaluasi keadaan baru tersebut. Jika merupakan tujuan, keluar, Jika
bukan, bandingkan nilai heuristiknya dengan SUCC. Jika lebih baik,
jadikan nilai heuristic keadaan baru tersebut sebagai SUCC. Namun
jika tidak lebih baik, nilai SUCC tidak berubah.
5. Jika SUCC lebih baik daripada nilai heuristik keadaan sekarang, ubah
node SUCC menjadi keadaan sekarang.
Pencarian solusi menggunakan Steepest-Ascent HC
• Dari state S, Steepest-Ascent HC akan mengevaluasi semua state yang menjadi next
state atau suksesornya, yaitu A, B, dan C. Dari ketiga suksesor tersebut dipilih suksesor
dengan nilai f yang terkecil.
• State C akan dipilih sebagai suksesor S.
• Misalkan, hasil penelusuran menemukan solusi G di level 4, padahal ada solusi optimal
di level 2, dalam hal ini Steepest-Ascent HC dikatakan terjebak pada solusi lokal atau
local minimum. Jadi Steepest-Ascent HC juga tidak optimal.
Contoh Steepest-Ascent Hill Climbing
 Keadaan Awal Tujuan
1 2 3
7 8 4
6 5
1 2 3
8 4
7 6 5
5
6
4
8
7
3
2
1
5
6
4
8
7
3
2
1
5
8
6
4
7
3
2
1
kiri kanan atas
Hb= 6 Hb= 4 Hb= 5
5
6
4
8
7
3
2
1
5
6
7
4
8
3
2
1
kanan atas
Hb= 5 Hb= 7
Contoh Steepest-Ascent Hill Climbing
5
6
7
4
8
3
2
1
atas
Hb= 7
5
6
7
4
8
3
2
1
5
6
7
4
8
1
3
2
5
6
4
8
7
3
2
1
kanan atas bawah
Hb= 8 Hb= 6 Hb= 6
Jadi urutan penyelesaian game 8-puzzle diatas dengan menggunakan metode
Steepest-Ascent Hill Climbing dan menghitung nilai heuristik berupa jumlah
ubin yang menempati posisi yang BENAR adalah ubin kosong bergeser ke
KIRI, ATAS, KANAN dengan nilai heuristik terakhir adalah 8.
• Generate and Test
• Simple Hill Climbing
• Steepest-Ascent Hill Climbing
• Greedy Best-First Search
• A*
Best First Search
• Sesuai dengan namanya, Best First Search
membangkitkan simpul berikutnya dari sebuah
simpul (yang sejauh ini) terbaik di antara semua leaf
node (simpul daun) yang pernah dibangkitkan.
• Penentuan simpul terbaik dapat dilakukan dengan
menggunakan informasi berupa biaya perkiraan dari
suatu simpul menuju ke goal atau gabungan antara
biaya sebenarnya dan biaya perkiraan tersebut.
Best First Search
• Terdapat 2 jenis algoritma Best First Search:
, yang hanya
memperhitungkan biaya perkiraan saja.
yang memperhitungkan
gabungan dua biaya, biaya sebenarnya dan biaya
perkiraan.
Algoritma Best First Search
1. OPEN berisi initial state dan CLOSED masih kosong.
2. Ulangi sampai goal ditemukan atau sampai tidak ada lagi node di
dalam OPEN:
a) Ambil simpul terbaik yang ada di OPEN.
b) Jika simpul tersebut sama dengan goal, maka sukses.
c) Jika tidak, masukkan simpul tersebut ke dalam CLOSED.
d) Bangkitkan semua suksesor dari simpul tersebut.
e) Untuk setiap suksesor kerjakan:
I. Jika suksesor tersebut belum pernah dibangkitkan,
evaluasi suksesor tersebut, tambahkan ke OPEN, dan
catat parent atau orang tuanya.
II. Jika suksesor tersebut sudah pernah dibangkitkan, ubah
parent-nya jika jalur melalui parent ini lebih baik
daripada jalur melalui parent yang sebelumnya.
Selanjutnya perbarui biaya untuk suksesor tersebut dan nodes
lain yang berada di level bawahnya.
Best First Search
• Pada algoritma tersebut, OPEN adalah list
yang digunakan untuk menyimpan simpul-
simpul yang pernah dibangkitkan dan nilai
heuristiknya telah dihitung tetapi belum
dipilih sebagai simpul terbaik.
• CLOSED digunakan untuk menyimpan simpul-
simpul yang sudah pernah dibangkitkan dan
sudah pernah terpilih sebagai simpul terbaik.
Greedy Best First Search
• Greedy Best First Search hanya memperhitungkan
biaya perkiraan (estimated cost) saja, yakni:
f(n) = h(n)
• di mana 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.
Menghitung Jarak Perkiraan
• Euclidean Distance:
ℎ 𝑛 = (𝑥𝑛 − 𝑥𝑔)2+(𝑦𝑛 − 𝑦𝑔)2
• Manhattan Distance
ℎ 𝑛 = 𝑥𝑛 − 𝑥𝑔 + 𝑦𝑛 − 𝑦𝑔
xn dan yn adalah posisi node saat ini
xg dan yg adalah posisi node seharusnya
Greedy Best First Search
• f(n) = h(n)
• h(n) = jarak garis lurus dari node n ke goal (Bucharest)
Greedy Best-First Search
Greedy Best-First Search
Greedy Best-First Search
Greedy Best-First Search
• Solusi yang ditemukan adalah: Arad, Sibiu, Fagaras, Bucharest.
• Ternyata solusi ini tidak optimal karena ada solusi lain yang lebih
baik, yaitu: Arad, Sibiu, Rimnicu Vilcea, Pitesti, Bucharest yang lebih
pendek 32 kilometer.
Algoritma A*
• Algoritma ini merupakan algoritma Best First Search yang
menggabungkan Uniform Cost Search dan Greedy Best First
Search.
• Algoritma ini memperhitungkan biaya dari biaya sebenarnya
ditambah dengan biaya perkiraan.
• Dalam notasi matematika dituliskan sebagai:
f(n) = g(n) + h(n)
• 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.
A*
• f(n) = g(n) + h(n)
• g(n) = biaya sebenarnya untuk mencapai sebuah node (kota) n
• h(n) = jarak garis lurus dari node n ke goal (Bucharest)
A* search example
A* search example
A* search example
A* search example
A* search example
A* search example
A* search example
• Solusi yang ditemukan adalah solusi optimal, yaitu: Arad, Sibiu,
Rimnicu Vilcea, Pitesti, Bucharest.
Contoh:
Greedy Best First Search
Greedy Best First Search
A*
A*
A*
A*
A*
Latihan
Pada suatu provinsi terdapat kota A, B, C, D, E, dan F dengan jarak antar kota
seperti pada gambar di bawah ini. Pak Anto yang berasal dari kota A hendak
pergi ke kota D. Bantulah Pak Anto untuk mencari jalur yang paling dekat dari
kota A ke kota B dengan menggunakan algoritma Greedy Best First Search
dan A*. Tuliskan langkah-langkahnya secara urut (Langkah 1 hingga
ditemukan solusi) dan juga tuliskan CLOSED list dan OPEN list pada tiap
langkah
Referensi
• Suyanto. Kecerdasan Buatan. IT Telkom
• Hersa Farida Qoriani. Informed Heuristic
Search. Akses:
http://hersa.dosen.narotama.ac.id/files/2011/
12/Informed-Heuristic-Search.ppt

More Related Content

Similar to MKB3462-Kecerdasan-Buatan_4_Heuristic-Search_v2.pptx

Teknik pencarian heuristik
Teknik pencarian heuristikTeknik pencarian heuristik
Teknik pencarian heuristikHerman Celamanya
 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristikahmad haidaroh
 
Teknik Optimasi TSP
Teknik Optimasi TSPTeknik Optimasi TSP
Teknik Optimasi TSPPamor Gunoto
 
Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Farichah Riha
 
Dw 3-intelijensi buatan2
Dw 3-intelijensi buatan2Dw 3-intelijensi buatan2
Dw 3-intelijensi buatan2Dian Sari
 
algoritma_greedy.ppt
algoritma_greedy.pptalgoritma_greedy.ppt
algoritma_greedy.pptsayfa3
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAdam Mukharil Bachtiar
 
PPT KELOMPOK 2 DSS.pptx
PPT KELOMPOK 2 DSS.pptxPPT KELOMPOK 2 DSS.pptx
PPT KELOMPOK 2 DSS.pptxUkiUngga
 
Algoritma-Greedy-(2016).ppt
Algoritma-Greedy-(2016).pptAlgoritma-Greedy-(2016).ppt
Algoritma-Greedy-(2016).pptsayfa3
 
Matematika diskrit Aplikasi Graf / Graf
Matematika diskrit  Aplikasi Graf / GrafMatematika diskrit  Aplikasi Graf / Graf
Matematika diskrit Aplikasi Graf / GrafSiti Khotijah
 
Materi 7. informed search constraint satisfaction problem
Materi 7.  informed search constraint satisfaction problemMateri 7.  informed search constraint satisfaction problem
Materi 7. informed search constraint satisfaction problemSaumi Simamora
 
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIER
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIERNILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIER
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIERAgus Suryanatha
 

Similar to MKB3462-Kecerdasan-Buatan_4_Heuristic-Search_v2.pptx (20)

Teknik pencarian heuristik
Teknik pencarian heuristikTeknik pencarian heuristik
Teknik pencarian heuristik
 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristik
 
Searching
SearchingSearching
Searching
 
Teknik Optimasi TSP
Teknik Optimasi TSPTeknik Optimasi TSP
Teknik Optimasi TSP
 
Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)
 
Dw 3-intelijensi buatan2
Dw 3-intelijensi buatan2Dw 3-intelijensi buatan2
Dw 3-intelijensi buatan2
 
AI_20111003
AI_20111003AI_20111003
AI_20111003
 
algoritma_greedy.ppt
algoritma_greedy.pptalgoritma_greedy.ppt
algoritma_greedy.ppt
 
Materi4 searching
Materi4 searchingMateri4 searching
Materi4 searching
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
 
PPT KELOMPOK 2 DSS.pptx
PPT KELOMPOK 2 DSS.pptxPPT KELOMPOK 2 DSS.pptx
PPT KELOMPOK 2 DSS.pptx
 
Exhaustive Search
Exhaustive SearchExhaustive Search
Exhaustive Search
 
Tugas2 -metode searching ai
Tugas2 -metode searching aiTugas2 -metode searching ai
Tugas2 -metode searching ai
 
Algoritma greedy
Algoritma greedyAlgoritma greedy
Algoritma greedy
 
Algoritma-Greedy-(2016).ppt
Algoritma-Greedy-(2016).pptAlgoritma-Greedy-(2016).ppt
Algoritma-Greedy-(2016).ppt
 
Matematika diskrit Aplikasi Graf / Graf
Matematika diskrit  Aplikasi Graf / GrafMatematika diskrit  Aplikasi Graf / Graf
Matematika diskrit Aplikasi Graf / Graf
 
Pengambilan Keputusan
Pengambilan KeputusanPengambilan Keputusan
Pengambilan Keputusan
 
Materi 7. informed search constraint satisfaction problem
Materi 7.  informed search constraint satisfaction problemMateri 7.  informed search constraint satisfaction problem
Materi 7. informed search constraint satisfaction problem
 
BAHAN AJAR.pdf
BAHAN AJAR.pdfBAHAN AJAR.pdf
BAHAN AJAR.pdf
 
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIER
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIERNILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIER
NILAI OPTIMUM FUNGSI OBJEKTIF MASALAH PROGRAM LINIER
 

Recently uploaded

Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...MarwanAnugrah
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggeraksupriadi611
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfTaqdirAlfiandi1
 
implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023DodiSetiawan46
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)3HerisaSintia
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau tripletMelianaJayasaputra
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxawaldarmawan3
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMmulyadia43
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfCloverash1
 
Materi Bimbingan Manasik Haji Tarwiyah.pptx
Materi Bimbingan Manasik Haji Tarwiyah.pptxMateri Bimbingan Manasik Haji Tarwiyah.pptx
Materi Bimbingan Manasik Haji Tarwiyah.pptxc9fhbm7gzj
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxJamhuriIshak
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
Model Manajemen Strategi Public Relations
Model Manajemen Strategi Public RelationsModel Manajemen Strategi Public Relations
Model Manajemen Strategi Public RelationsAdePutraTunggali
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5KIKI TRISNA MUKTI
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxBambang440423
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anakbekamalayniasinta
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASKurniawan Dirham
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxalalfardilah
 
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdfShintaNovianti1
 

Recently uploaded (20)

Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggerak
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
 
implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdf
 
Materi Bimbingan Manasik Haji Tarwiyah.pptx
Materi Bimbingan Manasik Haji Tarwiyah.pptxMateri Bimbingan Manasik Haji Tarwiyah.pptx
Materi Bimbingan Manasik Haji Tarwiyah.pptx
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
Model Manajemen Strategi Public Relations
Model Manajemen Strategi Public RelationsModel Manajemen Strategi Public Relations
Model Manajemen Strategi Public Relations
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anak
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
 
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
 

MKB3462-Kecerdasan-Buatan_4_Heuristic-Search_v2.pptx

  • 1. Pencarian Heuristik Dosen Pengampu: Muhammad Zidny Naf’an, M.Kom
  • 2. • Pencarian buta tidak selalu dapat diterapkan dengan baik, hal ini disebabkan waktu aksesnya yang cukup lama serta besarnya memori yang dibutuhkan. • Kelemahan ini sebenarnya dapat diatasi jika ada informasi tambahan (fungsi heuristik) dari domain yang bersangkutan.
  • 3. • “Heuristic” berarti menemukan atau mencari • Heuristic dalam pencarian  suatu fungsi yang memberikan suatu nilai berupa biaya perkiraan (estimasi) dari suatu solusi • Fungsi heuristik digunakan untuk menghitung biaya perkiraan dari suatu simpul tertentu menuju ke simpul tujuan. • Fungsi h(N), memperkirakan biaya dari jalur termurah dari node n ke node tujuan. • Jika h(N) = 0 berarti solusi ditemukan
  • 4. Fungsi heuristik • Misalkan pada kasus 8-puzzle – Ada 4 operator yang dapat digunakan untuk menggerakkan dari satu keadaan (state) ke keadaan yang baru. • Geser ubin kosong ke kiri • Geser ubin kosong ke kanan • Geser ubin kosong ke atas • Geser ubin kosong ke bawah
  • 6. Fungsi heuristik • Informasi yang diberikan dapat berupa jumlah ubin yang menempati posisi yang benar. • Jumlah yang lebih tinggi adalah yang diharapkan. • Sehingga langkah selanjutnya yang harus dilakukan dari state awal adalah menggeser ubin kosong ke kiri.
  • 7. Fungsi heuristik • Informasi yang diberikan berupa straight-line distance (jarak dalam garis lurus) antara tiap kota dengan Bucharest.
  • 8. Informed (Heuristic) Search • Generate and Test • Simple Hill Climbing • Steepest-Ascent Hill Climbing • Greedy Best-First Search • A*
  • 9. Generate-and-Test (GT) • Metode Generate-and-Test (GT) adalah metode yang paling sederhana dalam teknik pencarian heuristik. • Di dalam GT, terdapat dua prosedur penting: 1. Pembangkit (generate), yang membangkitkan semua solusi yang mungkin. 2. Test, yang menguji solusi yang dibangkitkan tersebut. • Pada bagian generate dapat menggunakan prosedur Depth First Search.
  • 10. Generate-and-Test (GT) • Dengan penggunaan memori yang sedikit, DFS bisa digunakan sebagai prosedur pembangkit yang menghasilkan suatu solusi. • Prosedur Test bisa menggunakan fungsi heuristik.
  • 11. Algoritma Generate-and-Test 1. Bangkitkan sebuah solusi yang mungkin. Solusi bisa berupa suatu keadaan (state) tertentu. Solusi juga bisa berupa sebuah jalur dari satu posisi asal ke posisi tujuan, seperti dalam kasus pencarian rute dari satu kota asal ke kota tujuan. 2. Tes apakah solusi yang dibangkitkan tersebut adalah sebuah solusi yang bisa diterima sesuai dengan kriteria yang diberikan. 3. Jika solusi telah ditemukan, keluar. Jika belum, kembali ke langkah 1.
  • 12. Generate-and-Test (GT) • Contoh: Traveling Salesman Problem (TSP) – Seorang salesman ingin mengunjungi sejumlah n kota. Akan dicari rute terpendek di mana setiap kota hanya boleh dikunjungi tepat 1 kali. – Jarak antara tiap-tiap kota sudah diketahui. Misalkan ada 4 kota dengan jarak antara tiap-tiap kota seperti terlihat pada gambar berikut. http://www.dogonews.com/2012/9/30/scientists-learn-how-bumblebees-solve-complex-traveling-salesman-problem-so-effortlessly
  • 13. Contoh kasus TSP Sebuah rute yng harus dilewati seorang sales dimana sales tersebut harus merlewati setiap kota tepat sekali. Terdapat 4 kota, dengan jarak masing- masing kota : AB=2, AC=4, AD=1, BC=5, BD=3, CD=3. Tujuannya adalah mencari jarak terpendek bagi sales untuk mengunjungi semua kota sekali. Penyelesaian menggunakan generate-test adalah dengan membangkitkan solusi- solusi yang mungkin ada sesuai permasalahan yang dihadapi oleh sales tersebut. Kombinasi abjad sebagai solusi yang mungkin adalah n! = 4! = 24. Tujuannya adalah mencari solusi dengan panjang terpendek. A B C D 2 4 1 3 5 3
  • 14. No Pencarian Lintasan Panjang Lintasan Lintasan yang dipilih Panjang Lintasan yang dipilih 1 ABCD 10 ABCD 10 2 ABDC 8 ABDC 8 3 ACBD 12 ABDC 8 4 ACDB 10 ABDC 8 …. …….. ………. …………… ………… 24 DCBA 10 BADC / CDAB 6 A B C D 2 4 1 3 5 3
  • 15. 16 • TSP - generation of possible solutions is done in lexicographical order of cities: 1. A - B - C - D 2. A - B - D - C 3. A - C - B - D 4. A - C - D - B ... Contoh kasus TSP A B C D B C D C D C B B D D C B C D B
  • 16. Latihan Generate-and-Test Algorithm Baca problem di tautan berikut dan selesaikan dengan metode Generate and Test https://training.ia- toki.org/training/curriculums/1/courses/11/cha pters/55/problems/253/
  • 17. Kebaikan dan Keburukan Generate-and-Test Jika penurunan solusi yang mungkin dilakukan secara sistematis, maka procedure diatas akan dapat menemukan solusi suatu saat, jika memang ada. Tapi sayangnya jika ruang permasalahan sangat luas maka saat ditemukannya solusi akan menjadi sangat lama. Cara terbaik menerapkan generate-and-test yang sistematis adalah pada tree dari depth-first search dengan backtracking, yaitu kembali ke state sebelumnya bila ditemui state yg sudah pernah di test atau memodifikasi prosedurnya untuk menelusuri state pada bentuk graph.
  • 18. • Generate and Test • Simple Hill Climbing • Steepest-Ascent Hill Climbing • Simulated Annealing • Greedy Best-First Search • A*
  • 19. Hill Climbing (HC) • Terdapat 2 jenis HC yang sedikit berbeda, yakni Simple Hill Climbing (HC sederhana) dan Steepest- Ascent Hill Climbing (HC dengan memilih kemiringan yang paling tajam/curam). • Simple HC, langsung memilih new state yang memiliki jalur yang lebih baik (“curam”) daripada jalur-jalur sebelumnya tanpa memperhitungkan jalur-jalur lain yang lebih “curam”. • Sedangkan Steepest-Ascent HC, akan mengevaluasi semua state yang berada di bawah current state dan memilih state dengan jalur yang paling “curam”.
  • 20. Algoritma Simple HC 1. Evaluasi initial state. Jika state ini adalah goal state, maka kembalikan state ini sebagai solusi dan keluar dari program. Jika state ini bukan goal state, lanjutkan proses dengan initial state sebagai current state. 2. Ulangi sampai solusi ditemukan atau sampai tidak ada operator baru yang dapat diaplikasikan terhadap current state: a) Pilih sebuah operator yang belum diaplikasikan terhadap current state dan aplikasikan operator tersebut sehingga menghasilkan new state. b) Evaluasi new state: I. Jika state ini adalah goal state, maka kembalikan state ini sebagai solusi dan keluar dari program. II. Jika state ini bukan goal state tetapi lebih baik daripada current state, maka jadikan state ini sebagai current state. III. Jika state ini tidak lebih baik daripada current state, kembali ke langkah 2.a.
  • 21. Pencarian solusi menggunakan Simple HC • S menyatakan initial state, sedangkan G menyatakan goal state. • Variable f di setiap state menyatakan biaya antara state tersebut dengan goal state. Nilai f pada goal state = 0.
  • 22. Pencarian solusi menggunakan Simple HC • Simple HC langsung memilih state B sebagai next state karena nilai f pada state B lebih kecil dibandingkan nilai f pada state S. • Di sini tidak dipertimbangkan nilai f pada state C. • Misalkan pada akhir iterasi, Simple HC mengembalikan solusi G yang berada di level 6, padahal ada solusi yang lebih baik pada level 2. Dengan demikian Simple HC tidak optimal.
  • 23. Contoh Simple Hill Climbing pada TSP • Operator yang digunakan adalah operator yang dapat menghasilkan kombinasi lintasan kota yang berbeda-beda, yaitu dengan cara menukar posisi masing-masing kota. • Untuk mempermudah penukaran posisi, kita cukup menukar posisi 2 kota, operator untuk kombinasi lintasan dengan menukar posisi 2 kota dapat dihitung dengan kalkulasi: • Yaitu : 1. (1,2) menukar posisi kota kesatu dan kedua 2. (1,3) menukar posisi kota kesatu dan ketiga 3. (1,4) menukar posisi kota kesatu dengan keempat 4. (2,3) menukar posisi kota kedua dengan kota ketiga 5. (2,4) menukar posisi kota kedua dengan keempat 6. (3,4) menukar posisi kota ketiga dengan keempat • Penggunaan pengurutan operator harus konsisten, tidak boleh berbeda tiap levelnya. urutan penggunaan operator juga sangat menentukan kecepatan dalam menemukan solusii
  • 24.
  • 25. Pencarian simple hill climbing dimulai dari anak kiri. Apabila nilai heuristik anak kiri lebih baik maka digunakan sebagai current state pencarian selanjutnya. Jika tidak maka akan dilihat tetangga dari anak kiri tersebut, dan seterusnya. Level 1 : (ABCD=10 > BACD =9) buka node BACD tanpa harus mengecek node yang selevel dengan BACD. Level 2 : node ABCD dilewati. (BACD=9 = CABD=9) periksa node tetangga CABD (BACD=9 < DABC=10) periksa node tetangga DABC (BACD=9 < BCAD=10) periksa node tetangga BCAD (BACD=9 < BDAC=10) periksa node tetangga BDAC (BACD=9 > BADC=6 ) buka node BADC Level 3 : (BADC=6 < ABDC=8) periksa tetangga ABDC (BADC=6 < DABC=8) periksa tetangga DABC (BADC=6 < CADB=8) periksa tetangga CADB (BADC=6 < BDAC=8) periksa tetangga BDAC (BADC=6 < BCDA=9) periksa tetangga BCDA (BADC=6 < BADC=9) selesai.
  • 26. • Generate and Test • Simple Hill Climbing • Steepest-Ascent Hill Climbing • Greedy Best-First Search • A*
  • 27. Steepest-Ascent Hill Climbing • Sebenarnya hampir sama dengan simple hill climbing. Hanya saja gerakan pencarian tidak dimulai dari posisi paling kiri. • Gerakan selanjutnya dicari berdasarkan nilai heuristik terbaik. Dalam hal ini urutan penggunaan operator tidak menentukan penemuan solusi.
  • 28. Algoritma Steepest-Ascent Hill Climbing 1. Mulai dari keadaan awal, lakukan pengujian: jika merupakan tujuan, maka berhenti ; dan jika tidak, lanjutkan dengan keadaan sekarang sebagai keadaan awal. 2. Kerjakan hingga tujuan tercapai atau hingga iterasi tidak memberikan perubahan pada keadaan sekarang. 1. Tentukan SUCC sebagai nilai heuristik terbaik dari successor- successor 2. Kerjakan untuk tiap operator yang digunakan oleh keadaan sekarang 3. Gunakan operator tersebut dan bentuk keadaan baru. 4. Evaluasi keadaan baru tersebut. Jika merupakan tujuan, keluar, Jika bukan, bandingkan nilai heuristiknya dengan SUCC. Jika lebih baik, jadikan nilai heuristic keadaan baru tersebut sebagai SUCC. Namun jika tidak lebih baik, nilai SUCC tidak berubah. 5. Jika SUCC lebih baik daripada nilai heuristik keadaan sekarang, ubah node SUCC menjadi keadaan sekarang.
  • 29. Pencarian solusi menggunakan Steepest-Ascent HC • Dari state S, Steepest-Ascent HC akan mengevaluasi semua state yang menjadi next state atau suksesornya, yaitu A, B, dan C. Dari ketiga suksesor tersebut dipilih suksesor dengan nilai f yang terkecil. • State C akan dipilih sebagai suksesor S. • Misalkan, hasil penelusuran menemukan solusi G di level 4, padahal ada solusi optimal di level 2, dalam hal ini Steepest-Ascent HC dikatakan terjebak pada solusi lokal atau local minimum. Jadi Steepest-Ascent HC juga tidak optimal.
  • 30. Contoh Steepest-Ascent Hill Climbing  Keadaan Awal Tujuan 1 2 3 7 8 4 6 5 1 2 3 8 4 7 6 5 5 6 4 8 7 3 2 1 5 6 4 8 7 3 2 1 5 8 6 4 7 3 2 1 kiri kanan atas Hb= 6 Hb= 4 Hb= 5 5 6 4 8 7 3 2 1 5 6 7 4 8 3 2 1 kanan atas Hb= 5 Hb= 7
  • 31. Contoh Steepest-Ascent Hill Climbing 5 6 7 4 8 3 2 1 atas Hb= 7 5 6 7 4 8 3 2 1 5 6 7 4 8 1 3 2 5 6 4 8 7 3 2 1 kanan atas bawah Hb= 8 Hb= 6 Hb= 6 Jadi urutan penyelesaian game 8-puzzle diatas dengan menggunakan metode Steepest-Ascent Hill Climbing dan menghitung nilai heuristik berupa jumlah ubin yang menempati posisi yang BENAR adalah ubin kosong bergeser ke KIRI, ATAS, KANAN dengan nilai heuristik terakhir adalah 8.
  • 32. • Generate and Test • Simple Hill Climbing • Steepest-Ascent Hill Climbing • Greedy Best-First Search • A*
  • 33. Best First Search • Sesuai dengan namanya, Best First Search membangkitkan simpul berikutnya dari sebuah simpul (yang sejauh ini) terbaik di antara semua leaf node (simpul daun) yang pernah dibangkitkan. • Penentuan simpul terbaik dapat dilakukan dengan menggunakan informasi berupa biaya perkiraan dari suatu simpul menuju ke goal atau gabungan antara biaya sebenarnya dan biaya perkiraan tersebut.
  • 34. Best First Search • Terdapat 2 jenis algoritma Best First Search: , yang hanya memperhitungkan biaya perkiraan saja. yang memperhitungkan gabungan dua biaya, biaya sebenarnya dan biaya perkiraan.
  • 35. Algoritma Best First Search 1. OPEN berisi initial state dan CLOSED masih kosong. 2. Ulangi sampai goal ditemukan atau sampai tidak ada lagi node di dalam OPEN: a) Ambil simpul terbaik yang ada di OPEN. b) Jika simpul tersebut sama dengan goal, maka sukses. c) Jika tidak, masukkan simpul tersebut ke dalam CLOSED. d) Bangkitkan semua suksesor dari simpul tersebut. e) Untuk setiap suksesor kerjakan: I. Jika suksesor tersebut belum pernah dibangkitkan, evaluasi suksesor tersebut, tambahkan ke OPEN, dan catat parent atau orang tuanya. II. Jika suksesor tersebut sudah pernah dibangkitkan, ubah parent-nya jika jalur melalui parent ini lebih baik daripada jalur melalui parent yang sebelumnya. Selanjutnya perbarui biaya untuk suksesor tersebut dan nodes lain yang berada di level bawahnya.
  • 36. Best First Search • Pada algoritma tersebut, OPEN adalah list yang digunakan untuk menyimpan simpul- simpul yang pernah dibangkitkan dan nilai heuristiknya telah dihitung tetapi belum dipilih sebagai simpul terbaik. • CLOSED digunakan untuk menyimpan simpul- simpul yang sudah pernah dibangkitkan dan sudah pernah terpilih sebagai simpul terbaik.
  • 37. Greedy Best First Search • Greedy Best First Search hanya memperhitungkan biaya perkiraan (estimated cost) saja, yakni: f(n) = h(n) • di mana 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.
  • 38. Menghitung Jarak Perkiraan • Euclidean Distance: ℎ 𝑛 = (𝑥𝑛 − 𝑥𝑔)2+(𝑦𝑛 − 𝑦𝑔)2 • Manhattan Distance ℎ 𝑛 = 𝑥𝑛 − 𝑥𝑔 + 𝑦𝑛 − 𝑦𝑔 xn dan yn adalah posisi node saat ini xg dan yg adalah posisi node seharusnya
  • 39. Greedy Best First Search • f(n) = h(n) • h(n) = jarak garis lurus dari node n ke goal (Bucharest)
  • 43. Greedy Best-First Search • Solusi yang ditemukan adalah: Arad, Sibiu, Fagaras, Bucharest. • Ternyata solusi ini tidak optimal karena ada solusi lain yang lebih baik, yaitu: Arad, Sibiu, Rimnicu Vilcea, Pitesti, Bucharest yang lebih pendek 32 kilometer.
  • 44. Algoritma A* • Algoritma ini merupakan algoritma Best First Search yang menggabungkan Uniform Cost Search dan Greedy Best First Search. • Algoritma ini memperhitungkan biaya dari biaya sebenarnya ditambah dengan biaya perkiraan. • Dalam notasi matematika dituliskan sebagai: f(n) = g(n) + h(n) • 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.
  • 45. A* • f(n) = g(n) + h(n) • g(n) = biaya sebenarnya untuk mencapai sebuah node (kota) n • h(n) = jarak garis lurus dari node n ke goal (Bucharest)
  • 52. A* search example • Solusi yang ditemukan adalah solusi optimal, yaitu: Arad, Sibiu, Rimnicu Vilcea, Pitesti, Bucharest.
  • 56. A*
  • 57. A*
  • 58. A*
  • 59. A*
  • 60. A*
  • 61. Latihan Pada suatu provinsi terdapat kota A, B, C, D, E, dan F dengan jarak antar kota seperti pada gambar di bawah ini. Pak Anto yang berasal dari kota A hendak pergi ke kota D. Bantulah Pak Anto untuk mencari jalur yang paling dekat dari kota A ke kota B dengan menggunakan algoritma Greedy Best First Search dan A*. Tuliskan langkah-langkahnya secara urut (Langkah 1 hingga ditemukan solusi) dan juga tuliskan CLOSED list dan OPEN list pada tiap langkah
  • 62. Referensi • Suyanto. Kecerdasan Buatan. IT Telkom • Hersa Farida Qoriani. Informed Heuristic Search. Akses: http://hersa.dosen.narotama.ac.id/files/2011/ 12/Informed-Heuristic-Search.ppt