Skip to content

Latest commit

 

History

44 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ice Sliding Solver

Ice sliding solver sadalah tools untuk memecahkan permasalahan puzzle Ice Sliding menggunakan beberapa algoritma pencarian rute pada grid berbobot.
Aplikasi menyediakan antarmuka JavaFX untuk memuat file input, menjalankan solver, melihat langkah solusi lewat playback, dan menyimpan hasil solusi ke file.

❄️ Tampilan GUI

Ice Sliding Solver

🔗 Requirement dan Instalasi

Requirement

  • Java Development Kit (JDK) 21
  • Apache Maven 3.9+

Instalasi singkat

  1. Clone repository ini.
  2. Pastikan java -version menunjukkan Java 21.
  3. Pastikan mvn -v sudah tersedia.

💻 Cara Mengompilasi Program

Pastikan terminal berada di root project, lalu gunakan perintah sesuai OS:

Windows (PowerShell / CMD)

mvn clean package

Hasil build JAR:

bin\Tucil3_13524064_13524131.jar

Linux

mvn clean package

Hasil build JAR:

bin/Tucil3_13524064_13524131.jar

▶️ Cara Menjalankan Program

Menjalankan

Opsi 1 (langsung dari Maven):

mvn javafx:run

Opsi 2 (menjalankan JAR hasil build):

java -jar bin/Tucil3_13524064_13524131.jar

📃 Langkah-Langkah Penggunaan Aplikasi

  1. Klik Choose Input File lalu pilih file .txt (contoh: test/input/tc_spec.txt).
  2. Pilih algoritma: UCS, GBFS, A*, atau Weighted A*.
  3. Pilih heuristik: H1 - Manhattan, H2 - Sliding Distance, atau H3 - Checkpoint Penalty.
  4. Klik Run Solver untuk menjalankan pencarian solusi.
  5. Lihat hasil di panel kanan: urutan gerak, total cost, waktu eksekusi, iterasi, dan total langkah.
  6. Gunakan kontrol playback (Prev, Play/Pause, Next, Jump, Speed) untuk visualisasi langkah.
  7. Klik Save Solution untuk menyimpan hasil ke file teks.

🐧Format Input

Struktur file input:

  1. Baris pertama: N M (jumlah baris dan kolom).
  2. N baris berikutnya: layout board (masing-masing panjang M).
  3. N baris terakhir: matriks cost berukuran N x M.

Simbol board:

  • Z: start
  • O: goal
  • X: obstacle/dinding
  • *: jalur biasa
  • L: lava
  • 0-9: checkpoint berurutan (harus mulai dari 0 tanpa bolong)

🫂Author

Nama NIM
Stefani Angeline Oroh 13524064
Amanda Aurellia Salsabila 13524131

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages