I want to implement the optimization problem in theorem 2 of the paper: https://www.aaai.org/Papers/AAAI/2006/AAAI06-086.pdf

I wrote the code as below: why do I get the error as above under SDP? What am I missing? X and y are data.

X = (dataAll(:,1:end-1)).’;

y= dataAll(:,end);

```
e=ones(200,1);
G=(X'*X).*(y*y');
cvx_begin SDP
variables delta beta1 nu(200) ita(200) w(200)
minimize(norm(delta))
subject to
nu>=0;
w>=0;
ita<=1;
ita>=0;
(ita*ita')>=0;
[G.*(ita*ita'),ita+nu-w;(ita+nu-w)',.5/beta1*(delta-w'*e+ita'*e)]>=0;
cvx_end
```

Anyone please help.

the multiplication sign of matlab * is missing above in ita*ita’?

I don’t know what you’re doing (for instance, where’s the (any) matrix variable M)?

Anyhow, I’m sure it is intended that M \succeq\eta\eta^T be entered via Schur complement as

`{M eta;eta' 1] >= 0`

Does that resolve your error? I’ll let you fix up the rest.

Thanks for the hint. I did not realize that M is ‘any matrix’. The suggestion helped me but I get error on

[G.*M,ita+nu-w;(ita+nu-w)’,.5/beta1*(delta-w’*e+ita’*e)]>=0;

I am looking at it.

Thanks a lot.

The above code is modified as below: The two versions gives two different kind of results. Any suggestion which is is better suited under CVX guidelines?

First version:

cvx_begin SDP

variables delta nu(m) ita(m) w(m)

variable M(m,m) symmetric semidefinite

minimize(norm(delta))

subject to

nu>=0;

w>=0;

ita<=1;

ita>=0;

[M ita;ita’ 1] >= 0;

[G.*M ita+nu-w;(ita+nu-w)’ 2/beta1*(delta-w’*e+ita’*e)]>=0;

cvx_end

And the next version:

cvx_begin SDP

variables delta nu(m) ita(m) w(m) M(m,m)

minimize(norm(delta))

subject to

nu>=0;

w>=0;

ita<=1;

ita>=0;

[sym(M) ita;ita’ 1] >= 0;

[sym(G.*M) ita+nu-w;(ita+nu-w)’ 2/beta1*(delta-w’*e+ita’*e)]>=0;

cvx_end

The above two codes gives different results. Any suggestion why?

Read, study, and work exercises in http://web.stanford.edu/~boyd/cvxbook/ until you have a solid understanding of convex and semidefinite optimization. If while doing that, you have some points of confusion, you can try posting at https://math.stackexchange.com/ to get help on understanding the math.