The full IBM ILOG CPLEX Optimization Studio consists of the CPLEX Optimizer for mathematical programming, the CP Optimizer for constraint programming, the Optimization Programming Language (OPL), and a tightly integrated IDE. In addition to that AMPL provides an interface to the CPLEX CP Optimizer. The CPLEX Optimizer is accessible through independent modeling systems such as AIMMS, AMPL, GAMS, OptimJ and TOMLAB. Finally, a stand-alone Interactive Optimizer executable is provided for debugging and other purposes. There is a Python language interface based on the C interface. The CPLEX Optimizer has a modeling layer called Concert that provides interfaces to the C++, C#, and Java languages.
The IBM ILOG CPLEX Optimizer solves integer programming problems, very large linear programming problems using either primal or dual variants of the simplex method or the barrier interior point method, convex and non-convex quadratic programming problems, and convex quadratically constrained problems (solved via second-order cone programming, or SOCP).