• Tidak ada hasil yang ditemukan

28854717 Algoritma Minimax Dalam Pengambilan Keputusan Pada Permainan Tic tac Toe

N/A
N/A
Protected

Academic year: 2018

Membagikan "28854717 Algoritma Minimax Dalam Pengambilan Keputusan Pada Permainan Tic tac Toe"

Copied!
20
0
0

Teks penuh

(1)

BAB I PENDAHULUAN

1.1 Latar Belakang

(2)

merupakan salah satu contoh yang baik dan cukup sederhana untuk kita mengerti bagaimana cara kerja dan efeknya.

1.2 Identifikasi Masalah

Algoritma minimax merupakan algoritma yang cukup terkenal dalam bidang kecerdasan buatan. Dimana dengan algoritma tersebut komputer dapat mengambil keputusan terbaik untuk menyelesaikan masalah. Masalah yang akan diangkat disini adalah AI untuk permainan tic-tac-toe , dimana AI tersebut tidak akan pernah kalah. Dengan algoritma minimax ini, pohon solusi akan dibuat dari awal permainan sampai akhir permainan dimana semua kemungkinan kondisi dijadikan simpul dari pohon solusi, sehingga AI tinggal memilih langkah yang akan menuntunnya ke hasil akhir berupa kemenangan atau setidaknya seri.

1.3 Batasan Masalah

Linkup permasalahan yang akan dibahas pada makalah ini adalah penggunaan algoritma minimax untuk membuat AI yang dapat mencari dan menentukan keputusan terbaik dalam permainan tic-tac-toe sedemikian sehingga AI tersebut tidak akan pernah kalah.

1.4 Maksud dan Tujuan Penelitian

(3)

algoritma minimax diharapkan dapat menentukan keputusan terbaik dalam permainan tic-tac-toe sedemikian sehingga AI tersebut tidak akan pernah kalah.

1.5 Metode Penelitian

Metode penelitian merupakan suatu mekanisme, teknik atau cara untuk mencari, memperoleh, mengumpulkan, atau mencatat data yang dapat digunakan untuk menyusun karya ilmiah atau penelitian dengan prosedur yang didasarkan pada suatu struktur logis yang terdiri dari beberapa tahapan kerja dan kemudian menganalisa faktor-faktor yang berhubungan dengan pokok-pokok permasalahan sehingga akan didapat suatu kebenaran atas data yang diperoleh. Penyusunan makalah ini menggunakan metode deskriptif, yaitu mengumpulkan data kemudian menganalisanya serta memaparkan hasil penelitian.

1.6 Sistematika Penulisan

Sistematika Penulisan laporan skripsi terdiri dari VI BAB dengan perincian sebagai berikut :

BAB I Pendahuluan

(4)

BAB II Landasan Teori

Pada bab ini memaparkan teori-teori dan landasan pengetahuan yang relevan dengan makalah ini. Berisikan teori Game AI, Permainan tic-tac-toe serta teori-teori yang berhubungan dengan permasalahan yang dibahas.

BAB III Algoritma Minimax

Pada bab ini akan diuraikan mengenai algoritma minimax, bagaimana algoritma minimax dalam aplikasi permainan tic-tac-toe.

BAB IV Implementasi Algoritma Minimax

Pada bab ini membahas bagaimana algoritma minimax diimplementasikan ke dalam permainan tic-tac-toe..dan hasil analisis dari algoritma minimax dalam permainan tic-tac-toe. BAB V Hasil Analisis

Pada bab ini berisi tentang hasil analisis dari algoritma minimax terhadap permainan tic-tac-toe.

BAB VI Kesimpulan dan Saran

(5)

BAB II

LANDASAN TEORI

2.1 Game AI

Game AI adalah aplikasi IB untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak 'ikut bermain' (NPC ~ Non Playable Characters). Ada beberapa karakter dalam game AI yaitu:

1. Karakter antagonis (Opponent AI)

