Why is this problem failed/ Infeasible? Optimal value (cvx_optval): NaN/+INF

for i = 1:length(cluster_ids)
current_cluster = cluster_ids{i};
tasks= cluster_data.(current_cluster).cluster_tasks;
computing_power = cluster_data.(current_cluster).cluster_computing_power;
max_bandwidth = cluster_data.(current_cluster).cluster_max_bandwidth;
cluster_time = cluster_data.(current_cluster).cluster_time;
energy = cluster_data.(current_cluster).cluster_energy;
KB_SIZE = cluster_data.(current_cluster).cluster_KB_SIZE;
snr = cluster_data.(current_cluster).cluster_snr;
power = cluster_data.(current_cluster).cluster_power;
computing_density = cluster_data.(current_cluster).cluster_computing_density;
sample_Num = cluster_data.(current_cluster).cluster_sample_Num;
perform = cluster_data.(current_cluster).cluster_perform;

n = length(tasks);            
B = max_bandwidth(1) *10^(-6);         
p = power;              
h = snr * 10^(9);             
n0 = (10^(-17.4) / 1000)* 10^(15);            
c = (tasks+KB_SIZE) * perform(1);            
d = (tasks+KB_SIZE) .* p;             
a = sample_Num .* computing_density ;
gama = 10^(-27);
M = 2;           

b = ones(n, 1) * (B / n);  
f = ones(n, 1);     
cvx_solver_settings('verbose', true);  
cvx_begin
    cvx_solver %SeDuMi
    cvx_precision best 
    cvx_solver_settings('verbose', true);  
    variables b(n) f(n) G   

    minimize(G)             
    
    
    subject to
        sum(b) <= B;   

     
        for i = 1:n
            temp2 = c(i)  *10^(6) * inv_pos(-rel_entr(b(i),b(i)+(p(i) * h(i)) / (n0))/log(2));
            10^(-8)*a(i) * perform(1) * inv_pos(f(i)) + temp2 <= G;
        end

     
        for i = 1:n
            
            temp3 = gama * a(i)*10^(16) * f(i)^2;
            temp4 = d(i)  *10^(6) * inv_pos(-rel_entr(b(i),b(i)+(p(i) * h(i)) / (n0 ))/log(2));
            temp3 + temp4 <= M; 
        end
        for i = 1:n
            
            f(i) <= (computing_power(i)* 10^(-8));
            b >= 1e-4;
            f >= 1e-6;
         
        end

cvx_end

end

Name Status Version Location

Gurobi 9.00 {cvx}\gurobi\w64
SDPT3 selected,default 4.0 {cvx}\sdpt3
SeDuMi 1.3.4 {cvx}\sedumi

Successive approximation method to be employed.
For improved efficiency, SDPT3 is solving the dual problem.
SDPT3 will be called several times to refine the solution.
Original size: 166 variables, 51 equality constraints
10 exponentials add 80 variables, 50 equality constraints

Cones | Errors |
Mov/Act | Centering Exp cone Poly cone | Status
--------±--------------------------------±--------
NOTE: custom settings have been set for this solver.

0/ 0 | 0.000e+00 0.000e+00 0.000e+00 | Failed
NOTE: custom settings have been set for this solver.

0/ 0 | 0.000e+00 0.000e+00 0.000e+00 | Failed
NOTE: custom settings have been set for this solver.

0/ 0 | 0.000e+00 0.000e+00 0.000e+00 | Failed

Status: Failed

CVX’;s Successive Approximation method failed. It didn’t declare the problem to be infeasible.

First, improve the numerical scaling of input data, by changing units, so that all non-zero input data is within s small number of orders of magnitude of 1.

Use Mosek as solver if available to you; otherwise, follow the advice at CVXQUAD: How to use CVXQUAD's Pade Approximant instead of CVX's unreliable Successive Approximation for GP mode, log, exp, entr, rel_entr, kl_div, log_det, det_rootn, exponential cone. CVXQUAD's Quantum (Matrix) Entropy & Matrix Log related functions