亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? leachvsdeec.m

?? 無線傳感器網絡 路由算法 本科設計時的論文算法
?? M
?? 第 1 頁 / 共 2 頁
字號:
clear
%1.初始參數設定模塊
%.傳感器節點區域界限(單位 M)
xm=100;
ym=100;
%(1)匯聚節坐標給定
sink.x=0.5*xm;
sink.y=0.5*ym;
%區域內傳器節數
n=100
%簇頭優化比例(當選簇頭的概率)
p=0.05;
P=0.05;
%能量模型(單位 焦)
%初始化能量模型
Eo=0.5;
%Eelec=Etx=Erx
ETX=50*0.000000001;
ERX=50*0.000000001;
%Transmit Amplifier types
Efs=10*0.000000000001;
Emp=0.0013*0.000000000001;
%Data Aggregation Energy
EDA=5*0.000000001;
%高能量節點超出一節點能量的百分比
a=1;
%最大循環次數
rmax=5000
%算出參數 do
do=sqrt(Efs/Emp);
Et=0;
%2.無線傳感器網絡模型產生模塊
%構建無線傳感器網絡,在區域內均勻投放100個節點,并畫出圖形
for i=1:1:n
    S1(i).xd=rand(1,1)*xm;
    S2(i).xd=S1(i).xd;
    S3(i).xd=S1(i).xd;
    S4(i).xd=S3(i).xd;
    XR4(i)=S4(i).xd;
    XR3(i)=S3(i).xd;
    XR2(i)=S2(i).xd;
    XR1(i)=S1(i).xd;
    S1(i).yd=rand(1,1)*ym;
    S2(i).yd=S1(i).yd;
    S3(i).yd=S1(i).yd;
    S4(i).yd=S3(i).yd;
    YR4(i)=S4(i).yd;
    S4(i).G=0;
    YR3(i)=S3(i).yd;
    S3(i).G=0;
    YR2(i)=S2(i).yd;
    YR1(i)=S1(i).yd;
    S1(i).G=0;
    S2(i).G=0;
    S1(i).E=Eo*(1+rand*a);
    S2(i).E=S1(i).E;
    S3(i).E=S1(i).E;
    S4(i).E=S3(i).E;
    E3(i)= S3(i).E;
    E4(i)= S4(i).E;
    Et=Et+E3(i);

    %initially there are no cluster heads only nodes
    S1(i).type='N';
    S2(i).type='N';
    S3(i).type='N';
    S4(i).type='N';
end

S1(n+1).xd=sink.x;
S1(n+1).yd=sink.y;
S2(n+1).xd=sink.x;
S2(n+1).yd=sink.y;
%3.網絡運行模塊
%簇頭節點數
countCHs1=0;
cluster1=1;%此定義的目的僅僅是給定一個1開始的下標參數,真正的簇頭數應該還減去1
flag_first_dead1=0;
flag_teenth_dead1=0;
flag_all_dead1=0;
%死亡節點數
dead1=0;
first_dead1=0;
teenth_dead1=0;
all_dead1=0;
%活動節點數
allive1=n;
%counter for bit transmitted to Bases Station and to Cluster Heads
packets_TO_BS1=0;
packets_TO_CH1=0;
%(1)循環模式設定
for r=0:1:rmax     %該 for 循環將下面的所有程序包括在內,直到最后一 end 才結束循環
    r
  %每過一個輪轉周期(本程序為10次)使各節點的S(i).G參數(該參數用于后面的簇選舉,在該輪轉周期內已當選過簇頭的節點不能再當選)恢復為零
  if(mod(r, round(1/p) )==0)
    for i=1:1:n
        S1(i).G=0;
        S1(i).cl=0;
    end
  end
%(2)死亡節點檢查模塊
dead1=0;
for i=1:1:n
    %檢查有無死亡節點
    if (S1(i).E<=0)
        dead1=dead1+1; 
        %(3)第一個死亡節點的產生時間(用輪次表示)
        %第一個節點死亡時間
        if (dead1==1)
           if(flag_first_dead1==0)
              first_dead1=r;
              flag_first_dead1=1;
           end
        end
        %10%的節點死亡時間
        if(dead1==0.1*n)
           if(flag_teenth_dead1==0)
              teenth_dead1=r;
              flag_teenth_dead1=1;
           end
        end
        if(dead1==n)
           if(flag_all_dead1==0)
              all_dead1=r;
              flag_all_dead1=1;
           end
        end
    end
    if S1(i).E>0
        S1(i).type='N';
    end
