Mathematical programming and constraint programming are two technologies critical to solving complex planning and scheduling problems. At IBM, we've found that knowing both technologies is important in addressing some of the most difficult optimization problems. To make the most of each, it is important to understand their similarities and differences.
General model structure
A constraint programming optimization model has the same structure as a mathematical programming model: a set of decision variables, an objective function to maximize or minimize, and a set of constraints.
Optimization engine differences:
Mathematical programming / Constraint programming Comparison Table
|Mathematical programming||Constraint programming|
|Lower bound and optimality gap measure|
|Modeling limitations||Restricted to linear and quadratic problems||Restricted to discrete problems|
|Theoretical basis||Algebra||Logical inferences|