25.11.2015 Views

The MOSEK command line tool Version 7.0 (Revision 141)

The MOSEK command line tool. Version 7.0 ... - Documentation

The MOSEK command line tool. Version 7.0 ... - Documentation

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.

36 CHAPTER 5. THE OPTIMIZERS FOR CONTINUOUS PROBLEMS<br />

5.1.3 Scaling<br />

Problems containing data with large and/or small coefficients, say 1.0e + 9 or 1.0e − 7 , are often hard<br />

to solve. Significant digits may be truncated in calculations with finite precision, which can result in<br />

the optimizer relying on inaccurate calculations. Since computers work in finite precision, extreme<br />

coefficients should be avoided. In general, data around the same ”order of magnitude” is preferred,<br />

and we will refer to a problem, satisfying this loose property, as being well-scaled. If the problem is<br />

not well scaled, <strong>MOSEK</strong> will try to scale (multiply) constraints and variables by suitable constants.<br />

<strong>MOSEK</strong> solves the scaled problem to improve the numerical properties.<br />

<strong>The</strong> scaling process is transparent, i.e. the solution to the original problem is reported. It is important<br />

to be aware that the optimizer terminates when the termination criterion is met on the scaled problem,<br />

therefore significant primal or dual infeasibilities may occur after unscaling for badly scaled problems.<br />

<strong>The</strong> best solution to this problem is to reformulate it, making it better scaled.<br />

By default <strong>MOSEK</strong> heuristically chooses a suitable scaling. <strong>The</strong> scaling for interior-point and simplex<br />

optimizers can be controlled with the parameters MSK IPAR INTPNT SCALING and MSK IPAR SIM SCALING<br />

respectively.<br />

5.1.4 Using multiple threads<br />

<strong>The</strong> interior-point optimizers in <strong>MOSEK</strong> have been parallelized. This means that if you solve <strong>line</strong>ar,<br />

quadratic, conic, or general convex optimization problem using the interior-point optimizer, you can<br />

take advantage of multiple CPU’s.<br />

By default <strong>MOSEK</strong> will automatically select the number of threads to be employed when solving<br />

the problem. However, the number of threads employed can be changed by setting the parameter<br />

MSK IPAR NUM THREADS. This should never exceed the number of cores on the computer.<br />

<strong>The</strong> speed-up obtained when using multiple threads is highly problem and hardware dependent, and<br />

consequently, it is advisable to compare single threaded and multi threaded performance for the given<br />

problem type to determine the optimal settings.<br />

For small problems, using multiple threads is not be worthwhile and may even be counter productive.<br />

5.2 Linear optimization<br />

5.2.1 Optimizer selection<br />

Two different types of optimizers are available for <strong>line</strong>ar problems: <strong>The</strong> default is an interior-point<br />

method, and the alternatives are simplex methods. <strong>The</strong> optimizer can be selected using the parameter<br />

MSK IPAR OPTIMIZER.

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

Saved successfully!

Ooh no, something went wrong!