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

Optimizer API for Python - Documentation - Mosek Optimizer API for Python - Documentation - Mosek

25.11.2015 Views

134 CHAPTER 10. PROBLEM FORMULATION AND SOLUTIONS

Chapter 11 The optimizers for continuous problems The most essential part of MOSEK is the optimizers. Each optimizer is designed to solve a particular class of problems i.e. linear, conic, or general nonlinear problems. The purpose of the present chapter is to discuss which optimizers are available for the continuous problem classes and how the performance of an optimizer can be tuned, if needed. This chapter deals with the optimizers for continuous problems with no integer variables. 11.1 How an optimizer works When the optimizer is called, it roughly performs the following steps: Presolve: Dualizer: Scaling: Preprocessing to reduce the size of the problem. Choosing whether to solve the primal or the dual form of the problem. Scaling the problem for better numerical stability. Optimize: Solve the problem using selected method. The first three preprocessing steps are transparent to the user, but useful to know about for tuning purposes. In general, the purpose of the preprocessing steps is to make the actual optimization more efficient and robust. 135

Chapter 11<br />

<strong>The</strong> <strong>optimizer</strong>s for continuous<br />

problems<br />

<strong>The</strong> most essential part of <strong>MOSEK</strong> is the <strong>optimizer</strong>s. Each <strong>optimizer</strong> is designed to solve a particular<br />

class of problems i.e. linear, conic, or general nonlinear problems. <strong>The</strong> purpose of the present chapter<br />

is to discuss which <strong>optimizer</strong>s are available for the continuous problem classes and how the performance<br />

of an <strong>optimizer</strong> can be tuned, if needed.<br />

This chapter deals with the <strong>optimizer</strong>s for continuous problems with no integer variables.<br />

11.1 How an <strong>optimizer</strong> works<br />

When the <strong>optimizer</strong> is called, it roughly performs the following steps:<br />

Presolve:<br />

Dualizer:<br />

Scaling:<br />

Preprocessing to reduce the size of the problem.<br />

Choosing whether to solve the primal or the dual form of the problem.<br />

Scaling the problem for better numerical stability.<br />

Optimize:<br />

Solve the problem using selected method.<br />

<strong>The</strong> first three preprocessing steps are transparent to the user, but useful to know about for tuning<br />

purposes. In general, the purpose of the preprocessing steps is to make the actual optimization more<br />

efficient and robust.<br />

135

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

Saved successfully!

Ooh no, something went wrong!