19
1 1. JUDUL Rancang Bangun Game Rumah Perkalian Menggunakan Algoritma Minimax Berbasis Android 2. ABSTRAK Rumah perkalian merupakan salah satu game edukasi matematika yang dapat membantu anak dalam belajar perkalian dengan cara bermainan yang menyenangkan. Game ini pada dasarnya hampir sama dengan Tic-Tac-Toe hanya saja terdapat perhitungan perkalian dalam memainkannya. Game ini menerapkan Algoritma Minimax sebagai AI (Artificial Intelligence) lawan tanding pemain. Minimax adalah algoritma yang menerapkan teknik pencarian Depth First Search (DFS) dengan kedalaman terbatas dengan algoritma tersebut komputer mampu memainkan permainan Tic-Tac-Toe dan sejenisnya. Perkembangan game juga tidak lepas dari perkembangan teknologi yang semakin pesat, salah satunya adalah teknologi smartphone seperti Android. Android adalah OS yang bersifat Open Source dan banyak peminatnya. Platform ini cocok digunakan sebagai device untuk mengimplementasikan game Rumah Perkalian ini. Kata Kunci: Rumah Perkalian, DFS (Dept First Search), AI (Artificial Intelligence), Minimax. 3. LATAR BELAKANG Game atau permainan pada dasarnya adalah suatu hal yang menyenangkan bagi semua orang. Semua game memiliki tujuan dan manfaatnya masing-masing, mulai dari hanya sekedar hiburan untuk menghilangkan stres, menguji kecerdasan dan ketangkasan, bahkan sampai kepada proses pembelajaran dan lain sebagainya. Game Rumah Perkalian adalah sebuah game yang pada dasarnya mengadopsi konsep permainan Tic-Tac-Toe dan termasuk ke dalam jenis game puzzle namun disisipi dengan proses pembelajaran matematika yaitu

Proposal_sudiyanto Draf 1

  • Upload
    soe-die

  • View
    211

  • Download
    12

Embed Size (px)

Citation preview

Page 1: Proposal_sudiyanto Draf 1

1

1. JUDUL

Rancang Bangun Game Rumah Perkalian Menggunakan Algoritma

Minimax Berbasis Android

2. ABSTRAK

Rumah perkalian merupakan salah satu game edukasi matematika yang

dapat membantu anak dalam belajar perkalian dengan cara bermainan yang

menyenangkan. Game ini pada dasarnya hampir sama dengan Tic-Tac-Toe

hanya saja terdapat perhitungan perkalian dalam memainkannya. Game ini

menerapkan Algoritma Minimax sebagai AI (Artificial Intelligence) lawan

tanding pemain. Minimax adalah algoritma yang menerapkan teknik

pencarian Depth First Search (DFS) dengan kedalaman terbatas dengan

algoritma tersebut komputer mampu memainkan permainan Tic-Tac-Toe dan

sejenisnya.

Perkembangan game juga tidak lepas dari perkembangan teknologi yang

semakin pesat, salah satunya adalah teknologi smartphone seperti Android.

Android adalah OS yang bersifat Open Source dan banyak peminatnya.

Platform ini cocok digunakan sebagai device untuk mengimplementasikan

game Rumah Perkalian ini.

Kata Kunci: Rumah Perkalian, DFS (Dept First Search), AI (Artificial

Intelligence), Minimax.

3. LATAR BELAKANG

Game atau permainan pada dasarnya adalah suatu hal yang

menyenangkan bagi semua orang. Semua game memiliki tujuan dan

manfaatnya masing-masing, mulai dari hanya sekedar hiburan untuk

menghilangkan stres, menguji kecerdasan dan ketangkasan, bahkan sampai

kepada proses pembelajaran dan lain sebagainya.

Game Rumah Perkalian adalah sebuah game yang pada dasarnya

mengadopsi konsep permainan Tic-Tac-Toe dan termasuk ke dalam jenis

game puzzle namun disisipi dengan proses pembelajaran matematika yaitu

Page 2: Proposal_sudiyanto Draf 1

2

perkalian. Dalam game ini pemain secara tidak langsung dituntut untuk

menghafal/menerapkan perhitungan perkalian dan hasilnya dengan cepat.