end
STATISTICS.DEAD1(r+1)=dead1;
STATISTICS.ALLIVE1(r+1)=allive1-dead1;
%(4)簇頭選舉模塊
countCHs1=0;
cluster1=1;
for i=1:1:n
   if(S1(i).E>0)
   temp_rand=rand;     
   if ( (S1(i).G)<=0)  
       %簇頭的選舉,當選的簇頭會把各種相關信存入下面程序所給定的變量中
        if(temp_rand<= (p/(1-p*mod(r,round(1/p)))))
            countCHs1=countCHs1+1;
            packets_TO_BS1=packets_TO_BS1+1;
            PACKETS_TO_BS1(r+1)=packets_TO_BS1;
             S1(i).type='C';
            S1(i).G=round(1/p)-1;
            C1(cluster1).xd=S1(i).xd;
            C1(cluster1).yd=S1(i).yd;
           distance=sqrt( (S1(i).xd-(S1(n+1).xd) )^2 + (S1(i).yd-(S1(n+1).yd) )^2 );
            C1(cluster1).distance=distance;
            C1(cluster1).id=i;
            X1(cluster1)=S1(i).xd;
            Y1(cluster1)=S1(i).yd;
            cluster1=cluster1+1;
           %計算簇頭發送4000bit數據到基站的能量消耗(這里應是所有節點包括簇頭每一輪發送4000bit數據)
           distance;
            if (distance>do)
                S1(i).E=S1(i).E- ( (ETX+EDA)*(4000) + Emp*4000*( distance*distance*distance*distance )); 
            end
            if (distance<=do)
                S1(i).E=S1(i).E- ( (ETX+EDA)*(4000)  + Efs*4000*( distance * distance )); 
            end
        end     
    
    end
    % S(i).G=S(i).G-1;  
   
 end 
end
STATISTICS.COUNTCHS1(r+1)=countCHs1;
%(5)簇內成員選擇簇頭模塊(即簇的形成模塊)
%簇內成員對簇頭的選擇(即簇的形成)算法
for c=1:1:cluster1-1
    x1(c)=0;
end
y1=0;
z1=0;
for i=1:1:n
   if ( S1(i).type=='N' && S1(i).E>0 )
     if(cluster1-1>=1)
       min_dis=Inf;
       min_dis_cluster=0;
       for c=1:1:cluster1-1
           temp=min(min_dis,sqrt( (S1(i).xd-C1(c).xd)^2 + (S1(i).yd-C1(c).yd)^2 ) );
           if ( temp<min_dis )
               min_dis=temp;
               min_dis_cluster=c;
               x1(c)=x1(c)+1;
           end
       end
       %簇內節點(發送4000bit數據)能量消耗
       
            min_dis;
            if (min_dis>do)
                S1(i).E=S1(i).E- ( ETX*(4000) + Emp*4000*( min_dis * min_dis * min_dis * min_dis)); 
            end
            if (min_dis<=do)
                S1(i).E=S1(i).E- ( ETX*(4000) + Efs*4000*( min_dis * min_dis)); 
            end
        %簇頭(接受和融合這一簇內節點4000bit數據)的能量消耗
            S1(C1(min_dis_cluster).id).E = S1(C1(min_dis_cluster).id).E- ( (ERX + EDA)*4000 ); 
            packets_TO_CH1=packets_TO_CH1+1;    
 
        S1(i).min_dis=min_dis;
        S1(i).min_dis_cluster=min_dis_cluster;
    else
        y1=y1+1;
        min_dis=sqrt( (S1(i).xd-S1(n+1).xd)^2 + (S1(i).yd-S1(n+1).yd)^2 );
            if (min_dis>do)
                S1(i).E=S1(i).E- ( ETX*(4000) + Emp*4000*( min_dis * min_dis * min_dis * min_dis)); 
            end
            if (min_dis<=do)
                S1(i).E=S1(i).E- ( ETX*(4000) + Efs*4000*( min_dis * min_dis)); 
            end
            packets_TO_BS1=packets_TO_BS1+1;
     end
  end
end
if countCHs1~=0
   u1=(n-y1)/countCHs1;
for c=1:1:cluster1-1
    z1=(x1(c)-u1)*(x1(c)-u1)+z1;
