Anda di halaman 1dari 28

Kecerdasan Buatan

Kecerdasan Buatan
(Lanjutan)

Toy Problem: Missionaries and Cannibals


On one bank of a river are three missionaries (black triangles) and three cannibals (red circles). There is one boat available that can hold up to two people and that they would like to use to cross the river. If the cannibals ever outnumber the missionaries on either of the rivers banks, the missionaries will get eaten. How can the boat be used to safely carry all the missionaries and cannibals across the river?

Missionaries and Cannibals : Initial State and Actions

initial state:

5 possible actions:

all missionaries, all cannibals, and the boat are on the left bank

one missionary crossing one cannibal crossing two missionaries crossing two cannibals crossing one missionary and one cannibal crossing

Missionaries and Cannibals : Goal State and Path Cost

goal state:

path cost

all missionaries, all cannibals, and the boat are on the right bank.

step cost: 1 for each crossing path cost: number of crossings = length of path

solution path:

4 optimal solutions cost: 11

Pendekatan Pencarian Formal


Optimasi Pencarian Buta atau Blind Search


Enumerasi Lengkap Partial

Heuristik

Teknik Penulusuran data dalam bentuk jaringan terdiri atas node-node berbentuk tree atau pohon, terdiri :

Breadth-First Search Depth-First Search Best-First Search (?)

Breadth-First Search

Definisi ? Keuntungan
* * Tidak akan menemui jalan buntu. Jika ada satu solusi, maka metode ini akan menemukan. Dan jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan.

Kelemahan
Membutuhkan memori yang cukup banyak, karena akan menyimpan semua node dalam satu pohon. * Membutuhkan waktu yang cukup lama, karena akan menguji n level untuk mendapatkan solusi pada level yang ke-(n+1) *

Algorithma ?
(Kusumadewi, Sri)

Root Node (Start) 1

Level 0

Level 1

7 (Akhir Goal)

10 Level 2

Pencarian Pertama Melebar (Breadth-first search)

Breadth-First Search: Missionaries and Cannibals


depth = 0 depth = 3 depth = 2 depth = 1

Depth-First Search

Definisi ? Keuntungan * Memori relatif kecil, node lintasan aktif saja yang
*

disimpan. Secara kebetulan, metode ini akan menemukan solusi tanpa harus menguji lebih banyak lagi dalam ruang keadaan. Memungkinkan tidak ditemukannya tujuan yang diharapkan. Hanya akan mendapatkan satu solusi setiap pencarian.

Kelemahan
*
*

Algorithma ? (Kusumadewi, Sri)

Pencarian Mendalam (Depth-first search)


Root Node (Start) 1

Level 0

Level 1

1 Level 2

1 (Akhir Goal)

1 Level 3

Depth-First Search: Missionaries and Cannibals


depth = 0 depth = 3 depth = 2 depth = 1

Missionaries and Cannibals : State Space

1c 2c

1c 2c

1m 1c

1m

1m

2c

2c

1m 1c

1c
1c 1c

1c

2m
1m 1c

2m

Buatlah contoh sederhana aplikasi : 1. Depth-first search 2. Breadth-first search

Heuristic Search

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. Fungsi heuristik digunakan untuk menghitung biaya perkiraan dari suatu simpul tertentu menuju ke simpul tujuan.

Fungsi heuristik

Misalkan pada kasus 8-puzzle

Ada 4 operator yang dapat digunakan untuk menggerakkan dari satu keadaan (state) ke keadaan yang baru.

Geser Geser Geser Geser

ubin ubin ubin ubin

kosong ke kosong ke kosong ke kosong ke

kiri kanan atas bawah

Fungsi heuristik

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 adalah menggeser ubin kosong ke kiri.

Heuristic Search

Di sini hanya akan dibahas 6 metode yang tergolong informed search, yaitu:

Generate and Test Simple Hill Climbing Steepest-Ascent Hill Climbing Simulated Annealing 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:

Pembangkit (generate), yang membangkitkan semua solusi yang mungkin. Test, yang menguji solusi yang dibangkitkan tersebut.

Algoritma GT menggunakan prosedur Depth First Search karena suatu solusi harus dibangkitkan secara lengkap sebelum dilakukan Test.

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.

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.

Generate-and-Test (GT)

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

Generate-and-Test

Misalkan kita mulai dari node A. Kita pilih sebagai keadaan awal adalah lintasan ABCD dengan panjang lintasan = 19. Kemudian kita lakukan backtracking untuk mendapatkan lintasan ABDC dengan panjang lintasan = 18.

Generate-and-Test

Lintasan ini kita bandingkan dengan lintasan ABCD, ternyata ABDC < ABCD, sehingga lintasan terpilih adalah ABDC. Kita lakukan lagi backtracking untuk mendapatkan lintasan ACBD (=12), ternyata ACBD < ABDC, maka lintasan terpilih sekarang adalah ACBD. Demikian seterusnya hingga ditemukan solusi yang sebenarnya. Salah satu kelemahan dari metode ini adalah perlunya dibangkitkan semua kemungkinan solusi sehingga membutuhkan waktu yang cukup besar dalam pencariannya.

Summary

The two main parts of any AI system: knowledge base and an inferencing system The knowledge base is made up of facts, concepts, theories, procedures and relationships representing real-world knowledge about objects, places, events, people and so on The inference engine (thinking mechanism) uses the knowledge base, reasoning with it

Anda mungkin juga menyukai