Game ini sangat cocok untuk mereka yang ingin belajar perkalian dan bagi

mereka yang ingin mengasah kemampuan berfikir dalam menyelesaikan

suatu permasalahan yang melibatkan faktor perhitungan. Game ini sudah ada

sejak tahun 90-an khususnya dikalangan anak SD. Namun tidak semua orang

atau anak mengenal permainan ini atau bisa dikatakan belum populer, padahal

jika dilihat dari segi manfaatnya sangat besar dalam membantu proses

pembelajaran.

Berkaca pada permainan Tic-Tac-Toe, permainan ini termasuk game

puzzle yang sangat populer mulai dari permainan manualnya sampai pada

permainan digitalnya. Dalam permainan digitalnya diperlukan sebuah

kecerdasan buatan yang dapat memainkan permainan ini. Salah satu

algoritma yang dapat dipakai untuk kecerdasan buatan adalah Algoritma

Minimax. Algoritma Minimax merupakan salah satu teknik algoritma

permainan yang terkenal. Minimax menggunakan teknik pencarian Depth-

First Search dengan kedalaman terbatas dan fungsi evaluasi yang digunakan

adalah fungsi evaluasi statis. Algoritma ini mengansumsikan bahwa lawan

akan membuat langkah terbaiknya yang dapat dilakukan, algoritma Minimax

cocok digunakan untuk permainan Catur, Othello, Checkers, dan Tic-Tac-

Toe.[1] Algoritma ini akan dipakai dalam game Rumah Perkalian yang akan

dibuat.

Selain itu, pada era tekhnologi seperti sekarang ini perkembangan

tekhnologi tumbuh semakin pesat hingga melahirkan sebuah mobile phone

yang pintar seperti layaknya komputer atau lebih dikenal dengan smartphone.

Kehadiran smartphone memberikan alternatif platform untuk game, selain

karna strukturnya yang hampir sama dengan komputer juga karna kapasitas

penyimpanan memorinya yang besar sehingga dapat menampung game-game

mulai dari kapasitasnya yang kecil hingga yang besar sekalipun. Salah satu

smartphone yang ada ialah Android. Salah satu alasan mengapa Android

banyak digunakan adalah karna Android bersifat Open Source. Sehingga

Page 3: Proposal_sudiyanto Draf 1

3

banyak developer aplikasi bahkan game yang mengembangkan aplikasinya

pada Android.

Berdasarkan hal-hal di atas, maka penulis berkeinginan mencoba

menerapkan algoritma Minimax sebagai kecerdasan buatan bagi komputer

(lawan pemain) untuk membuat aplikasi Game Rumah Perkalian pada

smartphone Android.

4. PERUMUSAN MASALAH

Berdasarkan permasalahan yang telah dipaparkan pada latar belakang

tersebut di atas, maka didapatkan perumusan masalah sebagai berikut :

1. Bagaimana cara merancang dan membuat Game Rumah Perkalian.

2. Bagaimana mengimplementasikan Algoritma Minimax pada komputer

sebagai lawan tanding pemain.

3. Bagaimana implementasi Game Rumah Perkalian pada smartphone

berbasis Android.

5. TUJUAN DAN MANFAAT

5.1. Tujuan

Berdasarkan perumusan masalah di atas, maka tujuan yang ingin dicapai

dalam penelitian ini adalah sebagai berikut :

1. Untuk merancang dan membangun Game Rumah Perkalian.

2. Menerapkan Algoritma Minimax sebagai kecerdasan buatan pada

komputer sebagai lawan tanding pemain dalam Game Rumah

Perkalian.

3. Membuat game edukasi yang dapat dimainkan pada smartphone

berbasis Android.

Page 4: Proposal_sudiyanto Draf 1

4

5.2. Manfaat

Adapun manfaat yang diharapkan dari penelitian ini adalah sebagai

berikut :

1. Dari segi teori, diharaparkan dapat menunjukkan implementasi

Algoritma Minimax sebagai kecerdasan buatan pada lawan tanding

pemain di Game Rumah Perkalian ini.

2. Dari segi edukasi, diharapkan dapat membantu pemain dalam belajar

berhitung perkalian dengan cara bermain.

6. BATASAN MASALAH

Batasan masalah yang akan digunakan dalam penelitian ini adalah :

