tugas AI

13
1. Generate-and-Test (GT) GT adalah metode yang paling sederhana dalam teknik pencarian heuristik. Jika pembangkitan sebuah solusi yang mungkin (a possible solution) dikerjakan secara sistematis, maka prosedur ini menjamin akan menemukan solusinya. Tetapi jika ruang masalahnya sangat luas, mungkin memerlukan waktu yang sangat lama. Di dalam GT, terdapat dua prosedur penting yaitu pembangkit (membangkitkan sebuah solusi yang mungkin) dan tes (menguji solusi yang dibangkitkan tersebut). Dengan penggunaan memori yang sedikit, DFS bisa digunakan sebagai prosedur pembangkit untuk menghasilkan suatu solusi. Prosedur Tes bisa menggunakan fungsi heuristik. Metode Generate-and- Test (GT) adalah metode yang paling sederhana dalam teknik pencarian heuristic. Di dalam GT, terdapat dua prosedur penting: 1. Pembangkit (generate), yang membangkitkan semua solusi yang mungkin. 2. Test, yang menguji solusi yang dibangkitkan tersebut. Algoritma GT menggunakan prosedur Depth First Search karena suatu solusi harus dibangkitkan secara lengkap sebelum dilakukan Test. 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,

Transcript of tugas AI

Page 1: tugas AI

1. Generate-and-Test (GT)

GT adalah metode yang paling sederhana dalam teknik pencarian heuristik. Jika

pembangkitan sebuah solusi yang mungkin (a possible solution) dikerjakan secara sistematis,

maka prosedur ini menjamin akan menemukan solusinya. Tetapi jika ruang masalahnya

sangat luas, mungkin memerlukan waktu yang sangat lama. Di dalam GT, terdapat dua

prosedur penting yaitu pembangkit (membangkitkan sebuah solusi yang mungkin) dan tes

(menguji solusi yang dibangkitkan tersebut). Dengan penggunaan memori yang sedikit, DFS

bisa digunakan sebagai prosedur pembangkit untuk menghasilkan suatu solusi. Prosedur Tes

bisa menggunakan fungsi heuristik. Metode Generate-and-Test (GT) adalah metode yang

paling sederhana dalam teknik pencarian heuristic.

Di dalam GT, terdapat dua prosedur penting:

1. Pembangkit (generate), yang membangkitkan semua solusi yang mungkin.

2. Test, yang menguji solusi yang dibangkitkan tersebut.

Algoritma GT menggunakan prosedur Depth First Search karena suatu solusi harus

dibangkitkan secara lengkap sebelum dilakukan Test. 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.

Studi Kasus: Traveling Salesman Problem (TSP)

1. 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.

Page 2: tugas AI

Penyelesaian :

Penyelesaian dengan menggunakan Generate-and-Test dilakukan dengan

membangkitkan solusi-solusi yang mungkin dengan menyusun kota-kota dalam

urutan abjad, yaitu:

A-B-C-D

A-B-D-C

A-C-B-D

A-C-D-B

dan seterusnya

Dari gambar diatas dapat dijelakan sebagai berikut.

AA BB

DD CC

8

7

6

5

43

Page 3: tugas AI

1. Misalkan kita mulai dari node A. Kita pilih sebagai keadaan awal adalah lintasan ABCD dengan panjang lintasan = 19.

2. Kemudian kita lakukan backtracking untuk mendapatkan lintasan ABDC dengan panjang lintasan = 18.

3. Lintasan ini kita bandingkan dengan lintasan ABCD, ternyata ABDC < ABCD, sehingga lintasan terpilih adalah ABDC.

4. Kita lakukan lagi backtracking untuk mendapatkan lintasan ACBD (=12), ternyata ACBD < ABDC, maka lintasan terpilih sekarang adalah ACBD.

5. Demikian seterusnya hingga ditemukan solusi yang sebenarnya.

6. Salah satu kelemahan dari metode ini adalah perlunya dibangkitkan semua kemungkinan solusi sehingga membutuhkan waktu yang cukup besar dalam pencariannya.

2. Metode Hill Climbing Search

Metode Hill-climbing merupakan variasi dari depth-first search. Dengan metoda ini,

eksplorasi terhadap keputusan dilakukan dengan cara depth-first search dengan mencari path

yang bertujuan menurunkan cost untuk menuju kepada goal/keputusan. Sebagai contoh kita

mencari arah menuju Tugu Monas, setiap kali sampai dipersimpangan jalan kita berhenti dan

mencari arah mana yang kira-kira akan mengurangi jarak menuju Tugu Monas, Dengan cara

demikian sebetulnya kita berasumsi bahwa secara umum arah tertentu semakin dekat ke Tugu

Monas.

Terdapat dua jenis HC yang sedikit berbeda, yakni :

1. Simple HC (HC Sederhana)

a. Algoritma akan berhenti kalau mencapai nilai optimum

lokal

b. Urutan penggunaan operator akan sangat berpengaruh

pada penemuan solusi.

c. Tidak diijinkan untuk melihat satupun langkah

selanjutnya.

2. Steepest-Ascent HC (HC dengan memilih kemiringan yang paling tajam / curam)

a. Hampir sama dengan Simple HC, hanya saja gerakan pencarian tidak dimulai dari

paling kiri. Gerakan selanjutnya dicari berdasarkan nilai heuristik terbaik.

Page 4: tugas AI

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:

Jika state ini adalah goal state, maka kembalikan state

