bab i pendahuluan

advertisement
BAB I
PENDAHULUAN
1.1 Latar Belakang
Catur telah diperkenalkan sejak tahun 600 Masehi, bermula di India dan
menyebar hingga benua Eropa. Pada 1936, Konrad Zuse memulai eksperimen
membangun sebuah mesin untuk menjadi lawan manusia dalam sebuah permainan
multiplayer, eksperimennya yang pertama difokuskan pada permainan catur.
Catur memiliki potensi mengembangkan cara berpikir out of boundaries.
Permainannya sebagai sebuah puzzle multiplayer memiliki kemungkinan tak
terhingga, tergantung perkembangan permainan.
Sebuah komputer catur memiliki komponen hardware dan software.
Kekuatan pemrosesan data sebuah komputer catur tergantung dari kekuatan
hardware-nya. Namun, meskipun menggunakan super komputer tercepat di dunia,
sebuah komputer catur tidak akan pernah dapat menandingi kemampuan analisa
manusia dalam permainan ini jika komputer tersebut menggunakan algoritma
Minimax sederhana. Pada saat inilah pentingnya software dalam komputer catur,
yang sering disebut sebagai chess engine. Dengan menggunakan algoritma AlphaBeta Pruning, jumlah node yang harus dievaluasi oleh komputer akan dipotong untuk
mencapai kedalaman dan kecepatan pencarian yang lebih baik
Dalam praktiknya, pengembangan engine catur masih populer dengan
penggunaan
brute
force.
Dengan
mengesampingkan
pemodelan
engine,
pengembangan catur super komputer lebih pada perlombaan daya hardware.
Karena hal-hal yang tersebut, maka dalam penelitian ini akan dibangun
sebuah engine yang menggunakan konsep algoritma Alpha-Beta Pruning yang akan
diberi nama Harmonia. Chess engine ini akan ditandingkan melawan chess engine
lain dalam sebuah GUI catur bernama Arena.
1
2
1.2 Rumusan Masalah
Dalam penelitian ini dirancang sebuah engine catur yang menggunakan
algoritma Alpha-Beta Pruning. Engine ini akan diuji melawan engine lain dalam
sebuah GUI bernama Arena. Untuk melihat efektifitas masing-masing engine, maka
dalam setiap pertandingan, tiap pemain akan diberi batasan waktu tertentu untuk
menyelesaikan permainan.
1.3 Batasan Masalah
Pembahasan dalam tulisan ini dibatasi oleh hal-hal berikut:
1. engine yang dibandingkan dengan adalah engine yang juga memakai
high-level language dalam perancangannya.
2. Bahasa yang digunakan adalah C++.
3. Pertandingan antar chess engine akan diberi batasan waktu tertentu.
1.4 Tujuan
Tujuan yang ingin dicapai dalam tulisan ini adalah membangun sebuah engine
catur berbasis Alpha-Beta Pruning yang dapat memberikan hasil menang atau seri
saat ditandingkan dengan engine lain yang memiliki ukuran lebih besar.
1.5 Manfaat
Engine catur Harmonia yang menggunakan algoritma Alpha-Beta Pruning,
dengan ukuran dan penggunaan sumber daya yang lebih ringan, cocok diimplementasikan pada sistem robotik untuk mengurangi resiko malfungsi yang dapat
terjadi pada perangkat keras sistem.
1.6 Metode Penelitian
Pelaksanaan penelitian menggunakan studi literatur dari berbagai bahan dan
sumber literatur, seperti beberapa buku teks, jurnal online, dan karya ilmiah lainnya
3
tentang computer chess yang biasanya lebih menitik beratkan pada pengujian
melawan manusia.
Poin-poin penting yang perlu diperhatikan akan dianalisa dalam membangun
sebuah engine untuk sebuah computer chess dari berbagai sumber lalu menentukan
teknik sorting apa yang akan dipakai.
Setelah menentukan teknik sorting yang akan dipakai, dilakukan pembuatan
prototype perangkat lunak sesuai dengan analisis dan perancangan sistem yang
dilakukan, lalu membandingkan berbagai high-leveled language engine yang dipakai
dalam computer chess dengan Harmonia dalam sebuah pertandingan yang dirancang
untuk dua engine, menganalisa, lalu menemukan apa kelebihan dan kekurangan
Harmonia saat diimplementasikan.
Download