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

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

?? qos

?? %% Ant Colony Algorithm for QoS Multicast Routing % QoS組播路由蟻群算法
??
字號:
function [MRT,EDGES,cost]=ACA_QoS_MR(C,D,S,E,Dmax,K,M,Alpha,Beta,Gamma,Tau,Rho,Q)
%% Ant Colony Algorithm for QoS Multicast Routing
%  QoS組播路由蟻群算法

%  GreenSim團隊原創作品,轉載請注明

%  此源代碼完整無刪減,請放心使用

%  欲與原作者技術交流請發郵件aihuacheng@gmail.com
%% 輸入參數列表
%  C            費用鄰接矩陣(N×N)
%  D            延時鄰接矩陣(N×N)
%  S            源節點
%  E            組播目的節點(行向量)
%  Dmax         延時約束
%  K            迭代次數(指螞蟻出動多少波)
%  M            螞蟻個數(每一波螞蟻有多少個)
%  Alpha        表征信息素重要程度的參數
%  Beta         表征啟發式因子(費用)重要程度的參數
%  Gamma        表征啟發式因子(延時)重要程度的參數
%  Tau          初始信息素矩陣
%  Rho          信息素蒸發系數
%  Q            信息素增加強度系數
%% 輸出參數列表
%  MRT          最優組播樹(01鄰接矩陣表示)
%  EDGES        最優組播樹所有的邊
%  cost         最優組播樹的費用
%%

%% 第一步:變量初始化
N=size(C,1);%網絡節點個數為N
P=length(E);%目的節點個數為M
MRT=zeros(N,N);
cost=inf;
ROUTES=cell(P,K,M);%用細胞結構存儲到每一個目的節點的每一代的每一只螞蟻的爬行路線
DELAYS=inf*ones(P,K,M);%用三維數組存儲每代每個螞蟻爬行到各個目的節點的延時
COSTS=inf*ones(P,K,M);%用三維數組存儲每代每個螞蟻爬行到各個目的節點的費用
%% 第二步:啟動到P個目的節點的K輪螞蟻覓食活動,每輪派出M只螞蟻
for p=1:P
    Tau=ones(N,N);
    for k=1:K
        for m=1:M
%%        第三步:狀態初始化
            W=S;%當前節點初始化為起始點
            Path=S;%爬行路線初始化
            PD=0;%爬行路線延時初始化
            PC=0;%爬行路線費用初始化
            TABU=ones(1,N);%禁忌表初始化
            TABU(S)=0;%S已經在初始點了,因此要排除
            CC=C;%費用鄰接矩陣備份
            DD=D;%延時鄰接矩陣備份
%%        第四步:下一步可以前往的節點
            DW=DD(W,:);
            DW1=find(DW<inf);
            for j=1:length(DW1)
                if TABU(DW1(j))==0
                    DW(j)=inf;
                end
            end
            LJD=find(DW<inf);%可選節點集
            Len_LJD=length(LJD);%可選節點的個數
%%        覓食停止條件:螞蟻未遇到食物或者陷入死胡同
            while (W~=E(p))&&(Len_LJD>=1)
%%            第五步:轉輪賭法選擇下一步怎么走
                PP=zeros(1,Len_LJD);
                for i=1:Len_LJD
                    PP(i)=(Tau(W,LJD(i))^Alpha)*(C(W,LJD(i))^Beta)*(D(W,LJD(i))^Gamma);
                end
                PP=PP/(sum(PP));%建立概率分布
                Pcum=cumsum(PP);
                Select=find(Pcum>=rand);
                to_visit=LJD(Select(1));%下一步將要前往的節點
%%            第六步:狀態更新和記錄
                Path=[Path,to_visit];%路徑增加
                PD=PD+DD(W,to_visit);%路徑延時累計
                PC=PC+CC(W,to_visit);%路徑費用累計
                W=to_visit;%螞蟻移到下一個節點
                for kk=1:N
                    if TABU(kk)==0
                        CC(W,kk)=inf;
                        CC(kk,W)=inf;
                        DD(W,kk)=inf;
                        DD(kk,W)=inf;
                    end
                end
                TABU(W)=0;%已訪問過的節點從禁忌表中刪除
                DW=DD(W,:);
                DW1=find(DW<inf);
                for j=1:length(DW1)
                    if TABU(DW1(j))==0
                        DW(j)=inf;
                    end
                end
                LJD=find(DW<inf);%可選節點集
                Len_LJD=length(LJD);%可選節點的個數
%%
            end
%%         第七步:記下每一代每一只螞蟻的覓食路線和路線長度
            ROUTES{p,k,m}=Path;
            if Path(end)==E(p)&&PD<=Dmax
                DELAYS(p,k,m)=PD;
                COSTS(p,k,m)=PC;
            else
                DELAYS(p,k,m)=inf;
                COSTS(p,k,m)=inf;
            end
        end