1. Game ini hanya dimainkan oleh satu pemain saja (player versus

komputer).

2. Game ini akan dibuat dengan menggunakan software Eclipse.

3. Bentuk papan permainan berbentuk matriks 9x9, algoritma pencarian

serta pelacakan yang digunakan yaitu menggunkana algoritma

minimax, dan algoritma ini tidak menggunakan optimasi.

4. Game ini hanya dapat digunakan pada smartphone berbasis Android

dengan versi android 2.3 (Gingerbread) keatas.

5. Game ini khususnya ditujukan bagi anak yang ingin belajar berhitung

perkalian (anak SD kelas 4-6) dan umumnya bagi mereka yang ingin

bermain game puzzle dengan perhitungan.

7. STUDI PUSTAKA

7.1 Tinjauan Pustaka

7.1.1 Aplikasi Rumah Perkalian Berbasis Web Untuk Pembelajaran

Perkalian Siswa Sekolah Dasar [2]

Dyah Ayu (2007) melakukan perancangan dan pembuat Aplikasi

Rumah Perkalian berbasis web, tujuan dari pembuatan aplikasi ini

lebih diarahkan sebagai media pembelajaran bagi sekolah dasar.

Dalam penelitian ini tidak disebutkan metode atau algoritma apa yang

digunakan untuk membuat aplikasi tersebut. Aplikasi ini dibuat untuk

Page 5: Proposal_sudiyanto Draf 1

5

merubah permainan yang dulunya masih manual menjadi yang praktis

dan bisa dimainkan oleh dua pemain yang saling bergantian yang

mana sasaran utamanya adalah anak sekolah dasar yang sedang belajar

perkalian. Dari penelitian ini dapat diambil kesimpulan bahwa aplikasi

yang dibuat lebih ditekankan pada pemvisualisasian permainan yang

manual ke dalam bentuk web yang bisa membantu anak untuk dalam

belajar perkalian yang tidak membosankan.

7.1.2 Pembuatan Kecerdasan Buatan untuk Permainan Catur Jawa

dengan menggunakan Algoritma Minimax [3]

Sesuai dengan judul yang ada pada penelitian ini, tujuan yang ingin

dicapai adalah berusaha untuk membuat sebuah kecerdasan buatan

untuk permainan catur jawa dengan menggunakan algoritma Minimax

serta mengoptimasi algoritma Minimax dengan algoritma Alpha-Beta

untuk performa yang lebih baik.

Tidak jauh berbeda dengan permainan Tic-Tac-Toe, konsep yang

dilakukan pada penelian ini tetap mengedepankan solusi terbaik

sebagai hasil akhir sehingga di sini terdapat pengoptimasian algoritma

Minimax dengan menggunakan Alpha-Beta. Kedalaman pada

Minimax yang digunakan adalah maksimum 6 kedalaman.

Dari penelitian ini memberikan kesimpulan bahwa Algoritma

Minimax mungkin bukan jawaban terbaik untuk semua jenis

permainan yang membutuhkan kecerdasan buatan yang menyerupai

manusia. Kendati demikian, algoritma ini sangat cocok untuk

diimplementasikan pada permainan-permainan yang melibatkan dua

orang, di mana setiap pemain mengetahui semua langkah-langkah

yang mungkin dari pemainlawannya seperti catur, catur jawa,

checkers, dan lain sebagainya.

Perhitungan algoritma yang membutuhkan waktu pencarian yang

lama ini dapat dioptimasi dengan beberapa cara, misalnya dengan

menggunakan alpha-beta cutoffs atau membatasi kedalaman pohon

pencarian. Kompleksitas algoritma minimax bergantung pada

kedalaman maksimum pohon pencarian. Kecerdasan buatan untuk

Page 6: Proposal_sudiyanto Draf 1

6

permainan catur jawa dapat dibuat dengan menggunakan algoritma

minimax

7.1.3 Algoritma Minimax dalam Pengambilan Keputusan pada

Permainan Tic-Tac-Toe [4]

Lingkup permasalahan yang dicoba untuk dibahas pada penelitian

ini adalah penggunaan algoritma Minimax untuk membuat AI yang

dapat mencari dan menentukan keputusan terbaik dalam permainan

