This is my code
cvx_solver mosek
cvx_begin
cvx_quiet false;
variable z
variable y(K)
variable x(K)
variable u(K)
variable P(K)
variable a(K)
variable b(K)
maximize z
subject to
for i = 1:K
log(2)*sqrt(m(i))*((x_(i))^2/y_(i)+(2*x_(i)/y_(i))*(y(i)-y_(i))-(x_(i)/y_(i))^2*(x(i)-x_(i)))>=z; %one
sum = 0;
sum_ = 0;
for j = 1:K
sum =P(j)*(abs(W(i)'*H(j)))^2 + sum;
sum_ =P_(j)*abs(W(i)'*H(j))^2 + sum_;
end
inter = sum-P(i)*(abs(W(i)'*H(i)))^2;
inter_ = sum_-P_(i)*(abs(W(i)'*H(i)))^2;
-rel_entr(1,sum+sigma)/log(2)-log(inter_+sigma)/log(2)-(1/(log(2)*(inter_+sigma)))*(inter-inter_)-D/m(i)>=pow_p(x(i),2);%two
P(i)*abs(W(i)'*H(i))^2<=(a_(i))^2+2*a_(i)*(a(i)-a_(i));%three
inter+sigma>=b(i);%four
u(i)>=quad_over_lin(a(i),b(i));%five
sqrt(1-(1+u_(i))^(-2))+(1/(sqrt(1-(1+u_(i))^(-2))*(1+u_(i))^3))*(u(i)-u_(i))<=y(i);%six
0<=P(i)<=P_max;%seven
end
cvx_end
x_ = x;
y_ = y;
u_ = u;
a_ = a;
P_ = P;
end
This is the output:
CVX Warning:
Models involving “rel_entr” or other functions in the log, exp, and entropy
family are solved using an experimental successive approximation method.
This method is slower and less reliable than the method CVX employs for
other models. Please see the section of the user’s guide entitled
The successive approximation method
for more details about the approach, and for instructions on how to
suppress this warning message in the future.
Calling Mosek 9.1.9: 73 variables, 36 equality constraints
MOSEK Version 9.1.9 (Build date: 2019-11-21 11:32:15)
Copyright © MOSEK ApS, Denmark. WWW: mosek.com
Platform: MACOSX/64-X86
Problem
Name :
Objective sense : min
Type : CONIC (conic optimization problem)
Constraints : 36
Cones : 12
Scalar variables : 73
Matrix variables : 0
Integer variables : 0
Optimizer started.
Presolve started.
Eliminator - tries : 0 time : 0.00
Lin. dep. - tries : 0 time : 0.00
Lin. dep. - number : 0
Presolve terminated. Time: 0.00
Optimizer terminated. Time: 0.00
Interior-point solution summary
Problem status : DUAL_INFEASIBLE
Solution status : DUAL_INFEASIBLE_CER
Primal. obj: -1.0000000000e+00 nrm: 1e+00 Viol. con: 0e+00 var: 0e+00 cones: 0e+00
Optimizer summary
Optimizer - time: 0.00
Interior-point - iterations : 0 time: 0.00
Basis identification - time: 0.00
Primal - iterations : 0 time: 0.00
Dual - iterations : 0 time: 0.00
Clean primal - iterations : 0 time: 0.00
Clean dual - iterations : 0 time: 0.00
Simplex - time: 0.00
Primal simplex - iterations : 0 time: 0.00
Dual simplex - iterations : 0 time: 0.00
Mixed integer - relaxations: 0 time: 0.00
Status: Unbounded
Optimal value (cvx_optval): +Inf
I don’t understand why it is unbounded. I have set a formula less than or equal to it in the limit.