37 lines
894 B
Matlab
37 lines
894 B
Matlab
clc;
|
|
clear;
|
|
|
|
M = 50;
|
|
eps = 1e-5;
|
|
delta = 1/3;
|
|
C = 10.66;
|
|
|
|
nums = 20:0.1:50;
|
|
len = length(nums);
|
|
N = zeros(1, len);
|
|
upper_bound_C1 = zeros(1, len);
|
|
upper_bound_C2 = zeros(1, len);
|
|
log_ub_C1 = zeros(1, len);
|
|
log_ub_C2 = zeros(1, len);
|
|
|
|
for i = 1: len
|
|
N(i) = 10^nums(i);
|
|
upper_bound_C1(i) = get_our_ub(1, N(i), C, M, eps);
|
|
log_ub_C1(i) = log(upper_bound_C1(i));
|
|
upper_bound_C2(i) = get_wl_ub(N(i), M, eps);
|
|
log_ub_C2(i) = log(upper_bound_C2(i));
|
|
N(i) = nums(i);
|
|
end
|
|
|
|
semilogy(N, upper_bound_C1, 'r-', N, upper_bound_C2, 'b');
|
|
legend("Our result", "Wang's result");
|
|
xlabel("log_{10}(N)");
|
|
ylabel("Upper bound of K");
|
|
title_name = strcat("Prob(\delta_K < ", string(delta), ") >= 1 - ", string(eps));
|
|
title(title_name);
|
|
|
|
[k1, b1] = linefit(N, log_ub_C1);
|
|
[k2, b2] = linefit(N, log_ub_C2);
|
|
fprintf("Our result gradient: %f\n", k1);
|
|
fprintf("Wang's result gradient: %f\n", k2);
|