Battleship Solitaire Solver

During my foray into conventional, non deep-learning based, approaches to the study of artificial intelligence, I studied methods of solving complex constraint satisfaction problems (CSPs). This algorithm is a culmination of my understanding of how to work with complex CSPs.

It uses the AC-3 heuristic in order to optimize the backtracking search procedure for eliminating potential solutions and pruning parts of the adjusted depth-first search approach of backtracking. This made the algorithm an efficient problem solver.

Working on this was extremely exciting and it was very rewarding to complete. It highlights my understanding of conventional AI techniques, and my technical and logical skill in implementation and engineering.