Originally posted by: SystemAdmin
[Tom said:]
[b]Q: What is Constraint Programming?[/b]
A: To solve a model, a constraint programming (CP) engine makes decisions on variables and their values and, after each decision, performs a set of logical inferences to reduce the available options for the remaining variablesâ domains. CP technology supports a rich set of algebraic and logical constraints to state an optimization problem: constraints such as logical implications, or, and, different (a != b), as well as many others. This rich set of constraints enables, in many instances, considerably less decision variables than a mathematical programming (MP) formulation. A CP engine proves optimality by showing that no better solution than the current one can be found.
[b]Q: What types of problems are well-suited for CP technology?[/b]
A: CP technology can solve certain types of combinatorial optimization problems that would be too irregular for mathematical optimization, for instance: sequencing of activities, rectangle packing, timetabling problems, or subproblems for column generation decompositions. CP takes advantage of the efficiency of constraint propagation to solve and optimize these types of problems.
#ConstraintProgramming-General#DecisionOptimization