Branch and Bound algorithm for solving the 15-Puzzle
This is a simple implementation of the Branch and Bound algorithm for solving the 15-Puzzle. The algorithm is implemented in Python and uses the following libraries:
To install the required libraries, run the following command:
pip install -r requirements.txt
To run the program, run the following command from the program's root directory:
python3 main.py
The program has the following options:
- 1. Launch GUI: Launches the GUI, allowing user to interact with the puzzle and solver.
- 2. Plot Timing Data: Gathers and plots experimental timing data for the solver.
The results are stored as
.csv
files in thedataframes
directory. The plots are stored in theplots
directory. - 3. Import Test Puzzle: Imports a test puzzle from the
test_boards
directory. The puzzles are stored as a grid of whitespace separated integers in.txt
files.