Tic-Tac-Toe agar AI atau komputer tidak akan pernah kalah dari

pemain.

Pada penelitian ini algoritma Minimax digunakan untuk membuat

pohon solusi dari awal permainan sampai akhir permainan dengan

semua kemungkinan kondisi dijadikan simpul dari pohon solusi yang

pada akhirnya menuntun AI atau komputer pada hasil akhir

kemenangan atau paling tidak seri.

Kesimpulan yang didapat dari penelitian ini adalah:

1. Algoritma minimax merupakan algoritma yang sangat bagus dan

cocok untuk pengambilan keputusan oleh AI, terutama dalam

permainan nplayer (n>=2).

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

3. Semakin akurat fungsi heuristic yang digunakan, semakin baik pula

pengambilan keputusan yang dilakukan oleh AI.

4. Dengan menggunakan algoritma minimax untuk AI dalam

permainan tic-tac-toe pada penelitian ini, pemain (manusia) tidak

akan pernah menang melawan AI tersebut.

Page 7: Proposal_sudiyanto Draf 1

7

7.1.4 Implementasi Algoritma Minimax pada Permainan Tic-Tac-Toe

Skala 9x9 [1]

Tujuan penelitian ini adalah untuk membandingkan langkah

komputer yang random dengan langkah komputer yang menggunakan

algoritma Minimax untuk permainan Tic-Tac-Toe. Serta untuk

mengetahui solusi pencarian dan pelacakan yang dilakukan algoritma

Minimax pada permainan ini.

Setelah dilakukan pengujian, maka penelitian ini memberikan

kesimpulan bahwa komputer yang menggunakan langkah random

selalu kalah dan komputer tidak memiliki kesempatan untuk menang

ataupun seri. Sedangkan komputer yang menggunakan Minimax

memberikan pernyataan bahwa Minimax adalah teknik pelacakan atau

pencarian dengan kedalam terbatas, semakin banyak level

kedalamannya maka langkah yang dibuat akan lebih baik karena

komputer dapat lebih mengetahui prediksi langkah ke depan.

7.1.5 Aplikasi Permainan Capsah Banting dengan Penerapan

Algoritma Minimax [5]

Penelitian ini bertujuan untuk menguji seberapa baik penggunaan

Algoritma Minimax dalam permainan Capsah Banting. Capsah

Banting adalah satu permainan kartu yang cukup terkenal, diciptakan

di Cina sekitar tahun tahun 1980. Permainan ini memiliki tujuan akhir

untuk menghabiskan kartu secepat mungkin dan memaksimalkan

akumulasi skor sepanjang permainan (kombinasi kartu hampir sama

dengan poker). Player dinyatakan menang apabila semua kartu telah

habis dan player tersebut mendapatkan nilai positif hasil akumulasi

dari sisa kartu pemain yang kalah dan sebaliknya yang kalah akan

mendapatkan nilai negatif dari jumlah kartu yang tersisa.

Disini, Minimax digunakan untuk memperkirakan kartu apakah

yang dapat dikeluarkan pada 1 langkah ke depan.[5] Tujuan dari

permainan ini diterapkan pada Minimax dengan cara menjumlahkan

nilai kombinasi kartu yang dikeluarkan pemain mulai dari awal

sampai terakhir dan hal ini disebut sebagai fungsi evaluasi.

Page 8: Proposal_sudiyanto Draf 1

8

Penelitian ini memberikan kesimpulan bahwa Algoritma Minimax

yang diterapkan memiliki kekurangan pada kedalam pencarian pada

pohon solusi yang hanya untuk satu putaran serta waktu pelacakan

yang lama jika kartu yang dikeluarkan sudah banyak. Permainan ini

juga melibatkan faktor peluang bagi pemain sehingga sebaik apapun

algoritma yang digunakan tetap memiliki peluang kekalahan. Karna

jenis permainan ini adalah imperfect information (imformasi keadaan

lawan yang tidak lengkap) mengakibatkan kinerja pelacakan Minimax

tidak seakurat seperti pada catur atau Tic-Tac-Toe yang berkategori

perfect information. Serta kehandalan Minimax dalam mencari solusi

sangat bergantung terhadap fungsi evaluasi yang digunakan.

7.2 Landasan Teori

