IBM ILOG Solver User's Manual > The Basics > Constraint Programming with IBM ILOG Solver > Solve > Constraint propagation during search |
Constraint propagation during search |
INDEX
![]() |
Solver performs constraint propagation during search. This constraint propagation differs from the initial constraint propagation. The initial constraint propagation removes all values from domains that will not take part in any solution. Constraint propagation during search removes all values from the current domains that violate the constraints. You can think of constraint propagation during search in the following way. In order to "try" a value for a variable, Solver creates "test" or current domains. When constraint propagation removes values from domains during search, values are only removed from these "test" domains.
Examine the search tree. The search strategy has assigned the value 10 to the variable x. You try the value y = 5. This combination of values (x = 10, y = 5) violates the constraint x + y = 17. Solver removes the value y = 5 from the current domain of y. Next, you try the value y = 6. This combination of values (x = 10, y = 6) violates the constraint x + y = 17. Solver removes the value y = 6 from the current domain of y. Next, you try the value y = 7. This combination of values (x = 10, y = 7) satisfies the constraint x + y = 17. However, it violates the constraint x - y = 5. Solver removes the value y = 7 from the current domain of y.
© Copyright IBM Corp. 1987, 2009. Legal terms. | PREVIOUS NEXT |