Karakter antagonis adalah karakter yang dalam permainan memiliki tujuan yang sama dengan pemain yaitu memenangkan permainan. untuk mewujudkan tujuan ini karakter tersebut dapat melakukan aksi kepada pemain dan sebaliknya pemain dapat melakukan aksi kepada karakter lawan yang sesuai dengan aturan permainan. contoh sederhana dari karakter antagonis adalah dalam permainan pertarungan (fighting). karakter lawan adalah karakter yang harus 'dikalahkan' oleh pemain dengan melakukan aksi (serangan). fungsi IB pada karakter antagonis adalah melakukan aksi-aksi yang dapat memperbesar peluang karakter tersebut untuk menang.

2. Karakter Pendukung (NPC AI)

(6)

adalah pada game RPG. Karakter NPC pada permainan bergenre RPG pada umumnya memberikan informasi implisit kepada karakter tentang hal-hal yang berkaitan dengan cerita dalam permainan ataupun panduan bagi pemain mengenai tujuan permainan. fungsi IB pada karakter pendukung adalah menentukan dialog dengan pemain sedemikian rupa sehingga seolah-olah karakter tersebut tampak nyata bagi pemain (life-like).

Peranan IB dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan manusia untuk berinteraksi dengan sesama manusia. contoh-contoh media interaksi antara lain :

a. penglihatan (Vision)

Untuk menggunakan informasi penglihatan biasanya menggunakan kamera sebagai perangkat untuk mendapatkan data. data yang ditangkap adalah berupa gambar / citra yang merupakan matriks dua dimensi. matriks tersebut dianalisa sesuai dengan kebutuhan aplikasi sehingga didapatkan informasi yang diinginkan (misal pembentukan wajah, deteksi gerakan, rekonstruksi ruang).

b. suara (voice) atau ucapan (speech)

(7)

misalnya untuk permainan bergenre RTS (wargames) yang menterjemahkan perintah dari pemain untuk menggerakkan unit. Contoh lainnya adalah permainan balap kendaraan yang menentukan akselerasi dari suara pemain yang menirukan suara mesin.

c. gerakan anggota badan (gesture)

Gesture adalah gerakan sebagian anggota badan yang memiliki makna tertentu (disebut juga sebagai body language). Informasi gesture dapat diakuisisi dengan berbagai cara, diantaranya :

1. video (vision)

informasi deretan koordinat (gerakan) dihasilkan dari analisis terhadap rangkaian gambar terurut (video).

2. sensor jarak (range)

informasi deretan koordinat diukur dengan menggunakan sensor jarak. 3. sensor posisi yang menempel pada pemain

akhir-akhir ini beberapa produsen konsol memanfaatkan pengendali (controller) yang dapat menghasilkan informasi posisi /perubahan posisi pengendali pada ruang tiga dimensi. Salah satu contoh konsol yang menggunakan ini adalah Nintendo Wii.

2.2 Permainan Tic-Tac-Toe

(8)

horizontal, vertikal, ataupun juga diagonal. Permainan ini biasanya dimainkan oleh 2 orang pemain, tapi pada versi permainan komputer, pemain lawan dapat digantikan oleh komputer. Dalam permainan ini hasilnya dapat berupa

menang,kalah, ataupun seri.

(9)

Berikut contoh permainan tic-tac-toe :

Gambar 2.1 Contoh kondisi menang pada permainan tic-tac-toe

(10)

BAB III

ALGORITMA MINIMAX

Algoritma minimax merupakan basis dari semua permainan berbasis AI seperti permainan catur misalnya. AI permainan catur tentunya sudah sangat terkenal dimana AI tersebut bahkan dapat mengalahkan juara dunia sekalipun. Pada algoritma minimax, pengecekan akan seluruh kemungkinan yang ada sampai akhir permainan dilakukan. Pengecekan tersebut akan menghasilkan pohon permainan yang berisi semua kemungkinan tersebut. Tentunya dibutuhkan resource yang berskala besar untuk menangani komputasi pencarian pohon solusi tersebut berhubung kombinasi kemungkinan untuk sebuah permainan catur pada setiap geraknya sangat banyak sekali.