end
LBF1(r+1)=z1/countCHs1;
else  LBF1(r+1)=0;
end
STATISTICS.PACKETS_TO_CH1(r+1)=packets_TO_CH1;
STATISTICS.PACKETS_TO_BS1(r+1)=packets_TO_BS1;
end



%3.網絡運行模塊
%簇頭節點數
countCHs2=0;
cluster=1;%此定義的目的僅僅是給定一個1開始的下標參數,真正的簇頭數應該還減去1
flag_first_dead2=0;
flag_teenth_dead2=0;
flag_all_dead2=0;
%死亡節點數
dead2=0;
first_dead2=0;
teenth_dead2=0;
all_dead2=0;
%活動節點數
allive2=n;
%counter for bit transmitted to Bases Station and to Cluster Heads
packets_TO_BS2=0;
packets_TO_CH2=0;
%(1)循環模式設定
for r=0:1:rmax     %該 for 循環將下面的所有程序包括在內,直到最后一 end 才結束循環
    r
  %每過一個輪轉周期(本程序為10次)使各節點的S(i).G參數(該參數用于后面的簇選舉,在該輪轉周期內已當選過簇頭的節點不能再當選)恢復為零
  if(mod(r, round(1/p) )==0)
    for i=1:1:n
        S2(i).G=0;
        S2(i).cl=0;
    end
  end
%(2)死亡節點檢查模塊
dead2=0;
for i=1:1:n
    %檢查有無死亡節點
    if (S2(i).E<=0)
        dead2=dead2+1; 
        %(3)第一個死亡節點的產生時間(用輪次表示)
        %第一個節點死亡時間
        if (dead2==1)
           if(flag_first_dead2==0)
              first_dead2=r;
              flag_first_dead2=1;
           end
        end
        %10%的節點死亡時間
        if(dead2==0.1*n)
           if(flag_teenth_dead2==0)
              teenth_dead2=r;
              flag_teenth_dead2=1;
           end
        end
        if(dead2==n)
           if(flag_all_dead2==0)
              all_dead2=r;
              flag_all_dead2=1;
           end
        end
    end
    if S2(i).E>0
        S2(i).type='N';
    end
end
STATISTICS.DEAD2(r+1)=dead2;
STATISTICS.ALLIVE2(r+1)=allive2-dead2;
%(4)簇頭選舉模塊
countCHs2=0;
cluster2=1;
for i=1:1:n
   if(S2(i).E>0)
   temp_rand=rand;     
   if ( (S2(i).G)<=0)  
       %簇頭的選舉,當選的簇頭會把各種相關信存入下面程序所給定的變量中
        if(temp_rand<= (p/(1-p*mod(r,round(1/p)))))
            countCHs2=countCHs2+1;
            packets_TO_BS2=packets_TO_BS2+1;
            PACKETS_TO_BS2(r+1)=packets_TO_BS2;
             S2(i).type='C';
            S2(i).G=round(1/p)-1;
            C2(cluster2).xd=S2(i).xd;
            C2(cluster2).yd=S2(i).yd;
           distance=sqrt( (S2(i).xd-(S2(n+1).xd) )^2 + (S2(i).yd-(S2(n+1).yd) )^2 );
            C2(cluster2).distance=distance;
            C2(cluster2).id=i;
            X2(cluster2)=S2(i).xd;
            Y2(cluster2)=S2(i).yd;
            cluster2=cluster2+1;
           %計算簇頭發送4000bit數據到基站的能量消耗(這里應是所有節點包括簇頭每一輪發送4000bit數據)
           distance;
            if (distance>do)
                S2(i).E=S2(i).E- ( (ETX+EDA)*(4000) + Emp*4000*( distance*distance*distance*distance )); 
            end
            if (distance<=do)
                S2(i).E=S2(i).E- ( (ETX+EDA)*(4000)  + Efs*4000*( distance * distance )); 
            end
        end     
    
    end
    % S2(i).G=S2(i).G-1;  
   
 end 
end
STATISTICS.COUNTCHS2(r+1)=countCHs2;
%(5)簇內成員選擇簇頭模塊(即簇的形成模塊)
%簇內成員對簇頭的選擇(即簇的形成)算法
for c=1:1:cluster2-1
    x2(c)=0;
