laporan tic tac toe

10
TUGAS BESAR Disusun Untuk Memenuhi Tugas Mata Kuliah Kecerdasan Buatan yang dibina oleh Bapak M. Jauharul Fuady Oleh Kelompok 2 Happy Nur P (209533425527) Tri Maryati (209533424059) Roga Pria S (209533424065) PTI D 2009 UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PROGRAM STUDI S1 PENDIDIKAN TEKNIK INFORMATIKA APRIL 2012

Upload: septian-dwi-rismawan

Post on 21-Dec-2015

250 views

Category:

Documents


38 download

DESCRIPTION

Laporan praktikum pemrograman

TRANSCRIPT

Page 1: Laporan Tic Tac Toe

TUGAS BESAR

Disusun Untuk Memenuhi Tugas Mata Kuliah Kecerdasan Buatan

yang dibina oleh Bapak M. Jauharul Fuady

Oleh

Kelompok 2

Happy Nur P (209533425527)

Tri Maryati (209533424059)

Roga Pria S (209533424065)

PTI D 2009

UNIVERSITAS NEGERI MALANG

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

PROGRAM STUDI S1 PENDIDIKAN TEKNIK INFORMATIKA

APRIL 2012

Page 2: Laporan Tic Tac Toe

A. TUJUAN

Tujuan dari Tugas Akhir ini adalah untuk membuat kecerdasan buatan menggunakan

Algoritma A Star (A*) dalam TIC TAC TOE 3x3.

B. TIC TAC TOE

Konsep penelitian yang sedang popular di kalangan peneliti AI (Kecerdasan Buatan) adalah

tentang permaianan. Salah satu permainan sederhana adalah permainan TIC TAC TOE.

Permainan TIC TAC TOE merupakan permainan sederhana yang dimainkan pada papan

berukuran 3x3. Pada awal permainan, papan dikosongkan, lalu kedua pemainnya, dinamakan X

dan O menempatkan biji bijinya keatas papan satu per satu sesuai dengan urutan jalannya

masing-masing. Pemain yang berhasil menempatkan tiga biji nya dalam satu garis, vertikal,

horizontal ataupun diagonal pertama kali dialah pemenangnya. Permainan dinyatakan seri jika

kedua pemain tidak ada yang berhasil menyusun 3 biji nya secara berurutan padahal papan telah

penuh.

C. KONSEP PERMAINAN TIC TAC TOE

1.Desain Sistem

2.PendefinisianAwal

a. Pemain yang ikut dalam permainan tic tac toe

b. Representasi Pohon, menyederhanakan dan merumuskan masalah.

Page 3: Laporan Tic Tac Toe

c. Representasi Minimax Tree, dengan cara pengambilan langkah yang bergantian (bergiliran).

d. Hasil/skor akhir

Salah satu cara yang umum digunakan dalam pembentukan Artificial Intelligence sebuah

game adalah menganalisis secara langsung terlebih dahulu game tree menggunakan metode

algoritma minimax atau variasinya. Game tree tic tac toe dapat dicari dan dianalisis dengan

mudah dengan menghilangkan point-point yang tidak diperlukan, namun permainan lain yang

lebih besar seperti catur sangat susah untuk dianalisis secara langsung. Sehingga Artificial

Intelligence untuk permainan seperti itu lebih cenderung ke analisis parsial dengan membagi

game tree menjadisejumlah game tree yang lebihkecil. Salah satu cara untuk menciptakan

Artificial Intelligence yang sesuai adalah dengan menganalisa seluruh game tree. Berikut adalah

pola permainan TIC TAC TOE :

D. IMPLEMENTASI

Dalam permainan TIC TAC TOE diperlukan beberapa strategi untuk dapat

memenangkan permainan, dalam hal ini lawan yang harus dikalahkan adalah mesin atau

komputer. Kita harus memiliki strategi untuk tiap konfigurasi papan. Karena papan yang

dimainkan berukuran 3X3 atau dengan kata lain terdapat 9 buah kotak, yang setiap kotaknya

dapat diisi dengan “X” atau “O” ataupun kosong. Total konfigurasi yang mungkin adalah 3

pangkat 9 yaitu 19683.

Pada tahap pertama, konfigurasi yang valid harus diperkirakan dengan baik. Pemain

pertama “X” yang memulai terlebih dahulu, jumlah X dan O pada papan dan pada satu waktu

harus sama. Sedangkan untuk pemain kedua atau “O”, harus ada X terlebih dahulu yang jalan

sebelumnya.

Page 4: Laporan Tic Tac Toe

E. PENGATURAN SKOR

Kedua pemain yang secara bergantian saling melangkah akan menghasilkan dua buah

populasi sebagai inisialisasi. Satu populasi untuk pemain X dan datu lagi untuk pemain O.

Perbedaan antara pemain ‘X’ dan ‘O’ adalah pada pemain ‘X’ akan bertujuan untuk

memenangkan permainan, karena memulai langkah terlebih dahulu. Dengan memulai terlebih

dahulu, peluang untuk mendapatkan skor seri, adalah kecil. Sebaliknya, pemain ‘O’ akan

berusaha untuk menahan pemain ‘X’ agar tidak memenangkan permainan, sehingga jika

permainan berakhir seri, pemain ‘O’ menganggap sukses, apalagi jika berhasil

memenangkannya.

F. KLASIFIKASI GAME TIC TAC TOE BERDASARKAN ARTIFICIAL

INTELLIGENCE

