Anda di halaman 1dari 62

KECERDASAN BUATAN

2. Searching

Fajrian Nur Adnan


Erwin Yudi Hidayat

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 1


MATERI KULIAH
 1. Pengenalan kecerdasan Buatan (1x)
 2. Searching (Pencarian) (2x)
 3. Representasi Pengetahuan (1x)
 4. Sistem Pakar (3x)
 ================ UTS
 5. Logika Fuzzy
 6. jaringan Syaraf Tiruan
 7. Algoritma genetik
 8. game Playing
 ================ UAS

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 2


Previous Study
 Definisi Cerdas
 Sejarah Kecerdasan
 Kecerdasan Buatan dan Pemrograman
Konvensional
 Kecerdasan Buatan dan Kecerdasan Alami
 Subdisiplin Ilmu dalam AI
 Soft Computing
 Metode Soft Computing

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 3


Current Study
 Definisi Masalah
 Searching
 Metode Searching

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 4


TUJUAN PEMBELAJARAN
 Mampu menjelaskan konsep masalah dan
ruang masalah
 Mampu menjelaskan metode pencarian
 Dapat menyelesaikan masalah dengan metode
pencarian buta dan heuristik.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 5


Definisi Masalah Dalam AI
 Masalah : kesenjangan antara yang diharapkan
dengan kenyataan yang ada

 Masalah dalam AI : masalah-masalah yang dapat


dikonversi kedalam ruang keadaan (ada yang
menyebut sebagai ruang masalah), mempunyai
keadaan awal (initial state) dan keadaan tujuan (goal
state), serta dapat dibuat aturan-aturan untuk
mengubah suatu keadaan (state) ke keadaan (state)
lainnya.
20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 6
Masalah, Ruang Keadaan, Dan
Aturan
 Secara umum, untuk mendeskripsikan
masalah dengan baik, harus:
1.Mendefinisikan suatu ruang keadaan;
2.Menetapkan satu atau lebih keadaan awal;
3.Menetapkan satu atau lebih tujuan (Goal);
4.Menetapkan kumpulan aturan.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 7


Masalah, Ruang Keadaan, Dan
Aturan
 Ruang Keadaan (State Space),
– yaitu suatu ruang yang berisi semua keadaan yang
mungkin.
 Keadaan awal (initial state)
– adalah keadaan dimulainya sebuah pencarian
 Keadaan akhir / Tujuan (Goal)
– adalah keadaan diakhirinya sebuah pencarian
 Kumpulan aturan
– adalah aturan yang dapat digunakan untuk mengubah
suatu keadaan (state) ke keadaan (state) lainnya.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 8


Contoh Kasus Pengisian Air
• Ada dua buah gelas air
• Masing-masing berkapasitas 4
liter dan 3 liter yang semula isi
keduanya kosong.
• Pada kedua gelas tersebut tidak
terdapat tanda ukuran batas
volume.
• Ada sebuah kran air yang
digunakan untuk mengisi air pada
kedua gelas tersebut (Gambar
2.1).
• Bagaimana kita dapat mengisi
tepat 2 liter air pada gelas
berkapasitas 4 liter dan 3 liter air
pada gelas berkapasitas 3 liter ?

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 9


Contoh Kasus Pengisian Air
• Deskripsi:
– Misalkan : x = volume
dari gelas 4 liter, dan y =
volume dari gelas 3 liter
• Ruang keadaan :
– untuk masalah ini dapat
digambarkan sebagai
himpunan pasangan
bilangan bulat (x,y) yang
terurut, sedemikian rupa
sehingga x = 0, 1, 2, 3, 4
dan y = 0, 1, 2, 3.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 10


Contoh Kasus Pengisian Air
 Keadaan awal
– adalah kedua gelas dalam keadaan kosong yang dinyatakan
sebagai (0,0).
 Tujuan (Goal)
– adalah x = 2 liter dan y = 3 liter, yang dinyatakan sebagai
(2,3).

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 11


