For those of you who are interested in Constraint Programming, please check out
Erlang/Elixir interface to Minizinc
Minizinc is a constraint modelling language that allows to model and solve hard optimization problems, such as scheduling, vehicle routing, TSP etc.
Solving Sudoku is a breeze, as you will see by checking out one of the examples in the code.
The project has just started, but it appears to be working for several models it has been tested with.
Enjoy and let me know what you think!
Just wanted to update you on the progress of Solverl. v1.0.1 has been released, and it now matches many of Minizinc Python features. Several MiniSearch standard meta-search strategies have been implemented. Many more examples and unit tests have been added as well.
Still a lot of work to do, but it appears to be stable and functional.
Any feedback is highly appreciated!
Check out SolverlView, a supplemental project that will have examples of Solverl using Phoenix LiveView. As of now, it has an implementation of Sudoku Solver (functional, albeit with very basic HTML layout).
I have just started learning Phoenix and LiveView, so if anyone with a better experience in building web apps wants to jump in with any help, in particular, make Sudoku Solver look better, you’re are more than welcome to do so.
As one of the outcomes of this project, I’m thinking of building a Web interface to MiniZinc that would be comparable to MiniZinc IDE.