%%     第八步:更新信息素
        Delta_Tau=zeros(N,N);%更新量初始化
        for m=1:M
            if COSTS(p,k,m)<inf&&DELAYS(p,k,m)<Dmax
                ROUT=ROUTES{p,k,m};
                TS=length(ROUT)-1;%跳數
                Cpkm=COSTS(p,k,m);
                for s=1:TS
                    x=ROUT(s);
                    y=ROUT(s+1);
                    Delta_Tau(x,y)=Delta_Tau(x,y)+Q/Cpkm;
                    Delta_Tau(y,x)=Delta_Tau(y,x)+Q/Cpkm;
                end
            end
        end
        Tau=(1-Rho).*Tau+Delta_Tau;%信息素揮發一部分,新增加一部分
    end
end

%% 第九步:整理輸出結果
MINCOSTS=NaN*ones(1,K);
allcost=zeros(1,0);
for k=1:K
    for m=1:M
        COSTkm=COSTS(:,k,m);
        DELAYkm=DELAYS(:,k,m);
        if sum(COSTkm)<inf&&sum(DELAYkm)<inf
            Tree=zeros(N,N);
            for p=1:P
                path=ROUTES{p,k,m};
                RLen=length(path);
                for i=1:(RLen-1)
                    Tree(path(i),path(i+1))=1;
                    Tree(path(i+1),path(i))=1;
                end
            end
            TC=Tree.*C;
            for ii=1:N
                for jj=1:N
                    if isnan(TC(ii,jj))
                        TC(ii,jj)=0;
                    end
                end
            end
            mincost=0.5*sum(sum(TC));
            if mincost<cost
                MINCOSTS(1,k)=mincost;
                MRT=Tree;
                cost=mincost;
            end
            allcost=[allcost,cost];
        end
    end
end
MM=triu(MRT);
T1=find(MM==1);
T2=ceil(T1/N);
T3=mod(T1,N);
EDGES=[T3,T2];
%% 繪收斂曲線
figure(1)
COSTS2=zeros(M,K,P);
DELAYS2=zeros(M,K,P);
for p=1:P
    for k=1:K
        for m=1:M
            if COSTS(p,k,m)<inf
                COSTS2(m,k,p)=COSTS(p,k,m);
                DELAYS2(m,k,p)=DELAYS(p,k,m);
            end
        end
    end
end
LC1=zeros(1,K);
LC2=zeros(1,K);
for k=1:K
    costs=COSTS2(:,k,1);
    delays=DELAYS2(:,k,1);
    pos1=find(costs>0);
    pos2=find(delays>0);
    len1=length(pos1);
    len2=length(pos2);
    LC1(k)=sum(costs)/len1;
    LC2(k)=sum(delays)/len2;
end
plot(LC1,'ko-');
hold on
plot(LC2,'bs-');
legend('費用','延時')
title('路徑的費用延時變化情況')