Contoh Kasus Pengisian Air
(Aturan)
1. Isi penuh gelas berkapasitas 4 6. Tuangkan sebagian isi gelas
liter. berkapasitas 4 liter ke gelas
jika (x<4)  (4, y) berkapasitas 3 liter hingga
2. Isi penuh gelas berkapasitas 3 gelas berkapasitas 3 liter
liter. penuh.
jika (y<3)  (x,3) jika (x + y >3) && x > 0,  ( y + x − 3, 3 )
3. Kosongkan gelas berkapasitas 7. Tuangkan seluruh isi gelas
4 liter. berkapasitas 4 liter ke gelas
jika x>0  (0, y) berkapasitas 3 liter.
4. Kosongkan gelas berkapasitas jika (x + y ≤ 3) && x > 0  ( 0, y + x)
3 liter. 8. Tuangkan seluruh isi gelas
jika y>0  (x, 0) berkapasitas 3 liter ke gelas
5. Tuangkan sebagian isi gelas berkapasitas 4 liter.
berkapasitas 3 liter ke gelas jika (x + y ≤ 4) && y > 0  ( y + x, 0)
berkapasitas 4 liter hingga
gelas berkapasitas 4 liter
penuh.
jika (x + y >4) && y > 0  (4, y + x − 4
)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 12


Contoh Kasus Pengisian Air
 Solusi : menerapkan pemrograman AI

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 13


Contoh Kasus : Permainan petani,
kambing, rumput, serigala

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 14


Contoh Kasus : Permainan petani,
kambing, rumput, serigala
 Deskripsi:
– Ruang keadaan untuk daerah asal dan daerah seberang
digambarkan sebagai: (P, Sy, K, Sg)
– Contoh: Daerah asal (P, Sy, 0, Sg) berarti pada daerah asal ada
petani, ada sayuran, tidak ada kambing, dan ada serigala.
 Keadaan awal :
– daerah asal : (P, Sy, K, Sg)
– daerah seberang : (0, 0, 0, 0)
 Tujuan (Goal) :
– daerah asal : (0, 0, 0, 0)
– daerah seberang : (P, Sy, K, Sg)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 15


Contoh Kasus : Permainan petani,
kambing, rumput, serigala

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 16


Contoh Kasus : Permainan petani,
kambing, rumput, serigala
 Solusi:

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 17


Representasi Ruang Keadaan
 Graph Keadaan
 Pohon Pelacakan
 Pohon AND/OR

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 18


Representasi Ruang Keadaan
1. Graph Keadaan
 Berisi Node–node yang
menunjukkan keadaan
– Node A : keadaan awal
– Node z : keadaan akhir/
tujuan
 Berisi arc (busur) yang
menunjukkan arah dari 1
keadaan ke keadaan yang lain

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 19


Representasi Ruang Keadaan
1. Graph Keadaan

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 20


Representasi Ruang Keadaan
2. Pohon Pelacakan

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 21


Representasi Ruang Keadaan
3. Pohon AND/OR

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 22


Searching Sebagai Teknik
Pemecahan Masalah
 Pertimbangan dalam membangun sistem:
1. Definisikan masalah dengan tepat. Pendefinisian ini
mencakup deskripsi masalah dengan baik.
2. Analisis masalah tersebut serta mencari beberapa teknik
penyelesaian masalah yang sesuai.
3. Representasikan pengetahuan yang perlu untuk
menyelesaikan masalah tersebut.
4. Pilih teknik penyelesaian masalah yang terbaik.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 23


Teknik Pemecahan Masalah
 Searching (pencarian),
 Reasoning (penalaran),
 Planning
– yaitu memecah masalah kedalam sub-sub masalah yang lebih
kecil, menyelesaikan sub-sub masalah satu demi satu, kemudian
menggabungkan solusi-solusi dari sub-sub masalah tersebut
menjadi sebuah solusi lengkap, dan
 Learning
– yaitu program komputer yang secara otomatis sanggup belajar
dan meningkatkan performanya melalui pengalaman.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 24


Searching Sebagai Teknik
Pemecahan Masalah
 Pemecahan masalah dengan menggunakan searching akan
lebih mudah bila obyeknya direpresentasikan sebagai graf.
 Representasi graf dilakukan pertama-tama dengan membuat
representasi objek masalah sebagai simpul dalam graf serta
membuat representasi hubungan antar objek dengan garis
yang menghubungkan simpul-simpul tersebut.
 Setelah itu, setiap simpul dalam graf dikunjungi secara
sistematis (traverse).

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 25


Metode Searching
(Russel, Stuart, and Norvig, Peter, 1995)
 Pengukuran Performa Metode Pencarian
