Penerapan Algoritma Column by Column dan Depth-First Search dalam Permainan Babylon Tower

BAB 1
PENDAHULUAN

1.1. Latar Belakang

Babylon Tower merupakan salah satu permainan puzzle tiga dimensi yang diciptakan

oleh Endre Pap dan dipatenkan pada tahun 1982. Babylon Tower dapat dimainkan
dengan cara diputar dan digeser, sehingga Babylon Tower memiliki jumlah
kemungkinan posisi bola yang sangat besar serta jumlah cara penyelesaian yang
sangat besar pula (Scherpuis, 2015).
Terdapat dua jenis metode yang dapat digunakan untuk menyelesaikan
Babylon Tower , yaitu disc by disc dan column by column (Scherpuis, 2015). Column
by column merupakan metode yang lebih umum digunakan dalam menyelesaikan
Babylon Tower karena lebih mudah dipelajari oleh pemain pemula. Column by column

dilakukan dengan mengelompokkan terlebih dahulu bola-bola dengan warna yang
sejenis dalam setiap kolom yang sama, kemudian mengurutkannya berdasarkan
tingkat kecerahan warna setiap bola. Namun pada kenyataanya, algoritma column by
column tidak selalu memberikan solusi pada Babylon Tower yang berada dalam


keadaan acak. Kadang-kadang algoritma column by column dapat menemui jalan
buntu sehingga pemain perlu mempertimbangkan langkah lain yang lebih baik diambil
untuk menghindari jalan buntu tersebut. Oleh karena itu, penulis tertarik untuk
mengembangkan algoritma column by column yang dapat diterapkan dalam
permainan Babylon Tower supaya dapat selalu menemukan solusi.
Banyak penelitian yang telah dilakukan untuk menyelesaikan berbagai jenis
game puzzle dengan menggunakan berbagai jenis algoritma. Korf & Felner (2007)

menerapkan beberapa algoritma pencarian seperti frontier search, disk-based search,
parallel processing, pattern database heuristic dan breadth-first heuristic search

untuk mengatasi masalah dalam permainan four-peg Towers of Hanoi. Selanjutnya,
Jing et al. (2009) melakukan penelitian terhadap metode yang dapat diterapkan dalam
permainan Japanese puzzle atau dikenal juga sebagai nonogram. Metode tersebut

Universitas Sumatera Utara

2

terdiri dari dua tahap, yaitu menentukan cell-cell yang akan diwarnai melalui beberapa

aturan logika kemudian algoritma depth-first search akan dijalankan untuk
menyelesaikan cell-cell yang tersisa. Penelitian terhadap Japanese puzzle juga pernah
dilakukan oleh Stefani et al. (2012) dengan menggunakan metode rule-based dan
algoritma best-first search. Panov & Koceski (2014) menggunakan pendekatan
heuristik yang diterapkan dalam permainan Kakuro. Algoritma yang digunakan dalam
penelitian tersebut adalah Self-Adapting Harmony Search (SAHS). Algoritma SAHS
dapat ditingkatkan apabila dilakukan tahap perhitungan terlebih dahulu untuk
menentukan kombinasi penjumlahan bilangan yang dapat menghasilkan bilangan yang
diinginkan. Abdel-Raouf et al. (2014) menggunakan algoritma chaotic harmony
search untuk mengembangkan algoritma flower pollination yang diterapkan dalam

permainan Sudoku. Dari hasil penelitian ini, algoritma tersebut mampu menemukan
jalan yang lebih baik untuk menyelesaikan soal Sudoku.
Babylon Tower dapat diselesaikan dengan mengkombinasikan algoritma
column by column dengan algoritma pencarian lainnya. Oleh karena itu, pada

penelitian

ini


akan

dirancang

aplikasi

permainan

Babylon

Tower

yang

diimplementasikan dengan algoritma column by column dan depth-first search untuk
menyelesaikan permainan Babylon Tower .

1.2. Rumusan Masalah

Dalam permainan Babylon Tower , terdapat 36 posisi serta sebuah celah yang dapat

ditempati oleh setiap bola. Setiap bola yang digunakan dalam permainan Babylon
Tower juga memiliki jenis warna yang berbeda-beda dengan tingkat kecerahan setiap

jenis warna yang berbeda-beda pula, sehingga tidak terdapat bola dengan warna dan
tingkat kecerahan yang sama dalam permainan tersebut. Hal ini menyebabkan
terdapatnya banyak kemungkinan posisi berbeda yang dapat ditempati oleh setiap
bola. Dalam permainan Babylon Tower , terdapat langkah-langkah yang perlu
dipertimbangkan untuk diambil karena langkah yang diambil mungkin saja menemui
jalan buntu atau menghasilkan keadaan yang lebih acak lagi sehingga perlu
dipertimbangkan langkah lain yang lebih baik diambil untuk menghindari jalan buntu
tersebut. Selain itu, perlu juga diperhatikan tingkat kecerahan setiap warna bola yang
harus diurutkan secara vertikal. Oleh karena itu, dalam tugas akhir ini akan dilakukan