ini sebagai solusi dan keluar dari program.

Jika state ini bukan goal state tetapi lebih baik daripada

current state, maka jadikan state ini sebagai current state.

Jika state ini tidak lebih baik daripada current state,

kembali ke langkah 2.a.

Sebagai contoh perhatikan gambar berikut ini.

Dari gambar diatas dapat dijelaskan sebagai berikut.

1. S menyatakan intial state, sedangkan G menyatakan goal state.

Page 5: tugas AI

2. Variable f di setiap state menyatakan biaya antara state tersebut dengan goal state.

Nilai f pada goal state = 0.

3. Simple HC langsung memilih state B sebagai next state karena nilai f pada state B

lebih kecil dibandingkan nilai f pada state S.

4. Di sini tidak dipertimbangkan nilai f pada state C.

5. 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.

Studi Kasus : Game 8- Puzzle

Terdapat 4 operator yang dapat kita gunakan untuk menggerakkan dari satu keadaan ke keadaan yang baru.

1. Ubin kosong digeser ke kiri

2. Ubin kosong digeser ke kanan

3. Ubin kosong digeser ke atas

4. Ubin kosong digeser ke bawah

Initial State / Keadaan Awal Goal State / Tujuan

Page 6: tugas AI

Penyelesaian dengan simple hill climbing :

Initial State / Keadaan Awal

Goal state/ Tujuan

Ke Atas

Ke Kiri Ke Bawah

Ke Kiri

Ke Kiri

Ke Atas

Ke Atas Ke KiriKe Kanan

Ke Atas Ke Bawah

Iterasi 1

Iterasi 2

Iterasi 3

Iterasi 4

Page 7: tugas AI

Dari gambar diatas dapat dijelaskan sebagai berikut.

1. Jumlah heuristic h(n)= 5 merupakan intial state, sedangkan heuristic h(n)= 0

menyatakan goal state.

2. Jumlah heuristic h(n) setiap state menyatakan jumlah langkah dari state tersebut

untuk mencapai goal state.

3. Simple HC langsung memilih berpindah ke bawah pada iterasi I sebagai next state

karena nilai h(n) pada state tersebut lebih kecil dibandingkan nilai h(n) pada initial

state, begitupun seterusnya hingga mencapai goal state.

4. Jadi urutan penyelesaian game 8-puzzle diatas dengan menggunakan metode Simple

Hill Climbing dan menghitung nilai heuristik berupa jumlah langkah yang diperlukan

untuk mencapai goal state adalah ubin kosong bergeser ke BAWAH, KIRI, ATAS

KANAN, BAWAH dengan nilai heuristik terakhir adalah 0.

Algoritma Steepest-Ascent 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 perubahan terhadap current

state:

a) Misalkan SUK adalah suatu state yang menjadi suksesor dari current

state.

b) Untuk setiap operator yang bisa dilakukan terhadap current state,

kerjakan:

Aplikasikan operator tersebut dan bangkitkan new state.

Evaluasi new state. Jika merupakan goal state, kembalikan state

ini sebagai solusi dan keluar dari program. Jika bukan goal state, bandingkan

new state dengan SUK. Jika new state lebih baik daripada SUK, maka ganti

SUK dengan new state. Jika tidak lebih baik, SUK tidak perlu diganti.

c) Jika SUK lebih baik dari current state, maka ganti current state dengan

SUK

Iterasi 5

Page 8: tugas AI

Sebagai contoh perhatikan gambar berikut.

Dari gambar diatas dapat dijelaskan sebagai berikut.

1. 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.

2. State C akan dipilih sebagai suksesor S.

3. 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.

Studi Kasus : Game 8- Puzzle

Terdapat 4 operator yang dapat kita gunakan untuk menggerakkan dari satu keadaan

ke keadaan yang baru.

1. Ubin kosong digeser ke kiri

2. Ubin kosong digeser ke kanan

3. Ubin kosong digeser ke atas

4. Ubin kosong digeser ke bawah Initial State / Keadaan Awal Goal State / Tujuan

Page 9: tugas AI

Penyelesaian Steepest-Ascent HC :

Initial State / Keadaan Awal

Ke Kiri Ke BawahKe Atas

Ke Kanan

Ke Kiri

Ke AtasKe KiriKe Kanan

Ke KiriKe AtasKe Bawah

Ke BawahKe AtasKe Kiri

Iterasi 1

Iterasi 2

Iterasi 3

Iterasi 4

Iterasi 5

Page 10: tugas AI

Dari gambar diatas dapat

dijelaskan sebagai berikut.

1. Dari state initial state, Steepest-Ascent HC akan mengevaluasi semua state yang

menjadi next state atau suksesornya, y misalnya pada iterasi pertama ada 3 state yaitu

jika pindah ke atas dengan h(n)=6, jika berpindah ke kiri dengan h(n) = 6, dan jika

berpindah ke bawah dengan h(n)= 4. Dari ketiga suksesor tersebut dipilih suksesor

dengan nilai h(n) yang terkecil.

2. Jadi urutan penyelesaian game 8-puzzle diatas dengan menggunakan metode

Steepest-Ascent Hill Climbing dan menghitung nilai heuristik berupa jumlah langkah

yang diperlukan untuk mencapai goal state adalah ubin kosong bergeser ke BAWAH,

KIRI, ATAS KANAN, BAWAH dengan nilai heuristik terakhir adalah 0.

Goal state/ Tujuan