Skip to content

Latest commit

 

History

History
33 lines (23 loc) · 2.26 KB

File metadata and controls

33 lines (23 loc) · 2.26 KB

Sudoku Solver Using Simulated Annealing


This web app uses Simulated Annealing to solve Sudoku puzzles. Sudoku is a number puzzle where a 9x9 grid must be filled with digits 1 to 9, ensuring each row, column, and 3x3 sub-grid has all digits once.

Simulated Annealing is an optimization algorithm that mimics the process of annealing in metallurgy. It explores different solutions, including worse ones, gradually reducing the acceptance of worse solutions over time. This helps it find the best solution to a problem, even in complex scenarios.

https://sudoku-solver-sa.netlify.app/
Netlify Status

Key Features

  1. Solve Sudoku puzzles of different difficulty levels: Easy, Medium, and Hard.
  2. Generate random Sudoku puzzles for solving with different difficulty levels: Easy, Medium, and Hard.
  3. Use the Simulated Annealing algorithm to solve Sudoku puzzles.
  4. Highlight errors and conflicts in the input Sudoku grid for easy identification.
  5. Customize simulated annealing parameters for fine-tuning the solving process.

Technologies Used

Contributing

If you want to contribute to this project, there are several ways you can do so:

  1. Submit bugs and feature requests: If you find a bug or have a feature request, please submit an issue on the GitHub repository.
  2. Submit pull requests: If you have a fix or improvement for the code, feel free to submit a pull request on the GitHub repository. Please make sure your code is well-documented and tested.
  3. Spread the word: If you like this project, please share it with your friends and colleagues.

About

As a computer science student in my third year, second semester, I have been assigned the task of implementing a local search algorithm for solving Sudoku puzzles as part of my artificial intelligence subject. This assignment has sparked my interest, leading me to incorporate it into a web application.

License

This project is licensed under the MIT License.