Can the YALMP optimize two variables? For example, alpha>0 and beta>0 (I want alpha is as large as possible and beta is as small as possible).

46 views
Skip to first unread message

Harvey

unread,
Oct 30, 2019, 10:56:42 AM10/30/19
to YALMIP
Dear:

I always use YALMIP to minimize a variable, for example:

optimize(LMIs,beta,options);  % (the variable "beta" can be minimized).  LMIs denotes the LMI conditions. the solvers can be sdpt3, sedumi, mosek. 


I have two questions. My first question is: Can the YALMIP maximize a variable?

My second question is: Can the YALMP optimize two variables? For example, alpha>0 and beta>0 (I want alpha is as large as possible and beta is as small as possible).

Many thanks in advance!

Piotr Balik

unread,
Oct 30, 2019, 2:05:17 PM10/30/19
to YALMIP
Hello!

I think you should let objective function become -alpha^2+beta^2 so then the bigger alpha gets the lower value is. You could change the expressions of the values e.g. obj=-alpha^3+beta etc.
About the constrains: just put F = [F, alpha>=0, beta>=0]

Warm regards

Johan Löfberg

unread,
Oct 31, 2019, 3:30:25 AM10/31/19
to YALMIP
You would have to define what you actually mean with "optimize two variables". If you are talking about multi-objective optimization, 

to maximize an expression, you simply minimize the negated expression

Johan Löfberg

unread,
Oct 31, 2019, 3:32:37 AM10/31/19
to YALMIP
Using -alpha^2 + beta^2 (or -beta^3) would be a horrible choice when trying to scalarize a multi-objective, as it would give you a nonconvex objective
Reply all
Reply to author
Forward
0 new messages