Originally posted by: SystemAdmin
Tough question, which begs the "your mileage may vary" response. In my (limited) experience, CP solvers tend to be good at finding combinations of discrete variables that satisfy logical constraints but not particularly good at optimizing objective functions (because they're not particularly adept at getting strong bounds) or dealing with divisible (continuous) variables. MIP solvers tend to be good at bounding and working with divisible variables, but some logic constraints involve gross contortions in the modeling stage and/or loose "big M" formulations. If you've got a model where the MIP formulation requires "big M" constraints and there are no (few?) continuous variables, you might have a candidate for the CP solver. If your problem looks like an LP with a few logic constraints on the side, I suspect it's more likely to be a candidate for CPLEX.
There's also some work on hybrid approaches, in which you might somehow bake the logical constraint aspect into the branching strategy rather than into the model (I have no direct experience with this) or use something like "combinatorial Benders cuts" to convert the logical part to feasibility subproblems, removing the necessity for "big M" (this I've used). In both cases, I think CPLEX would be the primary platform.
My zwei pfennige.
/Paul
Mathematicians are like Frenchmen: whenever you say something to them, they translate it into their own language, and at once it is something entirely different. (Goethe)
#CPLEXOptimizers#DecisionOptimization