GitHunt
SE

sevdaimany/Puzzle-Solver

🧩Using backtracking algorithm to solve binary puzzles

PUZZLE SOLVER

A constraint satisfaction problem solver to solve the binary puzzle.

github-octocat

The Algorithm

We used a backtracking algorithm variation: forward-checking and
MAC(Maintaining arc consistency) with a heuristic (MRV: Minimum
Remaining Values) to improve the solving speed.

Constraints

• Every row and column has an equal number of ones and zeros.

• Numbers in each row and column should create a unique sequence.

• Each row and column should not contain more than two same
numbers in a row.

Built With

  • Python
  • Javascript
  • Eel library

Eel is a little Python library for making simple Electron-like offline
HTML/JS GUI apps, with
full access to Python capabilities and libraries.

In order to run the puzzle solver, you will need the library.

Show your support

Give a ā­ļø if you like this project!

Languages

Python71.7%JavaScript24.2%HTML2.4%CSS1.6%

Contributors

Created June 7, 2021
Updated September 2, 2023