end
y2=0;
z2=0;
for i=1:1:n
   if ( S2(i).type=='N' && S2(i).E>0 )
     if(cluster2-1>=1)
       min_dis=sqrt( (S2(i).xd-S2(n+1).xd)^2 + (S2(i).yd-S2(n+1).yd)^2 );
       min_dis_cluster=0;
       for c=1:1:cluster2-1
           temp=min(min_dis,sqrt( (S2(i).xd-C2(c).xd)^2 + (S2(i).yd-C2(c).yd)^2 ) );
           if ( temp<min_dis )
               min_dis=temp;
               min_dis_cluster=c;
               x2(c)=x2(c)+1;
           end
       end
       %簇內節點(發送4000bit數據)能量消耗
       if(min_dis_cluster~=0)    
            min_dis;
            if (min_dis>do)
                S2(i).E=S2(i).E- ( ETX*(4000) + Emp*4000*( min_dis * min_dis * min_dis * min_dis)); 
            end
            if (min_dis<=do)
                S2(i).E=S2(i).E- ( ETX*(4000) + Efs*4000*( min_dis * min_dis)); 
            end
        %簇頭(接受和融合這一簇內節點4000bit數據)的能量消耗
            S2(C2(min_dis_cluster).id).E = S2(C2(min_dis_cluster).id).E- ( (ERX + EDA)*4000 ); 
            packets_TO_CH2=packets_TO_CH2+1;
       else 
            min_dis;
            if (min_dis>do)
                S2(i).E=S2(i).E- ( ETX*(4000) + Emp*4000*( min_dis * min_dis * min_dis * min_dis)); 
            end
            if (min_dis<=do)
                S2(i).E=S2(i).E- ( ETX*(4000) + Efs*4000*( min_dis * min_dis)); 
            end
            packets_TO_BS2=packets_TO_BS2+1;
            
       end
        S2(i).min_dis=min_dis;
        S2(i).min_dis_cluster=min_dis_cluster;
    else
        y2=y2+1;
        min_dis=sqrt( (S2(i).xd-S2(n+1).xd)^2 + (S2(i).yd-S2(n+1).yd)^2 );
            if (min_dis>do)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服丝袜亚洲精品中文字幕| 91精品国产91久久久久久最新毛片 | 久久无码av三级| 亚洲日本电影在线| 国产精品一区二区免费不卡 | 日韩一区二区三区在线视频| 国产精品国产三级国产有无不卡| 五月激情综合色| 91美女片黄在线观看91美女| 欧美不卡视频一区| 亚洲成人黄色影院| 欧美主播一区二区三区| 国产日本欧美一区二区| 久久99国产精品麻豆| 欧美日韩国产一区| 亚洲一区视频在线| 色呦呦一区二区三区| 国产农村妇女毛片精品久久麻豆 | 最近中文字幕一区二区三区| 国产一区二区三区最好精华液| 欧美人妖巨大在线| 亚洲一区二区在线观看视频| 91在线观看污| 亚洲日本一区二区| 成人av动漫在线| 中文字幕免费观看一区| 精品无码三级在线观看视频| 欧美一二三区精品| 日本中文在线一区| 91精品黄色片免费大全| 波多野结衣在线一区| 日韩精品专区在线影院重磅| 日韩1区2区3区| 日韩欧美电影在线| 久久精品二区亚洲w码| 欧美精选一区二区| 日本不卡一区二区三区| 91精品国产一区二区三区蜜臀| 日韩成人午夜精品| 日韩精品一区二区三区四区视频 | 国产乱妇无码大片在线观看| 久久精品一区二区三区四区| 国产成人小视频| 国产偷v国产偷v亚洲高清| 盗摄精品av一区二区三区| 中文字幕不卡在线播放| 91亚洲午夜精品久久久久久| 亚洲精品国产成人久久av盗摄 | 成人免费毛片aaaaa**| 国产精品久久久久影院亚瑟| 91女人视频在线观看| 亚洲国产欧美一区二区三区丁香婷| 欧美午夜不卡在线观看免费| 日韩高清中文字幕一区| 欧美不卡一区二区| www.视频一区| 午夜精品爽啪视频| 精品第一国产综合精品aⅴ| 成人理论电影网| 亚洲成人免费av| 精品久久久久久久久久久久包黑料| 国产精品一区免费视频| 97精品久久久午夜一区二区三区| 一区二区三区不卡视频| 日韩一区二区免费在线观看| 国产精品一二三区| 亚洲自拍偷拍av| 2023国产精华国产精品| 91麻豆福利精品推荐| 强制捆绑调教一区二区| 国产精品三级视频| 91麻豆精品国产自产在线| 国产精品99久| 日韩av一级片| 自拍偷拍亚洲综合| 日韩欧美美女一区二区三区| 不卡一区二区三区四区| 日产欧产美韩系列久久99| 国产精品免费av| 日韩三级免费观看| 色婷婷亚洲综合| 国产精品一区二区你懂的| 亚洲午夜一区二区| 国产日韩欧美a| 91麻豆精品国产91久久久久| eeuss鲁片一区二区三区在线看| 三级欧美韩日大片在线看| 中文字幕日韩一区| 久久久久久久电影| 91精品国产色综合久久久蜜香臀| 91小视频在线免费看| 国产乱国产乱300精品| 日本欧美在线观看| 亚洲与欧洲av电影| 亚洲欧洲日韩在线| 国产欧美日韩在线视频| 欧美不卡激情三级在线观看| 欧美日韩精品专区| 欧美在线观看一区| 91免费看`日韩一区二区| 国产91精品露脸国语对白| 激情丁香综合五月| 开心九九激情九九欧美日韩精美视频电影 | 日韩女优制服丝袜电影| 色菇凉天天综合网| 99久久精品国产一区| 丁香啪啪综合成人亚洲小说| 国产一区二区按摩在线观看| 美女诱惑一区二区| 美腿丝袜亚洲综合| 久久99精品久久久久久国产越南 | 欧美最猛性xxxxx直播| 99久久免费精品高清特色大片| 国产91综合一区在线观看| 国产乱国产乱300精品| 国产一区二区精品在线观看| 国产美女在线观看一区| 极品少妇xxxx精品少妇偷拍| 久国产精品韩国三级视频| 老司机精品视频在线| 九色|91porny| 国产一区二区在线观看免费| 国产乱子轮精品视频| 国产激情偷乱视频一区二区三区| 国产毛片精品视频| 国产91精品久久久久久久网曝门| 成人午夜在线播放| 色综合久久中文综合久久97| 在线免费不卡视频| 欧美精品成人一区二区三区四区| 欧美精品自拍偷拍| 日韩美女视频一区二区在线观看| 精品久久久久久久久久久久久久久久久 | 色又黄又爽网站www久久| 在线免费观看日韩欧美| 欧美日韩一级黄| 欧美不卡一区二区| 国产精品欧美久久久久无广告| 亚洲色图一区二区三区| 午夜精品福利久久久| 精品一区二区三区视频在线观看| 国产成人三级在线观看| 91丨porny丨国产| 欧美丰满高潮xxxx喷水动漫| 久久亚洲二区三区| 成人欧美一区二区三区白人| 亚洲va天堂va国产va久| 精品无人码麻豆乱码1区2区| 成人毛片老司机大片| 欧美性高清videossexo| 精品国产免费人成电影在线观看四季| 国产欧美日韩综合精品一区二区| 亚洲美女屁股眼交3| 久久精品99国产国产精| 99在线精品免费| 欧美大片免费久久精品三p| 国产精品午夜免费| 日韩精品成人一区二区在线| 国产一区二区h| 欧美色视频在线| 国产视频一区二区在线观看| 亚洲小说春色综合另类电影| 国产成人精品免费在线| 欧美狂野另类xxxxoooo| 秋霞成人午夜伦在线观看| www.在线成人| 26uuu久久天堂性欧美| 亚洲一本大道在线| 懂色av一区二区夜夜嗨| 日韩亚洲欧美中文三级| 亚洲精品午夜久久久| 国产毛片精品国产一区二区三区| 欧美日韩国产高清一区二区| 国产欧美视频一区二区| 另类的小说在线视频另类成人小视频在线 | 欧美在线高清视频| 亚洲国产高清在线观看视频| 欧美bbbbb| 制服丝袜中文字幕一区| 亚洲一级在线观看| 91影院在线免费观看| 亚洲国产精品精华液2区45| 毛片基地黄久久久久久天堂| 欧美三级电影在线看| 亚洲欧美日韩国产一区二区三区| 韩国三级中文字幕hd久久精品| 51精品国自产在线| 亚洲成va人在线观看| 91国偷自产一区二区三区成为亚洲经典| 久久久久国产精品免费免费搜索| 日本怡春院一区二区| 欧美日韩高清不卡| 亚洲国产日韩一级| 欧美少妇性性性| 99re成人精品视频| 国产精品区一区二区三| 成人的网站免费观看| 国产精品久久久久久久久果冻传媒| 国产一区二区三区香蕉 | 国产精品久久久久一区|