Constraint programming is a paradigm for solving combinatorial problems. CP solvers such as Google’s OR-Tools, IBM’s CPLEX, Gecode, and many others are adopted by the industry for decision-making on a huge range of problems, such as planning, scheduling, and optimization of business processes… Every major programming language has constraint programming tools, so why not have it in Elixir?
In the book by Peter Van Roy and Seif Haridi, the authors suggest that the constraint programming paradigm can be efficiently implemented using a “maximally concurrent” model, which makes BEAM a great candidate for the implementation of CP solvers.
The project that I’m going to talk about is Fixpoint.
LiveBook demonstrates the current capabilities of the Fixpoint solver.