7.2.1 Perkalian

Perkalian adalah operasi matematika penskalaan satu bilangan

dengan bilangan lain. Operasi ini adalah salah satu dari empat operasi

dasar di dalam aritmetika dasar (yang lainnya adalah perjumlahan,

perkurangan, dan perbagian). Perkalian terdefinisi untuk seluruh

bilangan di dalam suku-suku perjumlahan yang diulang-ulang;

misalnya, 3 dikali 4 (seringkali dibaca "3 kali 4") dapat dihitung

dengan menjumlahkan 3 salinan dari 4 bersama-sama:

3 x 4 = 4 + 4 + 4 = 12 [6]

Perkalian juga sering disebut penjumlahan berganda. Perkalian

memiliki sifat yang hampir sama dengan penjumlahan dimana sifat

tidak dipengaruhi jika dikalikan dengan 1. Dimana perkalian angka 1

dengan angka yang lainnya menghasilkan angka tersebut. Dalam

sistem perkalian hasil satu bisa sama artinya dengan sisi yang satunya

sehingga hasilnya tidak dapat berubah (AXB =BXA). Sedangkan nilai

nominal 0 tidak mempunyai arti dalam perkalian karena angka

berapapun dikalikan 0 menghasilkan angka 0.

7.2.2 Game

Game merupakan kata dalam bahasa inggris yang berarti

permainan. Permainan adalah sesuatu yang dapat dimainkan dengan

Page 9: Proposal_sudiyanto Draf 1

9

aturan tertentu sehingga ada yang menang dan ada yang kalah,

biasanya dalam konteks tidak serius atau dengan tujuan refreshing.

Dalam kamus bahasa Indonesia “Game” adalah permainan.

Permainan merupakan bagian dari bermain dan bermain juga bagian

dari permainan keduanya saling berhubungan. Permainan adalah

kegiatan yang kompleks yang didalamnya terdapat peraturan, play dan

budaya. Sebuah permainan adalah sebuah sistem dimana pemain

terlibat dalam konflik buatan, disini pemain berinteraksi dengan

sistem dan konflik dalam permainan merupakan rekayasa atau buatan,

dalam permainan terdapat peraturan yang bertujuan untuk membatasi

perilaku pemain dan menentukan permainan. Game bertujuan untuk

menghibur, biasanya game banyak disukai oleh anak-anak hingga

orang dewasa. Games sebenarnya penting untuk perkembangan otak,

untuk meningkatkan konsentrasi dan melatih untuk memecahkan

masalah dengan tepat dan cepat karena dalam game terdapat berbagai

konflik atau masalah yang menuntut kita untuk menyelesaikannya

dengan cepat dan tepat.

Menurut Kresna Ade Putra (2010), Sesuatu dapat dikatakan sebuah

game jika memiliki ciri-ciri umum yang ada pada game, yaitu :

1. Memiliki 2 pemain.

2. Kesempatan bermain bergantian.

3. Kerugian seorang pemain adalah keuntungan bagi pemain lain.

4. Pemain mengetahui seluruh informasi state dari game.

5. Tidak mengandung probabilistik seperti dadu.

Berdasarkan ciri-ciri di atas dapat diberikan contoh game yakni,

chess, go, Nim, tic tac toe, othello, dsb. Sedangkan yang terlihat

seperti game namun sebenarnya tidak termasuk kategori game adalah

seperti, bridge, solitaire, backgammon, roulette, dan sejenisnya.[7]

7.2.3 Rumah Perkalian

Rumah Perkalian merupakan sebuah game yang konsep

permainannya hampir sama dengan game Tic-Tac-Toe hanya saja

terdapat perhitungan perkalian dalam memainkannya. Game ini

Page 10: Proposal_sudiyanto Draf 1

10

termasuk dalam kategori perfect information, karna pemain

mengetahui secara lengkap informasi tentang permainan dan keadaan

lawannya. Gambar berikut ini adalah tampilan dari Game Rumah

Perkalian.

Gambar 7.1. Game Rumah Perkalian

1. Game ini dimainkan oleh dua orang pemain. Masing-masing

pemain memilki biji atau warna atau simbol yang berbeda.

2. Terdapat dua tabel berisi angka, tabel pertama (9x9) adalah arena