– Completeness
• Menjamin adanya solusi?
– Time Complexity
• Waku yang diperlukan
– Space Complexity
• Memori yang diperlukan
– Optimality
• Menjamin memberikan solusi terbaik?

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 26


Metode Searching
1. Pencarian Buta (Blind Search) atau Un-Informed Search
a. Pencarian Melebar Pertama (Breadth-First Search)
b. Pencarian Mendalam Pertama (Depth-First Search)
2. Pencarian Heuristik (Terbimbing) atau Informed Search
a. Generate And Test (Pembangkitan & Pengujian)
b. Hill Climbing (Pendakian Bukit)
i. Simple Hill Climbing
ii. Steepest-Ascent Hill Climbing
c. Best First Search (BFS)
d. Algoritma A*
e. Simulated Annealing

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 27


1. Pencarian Buta (Blind Search) atau Un-Informed
Search
a. Pencarian Melebar Pertama (Breadth-First Search)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 28


Pencarian Melebar Pertama
(Breadth-First Search)
 Masukkan node akar ke dalam Queue
 Ambil node dari awal Queue lalu cek apakah node merupakan
solusi?
– Jika node merupakan solusi, pencarian selesai, dan hasil dikembalikan
– Jika node bukan solusi, masukkan seluruh node anak ke dalam Queue
 Jika Queue kosong, dan setiap node sudah dicek. Pencarian
berakhir
 Jika Queue tidak kosong, ulangi pencarian mulai point 2

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 29


BFS
Keuntungan Kelemahan
• Menjamin ditemukannya • Membutuhkan memori dan
solusi yang paling baik waktu yang cukup banyak
(komplit dan optimal)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 30


1. Pencarian Buta (Blind Search) atau Un-Informed
Search
b. Pencarian Mendalam Pertama (Depth-First Search)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 31


DFS
 Masukkan node akar ke dalam Stack
 Ambil node dari stack teratas lalu cek apakah node
merupakan solusi?
– Jika node merupakan solusi, pencarian selesai, dan hasil dikembalikan
– Jika node bukan solusi, masukkan seluruh node anak ke dalam Stack
 Jika Stack kosong, dan setiap node sudah dicek, pencarian
berakhir
 Ulangi pencarian mulai point 2

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 32


DFS
Keuntungan Kelemahan
• Membutuhkan memori dan • Memungkinkan tidak
waktu yang relatif kecil ditemukannya tujuan yang
karena hanya node pada optimal
lintasan yang aktif saja yang
disimpan
• Secara kebetulan, metode
ini menemukan solusi tanpa
harus menguji lebih banyak
lagi dalam ruang keadaan

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 33


2. Pencarian Heuristik (Terbimbing) atau Informed Search
a. Generate And Test (Pembangkitan & Pengujian)

a. Generate And Test (Pembangkitan & Pengujian)


a. Bangkitkan suatu kemungkinan solusi.
b. Uji, apakah solusi tersebut merupakan solusi yang bisa
diterima sesuai dengan kriteria yang diberikan.
c. Jika solusi ditemukan, keluar. Jika tidak, ulangi langkah
(1).

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 34


2. Pencarian Heuristik
a. Generate And Test pada penentuan rute terpendek

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 35


2.a. Pencarian Heuristik
(Generate And Test)
Solusi ke-1
 Bangkitkan sebuah solusi (misalnya solusi awal adalah jalur A-B-D-E-G-Z)
f(A-B-D-E-G-Z) = 4 + 3 + 4 + 6 + 7 = 24
Solusi ke-2
 f(A-B-D-E-G-H-Z) = 4 + 3 + 4 + 6 + 2 + 6 = 25
 uji dengan kriteria yang dipakai
– karena f(A-B-D-E-G-H-Z) > f(A-B-D-E-G-Z), maka solusi sementara f(A-B-D-E-G-Z) = 24
Solusi ke-3
 f(A-C-E-G-Z) = 5 + 3 + 6 + 7 = 21
 uji dengan kriteria yang dipakai
– karena f(A-C-E-G-Z) < f(A-B-D-E-G-Z), maka solusi sementara f(A-C-E-G-Z) = 21
Solusi ke-4
 f(A-C-E-G-H-Z) = 5 + 3 + 6 + 2 + 7 = 23
 uji dengan kriteria yang dipakai
