N-QUEEN SOLVER
This project implements a solver for the N-Queen Problem, which means finding a solution to place N queens on a chess board of size NxN, such that none of the queens are attacked by another.
I implemented two different algorithms for this problem:
Specifically, I implemented the multithreaded versions of these two algorithms, running N threads for an NxN board.
For more information about the algorithms and how they work, visit https://sites.google.com/site/nqueensolver/home/algorithms
A loading bar is displayed when we start a solver, showing the estimated progress of completion. When the solution is ready, it is displayed on a 3D chess board. We can control and move the camera, and even zoom in/out. We can also click on a queen to see the tiles it attacks (to verify it doesn't attack any other queen).
Note: Since this project is multithreaded, it's impossible to build it for WebGL.
I implemented two different algorithms for this problem:
- Backtracking algorithm
- Systematic search + greedy algoritm
Specifically, I implemented the multithreaded versions of these two algorithms, running N threads for an NxN board.
For more information about the algorithms and how they work, visit https://sites.google.com/site/nqueensolver/home/algorithms
A loading bar is displayed when we start a solver, showing the estimated progress of completion. When the solution is ready, it is displayed on a 3D chess board. We can control and move the camera, and even zoom in/out. We can also click on a queen to see the tiles it attacks (to verify it doesn't attack any other queen).
Note: Since this project is multithreaded, it's impossible to build it for WebGL.