The MOSEK optimization toolbox for MATLAB manual.
Version 6.0 (Revision 135).
Up :
'Documentation Help'
Next :
Contact information
Contents
Index
The MOSEK optimization toolbox for MATLAB manual.
Version 6.0 (Revision 135).
Contact information
License agreement
1. Changes and new features in MOSEK
1.1. Compilers used to build MOSEK
1.2. General changes
1.3. Optimizers
1.3.1. Interior point optimizer
1.3.2. The simplex optimizers
1.3.3. Mixed-integer optimizer
1.4. API changes
1.5. License system
1.6. Other changes
1.7. Interfaces
1.8. Platform changes
2. Introduction
2.1. What is optimization?
2.2. Why you need the MOSEK optimization toolbox
2.2.1. Features of the MOSEK optimization toolbox
2.3. Comparison with the MATLAB optimization toolbox
3. Supported MATLAB versions
4. Installation
4.1. Locating the toolbox functions
4.1.1. On Windows
4.1.2. On Linux/UNIX/MAC OS X
4.1.3. Permanently changing
matlabpath
4.2. Verifying that MOSEK works
4.3. Troubleshooting
4.3.1. ??? Undefined function or variable 'mosekopt'
4.3.1.1. Unable to load MEX-file
4.3.2. “
libgcc_s.so.1 must be installed for pthread_cancel to work
”
4.3.3. Using the MATLAB compiler
4.3.4. Shadowing the m-file
4.3.5. “
Cannot find authentication file
”
5. Getting support and help
5.1. MOSEK documentation
5.2. Additional reading
6. MOSEK / MATLAB integration
6.1. MOSEK replacements for MATLAB functions
6.2. The license system
6.2.1. Waiting for a free license
7. A guided tour
7.1. Introduction
7.2. The tour starts
7.3. The MOSEK terminolgy
7.4. Linear optimization
7.4.1. Using
msklpopt
7.4.2. Using
mosekopt
7.5. Convex quadratic optimization
7.5.1. Two important assumptions
7.5.2. Using
mskqpopt
7.5.3. Using
mosekopt
7.6. Conic optimization
7.6.1. The conic optimization problem
7.6.2. Solving an example
7.6.3. Quadratic and conic optimization
7.6.4. Conic duality and the dual solution
7.6.4.1. How to obtain the dual solution
7.6.5. Setting accuracy parameters for the conic optimizer
7.7. Quadratically constrained optimization
7.8. Linear least squares and related norm minimization problems
7.8.1. The case of the 2 norm
7.8.2. The case of the infinity norm
7.8.3. The case of the 1-norm
7.8.3.1. A better formulation
7.9. More about solving linear least squares problems
7.9.1. Using conic optimization on linear least squares problems
7.10. Entropy optimization
7.10.1. Using
mskenopt
7.11. Geometric optimization
7.11.1. Using
mskgpopt
7.11.2. Comments
7.11.2.1. Solving large scale problems
7.11.2.2. Preprocessing tip
7.12. Separable convex optimization
7.12.1. Using
mskscopt
7.13. Mixed-integer optimization
7.13.1. Solving an example
7.13.2. Speeding up the solution of a mixed-integer problem
7.13.2.1. Specifying an initial feasible solution
7.13.2.2. Using branching priorities
7.14. Sensitivity analysis
7.15. Inspecting a problem
7.16. The solutions
7.16.1. The constraint and variable status keys
7.17. Viewing the task information
7.18. Inspecting and setting parameters
7.19. Advanced start (hot-start)
7.19.1. Some examples using hot-start
7.19.2. Adding a new variable
7.19.3. Fixing a variable
7.19.4. Adding a new constraint
7.19.5. Using numeric values to represent status key codes
7.20. Using names
7.20.1. Blanks in names
7.21. MPS files
7.21.1. Reading an MPS file
7.21.2. Writing a MPS files
7.22. User call-back functions
7.22.1. Log printing via call-back function
7.22.2. The iteration call-back function
7.23. The license system
8. Command reference
8.1. Data structures
8.1.1.
prob
8.1.2.
names
8.1.3.
cones
8.1.4.
sol
8.1.5.
prisen
8.1.6.
duasen
8.1.7.
info
8.1.8.
symbcon
8.1.9.
callback
8.2. An example of a command reference
8.3. Functions provided by the MOSEK optimization toolbox
8.4. MATLAB optimization toolbox compatible functions
8.4.1. Linear and quadratic optimization
8.4.2. For linear least squares problems
8.4.3. The optimization options
8.4.3.1. Viewing and modifying the optimization options
9. Case studies
9.1. Robust linear optimization
9.1.1. Introductory example
9.1.2. Data uncertainty and its consequences.
9.1.3. Robust linear optimization methodology
9.1.3.1. Uncertain linear programs and their robust counterparts.
9.1.3.2. Robust counterpart of an uncertain linear optimization problem with interval uncertainty
9.1.3.3. Introductory example (continued)
9.1.4. Random uncertainty and ellipsoidal robust counterpart
9.1.4.1. Example: Interval and Ellipsoidal robust counterparts of uncertain linear constraint with independent random perturbations of coefficients
9.1.4.2. Combined Interval-Ellipsoidal Robust Counterpart
9.1.5. Further references
9.2. Geometric (posynomial) optimization
9.2.1. The problem
9.2.2. Applications
9.2.3. Modeling tricks
9.2.3.1. Equalities
9.2.4. Problematic formulations
9.2.4.1. Finite unattainable solution
9.2.4.2. Infinite solution
9.2.5. An example
9.2.6. Solving the example
9.2.7. Exporting to a file
9.2.8. Further information
10. Modelling
10.1. Linear optimization
10.1.1. Duality for linear optimization
10.1.1.1. A primal-dual feasible solution
10.1.1.2. An optimal solution
10.1.1.3. Primal infeasible problems
10.1.1.4. Dual infeasible problems
10.1.2. Primal and dual infeasible case
10.2. Quadratic and quadratically constrained optimization
10.2.1. A general recommendation
10.2.2. Reformulating as a separable quadratic problem
10.3. Conic optimization
10.3.1. Duality for conic optimization
10.3.2. Infeasibility
10.3.3. Examples
10.3.3.1. Quadratic objective and constraints
10.3.3.2. Minimizing a sum of norms
10.3.3.3. Modelling polynomial terms using conic optimization
10.3.3.4. Optimization with rational polynomials
10.3.3.5. Convex increasing power functions
10.3.3.6. Decreasing power functions
10.3.3.7. Minimizing general polynomials
10.3.3.8. Further reading
10.3.4. Potential pitfalls in conic optimization
10.3.4.1. Non-attainment in the primal problem
10.3.4.2. Non-attainment in the dual problem
10.4. Nonlinear convex optimization
10.4.1. Duality
10.5. Recommendations
10.5.1. Avoid near infeasible models
10.6. Examples continued
10.6.1. The absolute value
10.6.2. The Markowitz portfolio model
10.6.2.1. Minimizing variance for a given return
10.6.2.2. Conic quadratic reformulation
10.6.2.3. Transaction costs with market impact term
10.6.2.4. Further reading
11. The optimizers for continuous problems
11.1. How an optimizer works
11.1.1. Presolve
11.1.1.1. Eliminator
11.1.1.2. Linear dependency checker
11.1.2. Dualizer
11.1.3. Scaling
11.1.4. Using multiple CPU's
11.2. Linear optimization
11.2.1. Optimizer selection
11.2.2. The interior-point optimizer
11.2.2.1. Interior-point termination criterion
11.2.2.2. Basis identification
11.2.2.3. The interior-point log
11.2.3. The simplex based optimizer
11.2.3.1. Simplex termination criterion
11.2.3.2. Starting from an existing solution
11.2.3.3. Numerical difficulties in the simplex optimizers
11.2.4. The interior-point or the simplex optimizer?
11.2.5. The primal or the dual simplex variant?
11.3. Linear network optimization
11.3.1. Network flow problems
11.3.2. Embedded network problems
11.4. Conic optimization
11.4.1. The interior-point optimizer
11.4.1.1. Interior-point termination criteria
11.5. Nonlinear convex optimization
11.5.1. The interior-point optimizer
11.5.1.1. The convexity requirement
11.5.1.2. The differentiabilty requirement
11.5.1.3. Interior-point termination criteria
11.6. Solving problems in parallel
11.6.1. Thread safety
11.6.2. The parallelized interior-point optimizer
11.6.3. The concurrent optimizer
11.7. Understanding solution quality
11.7.1. The solution summary
11.7.1.1. The optimal case
11.7.1.2. The primal infeasible case
12. The optimizer for mixed integer problems
12.1. Some notation
12.2. An important fact about integer optimization problems
12.3. How the integer optimizer works
12.3.1. Presolve
12.3.2. Heuristic
12.3.3. The optimization phase
12.4. Termination criterion
12.5. How to speed up the solution process
12.6. Understanding solution quality
12.6.1. Solutionsummary
13. The analyzers
13.1. The problem analyzer
13.1.1. General characteristics
13.1.2. Objective
13.1.3. Linear constraints
13.1.4. Constraint and variable bounds
13.1.5. Quadratic constraints
13.1.6. Conic constraints
13.2. Analyzing infeasible problems
13.2.1. Example: Primal infeasibility
13.2.2. Locating the cause of primal infeasibility
13.2.3. Locating the cause of dual infeasibility
13.2.3.1. A cautious note
13.2.4. The infeasibility report
13.2.4.1. Example: Primal infeasibility
13.2.4.2. Example: Dual infeasibility
13.2.5. Theory concerning infeasible problems
13.2.6. The certificate of primal infeasibility
13.2.7. The certificate of dual infeasibility
14. Sensitivity analysis
14.1. Introduction
14.2. Restrictions
14.3. References
14.4. Sensitivity analysis for linear problems
14.4.1. The optimal objective value function
14.4.1.1. Equality constraints
14.4.2. The basis type sensitivity analysis
14.4.3. The optimal partition type sensitivity analysis
14.4.4. An example
14.5. Sensitivity analysis in the MATLAB toolbox
14.5.1. On bounds
14.5.1.1. prisen
14.5.1.2. duasen
14.5.2. Selecting analysis type
14.5.3. An example
A. The MPS file format
A.1. The MPS file format
A.1.1. An example
A.1.2.
NAME
A.1.3.
OBJSENSE
(optional)
A.1.4.
OBJNAME
(optional)
A.1.5.
ROWS
A.1.6.
COLUMNS
A.1.7.
RHS
(optional)
A.1.8.
RANGES
(optional)
A.1.9.
QSECTION
(optional)
A.1.10.
BOUNDS
(optional)
A.1.11.
CSECTION
(optional)
A.1.12.
ENDATA
A.2. Integer variables
A.3. General limitations
A.4. Interpretation of the MPS format
A.5. The free MPS format
B. The LP file format
B.1. A warning
B.2. The LP file format
B.2.1. The sections
B.2.1.1. The objective
B.2.1.2. The constraints
B.2.1.3. Bounds
B.2.1.4. Variable types
B.2.1.5. Terminating section
B.2.1.6. An example
B.2.2. LP format peculiarities
B.2.2.1. Comments
B.2.2.2. Names
B.2.2.3. Variable bounds
B.2.2.4. MOSEK specific extensions to the LP format
B.2.3. The strict LP format
B.2.4. Formatting of an LP file
B.2.4.1. Speeding up file reading
B.2.4.2. Unnamed constraints
C. The OPF format
C.1. Intended use
C.2. The file format
C.2.1. Sections
C.2.2. Numbers
C.2.3. Names
C.3. Parameters section
C.4. Writing OPF files from MOSEK
C.5. Examples
C.5.1. Linear example
lo1.opf
C.5.2. Quadratic example
qo1.opf
C.5.3. Conic quadratic example
cqo1.opf
C.5.4. Mixed integer example
milo1.opf
D. The XML (OSiL) format
E. Parameters
E.1. Parameter groups
E.1.1. Logging parameters.
E.1.2. Basis identification parameters.
E.1.3. The Interior-point method parameters.
E.1.4. Simplex optimizer parameters.
E.1.5. Primal simplex optimizer parameters.
E.1.6. Dual simplex optimizer parameters.
E.1.7. Network simplex optimizer parameters.
E.1.8. Nonlinear convex method parameters.
E.1.9. The conic interior-point method parameters.
E.1.10. The mixed-integer optimization parameters.
E.1.11. Presolve parameters.
E.1.12. Termination criterion parameters.
E.1.13. Progress call-back parameters.
E.1.14. Non-convex solver parameters.
E.1.15. Feasibility repair parameters.
E.1.16. Optimization system parameters.
E.1.17. Output information parameters.
E.1.18. Extra information about the optimization problem.
E.1.19. Overall solver parameters.
E.1.20. Behavior of the optimization task.
E.1.21. Data input/output parameters.
E.1.22. Analysis parameters.
E.1.23. Solution input/output parameters.
E.1.24. Infeasibility report parameters.
E.1.25. License manager parameters.
E.1.26. Data check parameters.
E.1.27. Debugging parameters.
E.2. Double parameters
E.3. Integer parameters
E.4. String parameter types
F. Symbolic constants
F.1. Constraint or variable access modes
F.2. Function opcode
F.3. Function operand type
F.4. Basis identification
F.5. Bound keys
F.6. Specifies the branching direction.
F.7. Progress call-back codes
F.8. Types of convexity checks.
F.9. Compression types
F.10. Cone types
F.11. CPU type
F.12. Data format types
F.13. Double information items
F.14. Double parameters
F.15. Feasibility repair types
F.16. License feature
F.17. Integer information items.
F.18. Information item types
F.19. Input/output modes
F.20. Integer parameters
F.21. Language selection constants
F.22. Long integer information items.
F.23. Mark
F.24. Continuous mixed-integer solution type
F.25. Integer restrictions
F.26. Mixed-integer node selection types
F.27. MPS file format type
F.28. Message keys
F.29. Network detection method
F.30. Objective sense types
F.31. On/off
F.32. Optimizer types
F.33. Ordering strategies
F.34. Parameter type
F.35. Presolve method.
F.36. Problem data items
F.37. Problem types
F.38. Problem status keys
F.39. Interpretation of quadratic terms in MPS files
F.40. Response codes
F.41. Response code type
F.42. Scaling type
F.43. Scaling type
F.44. Sensitivity types
F.45. Degeneracy strategies
F.46. Exploit duplicate columns.
F.47. Hot-start type employed by the simplex optimizer
F.48. Problem reformulation.
F.49. Simplex selection strategy
F.50. Solution items
F.51. Solution status keys
F.52. Solution types
F.53. Solve primal or dual form
F.54. String parameter types
F.55. Status keys
F.56. Starting point types
F.57. Stream types
F.58. Integer values
F.59. Variable types
F.60. XML writer output mode
G. Problem analyzer examples
G.1. air04
G.2. arki001
G.3. Problem with both linear and quadratic constraints
G.4. Problem with both linear and conic constraints
Bibliography
Index
The MOSEK optimization toolbox for MATLAB manual.
Version 6.0 (Revision 135).
Up :
'Documentation Help'
Next :
Contact information
Contents
Index
Wed Feb 29 16:17:02 2012