Closed blegat closed 5 years ago
It seems to be causing a significant slowdown of Mosek performance, see https://nbviewer.jupyter.org/github/mforets/escritoire/blob/master/reachability/XFZ18under.ipynb#Comparison-with-a-MATLAB/YALMIP-implementation cc @mforets
Awesome! I confirm that the slowdown is fixed for the problem in the previous comment, and I've uploaded a new version of that notebook including the results using JuMP v0.19.0.
Because the PositiveSemidefiniteConeTriangle does not directly match the PSD cone used by Mosek, when doing
3 scalar variables are created by JuMP (say x1, x2, x3) and then a matrix variable of 3 variables (y[1:3]) is created by MosekTools, the matrix variables y are in the Mosek PSD cone and their correspondance with the 3 variables added by JuMP is encoded by 3 equalities: y[1] = x1, y[2] = √2*x2 and y[3] = x3. As we can see below, it creates 3 constraints, 3 scalar constraints and a matrix variable.
@ulfworsoe Does Mosek always eliminates the variables x1, x2 and x3 or would it be more efficient to avoid create the x1, x2 and x3 variables directly use y[1], y2/√2 and y[3] in the model ?