| OCR Text |
Show 8 A constraint satisfaction system maintains constraint networ1<s by recording the values of the constrained quantities and the constraints on them. The most Important task for the system Is to keep as many constraints satisfied as possible. A constraint networ1< Is unsatisfied if it contains an unsatisfied constraint, otherwise it is satisfied. For example, if a is set to 2, the + constraint is unsatisfied. The constraint system rrust decide among these possible constraint firings: 1. b == 1 2. c :: 4 and e :: 8 3. c := 4 and d :: 3 Clearly there is an infinite set of values which will satisfy these constraints if the system is allowed to change any or all of the values. However, most constraint systems try to leave as many of the existing values unchanged in the constraint networ1< as possible and use deduction to find new values. 1.6 Constraint Satisfaction Techniques. There are two primary methods of satisfying a constraint networ1<. They are: 1. Constraint Propagation or Deduction. 2. Numerical Methods (Relaxation). Normally, linear programming techniques are not used to satisfy constraint networ1<s for several reasons: 1. Linear programming may change many or all values in the constraint networ1<. Constraint satisfaction should change as few values as possible. 2. Nothing is being optimized. Normally the user is interested in finding any set of values which satisfy the constraints. There Is no best solution. 3. Given (2), there are more efficient constraint representation and satisfaction methods. Several methods for finding constraint satisfaction plans will be discussed in detail in chapter 2. |