News for hackers. Stuff that matters.
Re:Constraint Programming (2020) by niemandhier on Monday April 17, 2023 @02:31AM (#35597420)
CP is different in that it is less a sigle method than a framework for individual CS insights into enforcing constraints. This is usually down by a global constraint store and a watchlist of variable for the problem under consideration.

A good example is the famous “ All different” constraint. In MIP you would implement that as a fancy summ, in CP one can use a corollary from Berge’s lemma to get a specialised constraint to just enforce that.

Rule of Thump is that CP excels when the problem is thigh lay constraint and one has many global constraints ( those that apply to all variables).

Another point is that contrary to MIP programs that often are modelled directly using sums and inequalities, CP Programms usually are written in a declarative language such as ZINC, which in my opinion makes it easier to get into the subject.

If you are interested: This series of blog posts builds a CP solver in Julia

https://opensourc.es/blog/constraint-solver-1/

ortoools by Google also contains a CP solver and the doc is quite interesting

https://developers.google.com/optimization/cp

Finally there is the dissertation of Guido Tack, who developed a oss Cp solver as his PhD project ( I think that is the internal solver used by SAP software now)

https://www.gecode.org/papers/Tack_PhD_2009.pdf

Re:Constraint Programming (2020) by niemandhier on Monday April 17, 2023 @02:34AM (#35597435)
I think the wonderful people of the association for constraint programming deserv a mention here, for those interested check out the cap summer schools 2023

https://school.a4cp.org/summer2023/