Setelah kita tahu bagaimana game ini kita bisa tinjau game tersebutdari sudut pandang

Artificial Intelligence. Berdasarkan pembagian sifat dari sudut pandang dunia Artificial

Intelligence, game tic tac toe mempunyai sifat seperti di bawah ini:

_ State-of-the-art : algoritma berjalan di suatu computer tertentu dan melakukan langkah

yang dikalkulasi terlebih dahulu. (contoh lain : catur)

One-player games (pemain melawan environment yang telah dibuat oleh computer.

(contoh lain : Rubik's cube, jig-saw puzzle)

two person, satu lawan satu, ada kemungkinan lawan akan menghalangi setiap strategi

yang akan kita wujudkan

Perfect information, pada saat tertentu kedua pemain tau seluruh kondisi dan posisi

lawan.

Zero-sum , jika salah satu pemain menang maka pemain yang lain kalah

G. REPRESENTASI POHON BAGI ARTIFICIAL INTELLIGENCE GAME INI

Salah satu cara untuk menciptakan Artificial Intelligence yang sesuai adalah dengan

menganalisa seluruh game tree. Namun, sebuah game tree tic tac toe yang lengkap mempunyai

1040 nodes. Misal, kita mempunyai asumsi optimis jika suatu computer mampu menganalisa 3

node/ nano sekon, maka akan menghabiskan waktu 1021 abad untuk menganalisa seluruh game

tree. Sehingga diciptakan berbagai macam teknik search, dan teknik representasi data.

Page 5: Laporan Tic Tac Toe

Sebagaimana disebutkan di atas dalam teori game, sebuah game tree terdiri dari graf berarah,

dimana simpulnya adalah kondisi (state) game dan sisi berarahnya adalah kemungkinan langkah.

Jumlah daun di dalam sebuah game tree yang komplit disebut kompleksitas game tree.

Sedangkan untuk game tic tac toe mempunyai jumlah penyelesaian sebanyak 26.380

kemungkinanan.

Meskipun terkadang tidak di kode secara langsung, pembuatan game tree sangatlah

penting dalam proses pembentukan Artificial Intelligence dari sebuah game. Karena salah satu

cara yang umum digunakan dalam pembentukan Artificial Intelligence sebuah game adalah

menganalisis secara langsung terlebih dahulu game tree menggunakan metode algoritma

minimax atau variasinya. Game tree tic tac toe dapat dicari dan dianalisis dengan mudah dengan

menghilangkan point-point yang tidak diperlukan, namun permainan lain yang lebih besar seperti

catur sangat susah untuk dianalisis secara langsung. Sehingga Artificial Intelligence untuk

permainan seperti itu lebih cenderung keanalisi sparsial dengan membagi game tree menjadi

sejumlah game tree yang lebih kecil. Dengan sebuah game tree lengkap, hal itu memungkinkan

menemukan langkah yang jika diikuti secara tepat terus menerusakan diketahui apakah seorang

pemain menang atau tidak. Analisis untuk game tree besar seperti catur, bisa menggunakan

algoritma rekursif di bawah ini:

Warna ikon disi terakhir dari game tree sehingga semua kondisi yang mempunyai

kecenderungan hasil akhir tertentu akan mempunyai warna berbeda. Misalkan, kondisi dimana

Page 6: Laporan Tic Tac Toe

jika pemain pertama mempunyai kemungkinan besar untuk menang maka kondisi itu ditandai

dengan node berwarna biru. Sedangkan kondisi dimana pemain kedua yang mempunyai

kemungkinan besar menang ditandai dengan node berwarna merah. Dan kondisi lain ditandai

dengan warna abu-abu. Lihat pada game tree di atas. Jika terdapat node yang berwarna

berkebalikan (node yang menguntungkan lawan) maka langkah itu tidak disarankan untuk

diambil. Sedangkan jika terdapat node di bawahnya yang berwarna sama maka langkah tersebut

bias diperhitungkan dalam pengambilan keputusan.

H. REPRESENTASI MINIMAX TREE

Minimax Game Tree biasanya digunakan dalam pemrograman computer dimana

permainan dilakukan dengan cara pengambilan langkah yang bergantian (bergiliran). Pada

dasarnya, sebagaimana game tree biasanya merupakan representasi pohon dari semua

kemungkinan langkah/gerakan. Lihat pada minimax tree di bawah. Minimax tree tersebut

merepresentasikan

semua kemungkinan langkah yang sudah disederhanakan. Dengan menghilangkan semua

pencerminan dan rotasi dari posisi yang simetri.

Perhatikan bahwa pohon di atas tidak seperti pohon n-ary biasa yang tepat memiliki nilai

cabang maksimal. Node di dalam minimax tree nantinya akan mempunyai jumlah cabang (anak)

sesuai kondisi dan jenis game. Pohon di atas memiliki kedalaman tiga. Namun, di dalam

pemrograman nya kedalaman dari minimax tree hanya dianggap sebagai suatu lapisan yang

berbeda. Pada setiap lapisan, terjadi pergantian pemain. Kedua pemain biasanya

direpresentasikan sebagai Max dan Min (metode penamaan akan dijelaskan lebih lanjut).

Page 7: Laporan Tic Tac Toe

I . KESIMPULAN

Penggunaan konsep algoritma genetika yang baik yang dimasukan kedalam computer

pada permainan ini, diharapkan akan menghasilkan suatu strategi yang optimal dan efektif dalam

memenangkan permainan TIC TAC TOE ini.