Review
Game Menggunakan AI (Artificial Intellegence)
PENGERTIAN ARTIFICIAL
INTILLIGENCE
Kecerdasan Buatan atau kecerdasan
yang ditambahkan kepada suatu sistem yang bisa diatur dalam konteks ilmiah atau
Intelegensi Artifisial (bahasa Inggris: Artificial Intelligence atau hanya
disingkat AI) didefinisikan sebagai kecerdasan entitas ilmiah. 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.
Banyak hal yang kelihatannya sulit untuk kecerdasan
manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh:
mentransformasikan persamaan, menyelesaikan persamaan integral, membuat
permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia
kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk
direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka,
bermain sepak bola.
Walaupun AI memiliki konotasi fiksi ilmiah yang
kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan
dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin.
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. ‘Kecerdasan buatan’ ini bukan hanya ingin
mengerti apa itu sistem kecerdasan, tapi juga mengkonstruksinya.
Contoh
Game yang Menggunakan AI Game Packman
REVIEW ALUR GAME PACKMAN
Pacman adalah sebuah permainan
bergenre arkade yang di kembangkan oleh NAMCO dan di rilis di jepang
pada 22 Mei 1980 kemudian di rilis di android pada 20 Maret 2013. Cara
bermainnya mudah yaitu pemain (pacman) diharuskan memakan makanan (berbentuk
titik-titik kecil) dan sebuah bulatan besar (energi) sampai habis di dalam
sebuah labirin yang berliku-liku. Tidak hanya menghabiskan makanan tersebut,
pemain juga harus menghindari 4 musuh yang berkeliaran secara random untuk
menangkap pemain. Jika pemain bertemu dengan musuh tersebut maka pemain
dinyatakan gagal dan harus mengulangi dari awal lagi. 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).
DECISION MAKING PADA GAME PACKMAN
A. 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).
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
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.
Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain sepak bola.
Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. 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. ‘Kecerdasan buatan’ ini bukan hanya ingin mengerti apa itu sistem kecerdasan, tapi juga mengkonstruksinya.
Diantara
ketiga jenis Decision making diatas, game packman cenderung kerah state Machine.
PATHFINDING PADA GAMAE PACKMAN
Metode Path Finding seringkali dijumpai pada
game yang bergenre strategi, dimana kita sebagai user menunjuk satu karakter
untuk digerakkan ke lokasi tertentu dengan cara mengklik lokasi yang akan
dituju. Maka, si karakter tersebut akan bergerak ke arah yang telah ditentukan,
dan secara “cerdas” dapat menemukan jaur terpendek ataupun menghindari
rintangan yang ada.
Metode pada Path Finding terbagi menjadi 4 bagian yaitu:
Metode pada Path Finding terbagi menjadi 4 bagian yaitu:
1. Waypoints
Merupakan titik acuan/kumpulan koordinat yang digunakan untuk keperluan navigasi. Maksud dari keperluan navigasi disini adalah mengidentifikasi sebuah titik dipeta. Disetiap koordinat biasanya menyertakan longitude, latitude, dan terkadang altitude untuk keperluan navigasi di udara.
2. A* Searching
Algoritma A* merupakan yang sering digunakan pada game yang menggunakan metode pathfinding. Algoritma ini dipilih karena A* sangat mudah untuk diimplementasikan dan sangat efisien. Dengan menggunakan algoritma A* kita dapat menentukan jalur terpendek. Pada algotitma ini akan menyeleksi dengan cara membuang langkah yang tidak perlu dengan mempertimbangkan bahwa langkah yang dibuang dipastikan tidak mencapai solusi yang diinginkan.
Prinsip dari algoritma ini yaitu dengan cara mencari jalur terpendek dari sebuah simpul awal (Starting Point) menuju ke simpul tujuan dengan memperhatikan harga (F) terkecil. Algoritma A* akan memperhitungkan cost dari current state ke tujuan dengan fungsi heuristic, selain itu algoritma ini juga mempertimbangkan cost yang telah ditempuh selama ini dari initial state ke current state. Jadi maksudnya jika jalan yang telah ditempuh terlalu panjang dan ada jalan lain yang cost nya lebih kecil tetapi memberikan posisi yang sama jika dilihat dari goal, maka jalan yang lebih pendeklah yang akan dipilih.
3. Dijkstra
Algoritma Dijkstra yang dinamai penemunya yakni seorang ilmuwan komputer, Edsger Dijkstra merupakan sebuah algoritma yang rakus atau biasa dikenal dengan algoritma greedy. Algoritma ini biasa dipakai dalam memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah (directed graph) dengan bobot-bobot sisi (edge weights) yang bernlai positif.
4. Tactical Pathfinding
Tactical Pathfinding merupakan algoritma pencarian jalur yang bisa melakukan pencarian jalur terpendek dengan menghitung bobot ancaman. Implementasi algoritma ini dapat memberikan gerakan taktis pada non-player character. Algoritma ini dilakukan berdasarkan algoritma pencarian jalur A* yang ditambah dengan perhitungan bobot.
Merupakan titik acuan/kumpulan koordinat yang digunakan untuk keperluan navigasi. Maksud dari keperluan navigasi disini adalah mengidentifikasi sebuah titik dipeta. Disetiap koordinat biasanya menyertakan longitude, latitude, dan terkadang altitude untuk keperluan navigasi di udara.
2. A* Searching
Algoritma A* merupakan yang sering digunakan pada game yang menggunakan metode pathfinding. Algoritma ini dipilih karena A* sangat mudah untuk diimplementasikan dan sangat efisien. Dengan menggunakan algoritma A* kita dapat menentukan jalur terpendek. Pada algotitma ini akan menyeleksi dengan cara membuang langkah yang tidak perlu dengan mempertimbangkan bahwa langkah yang dibuang dipastikan tidak mencapai solusi yang diinginkan.
Prinsip dari algoritma ini yaitu dengan cara mencari jalur terpendek dari sebuah simpul awal (Starting Point) menuju ke simpul tujuan dengan memperhatikan harga (F) terkecil. Algoritma A* akan memperhitungkan cost dari current state ke tujuan dengan fungsi heuristic, selain itu algoritma ini juga mempertimbangkan cost yang telah ditempuh selama ini dari initial state ke current state. Jadi maksudnya jika jalan yang telah ditempuh terlalu panjang dan ada jalan lain yang cost nya lebih kecil tetapi memberikan posisi yang sama jika dilihat dari goal, maka jalan yang lebih pendeklah yang akan dipilih.
3. Dijkstra
Algoritma Dijkstra yang dinamai penemunya yakni seorang ilmuwan komputer, Edsger Dijkstra merupakan sebuah algoritma yang rakus atau biasa dikenal dengan algoritma greedy. Algoritma ini biasa dipakai dalam memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah (directed graph) dengan bobot-bobot sisi (edge weights) yang bernlai positif.
4. Tactical Pathfinding
Tactical Pathfinding merupakan algoritma pencarian jalur yang bisa melakukan pencarian jalur terpendek dengan menghitung bobot ancaman. Implementasi algoritma ini dapat memberikan gerakan taktis pada non-player character. Algoritma ini dilakukan berdasarkan algoritma pencarian jalur A* yang ditambah dengan perhitungan bobot.
Mengejar
dan Menghindar
Mengejar dan menghindar merupakan teknik dasar yang
diterapkan pada banyak game berbasis kecerdasan buatan dari yang sederhana
sampai yang kompleks. apakah itu space shooters, RPG, atau game strategi.
metode paling umum pada teknik mengejar dan menghindar ini adalah melakukan
pemutakhiran (update) koordinat terhadap objek yang menjadi sasaran. Posisi
relatif dan kecepatan dapat dijadikan sebagai parameter pada algoritma mengejar
dan menghindar. Metode Line-of-sight yang membutuhkan dasar rumus persamaan
garis juga serngkali dijadikan basis metode mengejear dan menghindar.
Pola
Pergerakan
Pola pergerakan merupakan cara yang sederhana untuk
memberikan ilusi kecerdasan pada sebuah game. Game Galaga adalah contoh klasik
penerapan pola pergerakan ini, dimana pesawat musuh dapat bergerak secara
melingkat atau mengikuti pola garis lurus yang ditentukan. Contoh lain
penerapan pola pergerakan adalah pada game first-person shooter yang
menampilkan monster yang sedang berpatroli pada jalur tertentu, pada game
simulasi pertempuran pesawat dimana pesawat musuh dapat melakukan
manuver-manuver di udara yang menyulitkan kita mengejar, atau karakter-karakter
non-player (figuran) seperti kambing yang sedang berjalan membutuhkan teknik
pola pergerakan ini. Metode standar untuk menerapkan pola pergerakan adalah
dengan cara menyimpan pola tersebut dalam suatu array. Array tersebut terdiri
dari serangkaian koordinat atau perintah pergerakan dengan pola tertentu untuk
mengontrol koordinat dari objek. Dengan metode ini, bisa didapatkan pola-pola
pergerakan seperti melingkar, garis lurus, zig-zag atau bahkan kurva tak
beraturan.
Jaringan
saraf tiruan (neural network)
Neural network cukup baik ketika diterapkan pada
kasus-kasus yang sifatnya non-linier atau mengambil keputusan yang tidak dapat
dilakukan dengan metode tradisional. Penerapannya seringkali pada game-game
yang memerlukan kemampuan adaptif atau belajar dari pengalaman. Sebagai contoh,
jika suatau ketika terjadi pertempuran antar player dengan unit komputer, dan
unit komputer mengalami kekalahan, maka pada kesempatan lain yang serupa,
komputer akan memilih untuk tidak bertempur. Semakin banyak pengalaman yang
dialami komputer, maka komputer menjadi semakin cerdas. Prinsip dasar dari
jaringan saraf tiruan ini adalah perbaikan bobot secara terus menerus agar
output yang dihasilkan menjadi semakin akurat (semakin cerdas).
Algoritma
Genetis (genetic algorithm)
Algoritma genetis sedikit banyak dipengaruhi oleh teori
evolusi yang dicetuskan Darwin, yaitu bahwa spesies akan terus menerus
beradaptasi dengan lingkungannya dan ciri khasnya yang terletak pada kromosom,
akan diturunkan pada generasi berikutnya. Generasi turunan ini menerima
gabungan kromosom dari kedua induknya, yang disebut dengan crossover. Pada
algoritma genetis, akan diterapkan langkah ranking fitness untuk melakukan
seleksi terhadap langkah ranking fitness untuk melakukan seleksi terhadap
generasi turunan yang terbaik. Pada game berbasis algorima genetis, turunan
terbaik inilah yang dilibatkan ke dalam game, dimana akan digunakan oleh
komputer untuk merespons perubahan-perubahan tingkah laku user.
Berdasarkan
algoritma pathfinding diatas, Packman cenderung ke arah Tactical Pathfinding.
SUMBER :
https://dimaswin12.wordpress.com/2018/10/29/review-game-pacman/
http://valinsz.blogspot.com/2016/04/artificial-intelligence-ai-pada-game.html
http://i-niblog.blogspot.com/2017/04/artificial-intelligence-pada-game.html
SUMBER :
https://dimaswin12.wordpress.com/2018/10/29/review-game-pacman/
http://valinsz.blogspot.com/2016/04/artificial-intelligence-ai-pada-game.html
http://i-niblog.blogspot.com/2017/04/artificial-intelligence-pada-game.html

Tidak ada komentar:
Posting Komentar