admin 发表于 2022-6-7 22:43:03

aloha算法的matlab仿真

close all;
clc;
for m=2:1:500                  
    n=1000;                  
    A=rand(m,n);               
    A1=0.5*A;                  
    B=cumsum(A1,2);            
    T=B(1,n);                  
    C=1:1:(m*n);            
    for i=1:m                  
      for j=1:n
      C(1,(i-1)*n+j)=B(i,j);
      end
    end
    D=sort(C);                  
    E=diff(D);                  
    T0=0.001;               
    N=0;                        
    M=0;                     
    for i=1:(m*n-1)            
          if D(1,i)<=T         
               M=M+1;
             if i==1&E(1,1)>=T0
                  N=N+1;
             elseif i==(m*n-1)&E(1,(m*n-1))>=T0
                  N=N+1;
             elseif i~=1&i~=(m*n-1)&E(1,i)>=T0&E(1,i-1)>=T0
                  N=N+1;
             end
          else continue
       end
    end
G=T0/T*M;                  
S=T0/T*N;            
Q=S/G;                  
F=m/500;                     
plot(G,S,'r.',G,Q,'ko',G,F,'g*');
hold on;                  
end
xlabel('平均交换的数据包量G');
title('aloha算法仿真');      
legend('吞吐量S','发送成功率Q','归一化标签数F');   
grid on;                                 
页: [1]
查看完整版本: aloha算法的matlab仿真