IMPLEMENTASI ALGORITMA GADDAG DAN NEGASCOUT
UNTUK OPTIMALISASI COMPUTER PLAYER DALAM
PERMAINAN SCRABBLE
SKRIPSI
Diajukan untuk Memenuhi Sebagian dari
Syarat untuk Memperoleh Gelar Sarjana Komputer
Program Studi Ilmu Komputer
Oleh:
Renisa Suryahadikusumah
1005215
PROGRAM STUDI ILMU KOMPUTER
FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS PENDIDIKAN INDONESIA
Oleh
Renisa Suryahadikusumah
Sebuah skripsi yang diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Komputer pada Fakultas Pendidikan Matematika dan Ilmu Pengetahuan
Alam
© Renisa 2014
Universitas Pendidikan Indonesia Oktober 2014
Hak Cipta dilindungi undang-undang.
IMPLEMENTASI ALGORITMA GADDAG DAN NEGASCOUT UNTUK OPTIMALISASI COMPUTER PLAYER DALAM PERMAINAN SCRABBLE
RENISA SURYAHADIKUSUMAH
1005215
DISETUJUI DAN DISAHKAN OLEH PEMBIMBING
Pembimbing I,
Rosa Ariani Sukamto, M.T. NIP. 198109182009122003
Pembimbing II,
Harsa Wara P, M.Pd NIP. 198008102009121003
Mengetahui,
Ketua Program Studi Ilmu Komputer
DAFTAR ISI
ABSTRAK………i
KATA PENGANTAR………..………..iii
UCAPAN TERIMAKASIH………..………..iv
DAFTAR ISI………....…..……….vi
DAFTAR GAMBAR………..………....ix
DAFTAR TABEL………..………xii
DAFTAR LISTING………..………xiii BAB I PENDAHULUAN ... Error! Bookmark not defined.
1.1 Latar Belakang Masalah ... Error! Bookmark not defined.
1.2 Rumusan Masalah ... Error! Bookmark not defined.
1.3 Batasan Masalah... Error! Bookmark not defined.
1.4 Tujuan Penelitian... Error! Bookmark not defined.
1.5 Manfaat Penelitian... Error! Bookmark not defined.
1.6 Sistematika Penulisan... Error! Bookmark not defined.
BAB II TINJAUAN PUSTAKA ... Error! Bookmark not defined.
2.1 Game ... Error! Bookmark not defined.
2.2 Scrabble... Error! Bookmark not defined.
2.3 Kecerdasan Buatan ... Error! Bookmark not defined.
2.3.1 Kecerdasan Buatan ... Error! Bookmark not defined.
2.3.2 Kecerdasan Buatan dalam Permainan ... Error! Bookmark not defined.
2.5 Algoritma GADDAG ... Error! Bookmark not defined.
2.6 Algoritma Minimax ... Error! Bookmark not defined.
2.7 Algoritma Negascout... Error! Bookmark not defined.
2.8 Cocos 2d-x... Error! Bookmark not defined.
BAB III METODE PENELITIAN ... Error! Bookmark not defined.
3.1 Desain Penelitian ... Error! Bookmark not defined.
3.2 Metode Penelitian... Error! Bookmark not defined.
3.2.1 Proses Pengumpulan Data ... Error! Bookmark not defined.
3.2.2 Proses Pembangunan Perangkat Lunak . Error! Bookmark not defined.
3.2.3 Teknik Analisis Data ... Error! Bookmark not defined.
3.3 Alat dan Bahan Penelitian ... Error! Bookmark not defined.
BAB IV HASIL PENELITIAN DAN PEMBAHASAN ... Error! Bookmark not
defined.
4.1 Perumusan Masalah... Error! Bookmark not defined.
4.2 Pengumpulan Data ... Error! Bookmark not defined.
4.2.1. Studi Literatur ... Error! Bookmark not defined.
4.2.2. Observasi Permainan Scrabble ... Error! Bookmark not defined.
4.3 Pembahasan Game ... Error! Bookmark not defined.
4.3.1. Perancangan Gameplay ... Error! Bookmark not defined.
4.3.2. Antarmuka Game ... Error! Bookmark not defined.
4.3.3. Kecerdasan Buatan pada Game ... Error! Bookmark not defined.
4.4.1. Konversi Kamus kedalam Graf dengan Algoritma GADDAG ... Error! Bookmark not defined.
4.4.2. Penelusuran Langkah Menggunakan Algoritma GADDAG ... Error! Bookmark not defined.
4.4.3. Perhitungan Evaluasi Nilai Langkah .... Error! Bookmark not defined.
4.4.4. Pembuatan Game Tree... Error! Bookmark not defined.
4.4.5. Pencarian Langkah Optimal Menggunakan Algoritma Negascout
Error! Bookmark not defined.
4.5 Pengujian Game ... Error! Bookmark not defined.
4.5.1. Performansi Computer Player ... Error! Bookmark not defined.
4.5.2. Penilaian Kualitas Permainan Berdasarkan Hasil Bermain Player
Error! Bookmark not defined.
BAB V PENUTUP ... Error! Bookmark not defined.
5.1 Kesimpulan... Error! Bookmark not defined.
5.2 Saran ... Error! Bookmark not defined.
DAFTAR PUSTAKA ... Error! Bookmark not defined.
IMPLEMENTASI ALGORITMA GADDAG DAN NEGASCOUT UNTUK OPTIMALISASI COMPUTER PLAYER DALAM PERMAINAN
SCRABBLE
ABSTRAK
Scrabble merupakan salah satu permainan yang termasuk kedalam board games
yang memerlukan strategi tersendiri untuk mendapatkan skor yang tinggi
sehingga permainan dapat dimenangkan. Eksistensi scrabble dapat terlihat salah
satunya dari adanya penyelenggaraan rutin turnamen. Seiring berkembangnya
teknologi, bermunculan permainan scrabble yang dibuat ke dalam bentuk
computer game sebagai sarana hiburan atau sarana berlatih untuk meningkatkan
kemampuan bagi pengguna terutama yang memiliki ketertarikan terhadap
turnamen scrabble. Agar computer game dapat mendukung sebagai sarana
berlatih turnamen maka perlu diterapkan aturan turnamen didalamnya.
Computer player dilibatkan sebagai lawan main dimana kecerdasan buatan dapat
diterapkan pada computer player agar dapat berpikir sesuai dengan aturan yang
ada dalam scrabble. Dalam penelitian ini dipilih Algoritma GADDAG dan
Negascout untuk diterapkan pada computer player. Berdasarkan hasil penelitian
yang dilakukan, kedua algoritma dapat menyelesaikan permainan kurang dari
batas waktu serta mampu membentuk bingo setiap kali mendapatkan blank tiles
namun di sisi lain memori yang dibutuhkan menjadi salah satu perhatian
disebabkan banyaknya node yang dibangkitkan dan dilibatkan dalam proses
berpikir. Selain itu computer game yang dibuat terbukti memiliki kualitas yang
baik dimana dari segi aspek kemudahan penggunaan, kelengkapan fitur,
performansi, dan kegunaan masing- masing mendapatkan nilai rata rata 80%
berdasarkan hasil penilaian pengguna. Computer game yang dibangun juga
dinilai dapat menjadi salah satu pilihan sarana berlatih turnamen scrabble.
IMPLEMENTATION OF GADDAG AND NEGASCOUT ALGORITHM FOR OPTIMALIZATION OF COMPUTER PLAYER IN SCRABBLE
GAME
ABSTRACT
Scrabble is one of board games that require it own strategy to get a big score in
the end so the game can be won. The existence of scrabble can be seen from the
tournaments that are regularly held. As the development of technology, there are
a lot of scrabble are made in form of computer game as a means of entertainment
and practice to improve the ability especially user who have interests in scrabble
tournament.In order to make computer game that support tournament
practicing,it is necessary to apply the rules of the tournament. Computer player is
involved as an opponent and has an artificial intelligent so it could think
according to the rules in scrabble. This research choose GADDAG and
Negascout algorithm to be applied in computer player. According to the result of
research that has been done, both algorithm could finished the game before the
time is up and formed bingo when it get a blank tiles but in the other side, memory
that needed is one of the concerns because there is a lot of node are made and
involved in the process. Moreover, the computer game that has been created has
good quality in aspects of ease of use, completeness of features, performance, and
usability that each get an average value 80% according to user judgement. The
computer game that has been created also considered to be the one of option
game for practicing scrabble tournament.
BAB I
PENDAHULUAN
1.1Latar Belakang Masalah
Permainan merupakan salah satu sarana hiburan bahkan sebagai sarana untuk belajar. Selain itu permainan dapat melibatkan pemain untuk
menyelesaikan permainan sesuai dengan aturan yang ada dalam permainan
sehingga pemain memerlukan strategi untuk dapat menyelesaikan bahkan memenangkan permainan. Menurut Salen & Zimmerman (2003) permainan atau game didefinisikan sebagai sebuah sistem dimana pemain (players)
terlibat dalam permasalahan buatan, ditentukan oleh aturan, yang memberikan hasil terukur.
Terdapat beberapa jenis permainan yang ada, Crawford (1984) membagi permainan dalam beberapa jenis yaitu board games, card games, athletic games, children’s game, dan computer games. Dari berbagai jenis permainan
tersebut, survey dari ESA (Entertainment Software Association) pada tahun 2014 board games termasuk kedalam jenis permainan yang sering dimainkan
baik berupa online games maupun mobile games, detail dari survey dapat
dilihat pada gambar 1.1 . Board game sering dimainkan karena daya tariknya dimana keadaan permainan akan berbeda dengan keadaan saat bermain
sebelumnya sehingga pemain tidak mudah merasa jenuh. Jumlah pemain
permainan yang dimainkan. Selain itu, seringkali board games membutuhkan strategi dalam bermain sebagai contoh catur, monopoli, scrabble, dan stratego
sehingga dapat melatih daya pikir pemain.
Gambar 1.1 Kepopuleran board gametahun 2014
Salah satu permainan dari jenis board game adalah scrabble, kegunaan
scrabble sendiri tidak hanya sebagai sarana hiburan tetapi juga dapat menjadi
sarana berlatih strategi serta memperkaya kosa kata dalam bahasa Inggris. Eksistensi yang dimiliki scrabble dapat terlihat salah satunya dengan adanya
turnamen yang rutin digelar di beberapa negara dimana terdapat salah satu
komite yang menangani peraturan turnamen dan jadwal global tournaments
3
Seiring perkembangan teknologi, permainan scrabble dibuat ke dalam bentuk
computer game. Sebuah computer game dapat menjadi sarana untuk berlatih
dan meningkatkan keahlian seseorang dalam bermain scrabble terutama bagi pengguna yang memiliki ketertarikan terhadap turnamen scrabble. Computer
game yang dibuat dapat memiliki nilai lebih sebagai sarana berlatih untuk
turnamen dengan cara menerapkan aturan turnamen. Sementara itu salah satu
computer game scrabble yang telah beredar adalah Scrabble yang
dikembangkan oleh funkitron diproduksi oleh Game House dan berlisensi dari
Hasbro. Computer game tersebut tidak melibatkan aturan turnamen yang ditetapkan oleh WESPA dimana kamus yang dipakai adalah OSPD (Official
Scrabble Player Dictionary) karena aturan yang dipakai berdasarkan aturan standar dari Hasbro serta tidak menerapkan aturan waktu
(http://www.funkitron.com/HowToPlay/HowToPlay.htm). Selain computer
game tersebut, terdapat pula aplikasi bernama Quackle berupa analysis tool yang memiliki kelebihan fitur dengan memperlihatkan daftar kemungkinan –
kemungkinan langkah terbaik yang diurutkan dan kamus yang dapat dipilih salah satunya adalah CSW12 namun sama halnya dengan computer game
sebelumnya dimana pada aplikasi Quackle tidak diterapkan aturan waktu
(http://www.word-buff.com/free-scrabble-game.html). Berdasarkan kedua
Permainan scrabble yang berupa computer game pada umumnya melibatkan dua pemain dimana salah satu pemain merupakan computer player
yang menjadi lawan pengguna. Adanya peran computer player sebagai lawan pengguna menjadikan computer player sebagai salah satu aspek penting dalam
pembuatan permainan scrabble , oleh karena itu dalam hal tersebut kecerdasan
buatan dapat diterapkan. Penerapan kecerdasan buatan diperlukan dalam perancangan computer player agar dapat berpikir dan mengambil keputusan
untuk mencapai kemenangan, selain itu di sisi lain kecerdasan buatan dapat
berperan sebagai game solver bagi pengguna untuk mencari jalan keluar. Kecerdasan buatan dianggap perlu dalam pembuatan computer player
mengingat kerumitan yang ada dalam permainan scrabble. Beberapa kerumitan yang dimiliki permainan scrabble diantaranya adalah beberapa
faktor yang harus dipertimbangkan saat pemain menaruh sebuah kata hasil
penyusunan dari beberapa huruf yang ada pada rack . Saat giliran tiba, akan muncul beberapa kemungkinan kata yang dapat ditaruh di atas papan. Salah
satu pertimbangan adalah langkah mana yang dapat diambil untuk mendapat skor yang tinggi mengingat terdapat keunikan pada papan scrabble yaitu double word, triple word, double letter, triple letter serta bobot yang dimiliki
setiap huruf. Pertimbangan lainnya adalah perancangan game yang
5
Permainan scrabble memerlukan proses berpikir untuk penyusunan huruf dalam pembentukan kata serta mencari langkah yang memungkinkan untuk
menaruh huruf yang sudah disusun. Sebelumnya telah dilakukan penelitian oleh Nathaniel, Sherriff, dan Randy (2007) mengenai penerapan kecerdasan
buatan dalam permainan scrabble melibatkan algoritma DAWG (Directed
Acyclic Word Graph) yang berperan untuk menyusun huruf dan pencarian langkah. Selain algoritma DAWG, terdapat pula algoritma GADDAG atau
dikenal sebagai “two way” DAWG. Algoritma GADDAG dinilai lebih cepat
dikarenakan pada algoritma DAWG membutuhkan algoritma backtracking
untuk melakukan pengecekan penyusunan kata dari urutan belakang.
Berdasarkan penelitian yang sudah dilakukan oleh Steven A.Gordon (A Faster Scrabble Move Generation Algorithm,1994) keuntungan dari kecepatan algoritma GADDAG adalah jika permainan scrabble menggunakan aturan
batasan waktu permainan sehingga dibutuhkan proses berpikir yang cepat, selain itu pada akhir permainan dimana susunan huruf yang dimiliki lawan
dapat diterka sehingga algoritma yang cepat dapat membuat pencarian yang lebih mendalam untuk menentukan langkah apa saja yang memungkinkan untuk diambil. Setelah seluruh langkah yang memungkinkan didapat maka
perlu pertimbangan selanjutnya untuk mengambil keputusan langkah yang
tiles vokal dan konsonan jika sebuah langkah diambil, dimana dengan cara ini pemain dapat memanfaatkan good tiles dengan baik sehingga dapat meraih
poin yang tinggi pada beberapa giliran kedepan. Selain hal tersebut, evaluasi
rack diperlukan karena saat permainan berlangsung pemain tidak dapat
mengetahui tiles yang dimiliki lawan serta tiles seperti apa yang akan
didapatkan kedepannya.
Keadaan akan berbeda ketika permainan mendekati akhir dimana pemain
dapat mengetahui tiles yang dimiliki lawan sesuai keadaan papan karena
dalam letter bag tidak ada lagi tiles yang tersisa. Pengambilan langkah yang optimal pada keadaan tersebut dapat dilakukan dengan cara yang berbeda
dengan membentuk sebuah game tree berisi alur permainan yang dapat terjadi hingga akhir kemudian dilakukan evaluasi dengan menerapkan konsep
algoritma minimax. Hal ini seringkali dilakukan dalam permainan yang
termasuk kedalam kategori board games dengan tujuan untuk minimalisasi kemungkinan kekalahan dengan cara maksimalisasi keadaan dimana salah
satunya diterapkan dalam permainan checkers oleh Kurniawan, Delima, dan Antonius (2012). Berdasarkan penjelasan tersebut maka algoritma NegaScout
dapat diterapkan saat mendekati akhir permainan untuk menghindari
kekalahan maupun meminimalisasi selisih poin kekalahan atau
memaksimalkan selisih poin kemenangan dalam scrabble. Algoritma
7
pada pohon pencarian lebih sedikit sehingga pencarian langkah yang terbaik dapat dilakukan lebih cepat. Berdasarkan uraian masalah tersebut maka
penelitian ini akan difokuskan pada implementasi algoritma GADDAG dan algoritma NegaScout pada computer player dalam permainan scrabble serta
kualitas dari permainan yang dikembangkan.
1.2Rumusan Masalah
Berdasarkan latar belakang, terdapat beberapa rumusan masalah yaitu
1. Bagaimana mengimplementasikan algoritma GADDAG dan NegaScout
pada computer player dalam permainan scrabble?
2. Bagaimana performansi algoritma GADDAG dan NegaScout untuk
memenangkan computer player dalam permainan scrabble?
3. Bagaimana penilaian dan tanggapan pengguna terhadap permainan
scrabble yang dikembangkan?
1.3Batasan Masalah
Beberapa batasan masalah dalam penelitian yang dilakukan adalah sebagai
berikut :
1. Ukuran papan yang digunakan sesuai standar yaitu 15 X 15 petak. 2. Kecerdasan buatan yang diterapkan difokuskan pada penyusunan kata
dan pencarian langkah optimal. Berkaitan dengan hal tersebut
algoritma yang digunakan dalam pencarian kata adalah algoritma GADDAG dan untuk pencarian langkah optimal adalah algoritma
3. Kamus yang digunakan dalam permainan berasal dari Collins Scrabble Words (CSW) tahun 2012.
4. Aplikasi dikembangkan menggunakan framework Cocos 2d – x. 5. Aturan yang dipakai dalam permainan sesuai dengan aturan turnamen
berdasarkan waktu,jenis kamus, jumlah pemain, serta papan yang
digunakan.
6. Optimalisasi pada computer player berdasar dari performansi
algoritma yang diukur dari indikator kecepatan, node yang
dibangkitkan, serta kemenangan computer player.
7. Permainan yang dikembangkan difokuskan kepada pengguna yang
terbiasa bermain scrabble menggunakan teknik turnamen. 1.4Tujuan Penelitian
Penelitian dilakukan untuk mengetahui bagaimana implementasi serta
mengukur perfomansi algoritma GADDAG untuk mencari kemungkinan kata yang dapat dibuat dan algoritma NegaScout untuk pencarian solusi optimum
sehingga computer player dapat memenangkan permainan scrabble serta penilaian pengguna terhadap permainan yang dikembangkan.
1.5Manfaat Penelitian
a. Bagi peneliti
1. Menambah wawasan mengenai kecerdasan buatan terutama algoritma yang digunakan.
9
b. Bagi dunia penelitian dan masyarakat umum
1. Menambah studi literatur dalam perancangan computer
player untuk permainan scrabble.
2. Menambah studi literatur algoritma yang diterapkan dalam
penelitian terutama untuk pembuatan permainan strategi
dan berkaitan dengan penyusunan huruf. 1.6Sistematika Penulisan
Sistematika dalam penulisan skripsi ini adalah sebagai berikut :
BAB I PENDAHULUAN
Bab pendahuluan membahas mengenai latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode
yang digunakan serta sistematika penulisan.
BAB II KAJIAN PUSTAKA
Bab ini berisi landasan teori serta informasi yang dijadikan sumber berkaitan dengan perancangan permainan, kecerdasan buatan, serta algoritma yang diterapkan di dalam penelitian.
BAB III METODE PENELITIAN
BAB IV HASIL PENELITIAN DAN PEMBAHASAN
Bab ini memuat hasil analisis dari penelitian yang dilakukan serta pembahasan penerapan algoritma dalam menjawab dan menyelesaikan
permasalahan.
BAB V PENUTUP
Bab penutup berisi kesimpulan dari hasil analasis dari penelitian sebagai
BAB III
METODE PENELITIAN
3.1Desain Penelitian
Gambar 3.1 Skema Desain Penelitian
Desain Penelitian dibuat untuk menggambarkan tahapan yang
digunakan untuk membuat desain pengembangan aplikasi adalah model
waterfall Ian Summerville. Berdasarkan skema desain pengembangan
aplikasi pada gambar 3.1, tahapan yang dilakukan dalam penelitian adalah: 1. Perumusan masalah, merupakan tahap awal dalam penelitian
dimana perumusan masalah dapat membantu dalam penentuan
tujuan dan target yang harus dicapai saat penelitian dilakukan. Permalasahan yang diangkat adalah bagaimana membuat sebuah
computer player untuk permainan scrabble dengan menerapkan
kecerdasan buatan agar dapat memenangkan permainan.
2. Observasi dan studi literatur permainan scrabble, observasi
dilakukan dengan cara memainkan permainan scrabble yang sudah ada di pasaran. Tujuan observasi tersebut dilakukan peneliti agar
dapat memahami alur dan aturan permainan dengan baik serta
mengetahui perbedaan pada masing masing permainan. Selain itu observasi dapat membantu peneliti dalam mengetahui kecerdasan
buatan yang dapat diterapkan dalam permainan scrabble sehingga dapat menunjang dalam pemilihan algoritma yang tepat dan strategi untuk memenangkan permainan. Sementara itu, studi
literatur pemainan scrabble dilakukan untuk mengatahui riset –
3. Studi literatur kecerdasan buatan dilakukan untuk mencari teori dan cara kerja yang berkaitan dengan kecerdasan buatan yang
dapat diterapkan kedalam permainan scrabble.
4. Perancangan gameplay berdasar pada hasil observasi peneliti
dimana dalam tahap ini melibatkan pemilihan kamus, alur
permainan dan cara bermain, serta asumsi aturan pada permainan yang dibuat agar dapat menjawab permasalahan yang ada.
5. Perancangan kecerdasan buatan merupakan tahap dimana peneliti
menentukan algoritma yang cocok untuk diterapkan serta tujuan tahap ini dilakukan untuk mengetahui batasan peran kecerdasan
buatan dalam game.
6. Implementasi gameplay merupakan tahap dimana peneliti
mengimplementasikan rancangan gameplay pada tahap
sebelumnya setelah itu dilakukan testing untuk mengetahui apakah permainan yang dibuat sudah berjalan sesuai alur yang diinginkan
atau tidak.
7. Implementasi modul kecerdasan buatan merupakan tahap dimana algoritma yang dipilih sebagai kecerdasan buatan
diimplementasikan dalam bentuk modul (unit program) setelah itu
8. Menerapkan kecerdasan buatan kedalam game dilakukan untuk menyempurnakan game yang dibuat sehingga game siap untuk
diuji pada tahap berikutnya.
9. Pengujian performansi kecerdasan buatan, pada tahap ini game
yang telah dibangun kemudian diujicoba. Uji coba dilakukan untuk
memastikan implementasi kecerdasan buatan berjalan dengan baik setelah itu dilakukan pengukuran performansi dari kecerdasan
buatan berdasarkan kecepatan, memori yang terpakai serta
kemenangan.
10.Dokumentasi dan hasil analisis pengujian, setelah tahap pengujian
selesai selanjutnya diambil kesimpulan yang berupa hasil analisis dari pengujian yang telah dilakukan kemudian seluruh kegiatan
penelitian serta hasil penelitian didokumentasikan ke dalam bentuk
tulisan serta dokumen teknis. 3.2Metode Penelitian
3.2.1 Proses Pengumpulan Data
Peneliti mengumpulkan data serta informasi untuk menunjang penelitian yang dilakukan. Pengumpulan data
dilakukan dengan cara studi literatur dan observasi.
a. Studi Literatur
scrabble, pengembangan game melalui e-book, jurnal, karya ilmiah, internet, serta perpustakaan.
b. Observasi
Observasi dilakukan untuk mengetahui dan memahami
aturan dasar, gameplay, dan strategi pada permainan
scrabble dengan cara memainkan permainan scrabble yang sudah ada sebelumnya.
c. Wawancara
Wawancara merupakan salah satu kegiatan yang dilakukan dalam uji coba langsung kepada pengguna. Uji coba yang
dilakukan merupakan uji coba terbatas dengan mengambil lokasi di Universitas Pendidikan Indonesia yang dilakukan
pada anggota klub scrabble bernama ESCAPE (English
Scrabble Player) yang merupakan bagian dari EWC (English Writing Community). Responden merupakan
anggota klub yang terbiasa dengan teknik bermain turnamen. Wawancara yang dilakukan bertujuan untuk mendapatkan penilaian terhadap game yang dibangun
selain itu dengan dilakukannya wawancara maka peneliti
Sebelum responden melakukan wawancara, terlebih dahulu responden memainkan game yang telah dibangun.
3.2.2 Proses Pembangunan Perangkat Lunak
Pembangunan perangkat lunak pada penelitian
menggunakan model waterfall(Sommerville,2011) dimana proses yang berjalan adalah sebagai berikut:
Gambar 3.2 Model waterfall pembangunan perangkat lunak (Sommerville,2011)
Berdasarkan gambar 3.2 model waterfall yang dipakai
terdiri dari beberapa aktivitas beruparequirements definition,
system and software design, implementation and unit testing,
integration and system testing, operation and maintanance. Pada model waterfall sommerville, dapat terjadi kemungkinan untuk
tertentu membutuhkan perbaikan. Penjabaran aktivitas pada model
waterfall adalah sebagai berikut :
a. Requirements definition
Tahap awal dimana adanya analisis untuk menentukan
kebutuhan, batasan, dan tujuan (goal) dari perangkat lunak sesuai yang diinginkan. Hal tersebut kemudian
didefinisikan secara rinci dan terbentuk sebagai spesifikasi
sistem.
b. System and software design
System design merupakan proses perancangan perangkat keras maupun perangkat lunak yang dilibatkan untuk
menunjang sistem yang akan dibangun. Sementara itu
software design merupakan proses perancangan yang melibatkan identifikasi dan menggambarkan dasar sistem
serta hubungan satu sama lain. c. Implementation and unit testing
Pada tahap ini, software design yang telah dilakukan
sebelumnya kemudian diimplementasikan dalam bentuk
d. Integration and system testing
Setelah semua unit program berhasil diimplementasikan
dan lolos testing maka dilanjutkan dengan mengintegrasikan setiap unit untuk membentuk sistem yang
diinginkan. Sistem yang sudah dibentuk kemudian di tes
kembali untuk memastikan unit program dapat berjalan satu sama lain dalam sistem dan sistem yang dibuat sudah
memenuhi kebutuhan.
e. Operation and maintanance
Tahap ini merupakan tahap dimana sistem sudah dipasang
kemudian melakukan maintanance ketika terdapat kesalahan atau error yang tidak ditemukan sebelumnya saat
pembangunan sistem berlangsung. Maintanance juga
dilakukan jika terdapat kebutuhan baru yang perlu ada pada sistem.
3.2.3 Teknik Analisis Data
Penilaian game yang dibangun dilakukan dengan cara wawancara dan meliputi 4 aspek yaitu kemudahan penggunaan,
kelengkapan fitur, performansi, serta kegunaan. Setiap pertanyaan
yang menyangkut setiap aspek disediakan jawaban dengan menggunakan skala Likert dalam 5 pilihan skala. Skala Likert
fenomena sosial. Hasil dari penilaian game berupa data kualitatif dan disajikan dalam bentuk persentase. Persentase dari hasil
penilaian didapatkan dari melakukan perhitungan rating scale dengan rumus sebagai berikut (Sugiyono,2009) :
P =
Keterangan:
P = Angka Persentase
Skor ideal = skor tertinggi tiap butir × Jumlah responden × Jumlah butir
3.3Alat dan Bahan Penelitian
Penelitian dilakukan dengan melibatkan beberapa perangkat yang
berupa perangkat keras dan perangkat lunak dengan spesifikasi sebagai berikut
Perangkat keras :
1. Processor Core i5-4200U 2.30 GHz
2. RAM 4 GHz
3. Harddisk 500 GB
4. Monitor Resolusi 1366 x 768, 32 bit
5. Mouse dan Keyboard
2. Bahasa pemograman C++ 3. Visual Studio 2012
4. Game Framework Cocos2d –x 5. Inkscape
Selain perangkat dengan spesifikasi diatas, penelitian juga melibatkan
beberapa bahan sebagai berikut :
1. Jurnal, karya ilmiah,serta e-book yang berkaitan dengan
kecerdasan buatan, algoritma GADDAG, algoritma Negascout
serta permainan scrabble.
2. CSW (Collins Scrabble Words) tahun 2012, merupakan kamus
yang dipakai dalam permainan dalam bentuk text file dengan format .txt .
3. Tutorial yang berisi pembuatan permainan menggunakan game
framework Cocos2d –x yang diakses melalui internet.
4. Aturan permainan untuk keperluan pengujian. Pembuatan aturan
permainan berdasarkan hal berikut
Tabel 3.1 Aturan permainan scrabble tanpa media elektronik
Tabel 3.2Aturan dan Kecerdasan Buatan Scrabble Menggunakan
Jenis Permainan (game) Analysis Tool
Jenis kamus
dipakai dalam penelitian ini sesuai dengan tujuan penelitian adalah a. Papan berukuran 15 x 15 petak
b. Jumlah pemain terdiri dari 2 player
c. Setiap pemain memiliki waktu 25 menit dalam satu ronde
5. Berkaitan dengan penelitian maka disiapkan pula bahan untuk
dilakukan dengan cara bermain langsung game yang telah dibangun beberapa kali untuk mendapatkan data hasil bermain
computer player. Setiap hasil uji coba dikelompokan berdasaran waktu yang dihabiskan secara keseluruhan; berdasarkan algoritma
GADDAG;dan algoritma NegaScout, poin yang dihasilkan, dan
node yang dibangkitkan. Beberapa uji coba dilakukan dengan melawan player yang selalu mengambil poin tertinggi dari pilihan
langkah yang ada (greedy). Hal ini dilakukan untuk mengetahui
kemungkinan cara greedy dalam memenangkan permainan.
BAB V
PENUTUP
5.1Kesimpulan
Berdasarkan hasil penelitian implementasi algoritma GADDAG dan
Negascout untuk pembuatan computer player pada permainan Scrabble ini, maka dapar diambil beberapa kesimpulan sebagai berikut :
1. Algoritma GADDAG diimplementasikan dengan cara pembuatan graf
yang berupa hasil konversi dari kamus dimana kemudian dilakukan penelusuran pada graf tersebut untuk mendapatkan kemungkinan
langah yang diambil. Setiap kemungkinan langkah dievaluasi dan
langkah dengan evaluasi tertinggi dipilih sebagai solusi. Sementara itu algoritma Negascout dapat diimplementasikan pada saat mendekati
akhir permainan dengan cara melakukan pembuatan game tree terlebih dahulu yang berisi seluruh kemungkinan alur permainan hingga akhir.
Selanjutnya algoritma Negascout diimplementasikan pada game tree
tersebut dengan cara penelusuran dan evaluasi sehingga menghasilkan langkah yang optimal.
2. Performansi dari indikator waktu yang dihasilkan dari computer player
relatif cepat terbukti dari keseluruhan pengujian yang dilakukan dimana permainan dapat diselesaikan sebelum batas waktu 25 menit
habis. Berdasarkan 40 kali pengujian yang dilakukan, waktu yang
adalah 17 menit 6 detik. Sementara itu 27 kali dari 40 kali uji coba dapat menghasilkan bingo dimana 24 kali diantaranya dikarenakan
dalam rack yang dimiliki terdapat blank tiles sedangkan 3 kali diantaranya tidak memiliki blank tiles. Hal ini membuktikan bahwa
masih terdapat kemungkinan pembentukan bingo tanpa blank tiles
tergantung pada tiles yang dimiliki dan keadaan papan. Computer player mampu mengalahkan lawan dengan teknik selalu mengambil
poin terbesar pada setiap langkah dengan persentase kemenangan 70%
dari 20 kali uji coba sehingga membuktikan bahwa strategi dibutuhkan untuk mencapai kemenangan dalam permainan scrabble. Namun di
sisi lain cara kerja yang dilakukan melibatkan pembuatan node dalam prosesnya dimana hasil konversi dari kamus yang dipakai
menghasilkan 2.611.993 node pada graf sementara game tree yang
dibuat pada saat bermain dapat mencapai lebih dari 10.000 node sehingga dibutuhkan memori yang relatif besar.
3. Berdasarkan uji coba kepada responden dengan memainkan game
didapatkan hasil bahwa game yang dibangun memiliki nilai dengan persentase aspek kemudahan penggunaan mencapai 80%, aspek
kegunaan mencapai 82%, aspek performansi non-player mencapai
90%, dan aspek kelengkapan fitur mencapai 80% sehingga kualitas
5.2Saran
Computer player serta game yang dibuat masih dapat dikembangkan lebih
lanjut untuk menutupi kekurangan yang ada sesuai dengan hasil penelitian yang dilakukan. Berdasarkan hal tersebut maka saran yang diberikan dalam
penelitian ini adalah sebagai berikut :
1. Computer player masih memiliki peluang kekalahan jika lawan main memiliki strategi mengenai positioning tiles mengingat pada papan
scrabble terdapat beberapa keunikan sehingga perlu ditambahkan
evaluasi untuk mempertimbangkan hal ini.
2. Waktu yang dihabiskan untuk menelusuri kemungkinan langkah lebih
banyak jika melibatkan blank tiles. Pada penelitian selanjutnya, waktu penelusuran tersebut dapat dipersingkat dengan cara sudah mengetahui
terlebih dahulu huruf yang akan dipakai untuk blank tiles sehingga
tidak perlu melakukan penelusuran dari huruf A-Z.
3. Proses pembentukan game tree melibatkan pembuatan node sehingga
mempengaruhi memori yang dipakai dalam permainan. Memori yang dipakai dapat diperkecil dengan melakukan seleksi node yang perlu dibentuk terlebih dahulu sehingga game tree yang dibentuk lebih
sederhan dan waktu evaluasi game tree lebih singkat.
4. Perlu ditambahkan beberapa fitur yang belum tersedia pada game
5. Jumlah sampel yang dilibatkan dalam pengujian lebih baik ditambah agar hasil penilaian yang didapat mengenai game dan computer player
DAFTAR PUSTAKA
Appel, A. W., & Jacobson, G. J. 1988. The world's fastest Scrabble
program.Communications of the ACM, 31(5), 572-578.
Brown,Jason-Katz dan O’Laughlin, John. 2007. How Quackle Plays Scrabble. (online),(http://people.csail.mit.edu/jasonkb/quackle/doc/how_quackle_pla ys_scrabble.html, diakses 16 Juni 2014)
Connolly, F., & Gren, D. 2012. Smart Scrabble playing-strategies and their impact.
Dapkus, M. R. A. H. M., & Rudwick, D. S. P. T. Creating Human-Like Suboptimal Players For Scrabble®.
Effendi, A. K., Delima, R., & Chrismanto, A. R. 2012. Implementasi Algoritma
Negascout Untuk Permainan Checkers. Jurnal Informatika, 8(1).
Gordon, S. A. 1994. A faster Scrabble move generation algorithm. Software: Practice and Experience, 24(2), 219-232.
Gordon, S. 1993. A comparison between probabilistic search and weighted heuristics in a game with incomplete information. In AAAI Fall 1993 Symposium on Games: Playing and Learning, AAAI Press Technical
Report FS9302, Menlo Park, CA.
Millington, Ian. 2006. Artificial Intelligence for Game. San Francisco: Morgan Kaufmann
Nathaniel, J., Sherriff, S., & Randy, R. 2007. Analisis Dan Disain Permainan
Scrabble Tingkat Mahir Dengan Pendekatan Intelejensia Semu. Skripsi Jurusan Informatika Universitas Bina Nusantara.
Reinefeld, A. 1983. An improvement of the Scout tree-search algorithm. ICCA Journal, 6(4), 4-14.
Russel, Stuart dan Norvig, Peter. 2010. Artificial Intelligence: A Modern Approach. New Jersey: Prentice Hall International, Inc
Sheppard, B. 2002. Towards Perfect Play of Scrabble. PhD thesis. Computer Science, Universiteit M aastricht, 2(00), 2.
Shoham, Y., & Leyton-Brown, K. (2008). Multiagent systems: Algorithmic, game-theoretic, and logical foundations. Cambridge University Press.
Sommerville, Ian. 2011. Software Engineering 9th Edition. Boston: Pearson
Sturtevant, N. R. 2003. Multi-Player Games: Algorithms and Approaches.
Disertasi University Of California. Los angeles.
Sugiyono. 2012. Metode Penelitian Pendidikan Pendekatan Kuantitatif, Kualitatif, dan R&D. Bandung: Alfabeta