Installation

Updated:

If it’s hard, you’re doing it wrong.

Getting started

Updated:

Tutorial introduces essentially everything you’ll ever need. The remaining 95% is syntactic sugar.

Linear programming

Updated:

As easy as it gets. Linear separation with linear norms.

Quadratic programming

Updated:

Almost as easy as linear programming. Be careful though, symbolics might start to cause overhead.

Semidefinite programming

Updated:

Who wudda thought? Optimization over positive definite symmetric matrices is easy.

Determinant maximization

Updated:

Optimization with ellipsoids and likelihood functions are typical applications of determinant maximization.

Duality

Updated:

Extract dual solutions from conic optimization problems.

Robust optimization

Updated:

The only thing we can be sure of is the lack of certainty.

Nonlinear operators

Updated:

Working with nonlinear operators in a structured and efficient fashion

Moment relaxations

Updated:

Moment relaxations allows us to find lower bounds on polynomial optimization problems using semidefinite programming

Logic programming

Updated:

Logic programming in YALMIP means programming with operators such as alldifferent, number of non-zeros, implications and similiar combinatorial objects.

Integer programming

Updated:

Undisciplined programming often leads to integer models, but in some cases you have no option.

Global optimization

Updated:

The holy grail! 60% of the time it works every time.

General convex programming

Updated:

YALMIP does not care, but for your own good, think about convexity also in general nonlinear programs.

Bilevel programming

Updated:

Bilevel programming using the built-in bilevel solver

Big-M and convex hulls

Updated:

Learn how nonconvex models are written as integer programs using big-M strategies, and why it should be called small-M.

Automatic dualization

Updated:

Primal or dual arbitrary in primal-dual solver? No, but YALMIP can help you reformulate your model.