ARTIFICIAL INTELLIGENCE ( AI ) PADA
GAME PACMAN
.BANDAI NAMCO
Entertainment America Inc.
Pacman adalah sebuah permainan video
arkade yang cukup terkenal. Cara bermainnya mudah yaitu pemain (pacman)
diharuskan memakan makanan (berbentuk titik-titik kecil) dan sebuah bulatan
besar (energizer) sampai habis di dalam sebuah labirin yang berliku-liku. Tidak
hanya menghabiskan makanan tersebut, pemain juga harus menghindari 4 ‘hantu’
yang berkeliaran secara random untuk menangkap pemain. Jika pemain bertemu
dengan hantu-hantu tersebut maka pemain dinyatakan gagal dan harus mengulangi
dari awal lagi. Tetapi pemain bisa mengalahkan hantu tersebut dengan memakan
energizer yang terdapat di pojokkan labirin. Jika pemain memakan titik besar
tersebut, maka para hantu akan ketakutan dan berusaha menjauh dari pemain[1].
Dalam hal ini pemain bisa memakan hantu tersebut dan mendapatkan bonus yang
besar, tetapi para hantu yang termakan tidak mati begitu saja, mereka kembali
ke posisi semula dan kembali mengejar pemain. Pemain dinyatakan menang jika
semua makanan habis tak tersisa dan pemain akan memasuki level berikutnya.
Pergerakan para hantu ini dipengaruhi
oleh kecerdasan buatan atau Artificial
intelligence (AI), dimana para hantu diberi kecerdasan untuk menentukan
langkah dan mengambil keputusan akan bergerak kemana dengan menentukan rute
yang paling pendek (minimum), tujuannya adalah menangkap pemain. Setiap hantu
harus memiliki pemikiran berbeda dan memiliki kemampuan bekerja sama untuk
mengejar pemain, sehingga permainan akan tampak lebih menarik. Persoalan
mendekati karakter Pacman ini dapat diselesaikan dengan berbagai macam cara,
salah satunya dengan menggunakan algoritma greedy[3].
Dalam
game-game sederhana kebanyakan pemanfaatan AI digunakan untuk mencari jalur
terpendek untuk menentukan targetnya. Sebagai salah satu contoh yaitu
kecerdasan buatan yang ada pada game Pacman. Pada game ini dapat kita lihat
bahwa hantu-hantu (komputer) yang menjadi musuh Pacman dapat mempertimbangkan
dan memilih jalan yang tercepat untuk menangkap dan mengepung sang Pacman
(pemain). Bahkan ketika sang Pacman memakan bola yang bisa membuat si hantu
menjadi lemah maka sang hantu akan langsung segera menghindari sang Pacman
secepatnya. Tindakan seperti itu memang terlihat mudah namun pada kenyataannya
pembuatan hal tersebut cukup sulit dilakukan. Pembuatan hal tersebut membutuhkan
algoritma yang mungkin sedikit rumit terutama bagi orang awam.
Macam-macam AI pada game
A. Decision Making
Decision
Making adalah serangkaian algoritma yang dirancang dengan memasukan beberapa
kemungkinan langkah yang bisa diambil oleh suatu aplikasi, Pada game ini
decision makingmemberikan kemampuan suatu karakter untuk menentukan langkah apa
yang akan diambil. Decision making dilakukan dengan cara menentukan satu
pilihan dari list yang sudah dibuat pada algoritma yang dirancang. Decision Making
dibagi menjadi 3, yaitu :
B.
Decision Tree
Pohon
Keputusan (Decision Tree) merupakan metode klasifikasi dan prediksi yang sangat
kuat dan terkenal. Metode pohon keputusan mengubah fakta yang sangat besar
menjadi pohon keputusan yang merepresentasikan aturan. Aturan dapat dengan
mudah dipahami dengan bahasa alami. Aturan ini juga dapat diekspresikan dalam
bentuk bahasa basis data seperti SQL untuk mencari record pada kategori
tertentu. Pohon keputusan juga berguna untuk mengeksplorasi data, menemukan
hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah
variabel target. Karena pohon keputusan memadukan antara eksplorasi data dan
pemodelan, pohon keputusan ini sangat bagus sebagai langkah awal dalam proses
pemodelan bahkan ketika dijadikan sebagai model akhir dari beberapa teknik lain
(J R Quinlan, 1993).
Kelebihan dari metode pohon keputusan adalah:
1. Daerah pengambilan keputusan
yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel
dan spesifik
2. Eliminasi perhitungan-perhitungan
yang tidak diperlukan, karena ketika menggunakan metode pohon keputusan maka
sampel diuji hanya berdasarkan kriteria atau kelas tertentu
3. Fleksibel untuk memilih fitur
dari node internal yang berbeda, fitur yang terpilih akan membedakan suatu
kriteria dibandingkan kriteria yang lain dalam node yang sama. Kefleksibelan
metode pohon keputusan ini meningkatkan kualitas keputusan yang dihasilkan jika
dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih
konvensional.
Kekurangan pada pohon keputusan adalah:
1. Terjadi overlapping terutama
ketika kelas-kelas dan kriteria yang digunakan jumlahnya sangat banyak. Hal
tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan
jumlah memori yang diperlukan
2. Pengakumulasian jumlah kesalahan
dari setiap tingkat dalam sebuah pohon keputusan yang besar
3. Kesulitan dalam mendesain pohon
keputusan yang optimal
C. State Machine
Finite
State Machines (FSM) adalah sebuah metodologi perancangan sistem kontrol yang
menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga
hal berikut: State (Keadaan), Event (kejadian) dan action (aksi). Pada satu
saat dalam periode waktu yang cukup signifikan, sistem akan berada pada salah
satu state yang aktif. Sistem dapat beralih atau bertransisi menuju state lain
jika mendapatkan masukan atau event tertentu, baik yang berasal dari perangkat
luar atau komponen dalam sistemnya itu sendiri (misal interupsi timer).
Transisi keadaan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem
ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat
berupa aksi yang sederhana atau melibatkan rangkaian proses yang relative
kompleks.
D. Rule
System
Rule Based System merupakan metode
pengambilan keputusan berdasarkan pada aturan-aturan tertentu yang telah
ditetapkan. RBS dapat diterapkan pada agen virtual dalam bentuk kecerdasan
buatan sehingga dapat melakukan tindakan tertentu. Tindakan tersebut
direpresentasikan oleh set aturan yaitu penyebab tindakan itu terjadi, proses
tindakan dan hasil dari tindakan tersebut.
Metode
pathfinding paling mudah ditemui pada game-game bertipe strategi dimana kita
menunjuk satu tokoh untuk digerakkan ke lokasi tertentu dengan mengklik lokasi
yang hendak dituju. Si tokoh akan segera bergerak ke arah yang ditentukan, dan
secara “cerdas” dapat menemukan jalur terpendek ataupun menghindari dari
rintangan-rintangan yang ada. Salah satu algoritma Pathfinding yang cukup umum
dan yang paling banyak digunakan utnuk mencari jarak terpendek secara efisien
adalah A*Searching (baca: A star).
Algoritma
A*Searching adalah mendefinisikan area pencarian menjadi sekumpulan node-node
(tiles). Titik awal dan titik akhir ditentukan terlebih dulu untuk mulai
penelusuran pada tiap-tiap node yang memungkinkan untuk ditelusuri. Dari sini,
akan diperoleh skor yang menunjukkan besarnya biaya untuk menempuh jalur yang
ditemukan, ditambah dengan nilai heuristik yang merupakan nilai biaya estimasi
dari node yang ada menuju tujuan akhir. Iterasi akan dilakukan hingga akhirnya
mencapai target yang dituju.
Algoritma
Dijkstra, (dinamai menurut penemunya, seorang ilmuwan komputer, Edsger
Dijkstra), adalah sebuah algoritma rakus (greedy algorithm) yang dipakai dalam
memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah
graf berarah (directed graph) dengan bobot-bobot sisi (edge weights) yang
bernilai tak-negatif.
Blog ini saya buat hanya untuk tugas matakuliah softskill bukan untuk komersial
Blog ini saya buat hanya untuk tugas matakuliah softskill bukan untuk komersial
SUMBER :