30.01.2015 Views

ILOG CPLEX C++ API 9.0 Reference Manual

ILOG CPLEX C++ API 9.0 Reference Manual

ILOG CPLEX C++ API 9.0 Reference Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

IloCplex::SolveCallbackI<br />

Description<br />

See Also<br />

Constructors<br />

Methods<br />

An instance of the class IloCplex::SolveCallbackI can be used to solve node<br />

relaxations during branch & cut search. It allows setting a starting point for the solve or<br />

selecting the algorithm on a per-node basis.<br />

The methods of this class are protected for use in deriving a user-written callback class<br />

and in implementing the main method there.<br />

If an attempt is made to access information not available to an instance of this class, an<br />

exception is thrown.<br />

IloCplex, IloCplex::Callback, IloCplex::CallbackI,<br />

IloCplex::ControlCallbackI, ILOSOLVECALLBACK0<br />

protected SolveCallbackI()<br />

This constructor creates a callback for use in an application for solving the node LPs<br />

during branch & cut searches.<br />

protected IloCplex::CplexStatus getCplexStatus()<br />

This method returns the <strong>ILOG</strong> <strong>CPLEX</strong> status of the instance of IloCplex at the<br />

current node (that is, the state of the optimizer at the node) during the last call to solve<br />

(which may have been called directly in the callback or by IloCplex when processing<br />

the node).<br />

The enumeration IloCplex::CplexStatus lists the possible status values.<br />

protected IloAlgorithm::Status getStatus()<br />

This method returns the status of the solution found by the instance of IloCplex at the<br />

current node during the last call to solve (which may have been called directly in the<br />

callback or by IloCplex when processing the node).<br />

The enumeration IloAlgorithm::Status lists the possible status values.<br />

protected IloBool isDualFeasible()<br />

This method returns IloTrue if the solution provided by the last solve call is dual<br />

feasible. Note that an IloFalse return value does not necessarily mean that the<br />

solution is not dual feasible. It simply means that the relevant algorithm was not able to<br />

conclude it was dual feasible when it terminated.<br />

protected IloBool isPrimalFeasible()<br />

This method returns IloTrue if the solution provided by the last solve call is primal<br />

feasible. Note that an IloFalse return value does not necessarily mean that the<br />

solution is not primal feasible. It simply means that the relevant algorithm was not able<br />

to conclude it was primal feasible when it terminated.<br />

protected void setVectors(const IloNumArray x,<br />

const IloIntVarArray var,<br />

<strong>ILOG</strong> <strong>CPLEX</strong> <strong>C++</strong> <strong>API</strong> <strong>9.0</strong> REFERENCE M ANUAL 221

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!