From the constraint-programming tradition, founded in the work of Ugo Montanari (1974) and Alan Mackworth (1977) and set out by Edward Tsang (Foundations of Constraint Satisfaction, 1993).
Lists every condition a solution must meet, separates hard limits from preferences, maps what is feasible, and only then looks for the best option within it.
When to reach for it
When a design, schedule, or decision must satisfy many requirements at once and asking what is best makes no sense until what is possible is known.
How it runs
- List every constraint: physical, legal, budget, schedule, and stakeholder.
- Mark each as hard or soft.
- Sketch the options that satisfy all the hard constraints.
- If none survive, take the hard constraints back to their owners.
- Among the survivors, trade off the soft constraints openly.
- Watch for constraints the first list missed.
Where it sits in SOLVE eX
Go to the source
- Networks of Constraints: Fundamental Properties and Applications to Picture Processing, Information Sciences 7, 1974
- Consistency in Networks of Relations, Artificial Intelligence 8, 1977
- Foundations of Constraint Satisfaction, 1993