%A Michael C. Ferris %A Robert Fourer %A David M. Gay %T Expressing Complementarity Problems in an Algebraic Modeling Language and Communicating Them to Solvers %D January 1998 %R 98-02 %I COMPUTER SCIENCES DEPARTMENT, UNIVERSITY OF WISCONSIN %C MADISON, WI %X Some problems are best viewed as complementarity problems, that is, problems with pairs of inequality constraints, at least one of which must be tight. Using special syntax to express complementarity constraints explicitly reduces possible confusion in the directions of inequalities, makes some complementarity conditions easier to state, and coexists nicely with side constraints, which in nonconvex problems might serve to exclude some solutions. Moreover, complementarity constraints introduce new information that we can use to simplify a problem before presenting it to a solver. This paper discusses extensions to the AMPL modeling language for handling complementarity constraints. We have arranged for the AMPL processor to transform general complementarity constraints to the canonical form "expression complements L <= variable <= U". This transformation, along with simple extensions to the AMPL solver interface library, makes it easy to transmit complementarity problems to solvers.