laporan tic tac toe
DESCRIPTION
Laporan praktikum pemrogramanTRANSCRIPT
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
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.
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.
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.
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
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).
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.