permainan dimana pemain harus meletakkan biji-bijinya pada

angka-angka tersebut sehingga terletak pada 5 blog berurutan baik

horisontal, vertikal maupun diagonal sesuai dengan hasil perkalian

pada tabel kedua. Tabel kedua (1x9) adalah arena untuk

meletakkan biji yang dapat dipindah yang digunakan untuk

melakukan perkalian.

3. Pertama-tama pemain 1 menaruh bijinya pada tabel kedua, (misal

pada angka 1) maka dia juga meletakkan biji di tabel pertama pada

angka 1.

4. Selanjutnya pemain 2, misal meletakkan pada angka 9, maka ia

harus meletakkan bijinya juga pada tabel pertama pada angka hasil

9×1 yaitu 9.

Page 11: Proposal_sudiyanto Draf 1

11

5. Selanjutnya pemain 1 menggeser bijinya di tabel kedua, misal pada

angka 2, maka ia meletakkan bijinya lagi pada tabel pertama hasil

dari 2×9 yaitu 18. Begitu juga untuk giliran pemain 2 dan

seterusnya.

6. Jika hasil perkalian yang ada pada tabel pertama lebih dari 1 maka

pemain hanya boleh memilih satu kotak saja.

7. Jika hasil perkalian yang diinginkan pada tabel pertama sudah tidak

ada atau sudah ditempati berarti pemain tidak bisa

menggunakannya lagi.

8. Jika terdapat biji berurutan sebanyak 5 blok tanpa terputus baik

vertikal, horizontal, maupun diagonal berarti dialah pemenangnya.

7.2.4 Kecerdasan Buatan (Artificial Intelligence / AI) dalam Game

Kecerdasan Buatan (Artificial Inteligence) merupakan bagian dari

ilmu komputer yang mempelajari bagaimana membuat mesin

(komputer) dapat melakukan pekerjaan seperti dan sebaik yang

dilakukan oleh manusia bahkan lebih baik daripada yang dilakukan

manusia. Dengan demikian, sistem yang menggunakan kecerdasan

buatan, akan mencoba untuk memberikan output berupa solusi dari

suatu masalah berdasarkan kumpulan pengetahuan yang ada.

Gambar 7.2. Penerapan Konsep Kecerdasan Buatan

Dalam mengimplementasi sistem Kecerdasan Buatan, diperlukan

algoritma-algoritma paralel. Algoritma-algoritma tersebut antara lain

untuk pencarian, optimasi, pengukuran kepuasan, sistem produksi,

pencocokan pola dan graf. Untuk mendukung algoritma-algoritma

tersebut, diperlukan struktur data untuk merepresentasikan

pengetahuan yang mampu melakukan manipulasi paralel.

Page 12: Proposal_sudiyanto Draf 1

12

Dalam sebuah permainan, AI digunakan untuk memodelkan

komputer dalam bersikap dan mengambil keputusan layaknya seperti

manusia atau musuh dari pemain yang dianggap memiliki kemampuan

serta tujuan yang sama. Hal yang semacam ini seringkali disebut

dengan karakter antagonis.

Karakter antagonis (komputer) 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 AI pada karakter antagonis adalah melakukan aksi-

aksi yang dapat memperbesar peluang karakter tersebut untuk

menang.[4]

Sedangkan dalam permainan yang berjenis puzzle biasanya AI

digunakan untuk memprediksi jalur atau langkah yang akan diambil

oleh pemain dan mencoba menghalanginya untuk dapat

memenangkan permainan.

7.2.5 Algoritma Minimax

John von Neuman pada tahun 1944 menguraikan sebuah algoritma

search pada game, dikenal dengan nama Minimax, yang

memaksimalkan posisi pemain dan meminimalkan posisi lawan.[8]

Algoritma Minimax adalah termasuk salah satu algoritma

pencarian (searching) kategori DFS (Dept-First Search) atau disebut

juga dengan pencarian secara dengan kedalaman terbatas, dan fungsi

evaluasi yang digunakan adalah fungsi evaluasi statis, dengan

mengansumsikan bahwa lawan akan membuat langkah terbaiknya

yang dapat dilakukan,. Algoritma ini paling populer dan cocok untuk

