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