Anda di halaman 1dari 8

KELOMPOK 1 PENGANTAR KECERDASAN BUATAN

ANALISIS GAME KECERDASAN BUATAN (AI) PADA PERMAINAN CATUR TIC TAC TOE

Anggota : Anugerah Bintang P Dwi Candra Y Hamdani Muhammad Iqbal (50411994) (52411232) (59411226) (54411876)

Mumhana Artanti Prajudi William Ryko Dwi Kurniawan

(55411034) (55411549) (56411529)

UNIVERSITAS GUNADARMA 2013 TIC TAC TOE

X O X

X O

Permainan TIC TAC TOE merupakan permainan sederhana yang dimainkan pada papan berukuran 3x3. 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. Strategi yang dirancang oleh algoritma game: 1) Menyempurnakan salah satu dari 3 buah baris diagonal, vertikal atau horizontal. 2) Menahan lawan agar tidak membentuk tiga baris yang sempurna. 3) Menciptakan strategi dengan melakukan langkah yang membuatnya memiliki dua kemungkinan penyempurna baris. Beberapa pola tersebut :

O O

O O

4) Mencegah posisi lawan mempunyai pola yang bisa membuatnya menang. 5) Memperbesar kemungkinan kemenangan dengan membuat dua tanda yang berdampingan. 6) Mencegah lawan membuat dua tanda yang berdampingan. 7) Sampai semua kotak telah terisi oleh kedua simbol, maka dinyatakan seri.

1. Identifikasi ruang keadaan (state space) Papan dalam dalam keadaan kosong, dengan skat disetiap kotak yang berisi 3x3 kotak kosong.

2. Keadaan awal pada papan catur dan Tujuan Awal : papan dalam keadaan kosong, lalu kedua pemain diberi simbol X dan O.

Tujuan : Pemain yang berhasil menempatkan tiga simbolnya dalam satu garis, vertikal, horizontal ataupun diagonal dialah pemenangnya. Permainan dinyatakan seri jika kedua pemain tidak ada yang berhasil menyusun 3 bijinya secara berurutan padahal papan telah penuh. 3. Keadaan Papan Catur

Berikut adalah salah satu keadaan disaat menang dan disaat seri.

Gambar 1. Kondisi Menang

Gambar 2. Kondisi Seri

4. Aturan-aturan bermain a. User memulai permainannya terlebih dahulu, dan user menentukan posisi dari simbol (o/x) yang akan dimainkan. Dalam permainan ini, user bebas meletakkan simbol dimana saja pada papan permainan. b. User akan dihalangi oleh komputer untuk mencapai goal (tujuan) karena komputer telah diberi kecerdasan buatan sehingga komputer juga berusaha menjadi pemenang. c. Untuk mencapai suatu goal (tujuan) maka user harus membentuk kondisi simbol yang sebaris secara vertikal, horizontal, ataupun diagonal. d. Pemain hanya memiliki satu kesmpatan pada setiap giliran.

5. Representasi pohon pencarian pada algoritma Minimax Tree

Anggap lah ada 2 pemain A dan B. Jika pemain A bisa menang dalam 1 langkah, maka langkah tersebut adalah langkah kemenangannya. Jika pemain B mengetahui bahwa langkah tersebut akan mengarahkan ke hasil akhir dimana pemain A akan menang, dan di lain kondisi ada langkah lain yang akan

mengarahkan ke hasil akhir seri, maka langkah terbaik untuk pemain B adalah langkah yang akan mengarahkan hasil akhir permainan ke hasil seri. Di setiap tahap algoritma ini mengasumsikan bahwa pemain A mencoba untuk memaksimalisasi peluang menang. Di lain pihak, pada giliran berikutnya pemain B akan mencoba meminimalisir peluang menang untuk pemain A. Oleh karena itu, A disebut juga maximizing player (MAX) player (MIN). dan B disebut juga minimizing

Pembentukan pohon pencarian solusi digunakan dengan menggunakan konsep depth-first, dimulai dari awal permainan sampai akhir permainan. Setelah itu, posisi akhir permainan dievaluasi melalui sudut pandang MAX seperti gambar dibawah ini :

Gambar 2. Representasi pohon pencarian pada algoritma minimax.

Setelah itu nilai dari setiap simpul diisi dari bawah ke atas dengan nilai yang sudah dievaluasi oleh fungsi heuristic. Simpul milik pemain A (MAX) menerima nilai maksimum dari simpul-simpul anaknya. Simpul milik pemain B (MIN) akan memilih nilai minimum dari simpul anak-anaknya. 5

Berikut pseudocode dari algoritma yang digunakan :

MinMax (GamePosition game) { return MaxMove (game); } MaxMove (GamePosition game) { if (GameEnded(game)) { return EvalGameState(game);} else { best_move < - {}; moves <- GenerateMoves(game); ForEach moves { move <- MinMove(ApplyMove(game)); if (Value(move) > Value(best_move)){ best_move < - move; }} return best_move; }} MinMove (GamePosition game) { best_move <- {}; moves <- GenerateMoves(game); ForEach moves { move <- MaxMove(ApplyMove(game)); if (Value(move) > Value(best_move)){ best_move < - move; } return best_move;}

Values disini merepresentasikan sebagaimana bagusnya suatu langkah dalam permainan. Jadi, pemain A (MAX) akan memilih langkah dengan nilai paling tinggi diakhir. Di sisi lain, pemain B (MIN) akan melakukan serangan balik dengan memilih langkah yang terbaik untuknya, yakni meminimalisir hasil dari langkah yang dipilih pemain A. 5

HASIL ANALISIS

AI akan selalu memilih langkah yang dapat meminimalisir kemungkinan pemain (manusia) untuk menang dan memblok semua langkah kemenangan pemain.

Dengan demikian permainan akan selalu seri apabila pemain cukup teliti dalam menentukan langkah. Namun jika pemain melakukan langkah yang salah, maka AI akan langsung menggunakan kesempatan tersebut

KESIMPULAN
1.

Algoritma minimax merupakan algoritma yang sangat bagus dan cocok untuk pengambilan keputusan oleh AI, terutama dalam permainan n- player (n>=2).

2.

Algoritma minimax menggunakan konsep DFS dalam pembentukan solusi.

pohon

3. Pohon solusi dibentuk dari awal permainan sampai akhir permainan. 4. Untuk permainan yang terbilang cukup kompleks seperti permainan catur, pembentukan pohon solusi dari awal permainan sampai akhir permainan akan sulit direalisasikan berhubung kemungkinan yang ada sangat besar. Oleh karena itu, kita dapat membatasi dalamnya pohon solusi pada suatu tahap untuk mempercepat kinerja pengambilan keputusan. 5. Semakin akurat fungsi heuristic yang digunakan, semakin baik pula pengambilan keputusan yang dilakukan oleh AI. 6. Dengan menggunakan algoritma minimax untuk AI dalam permainan tic-tac-toe, manusia tidak akan pernah menang melawan AI tersebut.

REFERENSI Munir, Rinaldi.2006. Strategi Algoritmik. Program Studi Informatika, Institut Teknologi Bandung. Kevin McGee, Advance Game Programming : AI, Desember 9, 2005.

Wikimedia Foundation, Inc. A * Search Algorithm. http://en.wikipedia.org/wiki/Astar_ search_algorithm. Diakses tanggal 17 Mei 2006 pukul 10.45 www.stancford.edu~msirotasocominimax.html http://ai-depot.com/articles/minimaxa-explained/1/

Anda mungkin juga menyukai