Febrian Bahari Adi 2207 100 175

Febrian Bahari Adi 2207 100 175

Febrian Bahari Adi 2207 100 175 Dosen Pembimbing 1 : Moch. Hariadi, S.T., M.Sc., Ph.D. Dosen Pembimbing 2 : Dr. I Ketut Eddy P., S.T., M.T. Pendahuluan • Pada game mode Real-Time Strategy (RTS), perilaku player maupun Non-Player Character (NPC) dipengaruhi oleh perubahan lingkungan secara real- time. NPC yang tidak responsif terhadap lingkungan memiliki daya tempur yang lemah. • Kecerdasan buatan berbasis algoritma perilaku boid diberikan untuk memampukan NPC merespon lingkungan secara cerdas. Dengan respon yang cerdas terhadap lingkungan, NPC lebih dapat bertahan di dalam situasi pertempuran. Latar Belakang • NPC tempur pada game RTS biasanya beraksi dalam kelompok besar • NPC yang tidak responsif terhadap lingkungan tempur memiliki daya tempur yang lemah dan dapat melemahkan daya tempur NPC kawan • Perilaku boid merupakan perilaku yang didasarkan pada rangsangan lingkungan lokal [i],[ii] • Perilaku boid diterapkan di dalam kelompok besar [i],[ii] • Perilaku setiap individu boid memberikan keuntungan bagi keseluruhan boid di dalam kelompok Perumusan Masalah • NPC tanpa kecerdasan buatan dapat saling berbenturan dan menghalangi aksi dari kawan saat berkerumun • NPC tanpa kecerdasan buatan menggunakan aturan jarak terdekat dalam menentukan target untuk dilawan • Penerapan perilaku boid pada NPC tempur melibatkan pemilihan NPC lawan sebagai obstacle atau target Tujuan • Mendapatkan NPC tempur dengan kecerdasan buatan menggunakan algoritma boid • Mendapatkan perbandingan efektivitas daya tempur NPC dengan kecerdasan buatan menggunakan algoritma boid dengan NPC tanpa kecerdasan buatan • Menentukan pengaruh algoritma boid pada efektivitas tempur kelompok NPC dengan variasi jumlah anggota kelompok dan variasi waktu tempur Batasan Masalah • Mode game yang disimulasikan adalah RTS (Real Time Strategy) • Simulasi menggunakan Unity 3D game engine • Pertempuran hanya melibatkan dua kelompok NPC • Model 3D seragam untuk masing-masing kubu NPC • Tanpa obstacle selain NPC kawan atau lawan non- target • Perilaku boid yang diberikan hanya untuk pergerakan yang memiliki dua komponen vektor, pergerakan di sumbu X dan sumbu Z Relevansi • Pengembangan permainan komputer dengan kawanan NPC cerdas • Penerapan algoritma perilaku boid untuk kecerdasan buatan Simulasi • si·mu·la·si n 1 metode pelatihan yg meragakan sesuatu dl bentuk tiruan yg mirip dng keadaan yg sesungguhnya; 2 penggambaran suatu sistem atau proses dng peragaan berupa model statistik atau pemeranan; • http://bahasa.kemdiknas.go.id/kbbi/index.php NPC • Non-Player Characters (NPC) entitas dalam game yang tidak dikendalikan secara langsung oleh pemain Ragam Inspirasi Perilaku Boid Flocking of birds Herd of land animals School of fish Flocking of Birds • tujuan terbang dalam kawanan : – mencari makan – migrasi • berdasarkan persepsi lokal dari lingkungan yang dinamis • permodelan gerakan 3D • untung & rugi : – [+] aman dari predator – [+] efisiensi dalam mencari lokasi makanan – [+] reproduksi satu spesies – [-] berebut dalam mendapatkan makanan Herd of Land Animals • tujuan bergerak dalam kawanan : – mencari makan – migrasi • berdasarkan persepsi lokal dari lingkungan yang dinamis • permodelan gerakan 2D • untung & rugi : – [+] aman dari predator – [+] efisiensi dalam mencari lokasi makanan – [-] berebut dalam mendapatkan makanan School of Fish • tujuan berenang dalam kawanan : – berburu – migrasi • berdasarkan persepsi lokal dari lingkungan yang dinamis • permodelan gerakan 3D • untung & rugi : – [+] pengawasan terhadap lingkungan – [+] mengurangi peluang untuk dimangsa oleh makhluk / ikan Desain Simulasi Generate NPC • Satu model sebagai leader • Follower digenerate dengan fungsi instantiate – Posisi relatif terhadap leader Instantiate (prefab, Vector3.position, Vector3.rotation); Boid Behavior • Deteksi local neighbor • Steering Behavior sederhana : – Separation – Alignment – Cohesion Separation • Kendali untuk menghindari kerumunan lokal sesama boid Collision Avoidance velBoidSepa += pos_red - transform.position; velBoidSepa /= neighborCount; velBoidSepa *= -1; velBoidSepa.Normalize(); velBoidSepa *= velMax; Alignment • Kendali untuk menghadap ke arah yang sama dengan rata-rata lokal arah hadap sesama boid Velocity Matching velBoidAlign += vel_red; velBoidAlign /= neighborCount; velBoidAlign.Normalize(); velBoidAlign *= velMax; Cohesion • Kendali untuk bergerak menuju posisi rata- rata lokal dari sesama boid Flock centering velBoidCohe += pos_red; velBoidCohe /= neighborCount; velBoidCohe -= transform.position; velBoidCohe.Normalize(); velBoidCohe *= velMax; Data Pengujian Simulasi Perilaku NPC Berbasis Boid dengan Variasi Jumlah Agen Jumlah Jumlah NPC Sisa Sisa NPC Menang NPC Boid non-Boid NPC non-Boid (Y / N) Boid 70 70 60 30 Y 70 70 65 25 Y 70 70 64 27 Y 100 100 80 30 Y 100 100 83 35 Y 100 100 90 36 Y 120 120 110 40 Y 120 120 105 35 Y 120 120 98 50 Y Simulasi Perilaku NPC Berbasis Boid dengan Variasi Waktu Tempur Waktu Jumlah Jumlah Sisa NPC Sisa NPC Menang Uji NPC Boid NPC non- Boid non-Boid (Y / N) (menit) Boid 1 100 100 90 32 Y 1 100 100 95 35 Y 1 100 100 98 30 Y 3 100 100 80 15 Y 3 100 100 78 13 Y 3 100 100 82 10 Y 5 100 100 78 0 Y 5 100 100 75 0 Y 5 100 100 70 0 Y Kesimpulan • NPC tempur dengan kecerdasan buatan menggunakan algoritma boid dapat merespon lingkungan tempur lebih baik dibandingkan NPC tanpa kecerdasan buatan • Rata-rata jumlah NPC dengan kecerdasan buatan berbasis algoritma boid yang bertahan hidup pada akhir simulasi sebanyak 3,35 kali dari rata-rata NPC tanpa kecerdasan buatan berbasis algoritma boid. Daftar Referensi • Reynolds, C. W., “Flocks, Herds, and Schools: A Distributed Behavioral Model”, Computer Graphics, 21(4) (SIGGRAPH '87 Conference Proceedings) halaman 25-34, 1987 <URL: http://www.cs.toronto.edu/~dt/siggraph97-course/cwr87/> • Reynolds, C. W., “Boids : Background and Update”. <URL: http://red3d.com/cwr/boids/>. Update terbaru: September 6, 2001. • Rae, Alastair., “Quelea Flock”. <URL: http://www.flickr.com/photos/merula/342898722/in/set-72157594423311516/ > • Wikipedia.org. “Red-billed Quelea” <URL: http://en.wikipedia.org/wiki/Red- billed_Quelea > • Hutto R., “Foraging Behavior Patterns Suggest a Possible Cost Associated with Participation in Mixed-Species Bird Flocks”. Oikos 51(1): 79–83. 1988. • Raman, T. R. Shankar. “Wildebeest herding and following a few leading zebra in the Masai Mara, Kenya”. Koleksi pribadi. <URL: http://en.wikipedia.org/wiki/File:Wbeest_Mara.jpg> • Biermen, Ed., “A Tornado of Fish”. <URL: http://www.flickr.com/photos/edbierman/3200958280/> • National Geographic. “Bluefin Tuna Eat Bait Ball”<URL: http://video.nationalgeographic.com/video/animals/fish-animals/spiny-rayed- fish/tuna_eat_bait_ball/> • Pitcher, T.; Magurran, A.; Winfield, I., “Fish in larger shoals find food faster”. Behav. Ecol. and Sociobiology 10 (2): 149–151. 1982. • Reynolds, C. W., “Steering Behaviors For Autonomous Characters”, Game Developers Conference 1999, San Jose, California. Miller Freeman Game Group, San Francisco, California, halaman 763-782, 1999. <URL: http://www.red3d.com/cwr/steer/gdc99/> • Bevilacqua, Fernando., “Understanding Steering Behaviors: Seek”. <URL: http://gamedev.tutsplus.com/tutorials/implementation/understanding-steering- behaviors-seek/ >. 2013 • Bevilacqua, Fernando., “Understanding Steering Behaviors: Flee and Arrival”. <URL: http://gamedev.tutsplus.com/tutorials/implementation/understanding-steering- behaviors-flee-and-arrival/ >. 2013 • Pemmaraju, Vijay., “The Three Simple Rules of Flocking Behaviors: Alignment, Cohesion, and Separation”. <URL: http://gamedev.tutsplus.com/tutorials/implementation/the-three-simple-rules-of- flocking-behaviors-alignment-cohesion-and-separation/ >. Januari, 2013 • Parker, Conrad., “Boids Pseudocode”. <URL: http://www.kfish.org/boids/pseudocode.html > .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    25 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us