Exercise 4.47: Maximum determinant PSD matrix completion
n = 4;
cvx_begin sdp
variable A(n,n) symmetric;
A >= 0;
A(1,1) == 3;
A(2,2) == 2;
A(3,3) == 1;
A(4,4) == 5;
A(1,2) == .5;
A(1,4) == .25;
A(2,3) == .75;
maximize( log_det( A ) )
cvx_end
disp(['Matrix A with maximum determinant (' num2str(det(A)) ') is:'])
A
disp(['Its eigenvalues are:'])
eigs = eig(A)
Successive approximation method to be employed.
For improved efficiency, sedumi is solving the dual problem.
sedumi will be called several times to refine the solution.
Original size: 58 variables, 17 equality constraints
1 exponentials add 8 variables, 5 equality constraints
-----------------------------------------------------------------
Errors
Act Centering Conic Status
-----------------------------------
1 2.439e-01 4.916e-03 Solved
1 2.150e-03 3.610e-07 Solved
1 8.547e-08 0.000e+00 Solved
-----------------------------------------------------------------
Status: Solved
Optimal value (cvx_optval): +3.02422
Matrix A with maximum determinant (20.578) is:
A =
3.0000 0.5000 0.1875 0.2500
0.5000 2.0000 0.7500 0.0417
0.1875 0.7500 1.0000 0.0156
0.2500 0.0417 0.0156 5.0000
Its eigenvalues are:
eigs =
0.5964
2.0908
3.2773
5.0355