marfgold1 / EcoRacing

Eco Racing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tugas Besar 1 Strategi Algoritma

Merupakan project dengan menggunakan bahasa pemrograman Java untuk membuat bot permainan Overdrive dalam pertandingan tahunan Entelect Challenge menggunakan strategi greedy. Proyek ini dibuat untuk pemenuhan tugas besar 1 IF2211 Strategi Algoritma.

Daftar Isi

Strategi Greedy

Strategi greedy yang digunakan secara ringkas dapat dirangkum sebagai berikut:

Pada setiap langkah (ronde), dapatkan semua command (himpunan kandidat) yang dapat dipakai tanpa pinalti skor (fungsi kelayakan), kemudian menggunakan prioritas dengan grouping perintah yang mirip secara fungsi, dimana setiap command group juga akan memprioritaskan command yang lebih berguna berdasarkan state permainan di setiap rondenya (fungsi seleksi) untuk mencapai jarak antara pemain dan musuh (negatif jika musuh mendahului pemain atau positif jika pemain mendahului musuh) yang maksimum, kecepatan mobil yang maksimum, serta memaksimumkan skor yang diperoleh (fungsi objektif), sehingga didapatkan urutan command yang akan menjadi perintah untuk bot di permainan pada setiap rondenya (himpunan solusi) hingga akhir dari permainan (fungsi solusi).

Requirement

  1. JDK 1.8 keatas
  2. Maven

Setup

Untuk melakukan build project, gunakan maven sehingga menghasilkan folder bin berisi jar program bot yang siap digunakan.

mvn clean install

Usage

Bot yang telah dibuild dalam tahap Setup dengan format .jar dapat dipakai bersamaan dengan game runner sehingga dapat berkomunikasi dengan game engine. Pastikan telah menyalin folder bin dan bot.json dalam satu folder yang sama yang dimasukkan ke dalam folder game runner, kemudian atur game-runner-config.json pada pemain-a atau pemain-b sehingga menggunakan path folder bot yang telah disalin. Jalankan game-runner-jar-with-dependencies.jar dengan command berikut:

java -jar ./game-runner-jar-with-dependencies.jar

Pastikan terdapat game-engine.jar, game-config.json, dan game-runner-config.json pada folder yang sama dengan jar untuk game runner.

Untuk memudahkan dalam menjalankan permainan dan menggunakan bot, gunakan starter-pack yang telah tersedia disini, kemudian salin folder bot di dalam folder starter pack yang telah diekstrak (pastikan telah dibuiild terlebih dahulu) dan ubah game-runner-config.json sesuai dengan langkah diatas, terakhir jalankan run.bat.

Author

Kelompok 37 | Eco Racing

  • Rifqi Naufal Abdjul (13520062)
  • Amar Fadil (13520103)
  • Vito Ghifari (13520153)

About

Eco Racing


Languages

Language:Java 100.0%