Notulensi Diskusi Siringmakar Edisi 1 – Analisis Game Strategi,Studi Kasus StarCraft II

Poster:

siringmakar-2-copy

Garis Besar Penelitian yang dilakukan oleh Teguh Budianto:

Perkenalkan nama saya Teguh Budianto, saat ini saya sedang menempuh studi S2 di University of Tsukuba, bidang riset saya Game Analysis dengan fokus ke Real-time strategy game. (selanjutnya saya sebut RTS).

RTS merupakan sebuah genre permainan yang biasanya berupa game strategi perang antara dua kubu atau lebih yang mengharuskan para pemainnya untuk saling menyerang dan menghancurkan markas lawannya. Dalam game strategi, para pemain biasanya diharuskan untuk mengumpulkan sumber daya agar dapat membangun bangunan, melatih armada tempur, dan bertempur dengan lawan. Mungkin sudah banyak yang familiar dengan RTS game atau bahkan sering memainkan tipe game tersebut. Beberapa contoh game RTS yang cukup familiar adalah Age of Empires, Empire Earth, WarCraft, dan StarCraft.

Ada beberapa tantangan utama dalam pengembangan RTS game. Dua tantangan utamanya adalah pengembangan AI untuk game tersebut dan knowledge transfer dari para pemain profesional ke para pemain pemula.

Saya melihat bahwa kemampuan AI (agent/bot) belum mampu untuk menandingi kemampuan manusia dalam bermain jenis game strategi ini (dalam hal ini para pemain profesional). Kita bisa katakan bahwa AI dan para pemain pemula berada di posisi yang sama, dimana mereka tidak mampu untuk meningkatkan kemampuan bermain mereka. Hal ini disebabkan jenis game ini membutuhkan kemampuan pengambilan keputusan yang kompleks di berbagai macam level pengambilan keputusan dalam waktu bersamaan. Pada level makro, berupa bagaimana para pemain melakukan investasi sumber daya dan teknologi, menggunakan pasukan perang, menjelajah lokasi perang, mengembangkan markas, dan memfokuskan diri untuk menyerang atau bertahan.

Sementara pada level mikro, seperi apakah pemain sebaiknya membagi dua pasukan mereka dalam 2 group, dimana harus meletakkan posisi pasukan perang, skill apa yang harus digunakan dan kapan harus menggunakannya. Semua keputusan ini harus dibuat dan dipertimbangkan dalam setiap beberapa menit karena jenis game ini sangat dinamis dan juga bergantung kepada keputusan lawan main.

Seperti yang saya sebutkan sebelumnya, bahwa AI dan para pemain pemula terkendala pada peningkatan skill mereka dalam memainkan game ini. Dengan mengacu kepada permasalahan tersebut, saya bertujuan untuk merancang sebuah framework yang dapat memberikan rekomendasi kepada para pemain agar bisa memperbesar peluang mereka untuk menang dalam permainan ini. Saya mempelajari behavior para pemain profesional dengan memanfaatkan game logs milik StarCraft dan menganalisa detail informasi yang ada di logs tersebut. Seperti seberapa banyak unit yang dibuat dalam rentang waktu tertentu, bagaimana pemilihan strategi dan kapan harus mengubahnya, seberapa cepat kontrol mereka terhadap unit yang ada, dimana mereka menempatkan pasukan, bagaimana kombinasi pasukan yang ada, berapa jumlah pekerja yang mereka buat dan sebagainya. Intinya sedetail-detailnya akan lebih bermanfaat untuk penelitian yang kami lakukan. Saya berharap framework tersebut juga dapat diimplementasikan ke AI (agent/bot) yang memiliki kemampuan bermain yang baik pula. atau bahkan memiliki kemampuan setara dengan para pemain profesional (mungkin ini cukup sulit untuk dicapai dalam waktu penelitian yang relatif singkat).

Nah, menariknya lagi setiap tahunnya terdapat beberapa AI turnamen yang ditujukan bagi pelajar dan para peneliti untuk mengikut sertakan AI bot mereka dalam kompetisi tersebut. Berikut ini kompetisi-kompetisi yang saya sebutkan tadi: http://sscaitournament.com/ dan http://www.cs.mun.ca/~dchurchill/starcraftaicomp/

Kalau ada yang berminat, mungkin bisa memulai untuk mengulik bot open source berikut ini https://github.com/davechurchill/ualbertabot/wiki (hanya saja bot hanya untuk StarCraft: Broodwar dan bukan StarCraft II).

Untuk saat ini, environment pengembangan AI masih dalam tahap pengembangan dan baru akan dirilis pada awal tahun 2017. Jadi dalam waktu dekat akan sangat memungkinkan untuk membuat bot di StarCraft II.

