Search space

The search space of a constraint programming problem is all combinations of the values in the domains of the decision variables.

The CP Optimizer engine explores the search space to find a solution. The search space is all combinations of values. One way to find a solution would be to explicitly study each combination of values until a solution was found. Even for this simple problem, this approach is obviously time-consuming and inefficient. For a more complicated problem with many variables, the approach would be unrealistic.

The optimizer uses two techniques to find a solution: constructive search and constraint propagation. Additionally, the optimizer performs two types of constraint propagation: initial constraint propagation and constraint propagation during search.