Penulisan Ketiga - AI,Decision,Rule,Path Finding,Way Point
KONSEP AI
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.
Artificial Intelligence dalam Game
Salah satu unsur yang
berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan
buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya
manusia. 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. Contoh media interaksi ialah:
- Penglihatan (vision)
- Suara (voice), ucapan (speech)
- Gerakan anggota badan ( gesture)
Untuk pembentukan
Artificial Intelligence pada game ternyata digunakan pula algoritma, yaitu
jenis pohon n-ary untuk suatu struktur. Implementasi pohon (tree) ini biasa
disebut game tree. Berdasarkan game tree inilah sebuah game disusun algoritma
kecerdasan buatannya. Artificial intellegence yang disematkan dalam sebuah game
yang membentuk analisis game tree biasanya merepresentasikan kondisi atau
posisi permainan dari game sebagai suatu node, dan merepresentasikan langkah
yang mungkin dilakukan sebagai sisi berarah yang menghubungkan node kondisi
tersebut ke anak (child) sebagaimana representasi suatu pohon (tree). Namun,
biasanya representasi langsung tersebut mempunyai kelemahan, yaitu representasi
data pohon akan menjadi sangat lebar dan banyak. Mungkin bagi sebuah mesin
komputer mampu melakukan kalkulasi sebanyak apapun masalah, namun game tree
yang lebar dan besar memberikan beberapa masalah, antara lain konsumsi proses
memori, kapasitas penyimpanan yang cukup besar dan kinerja yang kurang pada
konsol game berspesifikasi rendah. Karena itu dibentuklah beberapa algoritma
dan penyederhanaan bagi sebuah game tree.
Pada salah satu contoh game klasik, yaitu tic tac toe, penyederhanaan dapat
dilakukan dengan berbagai metode. Salah satu diantaranya adalah minimax. Metode
ini berhasil diterapkan dan memberikan nilai reduksi yang cukup signifikan. Dan
tidak hanya bisa digunakan secara monoton, minimax juga bisa digunakan untuk
game-game yang lebih rumit seperti catur, tentunya dengan algoritma dan
representasi berbeda.
Minimax yang merupakan salah satu metode penerapan (implementasi) pohon
n-ary pada suatu game, menandakan bahwa implementasi struktur (pohon khusunya)
sangatlah diperlukan pada pembuatan dan penerapan Artificial Intelligence, dan
tidak menutup kemungkinan ilmu dan metode baru yang lebih canggih akan
ditemukan di masa depan.
Decision Making
Decision Making adalah serangkaian algoritma yang dirancang
dengan memasukan beberapa kemungkinan langkah yang bisa diambil oleh suatu
aplikasi, Pada game ini decision making memberikan
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. Algoritma decision making kerap
digunakan dalam aplikasi game, akan tetapi algoritma decision making dapat
diimplementasikan pada banyak aplikasi lain. Decision Making terbagi menjadi 3
: Decision Tree, State Machine dan Rule System
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).
Dalam situasi lain
kemampuan untuk menjelaskan alasan pengambilan keputusan adalah sesuatu yang
sangat penting. Misalnya pada perusahaan asuransi ada larangan resmi untuk
mendeskriminasi berdasarkan variabel-variabel tertentu. Perusahaan asuransi
dapat mencari sendiri keadaan yang mencerminkan bahwa mereka tidak menggunakan
deskriminasi yang ilegal dalam memutuskan seseorang diterima atau ditolak.
Sebuah pohon keputusan adalah sebuah struktur yang dapat digunakan untuk
membagi kumpulan data yang besar menjadi himpunan-himpunan record yang
lebih kecil dengan menerapkan serangkaian aturan keputusan. Anggota himpunan
hasil menjadi mirip satu dengan yang lain dengan masing-masing rangkaian
pembagian. Sebuah model pohon keputusan terdiri dari sekumpulan aturan untuk
membagi sejumlah populasi yang heterogen menjadi lebih kecil, lebih homogen
dengan memperhatikan pada variabel tujuannya. Sebuah pohon keputusan mungkin
dibangun dengan seksama secara manual, atau dapat tumbuh secara otomatis dengan
menerapkan salah satu atau beberapa algoritma pohon keputusan untuk memodelkan
himpunan data yang belum terklasifikasi (Tan dkk, 2004).
Variabel tujuan
biasanya dikelompokkan dengan pasti dan model pohon keputusan lebih mengarah
pada perhitungan probabilitas dari masing-masing record terhadap
kategori-kategori tersebut, atau untuk mengklasifikasi record dengan
mengelompokkannya dalam satu kelas. Pohon keputusan juga dapat digunakan untuk
mengestimasi nilai dari variabel kontinyu, meskipun ada beberapa teknik yang
lebih sesuai untuk kasus ini.
Kelebihan dari metode pohon keputusan adalah:
- Daerah pengambilan keputusan yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik
- Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode pohon keputusan maka sampel diuji hanya berdasarkan kriteria atau kelas tertentu
- 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
- Dalam analisis multivarian, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu mengestimasikan baik itu distribusi dimensi tinggi ataupun parameter tertentu dari distribusi kelas tersebut. Metode pohon keputusan dapat menghindari munculnya permasalahan ini dengan menggunakan kriteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan.
Kekurangan pada pohon keputusan adalah:
- 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
- Pengakumulasian jumlah kesalahan dari setiap tingkat dalam sebuah pohon keputusan yang besar
- Kesulitan dalam mendesain pohon keputusan yang optimal
- Hasil kualitas keputusan yang didapatkan dari metode pohon keputusan sangat tergantung pada bagaimana pohon tersebut didesain.
Pohon keputusan adalah
model prediksi menggunakan struktur pohon atau struktur berhirarki. Setiap percabangan
menyatakan kondisi yang harus dipenuhi dan tiap ujung pohon menyatakan kelas
data. Contoh pada Gambar diatas adalah identifikasi pembeli komputer. Dari
pohon keputusan tersebut diketahui bahwa salah satu kelompok yang potensial
membeli komputer adalah orang yang berusia di bawah 30 tahun dan juga pelajar.
Setelah sebuah pohon keputusan dibangun maka dapat digunakan untuk
mengklasifikasikan record yang belum ada kelasnya. Dimulai dari node root,
menggunakan tes terhadap atribut dari record yang belum ada kelasnya ini lalu
mengikuti cabang yang sesuai dengan hasil dari tes tersebut, yang akan membawa
kepada internal node (node yang memiliki satu cabang masuk dan dua atau lebih
cabang yang keluar), dengan cara harus melakukan tes lagi terhadap atribut atau
node leaf. Record yang kelasnya tidak diketahui kemudian diberikan kelas yang
sesuai dengan kelas yang ada pada node leaf. Pada pohon keputusan setiap simpul
leaf menandai label kelas. Proses dalam pohon keputusan yaitu mengubah bentuk
data (tabel) menjadi model pohon (tree) kemudian mengubah model pohon tersebut
menjadi aturan (rule) (J R Quinlan, 1993). Salah satu algoritma induksi pohon
keputusan yaitu ID3 (Iterative Dichotomiser 3). ID3 dikembangkan oleh J. Ross
Quinlan. Dalam prosedur algoritma ID3, input berupa sampel training, label
training dan atribut. Algoritma Decision Tree C4.5 merupakan pengembangan dari
ID3. Sedangkan pada perangkat lunak open source WEKA mempunyai versi sendiri
dari C4.5 yang dikenal sebagai J48.
State Machine
Berdasarkan sifatnya,
metode FSM ini sangat cocok digunakan sebagai basis perancangan perangkat lunak
pengendalian yang bersifat reaktif dan real time. Salah satu keutungan nyata
penggunaan FSM adalah kemampuannya dalam mendekomposisi aplikasi yang relative
besar dengan hanya menggunakan sejumlah kecil item state. Selain untuk bidang
kontrol, Penggunaan metode ini pada kenyataannya juga umum digunakan sebagai
basis untuk perancangan protokol-protokol komunikasi, perancangan perangkat
lunak game, aplikasi WEB dan sebagainya.
Dalam bahasa
pemrograman prosedural seperti bahasa C, FSM ini umumnya direalisasikan dengan
menggunakan statemen kontrol switch case atau/dan if..then. Dengan menggunakan
statemen-statemen kontrol ini, aliran program secara praktis akan mudah
dipahami dan dilacak jika terjadi kesalahan logika.
Rule Systems
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.
Rule Base Systems
(RBS) sistem yang baik untuk mendapat jawaban dari pertanyaan mengenai What
(apa), How (bagaimana) dan Why (mengapa) dari Rule Base (RB) selama proses
inferensia. Jawaban dan penjelasannya dapat disediakan dengan baik. Masalah
yang ada dengan SBP adalah ia tak dapat secara mudah menjalankan proses
akuisisi knowledge (pengetahuan) dan ia tak dapat mengupdate rule (aturan)
secara otomatis. Hanya pakar yang dapat mengupdate Knowledge Base (KB) secara
manual dengan dukungan dari knowledge engineer (insinyur pengetahuan). Lebih
jauh kebanyakan peneliti dalam SBA lebih memperhatikan masalah optimasi pada
rule yang sudah ada daripada pembangkitan rule baru dari rule yang sudah
ada.
Pathfinding dan waypoitns
Pathfinding adalah proses pencarian path tercepat dari
titik asal ke titik tujuan dengan menghindari berbagai halangan sepanjang path
yang ditempuh. Secara umum pathfinding dapat dibedakan menjadi pathfinding
statik dan dinamik.
Waypoint dibagi menjadi dua jenis, yaitu waypoint fly by dan waypoint fly over. Waypoint fly by tidak melewati lokasi di atas way point namun tetap menuju ke arah tujuan, sedangkan waypoint fly over melewati lokasi di atas way point.Setelah satu waypoint terlewati, maka pilot harus menetapkan waypoint berikutnya yang disebut dengan waypoint aktif.
Daftar Pustaka
http://fyochintya21.blogspot.com/2016/04/pet-game-konsep-pembuatan-script-game.html
https://id.wikipedia.org/wiki/Waypoint
Tidak ada komentar:
Posting Komentar