# The iteration is not convergence

Hello, my question is when using CVX to solve fractional optimization, introducing variables to change the objective function from A/B to A-lambda * B, and changing the number of iterations to 500 times does not converge. What is the reason for this? The code is as follows:
P_a_dBm = 10;
P_a_star = 10^(P_a_dBm/10);
miu = zeros(1,iter_max+1);
miu(1) = P_a_start_artrace(X_init(:,:,Nr)H_rb)/(sigma_r_mW(trace((sum(X_init,3))H_rb))+sigma_w_mW);
% begin AO
for iter = 1:iter_max
cvx_begin quiet
cvx_solver sedumi
variable eta;
%expression miu;
variable X(Nr,Nr,Nr) Hermitian; % 假设有16个Nr x Nr的Hermitian矩阵
maximize (real(P_a_star
t_artrace(X(:,:,Nr)H_rb)-miu(iter)(sigma_r_mW(trace((sum(X,3))H_rb))+sigma_w_mW)-taoeta))
subject to
%sigma_r_mW*(trace(sum(X,3)H_rb))+sigma_b_mW == 1;
x1
(trace((sum(X,3))H_rw/sigma_w_mW)+1) <= P_a_starH_aw/sigma_w_mW+1;
P_a_starH_aw/sigma_w_mW+1 <= x2(trace((sum(X,3))H_rw/sigma_w_mW)+1);
% x1
(trace(sum(X,3)H_rw)+sigma_w_mW) <= P_a_start_artrace(X(:,:,Nr)H_rw)+sigma_r_mW(trace(sum(X,3)H_rw))+sigma_w_mW;
% P_a_star
t_ar
trace(X(:,:,Nr)H_rw)+sigma_r_mW(trace(sum(X,3)H_rw))+sigma_w_mW <= x2(trace(sum(X,3)H_rw)+sigma_w_mW);% 第二个
P_a_star <= P_max_mW;
% P_a_star
t_artrace(X(:,:,Nr))+sigma_r_mW(trace(sum(X,3))) <= P_r_mW; %第三个
trace(sum(X,3)) <= P_r_mW;
eta >= 0;
for i = 1:Nr
trace(X(:,:,i))-lambda(i)-trace(q{i}q{i}'(X(:,:,i)-X_init_matrices{i})) <= eta;
X(:,:,i) == semidefinite(Nr);
end
cvx_end
X_star = zeros(Nr,Nr,Nr);
for r = 1: Nr
X_star(:,:,r) = X(:,:,r);
end
eta_star = max(eta,0);
A = zeros(2,1);
A(1,1) = P_max_mW;
% A(2,1) = ((x2-sigma_r_mW)(real(trace(sum(X_star,3)H_rw)))+(x2-1)sigma_w_mW)/(t_arreal(trace(X_star(:,:,Nr)H_rw)));
% A(3,1) = (P_r_mW-sigma_r_mW
(trace(sum(X_star,3))))/(t_ar
trace(X_star(:,:,Nr)));
A(2,1) = (x2
(real(trace((sum(X_star,3))H_rw)))+(x2-1)sigma_w_mW)/H_aw;
P_a_star = min(A);
new_miu = P_a_star
t_ar
trace(X_star(:,:,Nr)H_rb)/(sigma_r_mW(trace((sum(X_star,3))H_rb))+sigma_w_mW);
miu(iter+1) = new_miu;
snr(epo,iter) = P_a_star
t_ar*trace(X_star(:,:,Nr)H_rb)/(sigma_r_mW(trace((sum(X_star,3))*H_rb))+sigma_w_mW);
end

Why should this necessarily converge to anything, let alone to the solution of your original problem? There is no general law of mathematics which states that whatever iterative scheme you concoct necessarily converges.

Thanks, Yes, You’re right! I should do some analysis.