Constraint programming: Difference between revisions

Content deleted Content added
WP:LINKs: updates, fix-cut needless WP:PIPEs = WP:NOPIPEs.
Midle
Tags: Visual edit Mobile edit Mobile web edit Possible vandalism
Line 22:
==Perturbation vs refinement models==
Languages for constraint-based programming follow one of two approaches:<ref>{{cite book |last1=Mayoh |first1=Brian |last2=Tyugu |first2=Enn |last3=Penjam |first3=Jaan |date=1993 |title=Constraint Programming |url=https://books.google.com/books?id=B0aqCAAAQBAJ |publisher=[[Springer Science+Business Media]] |page=76 |isbn=9783642859830}}</ref>
* Refinement model: variables in the problem are initially unassigned, and eacheachno Tecknekse and all variable is assumed to be able to contain any value included in its range or ___domain. As computation progresses, values in the ___domain of a variable are pruned if they are shown to be incompatible with the possible values of other variables, until a single value is found for each variable.
* Perturbation model: variables in the problem are assigned a single initial value. At different times one or more variables receive perturbations (changes to their old value), and the system propagates the change trying to assign new values to other variables that are consistent with the perturbation.
[[Constraint propagation]] in [[Constraint Satisfaction Problems|constraint satisfaction problems]] is a typical example of a refinement model, and [[spreadsheet]]s are a typical example of a perturbation model.