Berbeda dengan permainan catur, permainan tic-tac-toe ini mempunyai lebih sedikit kemungkinan solusi, sehingga kita akan mempunyai cukup komputasi untuk memainkan setiap kombinasi langkah dari setiap posisi dan kondisi. Namun hal ini dapat dihindari dengan membatasi sejauh mana komputer akan menganalisis hasil dari langkahlangkah yang mungkin (menentukan kedalaman pohon). Tetapi dengan hal ini, kita harus menambah kedalaman pohon tersebut setiap langkahnya agar kedalaman pohon pada state tersebut sama dengan state sebelumnya.

(11)

langkah pertama komputer akan menganalisis seluruh pohon permainan. Dan untuk setiap langkahnya, komputer akan memilih langkah yang paling membuat lawan mendapatkan keuntungan minimum, dan yang paling membuat komputer itu sendiri mendapatkan keuntungan maksimum.

(12)

Berikut garis besar algoritma minimax secara umum :

Pemakaian algoritma umum diatas untuk permainan tic-tac-toe adalah sebagai berikut :

Cari langkah yang dengan nilai maksimum

IF langkah tersebut merupakan langkah kemenangan

THEN pilih lagkah tersebut.

ketiga masih kosong THEN tutup langkah tersebut

(isi spot kosong ketiga

tersebut).

ELSE melangkah ke state yang mempunyai

kemungkinan menang tertinggi (berdasarkan nilai

(13)
(14)

BAB IV

IMPLEMENTASI ALGORITMA MINIMAX

Anggaplah 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) dan B disebut juga minimizing player

(MIN).

(15)

Gambar 3.1. 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 :

(16)
(17)
(18)

BAB V HASIL ANALISIS

(19)

BAB VI

KESIMPULAN DAN SARAN

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

2. Algoritma minimax menggunakan konsep DFS dalam pembentukan pohon solusi.

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.

5. Oleh karena itu, kita dapat membatasi dalamnya pohon solusi pada suatu tahap untuk mempercepat kinerja pengambilan keputusan.

6. Semakin akurat fungsi heuristic yang digunakan, semakin baik pula pengambilan keputusan yang dilakukan oleh AI.

(20)

DAFTAR PUSTAKA

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

Gambar

Gambar 2.2 Contoh kondisi seri pada permainan tic-tac-toe
Gambar 3.1. Representasi pohon pencarian pada algoritma minimax.

Referensi

Dokumen terkait

keefisienan algoritma jika dilihat dari lang - kah yang diambil algoritma untuk meng- halau player menang, kedua algoritma sama-sama dapat menghalau player untuk menang,

Tujuan AI digunakan untuk mencari pola permainan, merancang strategi, mengkolaborasikan entity dalam computer, dan belajar dari pengalaman sebelumnya untuk

Solusi dari permasalahan ini dapat dilakukan dengan membuat topologi Tree, kemudian setiap langkah dari pemain pertama atau kedua akan menjadikan initial state

Berdasarkan percobaan-percobaan yang dilakukan diperoleh hasil bahwa algoritma minimax membutuhkan waktu yang lama dalam mengambil keputusan, terutama pada tingkat

Algoritma Negascout dan Minimax didasari pada ide pencarian dimana satu cabang pohon pertama dicari dan dievaluasi nilainya. Algoritma Negascout dan Minimax akan

Tetapi, jika algoritma Minimax digunakan pada permainan dengan jumlah kemungkinan penyelesaian yang besar seperti pada permainan catur, algoritma Minimax ini

Sedangkan kondisi kalah (untuk bidak X) tercapai apabila pemain lawan yang pertama kali meletakkan 3 bidak (O) pada posisi sejajar [3]. Agar komputer dapat berperan sebagai

Dalam penerapan, pohon keputusan dapat digunakan untuk menentukan langkah optimal komputer, tidak hanya Tic-Tac-Toe, tetapi juga bisa untuk permainan klasik lainnya yang memiliki alur