diterapkan dalam permainan dengan dua orang pemain, seperti Catur,

Tic-Tac-Toe dan yang lainnya yang merupakan permainan logika.

Page 13: Proposal_sudiyanto Draf 1

13

Karna permainan tersebut adalah permainan logika maka permainan

tersebut merupakan sekumpulan aturan main, dan dasar pemikiran

yang logis. Sehingga dapat dilakukan penafsiran kemungkinan

langkah apa yang akan dilakukan selanjutnya. Bahkan sebagian

pemain mengetahui semua langkah yang mungkin akan diambil oleh

lawan.

Seperti yang disebutkan bahwa Minimax memiliki basis DFS

sehingga juga memiliki pohon pencarian. Pada pohon pencarian yang

dibangun terdapat dua macam simpul yang menunjukkan

kemungkinan langkah yang akan diambil oleh lawan serta perlu

ditentukan pula batas maksimum kedalaman pohon kemungkinan

yang akan dibuat untuk memperkecil ruang pencarian. Misal batas

kedalam yang ditentukan adalah 4 maka masing-masing kedalam

tersebut adalah:

1. Akar : kondisi dari permainan yang sedang berlangsung.

2. Move : kemungkinan langkah yang akan diambil pemain.

3. Opponent’s move : langkah yang harus diambil lawan setelah

pemain melangkah.

4. Player’s next move : langkah selanjutnya yang mungkin

diambil pemain setelah lawan mengambil langkah.

Selain itu pada algoritma Minimax terdapat nilai minimum (MIN)

dan maksimum (MAX). Simpul maksimum adalah simpul yang

memilih simpul anaknya dengan nilai terbesar, sehingga menjadi nilai

dari simpul maksimum tersebut (simpul MAX). Sedangkan simpul

minimum adalah simpul yang memilih simpul anak dengan nilai

terkecil, yang kemudian menjadi nilai dari simpul minimum tersebut

(simpul MIN).

Simpul MAX merupakan simpul yang merepresentasikan langkah

terbaik yang dapat diambil oleh seorang pemain. Sedangkan simpul

MIN merupakan simpul yang merepresentasikan langkah yang dapat

diambil oleh lawan yang dianggap dapat meminimalkan skor lawan

dan memaksimalkan skor pemain dengan menimbang langkah yang

Page 14: Proposal_sudiyanto Draf 1

14

dapat diambil oleh pemain pada giliran berikutnya. Contohnya adalah

seperti berikut:

Gambar 7.3. Pohon dinamis algoritma Minimax

Dari pohon di atas, diperoleh keputusan bahwa pemain akan

mengambil langkah yang mengarah ke simpul bernilai 7 karena

simpul tersebut menuju ke arah kemungkinan langkah yang terbaik.[9]

8. METODOLOGI PENELITIAN

Langkah-langkah yang ditempuh dalam penelitian ini adalah meliputi

kegiatan-kegiatan sebagai berikut:

1. Studi Literartur

Pada tahap ini penulis mencari dan memahami literatur yang berkaitan

dengan permasalahan yang ada seperti:

a. Algoritma Minimax dan Penerapannya,

b. Game Rumah Perkalian

2. Analisis Sistem

Menganalisa bagaiamana cara menerapkan konsep algoritma Minimax pada

permainan Game Rumah Perkalian.

3. Perancangan dan Implementasi Algoritma

Page 15: Proposal_sudiyanto Draf 1

15

Pada tahap ini dilakukan perancangan sesuai dengan hasil dari analisis sistem

dan dilanjutkan dengan mengimplementasikan hasil analisis ke dalam sistem.

4. Uji Coba dan Evaluasi

Pada tahap ini dilakukan pengujian dan evaluasi terhadap hasil dari

implementasi sistem. Sehingga dapat diketahui kesesuaian sistem terhadap

permasalahan.

5. Penyusunan Laporan

Pada tahap ini dilakukan penulisan mengenai apa yang diperoleh dan

dikerjakan mulai dari kegiatan studi literatur hingga menghasilkan hasil

yang diinginkan yaitu rancang bangun game Rumah Perkalian menggunakan

algoritma Minimax berbasis Android.

9. RANCANGAN SISTEM

9.1. Alur Penelitian

Langkah penelitian yang akan dilakukan tergambar pada diagram alir berikut

