5.11.2012
Last Lost
I. PENDAHULUAN
Saya akan membuat sebuah game yang merupakan salah satu contoh dari penerapan kecerdasan buatan, dimana tujuan dari pembuatan game ini adalah untuk memberikan kecerdasan buatan kepada komputer agar mendapat kecerdasan seperti halnya manusia dan dapat bermain melawan manusia (player).
Sebenarnya kecerdasan buatan merujuk kepada mesin yang mampu untuk berpikir, menimbang tindakan yang akan diambil, dan mampu mengambil keputusan seperti yang dilakukan oleh manusia.
Kecerdasan buatan (artificial intelligence) jika diterjemahkan kedalam bahasa Indonesia berarti tiruan dari sesuatu yang cerdas, jadi disini kita membuat mesin menjadi cerdas dalam artian memiliki kemampuan untuk berpikir sehingga dapat memecahkan suatu masalah seperti halnya otak manusia
Bahasa pemrograman yang saya pakai untuk membuat game ini adalah strawberry prolog. Strawberry Prolog adalah dialek dari bahasa pemrograman Prolog. Strawberry Prolog sangat mudah digunakan dan itulah sebabnya beberapa universitas tertarik untuk mengembangkannya. Kompiler Prolog ini merupakan bagian dari proyek AI.
II. CARA BERMAIN “LAST LOST”
Pada permainan ini kita bermain melawan komputer dimana kita dituntut untuk membuat strategi agar dapat mengalahkan komputer tersebut. Tampilan awal dari permainan ini adalah menampilkan gambar yang disusun berurutan sebanyak 5 kolam dimana jumlah gambar dari kolom pertama sampai kolom kelima berturut-turut satu sampai lima buah gambar.
Cara bermainnya cukup mudah yaitu dimana masing-masing player (kita dan komputer) dapat menghilangkan gambar yang sudah ada caranya adalah dengan mengklik pada gambar yang ingin dihilangkan. Gambar yang dihilangkan boleh lebih dari satu gambar asalkan gambar tersebut terdapat dalam satu kolom dan menghilangkannya harus berurutan. Pada permainan ini kita dapat menentukan siapakah orang pertama yang akan menghilangkan gambar. Untuk peraturan default-nya kita diharuskan sebagai orang pertama yang memulai untuk menghilangkan gambar tersebut.
Kita (player) dan komputer akan secara bergantian memiliki giliran untuk menghilangkan gambar tersebut sampai permainan berakhir dimana yang menghilangkan gambar paling terakhir akan kalah. Jadi untuk bermain game ini kita tidak hanya dituntut untuk menghilangkan gambarnya saja tapi kita juga dituntut untuk mengatur strategi dalam menghilangkan gambar maupun jumlah gambar yang akan kita hilangkan sehingga nantinya kita dapat menang.
Pada game ini juga terdapat beberapa menu antara lain New Game yang berfungsi untuk memulai permainan baru, Options yang berfungsi untuk melakukan pengaturan pada permainan, salah satunya adalah untuk menentukan siapa yang pertama memulai permainan (player atau komputer), Help untuk menjelaskan secara ringkas cara bermain dan Exit untuk keluar dari permainan.
Berikut ini adalah tampilan interface game “Last Lost”.
Gambar: tampilan awal game
Gambar: saat kita memenagkan permainan
Gambar: saat kita kalah
III. ALGORITMA AI YANG DIPAKAI
Salah satu contoh penerapan kecerdasan buatan adalah pembuatan game yang berbasis AI atau biasa juga disebut dengan game knowledge. Tujuan dari pembuatan game knowledge adalah untuk mengasah otak dan menambah pengetahuan atau juga hanya untuk kesenangan belaka. Game knowledge umumnya dimainkan oleh dua player dimana salah satu player-nya adalah komputer, jadi user akan merasa tertantang untuk mengalahkan komputer tersebut. Selain itu game knowledge biasanya dimainkan secara bergantian oleh user dan komputer.
Langkah pertama yang harus kita lakukan ketika kita akan membuat sebuah game yang berbasis artificial intelligence adalah menentukan algoritma apa yang akan kita gunakan dalam membuat game tersebut sehingga game AI yang kita buat tersebut dapat berpikir seperti manusia sehingga dapat memecahkan sebuah masalah. Pemiliham algoritma ini sangat menentukan keberhasilan system kecerdasan buatan yang akan kita buat.
Algoritma yang dipakai di game “Last Lost” ini adalah algoritma minimax, jadi komputer berjalan dengan menggunakan algoritma minimax. Algorima minimax adalah algorima yang melakukan pengecekan dengan cara mengecek seluruh kemungkinan yang ada sampai akhir permainan. Pengecekan tersebut akan menghasilkan pohon permainan yang berisi semua kemungkinan tersebut. Jadi kita bisa banyangkan betapa banyaknya kombinasi kemungkinan setiap gerakan pada game “Last Lost” ini.
Seperti penjelasan diatas algoritma minimax ini mampu menganalisis segala kemungkinan posisi permainan sehingga dapat menghasilkan keputusan yang terbaik karena algoritma minimax ini bekerja secara rekursif dengan mencari langkah yang akan membuat lawan mengalami kerugian maximum. Semua strategi atau langkah lawan akan dihitung dengan algoritma yang sama sampai permainan berakhir. Ini berarti, pada langkah pertama komputer akan menganalisis seluruh kemungkinan (pohon permainan). Dan untuk setiap langkahnya, komputer akan memilih langkah yang paling membuat lawan mendapatkan keuntungan paling minimum dari semua kemungkinan yang ada, dan yang membuat komputer itu sendiri mendapatkan keuntungan paling maksimum. Dalam penentuan keputusan tersebut dibutuhkan suatu nilai yang merepresentasikan kerugian atau keuntungan yang akan diperoleh jika langkah tersebut dipilih. Untuk itulah disini digunakan sebuah fungsi heurisitic untuk mengevaluasi nilai sebagai nilai yang merepresentasikan hasil permainan yang akan terjadi jika langkah tersebut dipilih.
Pada game “LAST LOST” ini juga menggunakan algoritma greedy, algoritma Greedy digunakan pada saat komputer menentukan untuk mengambil bitmap beserta jumlah yang mungkin disetiap kolomnya saat mendapatkan giliran jalan dalam game ini. komputer menentukan keputusan tersebut dengan melihat prioritas yang lebih tinggi tanpa memikirkan langkah selanjutnya. Dia hanya akan memikirkan langkah pada saat gilirannya saja, tak mempedulikan langkah yang harus dia ambil berikutnya. Intinya menunggu lawan untuk menjalankan gilirannya terlebih dahulu.
Tujuan (goal) dari game “Last Lost” ini adalah supaya menjadikan lawan sebagai pemain yang akan menghilangkan gambar paling akhir, jadi kedua player akan berpikir dan mengatur strategi agar tidak menjadi pemain terakhir yang akan menghilangkan gambar. Jadi AI yang kita buat ini akan membuat komputer berpikir untuk memilih kemingkinan terbaik yang memberikan keuntungan maximum kepada komputer itu sehingga dapat mengalahkan lawan dengan cara menjadikan lawan sebagai pemain terakhir yang akan menghilangkan gambarnya.
Subscribe to:
Posting Komentar (Atom)
0 Comments:
Post a Comment