Sementara mungkin itu saja yang bisa saya sampaikan. Silakan jika ada yang ingin bertanya lebih detail lagi mengenai hal ini. Terima kasih.

Hasil Diskusi:

  • Seperti yang saya sebutkan sebelumnya, bahwa AI dan para pemain pemula terkendala pada peningkatan skill mereka dalam memainkan game ini. Dengan mengacu kepada permasalahan tersebut, saya bertujuan untuk merancang sebuah framework yang dapat memberikan rekomendasi kepada para pemain agar bisa memperbesar peluang mereka untuk menang dalam permainan ini. Saya mempelajari behavior para pemain profesional dengan memanfaatkan game logs milik StarCraft dan menganalisa detail informasi yang ada di logs tersebut. Seperti seberapa banyak unit yang dibuat dalam rentang waktu tertentu, bagaimana pemilihan strategi dan kapan harus mengubahnya, seberapa cepat kontrol mereka terhadap unit yang ada, dimana mereka menempatkan pasukan, bagaimana kombinasi pasukan yang ada, berapa jumlah pekerja yang mereka buat dan sebagainya. Intinya sedetail-detailnya akan lebih bermanfaat untuk penelitian yang kami lakukan. Saya berharap framework tersebut juga dapat diimplementasikan ke AI (agent/bot) yang memiliki kemampuan bermain yang baik pula. Atau bahkan memiliki kemampuan setara dengan para pemain profesional (mungkin ini cukup sulit untuk dicapai dalam waktu penelitian yang relatif singkat). Nah, menariknya lagi setiap tahunnya terdapat beberapa AI turnamen yang ditujukan bagi pelajar dan para peneliti untuk mengikut sertakan AI bot mereka dalam kompetisi tersebut. Berikut ini kompetisi-kompetisi yang saya sebutkan tadi: http://sscaitournament.com/ dan http://www.cs.mun.ca/~dchurchill/starcraftaicomp/ . Kalau ada yang berminat, mungkin bisa memulai untuk mengulik bot open source berikut ini https://github.com/davechurchill/ualbertabot/wiki (hanya saja bot hanya untuk StarCraft: Broodwar dan bukan StarCraft II).⁠⁠⁠⁠ Untuk saat ini, environment pengembangan AI masih dalam tahap pengembangan dan baru akan dirilis pada awal tahun 2017. Jadi dalam waktu dekat akan sangat memungkinkan untuk membuat bot di StarCraft II. Untuk informasi saja, salah satu achievement terbaru di game AI itu dari AlphaGo research team yang teah mengembangkan computer yang bisa mengalahkan professional gamer di GO (semacam board-game ala Jepang/China).
    http://www.nature.com/news/google-ai-algorithm-masters-ancient-game-of-go-1.19234 . AlphaGo ini menerapkan konsep deep learning neural network lho. sampe ada yang bilang kalau deep learning ini masa depan AI yang bisa memecahkan banyak masalah pada pengembangan AI

Tanya jawab:

Baca juga:

Pertanyaan 1

  • Pertanyaan: mengapa setiap GAME memiliki cheat dan apa fungsinya untuk permainan strategi tersebut, apakah untuk mencari profit terselubung dengan menjual suatu akun yang sudah level tinggi atau apa.
  • Jawaban 1 (dari Pemateri): Sebenarnya cheat codes hanya untuk adjustment saja mba di dalam sebuah game yg intinya si pemain bisa mengatur tingkat kesulitan dari game tersebut. Bisa dibuat lebih susah atau lebih mudah. Nah, ini tidak ada yg salah dengan cheat code nya karena murni memang dikembangkan oleh developer gamenya sendiri.
    Sementara kalau semisal ada yang jual beli cheat code di luar dari yang dibuat oleh developer, itu biasanya si gamenya sendiri terdapat bugs yang tidak diketahui oleh tim developernya Mba. Jadi jual belinya mungkin dalam bentuk yg seperti itu.
  • Jawaban 2 (dari peserta diskusi): Setahu saya cheat sengaja diciptakan oleh programmer game tsb. Guna mempermudah game tester dalam mencoba fitur2 dari game. Dan apabila samapai tersebar luas biasanya ada pihak internal yang membocorkan atau memang ada bug yang dapat dimanfaatkan.

