Thursday, June 4, 2009

NEOS: SCIP indicator constraints with AMPL

The question came up whether Cplex is the only solver that supports indicator constraints. It looks like SCIP supports these also: I tried this with the the NEOS setup at but that seems to have a rather unsophisticated AMPL link to put it mildly. As only minimization is allowed it looks like it is going through an MPS file. As a result the AMPL indicator constraints are also not available. The error message I receive when I submit a test model with an implication is a little bit off:

ERROR: Runtime error encountered

2 variables, all nonlinear
0 algebraic constraints
1 logical constraint
1 linear objective; 2 nonzeros.
Problem has 2 nonlinear variables.  No MPS file written.

Please correct and resubmit.

The model is really linear. I suspect AMPL uses nonlinear functions as a mechanism to communicate the logical constraints with the solver.

I like the concept of indicator constraints and how they are implemented in AMPL ( I would certainly hope other solvers would also move into this direction. Given the increasing attention for Constraint Programming, it makes sense to expect that these features get more traction. I also tried to check the GAMS documentation on GAMS/SCIP to see what GAMS has to offer here. Unfortunately the documentation for GAMS/SCIP is largely nonexistent: