CPXXsiftopt and CPXsiftopt

This routine looks at a subset of the columns of a problem and uses either the barrier or simplex optimizer to solve this reduced model.

int  CPXXsiftopt( CPXCENVptr env, CPXLPptr lp )

int  CPXsiftopt( CPXCENVptr env, CPXLPptr lp )

Description

This routine looks at a subset of the columns of a problem and uses either the barrier or simplex optimizer to solve this reduced model. That is, it solves a model consisting of a selected subset of columns. After solving this reduced model, it performs a pricing step. The pricing step serves two purposes:

  • to select additional columns to enter the reduced model;
  • to select existing columns to discard from the reduced model.

The routine repeats this procedure iteratively until it finds an optimal solution of the original problem.

This routine is useful for linear programming models (LPs) with a great many variables (columns) and relatively few constraints (rows). In colloquial terms, these problems are known as long, skinny models. This routine is not applicable to a model with quadratic terms in the objective function (QP) nor to models with quadratic terms among the constraints (QCP).

Arguments

env
A pointer to the CPLEX environment as returned by CPXXopenCPLEX/CPXopenCPLEX.
lp
A pointer to a CPLEX problem object as returned by CPXXcreateprob/CPXcreateprob.

Return

The routine returns 0 (zero) if successful and nonzero if an error occurs.

Example


status = CPXsiftopt (env, lp);