ini:

Gambar 9.1. Alur Penelitian

Page 16: Proposal_sudiyanto Draf 1

16

9.2. Konsep Game

Gambar 9.2. Diagram Konsep Game

1. Modul Utama

Modul utama bertanggung jawab sebagai penentu giliran pemain yang

akan melangkah selanjutnya, serta mengidentifikasi permainan jika telah

selesai.

2. Manusia (Human Player)

Dalam hal ini human player adalah user yang akan bermaina melawan

komputer, setelah melakukan pergerakan maka human player akan

menunggu pergerakan komputer.

3. Komputer (Artificial Intelligence)

Komputer menentukan pergerakan terbaik dengan konsep algoritma

Minimax menggunakan dengan kedalaman yang ditentukan untuk

memperkirakan langkah berikutnya.

4. Evaluator

Evaluator disini bertindak untuk mengevaluasi siapa yang menang sesuai

dengan peraturan atau algoritma yang telah ditentukan.

Page 17: Proposal_sudiyanto Draf 1

17

9.3. Rancangan Game

Gambar 9.3. Flowchart Rancangan Sistem pada Game

Page 18: Proposal_sudiyanto Draf 1

18

10. JADWAL KEGIATAN

Adapun jadwal kegiatan yang akan dilaksanakan seperti tabel 1.

Tabel 1. Jadwal kegiatan

No Tahap Pelaksanaan

Bulan

Bulan I Bulan II Bulan III Bulan IV

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

1 Studi Literatur

2 Analisis Sistem

3

Perancangan dan

Implementasi

Algoritma

4 Uji Coba dan Evaluasi

5 Penyusunan Laporan

11. DAFTAR PUSTAKA

[1] Firmansyah, D., H. Implementasi Algoritma Minimax Pada Permainan Tic-

Tac-Toe Skala 9x9. 2009. URL:

http://elib.unikom.ac.id/files/disk1/317/jbptunikompp-gdl-dickyherma-

15803-1-01cover.pdf, diakses tanggal 10 September 2013.

[2] Ayu, D. Aplikasi Rumah Perkalian Berbasis Web Untuk Pembelajaran

Perkalian Siswa Sekolah Dasar. 2007. URL: http://www.eepis-

its.edu/uploadta/abstrakdetail.php?id=201, diakses tanggal 26 Agustus 2013.

[3] Bahr, A., B. Pembuatan Kecerdasan Buatan untuk Permainan Catur Jawa

dengan menggunakan Algoritma Minimax. 2008. URL:

http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2007-

2008/Makalah2008/MakalahIF2251-2008-084.pdf, diakses tanggal 28

Agustus 2013.

[4] Akbar, K., S., R. Algoritma Minimax dalam Pengambilan Keputusan pada

Permainan Tic-Tac-Toe. 2007. URL:

http://webmail.informatika.org/~rinaldi/Stmik/2006-

2007/Makalah_2007/MakalahSTMIK2007-024.pdf, diakses tanggal 12

September 2013.

Page 19: Proposal_sudiyanto Draf 1

19

[5] Toba, H., dan Kurniawan, B. Aplikasi Permainan Capsah Banting dengan

Penerapan Algoritma Minimax. Jurnal Informatika. 4: 12-27. 2008.

[6] Wikipedia Indonesia, Ensiklopedia Bebas. Perkalian. 2013. URL:

http://id.wikipedia.org/wiki/Perkalian, diakses tanggal 27 September 2013.

[7] Putra, K., A. Game Nim dengan Reinforcement Learning. Proyek

AkhirProgram Studi Teknik Informatika – Politeknik Elektronika Negeri

Surabaya. Surabaya. 2010.

[8] Anonim. Bab 4 Algoritma Pencarian (Searching Algorithm). 2007. URL:

http://lecturer.eepis-its.edu/~entin/Kecerdasan%20Buatan/Buku/Bab%204%

20Algoritma%20Pencarian.pdf, diakses tanggal 27 September 2013.

[9] Amelia, A. Penerapan Algoritma DFS pada Permainan Othello. 2012.

URL: http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2012-

2013/Makalah2012/Makalah-IF3051-2012-090.pdf, diakses tanggal 23

September 2013.