G.3 CPLEX – High-performance LP and QP Solvers

The IBM ILOG CPLEX Optimizer, or simply CPLEX, is a collection of optimization tools that includes high-performance solvers for large-scale linear programming (LP) and quadratic programming (QP) problems, among others. More information is available at https://www.ibm.com/analytics/cplex-optimizer.

Although CPLEX is a commercial package, at the time of this writing the full version is available to academics at no charge through the IBM Academic Initiative program for teaching and non-commercial research. See http://www.ibm.com/support/docview.wss?uid=swg21419058 for more details.

When the Matlab interface to CPLEX is installed, the CPLEX LP and QP solvers, cplexlp and cplexqp, can be used to solve DC OPF problems by setting the opf.dc.solver option equal to 'CPLEX'. The solution algorithms can be controlled by Matpower’s cplex.lpmethod and cplex.qpmethod options. See Table C-9 for a summary of the CPLEX-related Matpower options. A “CPLEX user options” function can also be specified via cplex.opt_fname to override the defaults for any of the many CPLEX parameters. See help cplex_options and the “Parameters of CPLEX” section of the CPLEX documentation at http://www.ibm.com/support/knowledgecenter/SSSA5P for details.

It can also be used to solve general LP and QP problems via Matpower’s common QP solver interface qps_matpower, or MILP and MIQP problems via miqps_matpower, with the algorithm option set to 'CPLEX' (or 500 for backward compatibility), or by calling qps_cplex or miqps_cplex directly.