def avg_degree(): x = range(30, 110, 10) y = [] y_dia = [] y_mlpt = [] y_deba = [] y_eftcg = [] for i in x: print("The number of nodes:", i) Node.n = i y_dia_ = [] y_mlpt_ = [] y_deba_ = [] y_eftcg_ = [] for j in range(3): print("The count:", j) np.random.seed(j) init() G, N = dia() a = Simulator.average_degree(len(N), G) y_dia_.append(a) G, N = mlpt() a = Simulator.average_degree(len(N), G) y_mlpt_.append(a) G, N = deba() a = Simulator.average_degree(len(N), G) y_deba_.append(a) G, N = my(1) a = Simulator.average_degree(len(N), G) y_eftcg_.append(a) ########################################### y_dia.append(np.mean(y_dia_)) y_mlpt.append(np.mean(y_mlpt_)) y_deba.append(np.mean(y_deba_)) y_eftcg.append(np.mean(y_eftcg_)) ############################################### y = [[y_dia, "DIA"], [y_mlpt, "MLPT"], [y_deba, "DEBA"], [y_eftcg, "EFTCG"]] plot.plot_performance(x, y, ylabel="Avarage Degree")
def performance_k(): x = range(40, 110, 10) num = 5 # number of evaluation-index times = 10 # number of iterations y_deba = [[] for x in range(num)] y_k1 = [[] for x in range(num)] y_k2 = [[] for x in range(num)] for i in x: print("The number of nodes:", i) Node.n = i y_deba_ = [[] for x in range(num)] y_k1_ = [[] for x in range(num)] y_k2_ = [[] for x in range(num)] for j in range(times): print("The count:", j) init() n = Node.n size_ = 10 fault_node = random.sample(range(n - 2), size_) G, N = deba() a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.survival_time(len(N), N, G) d, e = fault_k(len(N), G, fault_node) y_deba_[0].append(a) y_deba_[1].append(b) y_deba_[2].append(c) y_deba_[3].append(d) y_deba_[4].append(e) G, N = my(1) a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.survival_time(len(N), N, G) d, e = fault_k(len(N), G, fault_node) y_k1_[0].append(a) y_k1_[1].append(b) y_k1_[2].append(c) y_k1_[3].append(d) y_k1_[4].append(e) G, N = my(2) a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.survival_time(len(N), N, G) d, e = fault_k(len(N), G, fault_node) y_k2_[0].append(a) y_k2_[1].append(b) y_k2_[2].append(c) y_k2_[3].append(d) y_k2_[4].append(e) ########################################### # power ########################################## y_deba[0].append(np.mean(y_deba_[0])) y_k1[0].append(np.mean(y_k1_[0])) y_k2[0].append(np.mean(y_k2_[0])) ########################################### # degree ########################################## y_deba[1].append(np.mean(y_deba_[1])) y_k1[1].append(np.mean(y_k1_[1])) y_k2[1].append(np.mean(y_k2_[1])) ########################################## # survive time ########################################## y_deba[2].append(np.mean(y_deba_[2])) y_k1[2].append(np.mean(y_k1_[2])) y_k2[2].append(np.mean(y_k2_[2])) ########################################### # failure rate ########################################## y_deba[3].append(np.mean(y_deba_[3])) y_k1[3].append(np.mean(y_k1_[3])) y_k2[3].append(np.mean(y_k2_[3])) ########################################### # links rate ########################################## y_deba[4].append(np.mean(y_deba_[4])) y_k1[4].append(np.mean(y_k1_[4])) y_k2[4].append(np.mean(y_k2_[4])) ############################################### y0 = [ [y_deba[0], "DEBA"], [y_k1[0], "EFTCG-1"], [y_k2[0], "EFTCG-2"], ] y1 = [ [y_deba[1], "DEBA"], [y_k1[1], "EFTCG-1"], [y_k2[1], "EFTCG-2"], ] y2 = [ [y_deba[2], "DEBA"], [y_k1[2], "EFTCG-1"], [y_k2[2], "EFTCG-2"], ] y3 = [ [y_deba[3], "DEBA"], [y_k1[3], "EFTCG-1"], [y_k2[3], "EFTCG-2"], ] y4 = [ [y_deba[4], "DEBA"], [y_k1[4], "EFTCG-1"], [y_k2[4], "EFTCG-2"], ] plot.plot_performance(x, y0, ylabel="Average Transmit Power") plot.plot_performance(x, y1, ylabel="Average Node Degree") plot.plot_performance(x, y2, ylabel="Network Lifetime") plot.plot_performance(x, y3, ylabel="Rate of Survival Nodes") plot.plot_performance(x, y4, ylabel="Rate of Connectable Node Pairs")
def performance(): x = range(30, 110, 10) num = 4 # number of evaluation-index times = 10 # number of iterations y_dia = [[] for x in range(num)] y_mlpt = [[] for x in range(num)] y_deba = [[] for x in range(num)] y_eftcg = [[] for x in range(num)] for i in x: print("The number of nodes:", i) Node.n = i y_dia_ = [[] for x in range(num)] y_mlpt_ = [[] for x in range(num)] y_deba_ = [[] for x in range(num)] y_eftcg_ = [[] for x in range(num)] for j in range(times): print("The count:", j) init() G, N = dia() a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.average_hop(len(N), G) d = Simulator.survival_time(len(N), N, G) y_dia_[0].append(a) y_dia_[1].append(b) y_dia_[2].append(c) y_dia_[3].append(d) G, N = mlpt() a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.average_hop(len(N), G) d = Simulator.survival_time(len(N), N, G) y_mlpt_[0].append(a) y_mlpt_[1].append(b) y_mlpt_[2].append(c) y_mlpt_[3].append(d) G, N = deba() a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.average_hop(len(N), G) d = Simulator.survival_time(len(N), N, G) y_deba_[0].append(a) y_deba_[1].append(b) y_deba_[2].append(c) y_deba_[3].append(d) G, N = my(1) a = Simulator.average_power(len(N), N) b = Simulator.average_degree(len(N), G) c = Simulator.average_hop(len(N), G) d = Simulator.survival_time(len(N), N, G) y_eftcg_[0].append(a) y_eftcg_[1].append(b) y_eftcg_[2].append(c) y_eftcg_[3].append(d) ########################################### # power ########################################## y_dia[0].append(np.mean(y_dia_[0])) y_mlpt[0].append(np.mean(y_mlpt_[0])) y_deba[0].append(np.mean(y_deba_[0])) y_eftcg[0].append(np.mean(y_eftcg_[0])) ########################################### # degree ########################################## y_dia[1].append(np.mean(y_dia_[1])) y_mlpt[1].append(np.mean(y_mlpt_[1])) y_deba[1].append(np.mean(y_deba_[1])) y_eftcg[1].append(np.mean(y_eftcg_[1])) ########################################### # hop ########################################## y_dia[2].append(np.mean(y_dia_[2])) y_mlpt[2].append(np.mean(y_mlpt_[2])) y_deba[2].append(np.mean(y_deba_[2])) y_eftcg[2].append(np.mean(y_eftcg_[2])) ########################################## y_dia[3].append(np.mean(y_dia_[3])) y_mlpt[3].append(np.mean(y_mlpt_[3])) y_deba[3].append(np.mean(y_deba_[3])) y_eftcg[3].append(np.mean(y_eftcg_[3])) ############################################### y0 = [[y_dia[0], "DIA"], [y_mlpt[0], "MLPT"], [y_deba[0], "DEBA"], [y_eftcg[0], "EFTCG"]] y1 = [[y_dia[1], "DIA"], [y_mlpt[1], "MLPT"], [y_deba[1], "DEBA"], [y_eftcg[1], "EFTCG"]] y2 = [[y_dia[2], "DIA"], [y_mlpt[2], "MLPT"], [y_deba[2], "DEBA"], [y_eftcg[2], "EFTCG"]] y3 = [[y_dia[3], "DIA"], [y_mlpt[3], "MLPT"], [y_deba[3], "DEBA"], [y_eftcg[3], "EFTCG"]] plot.plot_performance(x, y0, ylabel="Average Transmit Power") plot.plot_performance(x, y1, ylabel="Average Node Degree") plot.plot_performance(x, y2, ylabel="Average Hop") plot.plot_performance(x, y3, ylabel="Network Lifetime")