25.11.2015 Views

The MOSEK Python optimizer API manual Version 7.0 (Revision 141)

Optimizer API for Python - Documentation - Mosek

Optimizer API for Python - Documentation - Mosek

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.

158 CHAPTER 12. THE OPTIMIZERS FOR MIXED-INTEGER PROBLEMS<br />

12.3.4 Caveats<br />

<strong>The</strong> mixed-integer conic <strong>optimizer</strong> ignores the parameter<br />

iparam.mio cont sol:<br />

<strong>The</strong> user should fix all the integer variables at their optimal value and reoptimize instead of<br />

relying in this option.<br />

12.4 <strong>The</strong> mixed-integer <strong>optimizer</strong><br />

<strong>The</strong> mixed-integer <strong>optimizer</strong> is employed by setting the parameter iparam.<strong>optimizer</strong> to <strong>optimizer</strong>type.mixed int.<br />

In the following it is briefly described how the <strong>optimizer</strong> works.<br />

<strong>The</strong> process of solving an integer optimization problem can be split in three phases:<br />

Presolve:<br />

In this phase the <strong>optimizer</strong> tries to reduce the size of the problem using preprocessing techniques.<br />

Moreover, it strengthens the continuous relaxation, if possible.<br />

Heuristic:<br />

Using heuristics the <strong>optimizer</strong> tries to guess a good feasible solution.<br />

Optimization:<br />

<strong>The</strong> optimal solution is located using a variant of the branch-and-cut method.<br />

12.4.1 Presolve<br />

In the preprocessing stage redundant variables and constraints are removed. <strong>The</strong> presolve stage can<br />

be turned off using the iparam.mio presolve use parameter.<br />

12.4.2 Heuristic<br />

Initially, the integer <strong>optimizer</strong> tries to guess a good feasible solution using different heuristics:<br />

• First a very simple rounding heuristic is employed.<br />

• Next, if deemed worthwhile, the feasibility pump heuristic is used.<br />

• Finally, if the two previous stages did not produce a good initial solution, more sophisticated<br />

heuristics are used.<br />

<strong>The</strong> following parameters can be used to control the effort made by the integer <strong>optimizer</strong> to find an<br />

initial feasible solution.

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

Saved successfully!

Ooh no, something went wrong!