How to solve this problem: {convex} .* {convex},

Nonconvex
May 17, 2023
1

I don’t know how to solve this problem, please help me, thank you very much.

cvx_begin  
variable W(ST,d,L) complex
variable x(K) 
variable y(K) 
expressions constant constraint_1(K) s_k b_k ...
constraint_2(K) constraint_3(K) ;
wx=reshape(W,ST*d*L,1);
w=reshape(W,ST*d,L);

constant =norm([wx;(trans_maxpower_-1)/2],'fro'); 

yy=kron(I_d,J0);
c= 2*(trace(J1(:,:,1)*W(:,:,1)+J1(:,:,2)*W(:,:,2)));

for k=1:K
   for l=1:L
      s_k(:,k)=Gama_mini-(1+miu_bs)*norm( vec( G_k(:,:,k)' ),'fro' ).^2* norm( w(:,l),'fro' ).*norm( w(:,l),'fro' );  
   end
   constraint_1(k)=-(G_sk_error(k)^2+N*D_n_error(k)^2 )*P*( 1+miu_bs  )*( norm( w(:,1) ).^2 +norm( w(:,2) ).^2 ) -2*sqrt( log(1/prob) ) *(x(k)+y(k)) +s_k(:,k); %37c ( (1+miu_bs)*trace(W*(W)') )
   constraint_2(k)=( 1+miu_bs  )*( norm( w(:,1) ).^2 +norm( w(:,2) ).^2 )*sqrt(G_sk_error(k)^2 +N*N*D_n_error(k)^2 ) * norm(G_k(:,:,k)',2)-sqrt(2) * x(k); %-sqrt(2) * x(k) 37d
   b_k=(sqrt( log(1/prob) ) +sqrt( log(1/prob) +2 ) )*0.5; %37f
   constraint_3(k)=b_k*(G_sk_error(k)^2 +N*D_n_error(k)^2 )*P* ( 1+miu_bs  )*( norm( w(:,1) ).^2 +norm( w(:,2) ).^2 )-y(k); %37e   sum_abs(W,L)*j
end   

minimize  real(c)
subject to


constant<=(trans_maxpower_+1)/2; 
real(constraint_1)>=0; 
real(constraint_2)<=0;
real(constraint_3)<=0;

J0 == hermitian_semidefinite(ST);
 yy==hermitian_semidefinite(ST*ST);
cvx_end

错误使用 .*
Disciplined convex programming error:
Cannot perform the operation: {convex} .* {convex}

出错 main (第 131 行)
s_k(:,k)=Gama_mini-(1+miu_bs)norm( vec( G_k(:,:,k)’ ),‘fro’ ).^2 norm( w(:,l),‘fro’ ).*norm( w(:,l),‘fro’ );

M

norm(x)^2 can be entered into CVC as square_pos(norm(x))

However, norm(x)*norm(y) is not allowed by CVX, and is not convex in general.

I will assume the problem is not convex. But if it is, it is your responsibility to prove it.

1
Replying to #2

Hello, there is a new problem. I’m not sure which part is convex and which part is concave. Can you help me? I need your help urgently. thank you!

constraint_1(k)=-(G_sk_error(k)^2+N*D_n_error(k)^2 )*P*( 1+miu_bs  )*( square_pos(norm( w(:,1) ) ) +square_pos(norm( w(:,2) ) ) )-2*sqrt( log(1/prob) ) *(x(k)+y(k)) +s_k(:,k); 

错误使用 +
Disciplined convex programming error:
Illegal operation: {concave} + {convex}

出错 main (第 131 行)
constraint_1(k)=-(G_sk_error(k)^2+ND_n_error(k)^2 )P( 1+miu_bs )( square_pos(norm( w(:,1) ) ) +square_pos(norm( w(:,2) ) ) )-2*sqrt( log(1/prob) ) *(x(k)+y(k)) +s_k(:,k);

M

Did you read the link?

1
Replying to #4

Yes, I did. But I don’t know how to solve it. :pensive:

M

Have you proven your problem is convex? That’s what the links says to do.

if the problem is not convex, CVX is not the right tool to use.

1

Well, thank you very much. Thank you