- Program Description
- Required Program
- How to Run The Program
- How to Compile The Program
- Program Usage Guide
- Progress Report
- Authors
- Folders and Files Description
This program is a treasure-collect and maze-solver program. The maze used by the program will be inputted from a .txt file. Therefore, users can custom the maze by their own willing. After reading section, the contents inside the .txt file will be converted into a matrix. There are several objects inside the maze itself, which are walls, routes, and treasures. The goal of the program is to find a route, from a starting coordinate, to collect all the treasures within the maze. This problem will be solved using BFS (Breadth-First-Search) and DFS (Depth-First-Search) algorithm. The output of the program is a GUI (graphical user interface) to display the solution of the given problems.
Here are the required programs you need to prepare to run the program in this repository:
Required Program | Reference Link |
---|---|
.Net | .Net |
Visual Studio | Visual Studio |
- Clone this repository (skip if the step is done)
git clone https://github.com/Gulilil/Tubes2_bingung.git
- Change the current directory into the cloned repository
cd Tubes2_bingung
- Run the executable file inside the
bin
folder
bin\Debug\TreasureMaze.exe
# or
.bin\Debug\TreasureMaze.exe
Under ideal circumstances, you just need to run the executable program inside the bin
folder to run the program. Therefore you can follow the steps in How To Run The Program. However, if it does not work, you can try to recompile the program following these steps:
- Clone this repository (skip if the step is done)
git clone https://github.com/Gulilil/Tubes2_bingung.git
-
Open the cloned repository using Visual Studio.
-
In the solution explorer, double click the .csproj file to open it.
-
To run the program, click the button at top center of Visual Studio. The one that indicates it is used to run the program. On the other hand, you can also click 'F5' to run the program.
Here is the initial display of the program when it is started. To input the desired txt file, user can click the Choose File
button on the left side of the program display. Next, user can choose one of the method options that the program will use to solve the given problem. Lastly, to execute the program, user needs to click the START
button.
- Execution time indicates the duration that the program took to solve the given problems.
- Nodes represents the amount of created nodes during the solution finding.
- Steps represents the amount of steps, needed to be taken, to travel from the initial grid to all the treasures in the map.
- Route displays the solution's steps direction.
- Play Route button initiates an animation displayment of the solution route.
- Play Search button initiates an animation displayment of the solution finding.
- Interval indicates the delay duration for each grid steps when the animation is played.
Points | Done |
---|---|
The program can be compiled without any issues | ✓ |
The program can be runned | ✓ |
The program can accept and validate input | ✓ |
The program successfully solve the given problem using BFS and DFS methods and able to display the solution as an output | ✓ |
The solution given by the program contains the route that visit all the treasures location in the given map | ✓ |
The program can display GUI that contains given minimum specifications for GUI | ✓ |
Implemented first bonus aspect (grid finding process) | ✓ |
Implemented second bonus aspect (TSP problem solution) | ✓ |
Implemented third bonus aspect (explanation video) | ✓ |
Name | ID |
---|---|
Tabitha Permalla | 13521111 |
Juan Christopher Santoso | 13521116 |
Antonio Natthan Krishna | 13521162 |
.
├─ .vs
├─ Properties
├─ assets # Contains screenshots to be displayed in readme
├─ bin # Contains compiled program
├─ doc # Contains complete documentation file of the program
├─ src # Contains every algorithm in constructing the program
├─ class # Contains fundamental classes used in the program
├─ Map.cs
├─ Point.cs
├─ Route.cs
└─ Tile.cs
├─ method # Contains the solving algorithm of the given problem
├─ BFS.cs
├─ DFS.cs
└─ Solver.cs
├─ obj # Appear locally if you have tried to compile the program
├─ MainWindow.xaml.cs
├─ App.config
├─ App.xaml
├─ MainWindow.xaml
└─ TreasureMaze.csproj
├─ test # Contains input files for the program
├─ .gitignore
└─ README.md