Artificial Intelligent pada Game
Jika berbicara tentang games kita tidak
akan terlepas dengan Artificial Intelligence (AI). Artificial Intelligence
biasa disebut dengan kecerdasan buatan.
A. Apa itu kecerdasan buatan pada suatu games?
Kecerdasan buatan (bahasa Inggris: Artificial
Intelligence atau AI)
didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya
dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin
(komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia.
Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem
pakar, permainan
komputer (games), logika fuzzy,
jaringan syaraf tiruan dan robotika.
Penelitian dalam AI menyangkut pembuatan
mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas.
Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan
untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan
tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu
tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan
yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi,
obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa
aplikasi perangkat lunak komputer rumah dan video game.
Game AI
adalah aplikasi untuk memodelkan karakter yang terlibat dalam permainan baik
sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan
tetapi tidak ikut bermain (NPC = Non Playable Character). Peranan kecerdasan
buatan dalam hal interaksi pemain dengan permainan adalah pada penggunaan
interaksi yang bersifat alami yaitu yang biasa digunakan menusia untuk
berinteraksi dengan sesama manusia.
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.
Dengan adanya AI pada game maka kita dapat bermain game tersebut walaupun kita sedang tidak bermain dengan teman-teman kita. Sebagai contoh kita dapat bermain Counter Strike dimana yang menjadi musuh kita merupakan Bot (komputer) yang memiliki kecerdasan yang cukup tinggi. Dia dapat menemukan pemain lalu menyerangnya. Dengan semakin cerdasnya musuh (komputer) maka pembuatan AI mungkin akan semakin sulit.
Dengan adanya AI pada game maka kita dapat bermain game tersebut walaupun kita sedang tidak bermain dengan teman-teman kita. Sebagai contoh kita dapat bermain Counter Strike dimana yang menjadi musuh kita merupakan Bot (komputer) yang memiliki kecerdasan yang cukup tinggi. Dia dapat menemukan pemain lalu menyerangnya. Dengan semakin cerdasnya musuh (komputer) maka pembuatan AI mungkin akan semakin sulit.
B. Macam-macam AI pada game
1.
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 :
·
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).
·
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.
·
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.
2.
Path Finding
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.
Referensi
https://setiyanugroho.wordpress.com/2011/04/12/kecerdasan-buatan-dalam-game/
Komentar
Posting Komentar