figure(2)
plot(allcost,'b-')
title('組播樹費用收斂曲線')

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩午夜电影av| 国产曰批免费观看久久久| 精品亚洲成a人在线观看| 欧美成人一区二区三区在线观看| 麻豆精品在线看| 精品国产伦一区二区三区观看体验| 国产成人啪午夜精品网站男同| 成人免费在线视频观看| 色综合久久88色综合天天6| 亚洲国产精品久久一线不卡| 欧美一区二区三区啪啪| 成人av影视在线观看| 五月婷婷综合网| 国产精品美女www爽爽爽| 欧美色成人综合| 国产成人精品免费在线| 成人av资源站| 在线观看视频一区二区| 成人精品小蝌蚪| 国模套图日韩精品一区二区| 亚洲成人动漫一区| 亚洲视频香蕉人妖| 欧美激情在线一区二区三区| 在线成人av网站| 99久久免费视频.com| 国产一区二区伦理| 暴力调教一区二区三区| 成人免费视频一区二区| 日本道精品一区二区三区| 99综合电影在线视频| 91福利国产精品| 精品国产乱码久久久久久浪潮| 精品久久久影院| 亚洲人成人一区二区在线观看| 精品电影一区二区三区| 亚洲精品五月天| 中文字幕亚洲一区二区va在线| 亚洲精品视频自拍| 另类综合日韩欧美亚洲| 美女性感视频久久| 色综合久久中文字幕| 日韩欧美精品三级| 久久亚洲精品小早川怜子| 欧美岛国在线观看| 一区二区三区加勒比av| 亚洲图片欧美色图| 懂色av一区二区夜夜嗨| 成人免费高清在线观看| 欧美一区日韩一区| 亚洲人成小说网站色在线| 精品一区二区三区免费毛片爱| 色综合久久久久久久久| 久久婷婷色综合| 日韩高清中文字幕一区| 看国产成人h片视频| 色又黄又爽网站www久久| 久久久精品国产免费观看同学| 久久久亚洲精品石原莉奈| 亚洲图片一区二区| 色天使色偷偷av一区二区| 久久久不卡网国产精品一区| 青青草一区二区三区| 国产91综合网| 欧美激情一区二区三区全黄| 午夜精品福利久久久| 色偷偷久久一区二区三区| 中文字幕免费观看一区| 国产成人免费视频网站高清观看视频| 91麻豆精品国产自产在线观看一区 | 激情小说欧美图片| 欧美精品久久一区二区三区| 亚洲精品水蜜桃| 91免费观看国产| 欧美一区二区久久| 日韩av一区二区在线影视| 欧美综合色免费| 亚洲精品欧美激情| 色综合久久中文综合久久牛| 日韩美女视频19| 一卡二卡欧美日韩| 国模套图日韩精品一区二区 | 亚洲欧洲精品成人久久奇米网| 国产精品综合一区二区三区| 国产高清无密码一区二区三区| 精品国产一二三| 国产成人精品一区二区三区四区 | 成人国产精品视频| 国产精品无人区| 9l国产精品久久久久麻豆| 综合色天天鬼久久鬼色| 日本道精品一区二区三区| 午夜a成v人精品| 欧美大片日本大片免费观看| 韩国精品主播一区二区在线观看 | 中文字幕综合网| 欧美在线观看视频一区二区三区| 亚洲成人动漫精品| 欧美成人免费网站| 成人黄色在线网站| 一区二区三区在线影院| 欧美久久免费观看| 国产在线播精品第三| 中文字幕一区av| 欧美军同video69gay| 久久99精品国产麻豆婷婷| 久久精品视频一区| 日本中文一区二区三区| 欧美xxxxxxxxx| 92精品国产成人观看免费| 亚洲18色成人| 中文欧美字幕免费| 欧美男人的天堂一二区| 亚洲精品一二三区| 精品久久久久久久久久久久久久久| 国产精品18久久久久久久网站| 亚洲精品视频免费观看| 日韩精品在线看片z| 91美女蜜桃在线| 激情久久五月天| 亚洲午夜精品17c| 国产精品麻豆99久久久久久| 欧美二区乱c少妇| av成人免费在线观看| 麻豆国产一区二区| 亚洲aaa精品| 中文字幕亚洲视频| 久久精品这里都是精品| 欧美猛男gaygay网站| kk眼镜猥琐国模调教系列一区二区| 老司机免费视频一区二区三区| 亚洲男人天堂一区| 欧美韩国日本综合| 久久久久久久免费视频了| 制服丝袜日韩国产| 欧洲一区二区三区免费视频| 成人综合婷婷国产精品久久| 免费人成网站在线观看欧美高清| 一区二区视频在线| 综合中文字幕亚洲| 国产精品色眯眯| 国产色91在线| 久久久久久久电影| 精品人伦一区二区色婷婷| 91精品国产综合久久久久久 | 国产午夜精品在线观看| 在线播放亚洲一区| 91.麻豆视频| 欧美午夜寂寞影院| 精久久久久久久久久久| 日本vs亚洲vs韩国一区三区二区 | 欧美少妇一区二区| 欧美在线制服丝袜| 欧美亚洲动漫精品| 欧美日本国产一区| 欧美日韩中文字幕一区二区| 色呦呦国产精品| 日本福利一区二区| 欧美猛男男办公室激情| 欧美精品三级在线观看| 欧美日韩另类一区| 91精品国产欧美一区二区成人| 欧美亚洲国产一区二区三区va| 欧美在线观看视频一区二区| 在线观看av一区二区| 欧美高清视频www夜色资源网| 欧美人伦禁忌dvd放荡欲情| 欧美视频一区二区| 91精品国产色综合久久ai换脸| 欧美日韩美少妇| 日韩免费高清电影| 国产日韩精品一区| 欧美一区二区日韩一区二区| 欧美一区二区三区性视频| wwwwxxxxx欧美| 国产精品水嫩水嫩| 亚洲美女在线一区| 蜜桃在线一区二区三区| 国产一区视频网站| 色综合天天视频在线观看| 欧美日韩午夜在线视频| 精品国内片67194| 亚洲欧洲日韩在线| 日本中文字幕不卡| 99国产欧美另类久久久精品| 欧美日韩高清一区二区不卡| 久久人人97超碰com| 亚洲另类一区二区| 精品一区中文字幕| 一本一道久久a久久精品 | 久久蜜桃一区二区| 亚洲欧美日韩国产手机在线 | 亚洲乱码国产乱码精品精98午夜 | 中文字幕一区二区三区四区不卡| 亚洲成人先锋电影| 成人免费观看视频| 欧美一二三区精品| 夜夜亚洲天天久久| 国产成人在线色| 91精品欧美久久久久久动漫| 亚洲色图在线看|