Universitas Sumatera Utara

3

penelitian terhadap algoritma yang dapat diterapkan untuk mengatasi masalah yang
dihadapi dalam permainan Babylon Tower .


1.3. Batasan Masalah

Beberapa batasan masalah pada tugas akhir ini adalah sebagai berikut:
1. Permainan ini hanya dapat dimainkan oleh satu orang pemain (single player ).
2. Babylon Tower yang digunakan berukuran 6 x 6.
3. Babylon Tower akan diacak oleh program sebelum dimainkan.
4. Babylon Tower dapat dijalankan oleh user atau dijalankan oleh AI untuk
menemukan solusi.

1.4. Tujuan Penelitian

Tujuan penelitian ini adalah untuk menerapkan algoritma column by column dan
depth-first search untuk mengurutkan setiap bola dengan warna yang sama pada

kolom yang sama serta mengurutkan setiap kolom berdasarkan tingkat kecerahan
warna bola pada setiap kolom Babylon Tower .

1.5. Manfaat Penelitian

Manfaat dari penelitian ini adalah:

1. Sebagai sarana untuk mempelajari cara menyelesaikan permainan Babylon Tower .
2. Untuk menambah ilmu pengetahuan penulis tentang algoritma column by column
dan depth-first search yang diterapkan dalam permainan Babylon Tower .
3. Sebagai referensi untuk penelitian selanjutnya yang berhubungan dengan
penyelesaian permainan puzzle lainnya.

Universitas Sumatera Utara

4

1.6. Metodologi Penelitian

Tahapan-tahapan yang akan dilakukan pada pelaksanaan penelitian adalah sebagai
berikut:
1.

Studi Literatur
Studi Literatur dilakukan dalam rangka pengumpulan bahan referensi mengenai
permainan Babylon Tower , game architecture, struktur data dan algoritma dalam
game, path finding, blind search, dan kecerdasan buatan dalam game.


2.

Analisis Permasalahan
Pada tahap ini dilakukan analisis terhadap bahan referensi yang telah
dikumpulkan pada tahap sebelumnya untuk mendapatkan pemahaman mengenai
algoritma yang diterapkan dalam permainan Babylon Tower , yakni algoritma
column by column dan depth-first search.

3.

Implementasi
Pada tahap ini dilakukan perancangan terhadap game mechanic yang digunakan
dalam permaian Babylon Tower serta dilakukan implementasi algoritma column
by column dan depth-first search dalam mengatasi masalah dalam permainan
Babylon Tower .

4.

Evaluasi dan Analisis Hasil

Pada tahap ini dilakukan evaluasi serta analisis terhadap hasil yang didapatkan
melalui implementasi algoritma column by column dan depth-first search dalam
mengatasi masalah dalam permainan Babylon Tower .

5.

Dokumentasi dan Pelaporan
Pada tahap ini dilakukan dokumentasi dan penyusunan laporan hasil evaluasi dan
analisis serta implementasi algoritma column by column dan depth-first search
dalam mengatasi masalah dalam permainan Babylon Tower .

Universitas Sumatera Utara

5

1.7. Sistematika Penulisan

Sistematika penulisan pada skripsi ini terdiri dari lima bab yaitu sebagai berikut:

Bab 1: Pendahuluan

Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan penelitian,
manfaat penelitian, metodologi penelitian, serta sistematika penelitian.

Bab 2: Landasan Teori
Bab ini berisi kumpulan teori-teori yang berkaitan dengan penelitian tugas akhir ini.
Teori-teori yang berhubungan dengan permainan Babylon Tower , game architecture,
struktur data dan algoritma dalam game, path finding, blind search, serta kecerdasan
buatan dalam game akan dibahas pada bab ini.

Bab 3: Analisis dan Perancangan
Bab ini membahas analisis dan penerapan algoritma column by column dan depth-first
search untuk mengatasi masalah-masalah dalam permainan Babylon Tower . Pada bab

ini akan dijabarkan arsitektur umum yang digunakan.

Bab 4: Implementasi dan Pengujian
Bab ini berisi pembahasan tentang implementasi dari analisis dan perancangan yang
telah dijabarkan pada bab 3. Selain itu, hasil yang didapatkan dari pengujian yang
dilakukan terhadap implementasi yang dilakukan juga dijabarkan pada bab ini.


Bab 5: Kesimpulan dan Saran
Bab ini berisi ringkasan serta kesimpulan dari rancangan yang telah dibahas pada bab
3, serta hasil penelitian yang dijabarkan pada bab 4. Bagian akhir dari bab ini akan
berisi saran-saran yang diajukan untuk pengembanagan penelitian selanjutnya.

Universitas Sumatera Utara