Pertanyaan 2

  • Pertanyaan: Gimana cara menganalisa AI nya hingga bisa didapatkan frame work. Apakah masuk ke code dari gamenya atau kita trial and error dengan bermain game?
  • Jawaban: Cara pertama, analisisnya bisa dengan secara manual, seperti yang disebutkan yakni trial error dengan bermain game, melihat replay game tersebut berulang-ulang. Itu satu. Cara kedua, dengan data mining. Saya membuat statistik table yang berisi detail informasi apa saja yang saya rasa penting untuk membangun AI-nya. Ini baru tahap analisa saja ya mas belum ke pengembangan softwarenya. AI-nya sendiri dibangun dengan memanfaatkan antarmuka yang disediakan developer resmi game tersebut. Dalam hal saya, saya pakai StarCraft.

Pertanyaan 3

  • Pertanyaan: Mengenai self-learning AI (Artificial Intelligent/kecerdasan buatan), apakah framework mas teguh ini nantinya menerapkan hal tersebut?
  • Jawaban: Saya termasuk mengumpulkan data, analisa,  hingga tahap pemrogramannya. Saat ini ada belum penerapan AI, tapi kedepannya saya akan coba untuk menerapkan reinforce-learning di AI-nya. jadi si agent/bot/AI di game ini bisa belajar sendiri.

Pertanyaan 4

  • Pertanyaan: AInya itu apakah bsa diwujudkan dg menerapkan algoritma tertentu sperti fuzzy logic, jaringan syaraf tiruan, atau algoritma genetika?
  • Jawaban: Sebenarnya untuk yang sesederhana rule-based saja sudah bisa mas untuk membangun AI-nya. tapi kemampuannya sangat terbatas. Bisa banget mas. saya pikir bisa dengan jaringan syaraf tiruan.

Pertanyaan 5

  • Pertanyaan: seandainya sdah bsa manusia membuat AI yg jago bermain game RTS, kira2 aplikasinya dmna mas? Apkah mnjadi pengendali peperangan dalam dunia nyata? Ibarat mobil tnpa supir, unmanned, apakah aplikasi AI tsb nntinya mnjdi jendral perang atau bgaimana mas?
  • Jawaban 1 (Pemateri): Wahh, saya concern untuk pengembangan AI-nya saja mas. peruntukannya seperti apa mungkin in general framework yg sama bisa untuk pengembangan robot di dunia nyata.
  • Jawaban 2 (Peserta Diskusi): Selama ini kita kan main game sering disebut melawan komputer, padahal melawan AI game tersebut. Jadi AI-nya itu di situ mas. Nah, tantangan sekarang keceradasan manusia lebih hebat dari AI sehingga game tersebut kurang menantang/kurang sulit. Semakin AI meningkat, semakin sulit dan menantang game tersebut.

Pertanyaan 6

  • Pertanyaan: Sya searching d googlescholar tntg peneltian AI d game rts, dan trnyta populer bgt ya mas. Nah, kalau yg bkan dr jalur peneliti nih mas, gmna kita sbg gamer bsa mendapatkan penghasilan dr topik ini??
  • Jawaban:  Mungkin mas juga pernah dengar kalau di beberapa negara, gamer itu jadi mata pencarian. Sepertinya cukup sulit untuk bisa jadi profesional gamer yang dibayar. Mereka biasanya dihire oleh satu tim yang didukung oleh perusahaan-perusahaan teknologi, jadi gajinya lumayan besar. Belum lagi kalau menang di kompetisi-kompetisi game dunia. https://en.wikipedia.org/wiki/Professional_StarCraft_competition

Pertanyaan 7

  • Pertanyaan: sejauh pengamatan saya jarang sekali org yg memainkan game RTS di Indonesia, mengapa org Indonesia harus mulai melirik genre ini?
  • Jawaban: RTS sepertinya kurang populer dibandingkan MOBA game semacam DOTA ya kalau di Indonesia. Saya mungkin bisa jawabnya dari ranahnya saya ya mas, RTS punya kompleksitas yang bisa melatih time management, strategy, dan pengambilan keputusan secara cepat. Mungkin itu saja dari saya.

Referensi Tambahan:

  • Learning to see and act, An artificial-intelligence system uses machine learning from massive training sets to teach itself to play 49 classic computer games, demonstrating that it can adapt to a variety of tasks. (Download Artikel)
  • Google masters Go Deep-learning software excels at complex ancient board game. (Donwload Artikel)
  • Checkers Is Solved. (Download Artikel)
  • Mastering the game of Go with deep neural networks and tree search. (Download Artikel)
Artikel Berhubungan:

Sponsor Warstek.com:
Nur Abdillah Siddiq

Nur Abdillah Siddiq

Mahasiswa S3 Fisika ITS, menekuni bidang Optoelektronik dan Elektromagnetika Terapan. Sangat mencintai aktivitas membaca dan mendesain. Profil lebih lengkap dapat dilihat di www.facebook.com/fisrek

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *