Two Players Four Players
IMPLEMENTASI DAN PENGUJIAN
4.1.Implementasi
Tahap implementasi merupakan tahapan dalam membuat dan menjalankan aplikasi sesuai dengan hasil analisis dan perancangan sistem sebelumnya. Implementasi sistem dilakukan untuk mengetahui sistem yang dirancang dapat berjalan sesuai dengan yang diinginkan
4.1.1. Spesifikasi Perangkat Keras
Perangkat keras yang digunakan dalam membangun dan menjalankan aplikasi permainan Halma memiliki spesifikasi sebagai berikut :
1. Prosesor : Intel(R) Core(TM)i5-2410M CPU @ 2.30GHz 2. RAM : 2,7 GB
3. Harddisk : 500 GB 4. Monitor : 12”
5. Resolusi : 1366 x 768
4.1.2. Spesifikasi Perangkat Lunak
Aplikasi permainan Halma ini dibuat dengan bahasa program Java dan game engine LibGDX. Perangkat lunak yang digunakan dalam membangun dan menjalankan aplikasi permainan Halma adalah Netbeans IDE pada sistem operasi Windows 8.1 Pro 32 bit.
4.1.3. Hasil Eksekusi Aplikasi
Berikut ini akan dijelaskan hasil dari eksekusi aplikasi permainan Halma yang dijalankan pada Netbeans IDE 8.1.
4.1.3.1. Tampilan Utama
Saat mulai menjalankan aplikasi, akan muncul tampilan utama yang dapat dilihat pada Gambar 4.1. Tampilan ini berisi 3 pilihan menu yaitu New Game untuk memulai permainan baru, How to Play untuk mengetahui cara bermain, dan About untuk mengetahui informasi mengenai aplikasi.
Gambar 4.1. Tampilan Utama
4.1.3.2. Tampilan Game Mode
Tampilan Game Mode muncul setelah memilih tombol New Game pada tampilan utama. Pada tampilan ini user dapat memilih mode permainan dengan memilih menu
TwoPlayers untuk bermain dengan 1 AI atau FourPlayers untuk bermain dengan 3 AI.
Selain itu diberikan tombol Back untuk kembali ke tampilan utama. Tampilan Game Mode dapat dilihat pada Gambar 4.2.
Gambar 4.2. Tampilan Game Mode
4.1.3.3. Tampilan Game
Tampilan Game merupakan tampilan dimana user dan AI bermain. Untuk jumlah 2 pemain maka tampilan permainan seperti diperlihatkan pada Gambar 4.3 (a). Pion user
berwarna merah dan bermain dengan pion AI berwarna kuning yang letakknya saling berseberangan.
Sedangkan untuk jumlah 4 pemain, tampilan permainan seperti diperlihatkan pada Gambar 4.3 (b). Pion user tetap berwarna merah dan bermain dengan pion biru, kuning, dan hijau masing-masing milik AI. Info pemain ditampilkan 2 untuk 2 pemain dan 4 untuk 4 pemain. Selain itu, ditampilkan juga label Totalturns untuk menghitung jumlah giliran seluruh pemain, dan tombol End Game untuk mengakhiri permainan dengan menampilkan panel akhir permainan.
(a)
(b)
4.2. Pengujian
Tahap pengujian merupakan tahap dimana aplikasi dan AI akan diuji untuk mengetahui apakah sesuai dengan hasil analisis dan perancangan yang dilakukan sebelumnya.
4.2.1. Pengujian Proses Bermain
Pengujian ini dilakukan untuk menunjukkan proses bermain dari awal hingga akhir sehingga dapat diketahui proses bermain berjalan sesuai dengan yang diharapkan. Untuk memulai bermain user memilih menu New Game, kemudian memilih jumlah pemain. Pengujian proses bermain dilakukan untuk jumlah 2 pemain.
Pion user berwarna merah dan mendapatkan giliran yang pertama. Posisi pion
user berseberangan dengan pion kuning. Panel info yang diberi garis tepi sesuai warna pion pemain, menunjukkan giliran pemain saat itu. User memilih pion dengan mengklik kanan pada pion yang ingin dipindahkan. Maka langkah yang diizinkan untuk pion yang dipilih muncul dengan kotak berwarna biru muda, seperti diperlihatkan pada Gambar 4.4.
Gambar 4.4. Kotak Biru Menunjukkan Langkah yang Diizinkan
User memindahkan pion yang dipilih dengan mengklik kiri kotak biru. Perpindahan pion menuju kotak biru diperlihatkan pada Gambar 4.5.
Gambar 4.5. Pion User Berpindah
Pada Gambar 4.5 panel info Moves bertambah 1 setelah pemain melakukan langkah. Status saat giliran pemain adalah Playing sedangkan jika bukan giliran pemain maka status pemain adalah Waiting seperti yang diperlihatkan panel info pemain AI.
Total turns saat awal permainan dimulai dari 1. Selanjutnya pemain AI akan langsung
bermain dengan memindahkan pionnya, yang dapat dilihat pada Gambar 4.6.
Panel info pemain AI berubah dengan diberi warna garis tepi panel sesuai warna pion. Status pemain juga berubah menjadi Playing sedangkan status user menjadi
Waiting. Moves pada panel info pemain AI juga terhitung 1. Thinkingtime menghitung
waktu proses AI dalam menentukan langkah pion selama 54 ms. Total turns setiap giliran bertambah 1 sehingga Total turns menjadi 2.
Gambar 4.6. Giliran Pemain AI Memindahkan Pion
Kemudian permainan berlangsung pada giliran-giliran berikutnya. Pada Gambar 4.7 dapat dilihat langkah lompatan yang dilakukan pemain user dan AI.
Gambar 4.7. Langkah Lompatan Pion User dan AI
Pada Gambar 4.7 dapat dilihat informasi pada panel info pemain juga berubah.
time pemain AI berubah menjadi 66 ms, menunjukkan proses menentukan langkah pion bertambah lama. Total turns menjadi 5 yang artinya total giliran hingga pemain selanjutnya adalah giliran ke-5.
Setelah beberapa giliran hingga pertengahan permainan, dapat dilihat pada Gambar 4.8 sebaran pion pemain AI mengarah ke daerah tujuan. Hal ini dikarenakan penentuan langkah pion AI menggunakan algoritma MCTS sesuai dengan strategi perhitungan jarak yang mengarah ke titik tujuan terjauh.
Gambar 4.8. Sebaran Pion AI Mengarah ke Daerah Tujuan
Pada Gambar 4.8 menunjukkan Moves ke 24 dengan total giliran 49, pion AI dan user sudah berada di tengah papan permainan. AI cenderung meninggalkan pion dibelakangnya dan lebih memilih langkah terjauh. Thinking time AI saat tengah permainan juga semakin lama yaitu 206 ms. Hal ini menunjukkan semakin banyak langkah yang tersedia semakin lama pula waktu proses algoritma MCTS
Saat permainan berlangsung user dapat mengakhiri permainan dengan mengklik tombol EndGame. Maka akan muncul dialog konfirmasi ingin mengakhiri permainan atau tidak, dapat dilihat pada Gambar 4.9.
Gambar 4.9. Dialog Konfirmasi End Game
Jika user ingin mengakhiri permainan maka panel akhir permainan akan muncul dan menentukan pemenang dari score jumlah pion di daerah tujuan paling banyak. Pada Gambar 4.10 menunjukkan pemain user sebagai pemenangnya karena pion user di daerah tujuan ada 9 lebih banyak dari jumlah pion pemain AI yaitu 8. Total turns saat permainan diakhiri pada giliran ke 127.
Sedangkan jika permainan berakhir saat salah satu pemain dapat memindahkan seluruh pion ke daerah tujuan maka panel akhir permainan muncul dengan menampilkan nama pemain tersebut beserta Total turns selama bermain. Perhatikan Gambar 4.11.
Gambar 4.10. Panel Akhir Permainan Halma Belum Selesai
4.2.2. Pengujian Batas Jumlah Iterasi MCTS
Batas iterasi proses algoritma MCTS yang digunakan dalam penelitian ini adalah jumlah iterasi. Pengujian batas iterasi dilakukan untuk melihat total giliran paling sedikit yang diperoleh dari jumlah iterasi yang diuji. Pengujian dilakukan 10 kali antara AI dengan AI masing-masing untuk tiap jumlah iterasi 70, 100, 250, dan 500 pada mode permainan Two Players dan Four Players. Hasil pengujian batas iterasi dapat dilihat pada Tabel 4.1.
Tabel 4.1. Hasil Pengujian Batas Iterasi (a) Two Players dan (b) Four Players (a)
Jumlah Iterasi
Total Giliran pada Pengujian
1 2 3 4 5 6 7 8 9 10 70 185 176 157 163 182 173 173 207 178 168 100 169 148 150 190 178 132 142 159 158 194 250 152 144 143 136 142 127 137 121 127 134 500 162 141 128 149 135 113 143 128 145 124 (b) Jumlah Iterasi
Total Giliran pada Pengujian
1 2 3 4 5 6 7 8 9 10 70 338 324 280 335 312 291 384 317 310 322 100 256 275 288 315 315 281 321 274 298 295 250 242 253 281 265 259 228 225 260 236 291 500 236 192 243 245 215 234 241 260 234 213
Berdasarkan Tabel 4.1 semakin besar jumlah iterasi, maka semakin sedikit total giliran yang diperoleh. Dari seluruh pengujian yang dilakukan, diperoleh total giliran terpendek untuk mode permainan Two Players dan Four Players masing-masing sebanyak 113 dan 192 dari jumlah iterasi 500. Sehingga jumlah iterasi sebanyak 500 kali digunakan MCTS sebagai AI dalam menentukan langkah pion Halma untuk menghadapai user sebagai humanplayer.
4.2.3. Pengujian Kemampuan AI terhadap User
Pengujian kemampuan antara user sebagai human player dan AI yang menggunakan algoritma MCTS dalam menyelesaikan permainan Halma dilakukan 10 kali masing- masing untuk mode permainan TwoPlayers dan FourPlayers. Batas iterasi MCTS yang digunakan berupa jumlah iterasi sebanyak 500 kali. Hasil pengujian untuk mode permainan TwoPlayers dapat dilihat pada Tabel 4.2.
Tabel 4.2. Hasil Pengujian Kemampuan AI terhadap User pada Mode Two Players
No. User AI Total Giliran
1. Kalah Menang 132 2. Kalah Menang 116 3. Kalah Menang 132 4. Menang Kalah 153 5. Menang Kalah 157 6. Menang Kalah 147 7. Kalah Menang 152 8. Kalah Menang 150 9. Menang Kalah 133 10. Kalah Menang 118
Dari Tabel 4.2 user hanya memiliki peluang untuk memenangkan permainan sebesar 40% dan peluang AI memenangkan permainan sebesar 60%. Total giliran terlama diperoleh dari kemenangan AI sebanyak 152. Total giliran terpendek diperoleh dari kemenangan AI sebanyak 116 giliran. Total giliran terpendek yang diperoleh tidak berbeda jauh dengan total giliran terpendek yang diperoleh pada pengujian batas iterasi sebelumnya yaitu 113.
Pengujian selanjutnya dilakukan untuk mode permainan Four Players antara satu user dan tiga AI. Dengan menggunakan batas iterasi yang sama, hasil pengujian tersebut dapat dilihat pada Tabel 4.3.
Tabel 4.3. Hasil Pengujian Kemampuan AI terhadap User pada Mode Four Players
No. User AI Total Giliran
1. Kalah Menang 248 2 Menang Human 265 3 Kalah Menang 259 4 Kalah Menang 248 5 Menang Kalah 265 6 Kalah Menang 195 7 Kalah Menang 244 8 Kalah Menang 262 9 Kalah Menang 246 10. Kalah Menang 223
Dari Tabel 4.3, user memiliki lebih sedikit peluang untuk memenangkan permainan sebesar 20%. Hal ini dikarenakan jumlah pemain AI yang dihadapi lebih banyak dari mode TwoPlayers. Sehingga peluang pemain AI memenangkan permainan sebesar 80%. Total giliran terlama diperoleh dari kemenangan AI sebanyak 265 giliran. Total giliran terpendek sebanyak 195 giliran diperoleh dari kemenangan AI. Total giliran terpendek tidak berbeda jauh dengan total giliran terpendek yang diperoleh pada pengujian batas iterasi sebelumnya yaitu 192.
Total giliran yang didapat dari pengujian-pengujian yang dilakukan bisa dipengaruhi dari kemampuan human player atau pemain AI lainnya dalam bermain. Langkah-langkah yang diambil human player dapat membantu atau mencegah AI memperoleh total giliran terpendek. Hal ini tentu tidak lepas dari kemampuan algoritma MCTS itu sendiri dalam menentukan langkah pion pada permainan Halma.
BAB 5