IBM ILOG Solver User's Manual > Developing Solver Applications > Developing Applications > Describing the problem > Identify soft constraints

As we indicated in our list, we must identify the "soft" constraints in the problem. The soft constraints are those that we would like to satisfy, but that we might relax or drop if the problem proves intractable. These are the constraints that might lead to the elimination of potential solutions if we insist on imposing them. At the same time, these soft constraints are typically the constraints that, if we fail to take them into account, we'll come up with a "solution" that we cannot exploit in reality because the soft constraints embody some fundamental and practical aspect of the problem.

When we separate the soft from the hard constraints, we are creating the means to accomplish two tasks:

This work--separating hard and soft constraints so we can compare the adequacy of various solutions--is often very difficult, especially when the constraints represent social rules, accumulated and elaborated over time, such social rules as customary working hours, conventional combinations of tasks, habitual job assignments, and so forth. If we ignore such constraints, we are likely to find unacceptable solutions; yet if we enforce such constraints, we may fail to find a solution at all. In any case, the nature of such constraints have an obvious impact on the model and implementation since they influence the cost function.