SOC Constraint in cplexmiqcp

9 visualizaciones (últimos 30 días)
Nazanin Madani
Nazanin Madani el 12 de Ag. de 2019
Comentada: Nazanin Madani el 25 de Ag. de 2019
Hi,
I am trying to solve a problem which has a second-order cone constraint as follow
The code that I have is:
Qij= cell(1,J);
for j=1:J
Q=zeros(I*J+3*J+J*K+1+I+J+I*J);
Q((j-1)*I+1:j*I,(j-1)*I+1:j*I)=diag(xinom);
Q(I*J+j,I*J+J+j)=-1;
Qij{j}=Q;
end
%l
l=[zeros(I*J+3*J+J*K+1+I,J);Gamma*eye(J);kron(eye(J),ones(I,1))];
%r
r=zeros(J,1);
The problem is with 'l', when it is zero, it works fine but when I put it as above it says that Q is not positive semi-definite.
Can anyone help me?
Thanks
  4 comentarios
Urmila Rajpurohith
Urmila Rajpurohith el 20 de Ag. de 2019
Provide K value.
Nazanin Madani
Nazanin Madani el 20 de Ag. de 2019
K=286

Iniciar sesión para comentar.

Respuestas (1)

Urmila Rajpurohith
Urmila Rajpurohith el 23 de Ag. de 2019
You mentioned that your code is working fine for I=0 but when I tried with I=0, I got the error:
Unable to perform assignment because the size of the left side is 0-by-0 and the size of the right side is 10-by-10
for the line:
Q((j-1)*I+1:j*I,(j-1)*I+1:j*I)=diag(xinom);
When I is not equal to 0, the determination of positive definiteness depends on the values provided as input. Try manually checking whether the matrix you obtain is positive semi definite or not.
  1 comentario
Nazanin Madani
Nazanin Madani el 25 de Ag. de 2019
Hi, thank you for your reply. I was talking about
l=[zeros(I*J+3*J+J*K+1+I,J);Gamma*eye(J);kron(eye(J),ones(I,1))];
which indicates the small L in the SOC constraint, I should have been more clear.

Iniciar sesión para comentar.

Categorías

Más información sobre Linear Programming and Mixed-Integer Linear Programming en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by