REVIEW  JURNAL


Penerapan Algoritma Negamax dan Alpha Beta Pruning pada Permainan Othello

Penulis : William, Regiza Giovanno, Daniel Udjulawa
Program Studi Teknik Informatika, STMIK GI MDP, Palembang STMIK GI MDP; Jl. Rajawali No.14, +62(711)376400/376360
Jatisi, Vol. 2 No. 2 Maret 2016 
ISSN PRINT : 2407-4322 | ISSN ONLINE : 2503-2933


Latar Belakang

Pada latar belakang ini, penulis menceritakan Kecerdasan buatan (artificial intelligence) merupakan bagian dari ilmu pengetahuan komputer yang khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas dalam sistem komputer.[1] Perkembangan kecerdasan buatan di dunia internasional khususnya di negara-negara barat telah mampu menciptakan teknologi yang mampu menyaingi bahkan melebihi kecerdasan manusia. Mereka telah mampu menciptakan berbagai teknologi yang menggunakan kecerdasan buatan mulai dari sistem pakar, sistem penunjang keputusan hingga game.Namun pengembangan kecerdasan buatan dalam dunia game ini masih sangat minim dilakukan di Indonesia khususnya di STMIK GI MDP, Palembang. Hal itu dapat kita lihat dengan minimnya karya-karya ilmiah (khususnya pada Skripsi dan Tugas Akhir) dan penelitian-penelitian mengenai pengimplementasian algoritma kecerdasan buatan dalam sebuah game.Salah satu contoh game yang dapat dimasukkan ke dalamnya kecerdasan buatan adalah Othello/Reversi. Algoritma yang digunakan adalah Negamaxdengan dipadukan dengan algoritma Alpha-Beta Pruningyang berfungsi untuk mengoptimalisasi pohon permainan. Dipilihnya game Othellopada penelitian ini dikarenakan game ini memiliki tingkat kerumitan yang menengah jika dibandingan dengan Tic-Tac-Toeyang tergolong mudah dan catur yang tergolong sangat rumit. Sedangkan algoritma Negamaxini dipilih karena algoritma ini memang dibuat untuk permainan yang membutuhkan dua pemain seperti Othello.

Tujuan Penulis

Tujuan dari penelitian ini adalah untuk menerapkan dan mengimplementasikan Algoritma Negamax dan Algoritma Alpha Beta Pruning pada permainan Othello sebagai lawan dari pemain, sehingga mesin memiliki kepandaian dalam mengambil langkah dan strategi dalam permainan Othello, permainan ini dibuat dengan menggunakan framework Phonegap.Saat proses pembuatan permainan,dilakukan pembuatan antarmuka dan mengindentifikasi alur kerja dari Algoritma Negamax dan Algoritma Alpha Beta Pruning ke dalam kecerdasan buatan permainan Othello.


Metode Penelitian

Tahapan dalama penelitian ini adalah diawali dengan pengembangan aplikasi sebagai alat bantu pengujian atas algoritma yang diterapkan. Pengembangan aplilkasi menggunakan metode prototyping. Pengujian aplikasi menggunakan metode black box. Hasil yang didapat dari hasil pengujian aplikasi merupakan hasil penggunaan algoritma dalam permaian Othello.


Pembahasan

Aplikasi ini dilakukan sesuai tahapan dari Prototype. Adapun tahapan-tahapan dalam prototyping tersebut adalah sebagai berikut :

1. Perencanaan Prototyping
platform ditentukan dan dilakukan identifikasi kebutuhan sistem yang akan dibuat meliputi tujuan, manfaat dan ruang lingkup data yang dikumpulkan dengan membaca buku dan jurnal yang berkaitan dengan aplikasi.

2. Mendesain Prototyping
Prototype dirancang dengan membuat perancangan sementara yang berfokus pada penyajian aplikasi dan skenario yang akan dibuat.

a. Use case Aplikasi Permainan

Diagram use case merupakan teknik menganalisa kebutuhan fungsional dari sistem yang akan dibangun dengan menggambarkan pelaku sistem serta kejadian saat interaksi dengan sistem. 

b. Arsitektur Permainan

Arsitektur permainan ini bertujuan untuk menjelaskan proses-prosedur dari alur algoritma permainan  Othello yang dibangun dengan menggunakan alat bantu berupa flowchart (diagram alir).
1) Diagram Alir Permainan                                                                                                              
Merupakan alur proses dari aplikasi permainan Othello
2) Diagram Alir Algoritma                                                                                                                    
Alur proses perhitungan pada level
 

Kesimpulan


Pada penelitian ini diperoleh kesimpulan-kesimpulan sebagai berikut ini:

1. Algoritma Negamax Alpha Beta Pruning pada permainan Othello membangun pohon permainan dengan menggunakan kondisi setelah lawan melangkah sebagai root pada pohon permainan. Selanjutnya dengan melakukan langkah pada mobility-mobilitydi setiap node-node pohon permainan diperoleh node anak dari node-nodetersebut.

2. Algoritma negamax memanggil fungsi evaluasi saat kedalaman pohon pencarian sudah sesuai dengan yang diinginkan. Nilai yang didapat pada fungsi evaluasi menjadi nilai dari node tersebut.
3. Dengan menggunakan nilai dari setiap node anak di kedalaman terbawah, nilai alpha akan berubah jika kondisi terpenuhi dan akan dibandingkan dengan nilai beta. Nilai alpha dan beta digunakan untuk melakukan pruning.

4. Salah satu teknik implementasi yang sesuai untuk algoritma Negamax Alpha Beta Pruning
adalah menggunakan fungsi yang bersifat rekursif karena pada dasarnya fungsi yang digunakan untuk menelusuri setiap node adalah sama.


Saran


Untuk pengembangan penelitian selanjutnya dapat diberikan beberapa saran sebagai berikut:

1. Salah satu faktor penting dalam komputer memilih langkah adalah fungsi evaluasi. Penelitian selanjutnya dapat meningkatkan kemampuan komputer dalam menilai sebuah kondisi dengan meningkatkan keakuratan fungsi evaluasi pada permainan Othello.

2. Selain fungsi evaluasi, salah satu hal yang juga penting dalam permainan Othello adalah opening game (permainan pembukaan). Penelitian selanjutnya dapat diarahkan pada implementasi opening game pada Othellountuk meningkatkan tingkat kemenangan komputer.


Daftar Pustaka

[1] Chandra, Yunita, Sabloak, Simmi & Angreni, Renni 2014, Penerapan Algoritma
Minimax dan Breadth First Search pada Permainan Othello Menggunakan Framework
Phonegap, Sekolah Tinggi Manajemen Informatika dan Komputer Global Informatika
Multi Data Palembang, Palembang.

[2] Stephanus, Hermawan S. 2011, Mudah Membuat Aplikasi Android, Andi Yogyakarta,
Yogyakarta

[3] Sidik, Betha & Pohan, Iskandar Husni 2012, Pemrograman Web dengan HTML,
Informatika, Bandung

[4] Sidik, Betha 2011, Java Script, Informatika, Bandung





Komentar

Postingan populer dari blog ini

Posttest_Analisis Kinerja Sistem