– karena f(A-C-E-G-H-Z) > f(A-C-E-G-Z), maka solusi sementara f(A-C-E-G-Z) = 21
Selesai

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 36


2.b.i. Pencarian Heuristik
(Simple 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 langkah-langkah berikut sampai solusinya ditemukan, atau sampai
tidak ada operator baru yang akan diaplikasikan pada keadaan sekarang :
a. Cari operator yang belum pernah digunakan; gunakan operator ini
untuk mendapatkan keadaan yang baru.
b. Evaluasi keadaan baru tersebut.
i. Jika keadaan baru merupakan tujuan, keluar.
ii. Jika bukan tujuan, namun nilainya lebih baik daripada keadaan
sekarang, maka jadikan keadaan baru tersebut menjadi
keadaan sekarang.
iii. Jika keadaan baru tidak lebih baik daripada keadaan sekarang,
maka lanjutkan iterasi.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 37


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 38


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)
 Aturan / operator :
 Posisi kotak kosong (x,y)
 x = baris kotak kosong
 y = kolom kotak kosong

 1. Gerakkan kotak kosong keatas


 If x >1 then (x − 1 , y)

 2. Gerakkan kotak kosong ke bawah:


 If x <3 then (x + 1 , y)

 3. Gerakkan kotak kosong ke kanan:


 If y <3 then (x, y + 1)

 4. Gerakkan kotak kosong ke kiri:


 If y >1 then (x, y − 1)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 39


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)
 Fungsi Heuristik
 Fungsi heuristik yang digunakan adalah jumlah
kotak yang menempati posisi benar. Kriteria
yang dipakai adalah jumlah benar yang paling
besar yang dipilih.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 40


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 41


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 42


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 43


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 44


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 45


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 46


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 47


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 48


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 49


2.b.i. Pencarian Heuristik
(Simple Hill Climbing)

Check: keadaan sekarang = Goal,


hentikan pencarian.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 50


2.b.ii. Metode Searching Heuristic
(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.
– (a) Tentukan SUCC sebagai nilai heuristik terbaik dari successor-successor.
– (b) Kerjakan untuk tiap operator yang digunakan oleh keadaan sekarang:
– i) Gunakan operator tersebut dan bentuk keadaan baru.
– ii) 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.
– (c) Jika SUCC lebih baik daripada nilai heuristik keadaan sekarang, ubah
node SUCC menjadi keadaan sekarang.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 51


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 52


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )
 Aturan / operator :
 Posisi kotak kosong (x,y)
 x = baris kotak kosong
 y = kolom kotak kosong

 1. Gerakkan kotak kosong keatas


 If x >1 then (x − 1 , y)

 2. Gerakkan kotak kosong ke bawah:


 If x <3 then (x + 1 , y)

 3. Gerakkan kotak kosong ke kanan:


 If y <3 then (x, y + 1)

 4. Gerakkan kotak kosong ke kiri:


 If y >1 then (x, y − 1)

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 53


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )
 Fungsi Heuristik
 Fungsi heuristik yang digunakan adalah jumlah
kotak yang menempati posisi benar. Kriteria
yang dipakai adalah jumlah benar yang paling
besar yang dipilih.

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 54


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

Keadaan sekarang dikenakan 4 operator sekaligus

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 55


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

Pilih posisi benar yang terbesar yaitu 6, sehingga keadaan


sekarang menjadi :

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 56


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 57


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )
 Pilih posisi benar yang terbesar yaitu 7, sehingga keadaan
sekarang menjadi :

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 58


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 59


2.b.ii. Metode Searching Heuristic
(Steepest Ascent Hill Climbing )

Keadaan sekarang = Goal,…Pencarian dihentikan…!

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 60


1. Buat sebuah problem ke dalam graf
dan keterangan masalah (minimal 15
QA? node):
1. Memiliki solusi > 3
2. Kondisi buntu
2. Sertakan penyelesaian dengan
menggunakan:
1. Pohon Pelacakan
2. Pohon And/OR

3. Gunakan metode searching untuk


mencari solusi:
1. DFS
2. BFS
3. Generate and Test

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 61


Thank You

20/02/2020 Kecerdasan Buatan (2) : FIK-Udinus 2012 62

Anda mungkin juga menyukai