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

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

?? gjpso.txt

?? 蟻群算法的簡要介紹和各種蟻群算法的matlab標準程序及改進的算法。
?? TXT
字號:
帶交叉因子的粒子群優化算法matlab源程序 
大明 發表于 2006-8-26 17:04:00 


      程序源代碼:其中PSOGA.m文件,也就是主程序如下

%-----------------------------------------------
%------名稱:帶交叉因子的改進PSO算法
%------功能:求解多維無約束優化問題
%------特點:收斂性強,還可以加入變異算子
%------作者:孫明杰 <dreamsun2001@126.com>
%------單位:中國礦業大學計算數學碩2005
%------日期:2006年8月26日
%-----------------------------------------------

%格式標準化
clear all;
clc;
format long;
%初始化各個因子
c1=1.4962;    %學習因子c1
c2=1.4962;    %學習因子c2
w=0.7298;     %慣性權重w
N=20;         %粒子群規模
D=6;          %搜索空間維數(本程序適合3維及以上,不能求解1,2維)
eps=10^(-6);  %滿足條件限制的誤差(在不知道最小值時候不用設置)
MaxDT=500;    %粒子群繁殖的代數

%初始化粒子的速度和位置,數據結構用矩陣A表示
for i=1:N
    for j=1:2*D
        A(i,j)=rand;
    end
end
for i=1:N
    for j=2*D+1:3*D
        A(i,j)=A(i,j-2*D);
    end
end
%計算各個粒子的適應度
for i=1:N
    A(i,3*D+1)=fitness(A(i,1:D),D);
end
%對粒子的適應度進行排序
B=sortrows(A,3*D+1);
%排序后適應度低的前面一半粒子直接進入下一代
NextGeneration=zeros(N,3*D+1);
for i=1:N/2
    for j=1:3*D+1
        NextGeneration(i,j)=B(i,j);
    end
end
%后一半粒子進行遺傳選擇和交叉操作
for i=1:N/2
    for j=1:3*D+1
        Cross(i,j)=B(i+N/2,j);
    end
end
%產生一個隨機的交叉位置
for i=1:N/4
    Anumber=randperm(D-1);
    if Anumber(1)~=1
        position=Anumber(1);
    else
        position=Anumber(2);
    end
    %交叉進行
    for j=position:D-1
        temp=Cross(i,j);
        Cross(i,j)=Cross(N/2-i+1,j);
        Cross(N/2-i+1,j)=temp;
    end
end
%交叉結束,進行更新
for i=1:N/2
    Cross(i,3*D+1)=fitness(Cross(i,1:D),D);
    if Cross(i,3*D+1)<B(i+N/2,3*D+1)
        for j=2*D+1:3*D
            Cross(i,j)=Cross(i,j-2*D);
        end
    else
        for j=2*D+1:3*D
            Cross(i,j)=B(i,j);
        end
    end
end
%下面選擇最好的粒子N/2個進入下一代
Pool=zeros(N,3*D+1);
for i=1:N/2
    for j=1:3*D+1
        Pool(i,j)=B(i+N/2,j);
    end
end
for i=1+N/2:N
    for j=1:3*D+1
        Pool(i,j)=Cross(i-N/2,j);
    end
end
%POOLX表示排序后的粒子選擇池
PoolX=sortrows(Pool,3*D+1);
for i=1+N/2:N
    for j=1:3*D+1
        NextGeneration(i,j)=PoolX(i-N/2,j);
    end
end
Pbest=NextGeneration(i,2*D+1:3*D);
for i=2:N
    if NextGeneration(i,3*D+1)<fitness(Pbest,D)
        Pbest=NextGeneration(i,2*D+1:3*D);
    end
end
%根據粒子群公式進行迭代(Stander PSO Step)
%速度更新
for i=1:N
    for j=D+1:2*D
        A(i,j)=w*NextGeneration(i,j)+c1*rand*(NextGeneration(i,j+D)-NextGeneration(i,j-D))+c2*rand*(Pbest(j-D)-NextGeneration(i,j-D));
    end
end
%位置更新
for i=1:N
    for j=1:D
        A(i,j)=NextGeneration(i,j)+A(i,j+D);
    end
    A(i,3*D+1)=fitness(A(i,1:D),D);
    if A(i,3*D+1)<NextGeneration(i,3*D+1)
        for j=2*D+1:3*D
            A(i,j)=A(i,j-2*D);
        end
    else
        for j=2*D+1:3*D
            A(i,j)=NextGeneration(i,j-2*D);
        end
    end
end
%下面進入主要循環,循環到最大次數得到最優解和最小值
%DDTime=1;
for time=1:MaxDT
    B=sortrows(A,3*D+1);
    NextGeneration=zeros(N,3*D+1);
    for i=1:N/2
        for j=1:3*D+1
            NextGeneration(i,j)=B(i,j);
        end
    end
    %遺傳選擇交叉
    for i=1:N/2
        for j=1:3*D+1
            Cross(i,j)=B(i+N/2,j);
        end
    end

    for i=1:N/4
        Anumber=randperm(D-1);
        if Anumber(1)~=1
            position=Anumber(1);
        else
            position=Anumber(2);
        end
        
        for j=position:D-1
            temp=Cross(i,j);
            Cross(i,j)=Cross(N/2-i+1,j);
            Cross(N/2-i+1,j)=temp;
        end
    end
    %交叉結束,進行更新
    for i=1:N/2
        Cross(i,3*D+1)=fitness(Cross(i,1:D),D);
        if Cross(i,3*D+1)<B(i+N/2,3*D+1)
            for j=2*D+1:3*D
                Cross(i,j)=Cross(i,j-2*D);
            end
        else
            for j=2*D+1:3*D
                Cross(i,j)=B(i,j);
            end
        end
    end
    %下面選擇最好的粒子N/2個進入下一代
    Pool=zeros(N,3*D+1);
    for i=1:N/2
        for j=1:3*D+1
            Pool(i,j)=B(i+N/2,j);
        end
    end
    for i=1+N/2:N
        for j=1:3*D+1
            Pool(i,j)=Cross(i-N/2,j);
        end
    end
    
    PoolX=sortrows(Pool,3*D+1);
    for i=1+N/2:N
        for j=1:3*D+1
            NextGeneration(i,j)=PoolX(i-N/2,j);
        end
    end
    Pbest=NextGeneration(i,2*D+1:3*D);
    for i=2:N
        if NextGeneration(i,3*D+1)<fitness(Pbest,D)
            Pbest=NextGeneration(i,2*D+1:3*D);
        end
    end
    %根據粒子群公式進行迭代
    for i=1:N
        for j=D+1:2*D
            A(i,j)=w*NextGeneration(i,j)+c1*rand*(NextGeneration(i,j+D)-NextGeneration(i,j-D))+c2*rand*(Pbest(j-D)-NextGeneration(i,j-D));
       end
    end
    
    for i=1:N
        for j=1:D
            A(i,j)=NextGeneration(i,j)+A(i,j+D);
        end
        A(i,3*D+1)=fitness(A(i,1:D),D);
        if A(i,3*D+1)<NextGeneration(i,3*D+1)
            for j=2*D+1:3*D
                A(i,j)=A(i,j-2*D);
            end
        else
            for j=2*D+1:3*D
                A(i,j)=NextGeneration(i,j-2*D);
            end
        end
    end
    Pg(time)=fitness(Pbest,D);
    %DDTime=DDTime+1;
    %if fitness(Pbest,D)<eps
        %break;
    %end
end
%算法結束,得到的結果顯示如下:
disp('****************************************************')
disp('最后得到的最優位置為:')
X=Pbest'
disp('得到的函數最小值為:')
Minimize=fitness(Pbest,D)
disp('****************************************************')
%繪制進化代數和適應度關系曲線圖
xx=linspace(1,MaxDT,MaxDT);
yy=Pg(xx);
plot(xx,yy,'b-')
hold on
grid on
title('帶交叉因子的粒子群優化算法進化代數與適應度值關系曲線圖')
legend('粒子適應度曲線走勢')
%------算法結束---DreamSun GL & HF-------------------------
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩中文久久| 国产一区二区三区免费看| 免费视频一区二区| 欧美色倩网站大全免费| 日韩小视频在线观看专区| 中文字幕欧美一| 久久99久久精品欧美| 精品污污网站免费看| 中文字幕一区在线观看| 国产在线视视频有精品| 欧美人动与zoxxxx乱| 亚洲一区二区三区中文字幕 | 精品一区二区三区久久| 欧洲中文字幕精品| 中国色在线观看另类| 精品制服美女久久| 7777精品久久久大香线蕉| 亚洲欧美另类小说| 91麻豆6部合集magnet| 国产婷婷一区二区| 国产专区综合网| 欧美tickling挠脚心丨vk| 日韩福利视频导航| 在线观看日韩电影| 亚洲影视在线播放| 一本大道av伊人久久综合| 国产精品不卡在线| 成人精品一区二区三区四区| 久久免费的精品国产v∧| 国产真实乱偷精品视频免| 精品国产乱码久久久久久久| 国产综合久久久久影院| 久久久久久久免费视频了| 国产99久久久国产精品潘金网站| 久久久综合九色合综国产精品| 精品一区中文字幕| 26uuu色噜噜精品一区二区| 久久不见久久见免费视频7| 欧美sm极限捆绑bd| 国产精品自拍av| 国产精品美女久久久久av爽李琼| av在线不卡电影| 亚洲一区二区欧美日韩| 欧美日韩精品一区二区三区| 日日摸夜夜添夜夜添亚洲女人| 欧美一级在线免费| 国产酒店精品激情| 亚洲免费在线电影| 在线91免费看| 国产一区二区三区蝌蚪| 国产精品妹子av| 欧美日韩一区视频| 免费观看日韩电影| 国产精品的网站| 在线一区二区三区做爰视频网站| 日韩不卡一区二区| 久久综合精品国产一区二区三区| www.成人在线| 日本视频中文字幕一区二区三区| 精品国产乱码久久久久久牛牛| 丁香网亚洲国际| 亚洲成av人片一区二区梦乃| 亚洲精品一区二区精华| 99精品偷自拍| 毛片不卡一区二区| 综合婷婷亚洲小说| 日韩精品专区在线| 在线欧美一区二区| 国产乱码字幕精品高清av | 久久久欧美精品sm网站| 96av麻豆蜜桃一区二区| 亚洲风情在线资源站| 久久综合av免费| 欧美主播一区二区三区美女| 黄网站免费久久| 亚洲一级片在线观看| 26uuu精品一区二区在线观看| 91污在线观看| 国产在线看一区| 午夜精品福利一区二区三区蜜桃| 国产日韩精品一区二区三区| 欧美日韩精品电影| 99国产精品国产精品久久| 蜜臀av性久久久久av蜜臀妖精| 综合久久久久久| 国产视频一区二区在线| 91精品免费在线观看| 色综合久久久久综合体| 国产成人亚洲精品青草天美 | 欧美精品一区二区高清在线观看| 色综合久久综合| 国产成人免费视频精品含羞草妖精| 亚洲成a人片在线观看中文| 日本一区二区成人在线| 久久婷婷国产综合国色天香| 911精品产国品一二三产区| 91理论电影在线观看| 成人黄色网址在线观看| 国产美女精品人人做人人爽| 秋霞av亚洲一区二区三| 亚洲成av人片www| 亚洲综合久久av| 亚洲综合激情小说| 一区二区三区小说| |精品福利一区二区三区| 国产欧美精品国产国产专区| 精品av久久707| 欧美大片日本大片免费观看| 日韩视频在线一区二区| 欧美一级在线观看| 日韩一区二区三区在线观看| 欧美一级高清片在线观看| 在线不卡中文字幕播放| 91精品国产综合久久国产大片| 欧美日韩免费视频| 欧美视频一区在线观看| 欧美久久久影院| 欧美一区二区大片| 欧美成人三级在线| 久久久久久久综合色一本| 国产亚洲精品资源在线26u| 国产亚洲一区二区在线观看| 国产精品你懂的在线| 亚洲欧美日韩一区二区三区在线观看| 亚洲欧美日韩小说| 五月激情综合网| 精彩视频一区二区| 成人黄色电影在线| 色拍拍在线精品视频8848| 欧美男男青年gay1069videost| 91精品在线观看入口| 国产三级三级三级精品8ⅰ区| 中文字幕精品—区二区四季| 亚洲蜜桃精久久久久久久| 日韩福利视频导航| 国产福利91精品一区二区三区| 99久久精品免费观看| 欧美日本在线播放| 日本一区二区三区dvd视频在线| 国产精品久久久久天堂| 亚洲综合av网| 国内一区二区视频| 91成人网在线| 精品国产髙清在线看国产毛片| 国产日产亚洲精品系列| 亚洲v日本v欧美v久久精品| 久久国产欧美日韩精品| 97精品视频在线观看自产线路二| 欧洲人成人精品| 欧美mv日韩mv国产网站| 亚洲色图.com| 久久国产精品区| 色狠狠色噜噜噜综合网| 精品久久久久一区二区国产| 亚洲人成人一区二区在线观看 | 欧美xxxx在线观看| 亚洲人妖av一区二区| 日韩激情一区二区| 99国产精品久久久久久久久久| 欧美丰满美乳xxx高潮www| 欧美国产一区在线| 六月丁香婷婷久久| 欧美在线不卡视频| 欧美国产精品专区| 毛片av一区二区| 日本韩国一区二区三区| 国产天堂亚洲国产碰碰| 日韩国产一区二| 91一区二区在线观看| 国产亚洲精品资源在线26u| 视频在线观看91| 日本高清无吗v一区| 国产精品久久久久久久裸模| 久久国产视频网| 欧美疯狂性受xxxxx喷水图片| 亚洲天堂2016| 成人免费视频网站在线观看| 久久一区二区视频| 蜜臀va亚洲va欧美va天堂| 欧美视频一区二区三区四区| 最近日韩中文字幕| zzijzzij亚洲日本少妇熟睡| 久久久久综合网| 国产综合久久久久久久久久久久| 制服丝袜中文字幕一区| 亚洲成人福利片| 欧美区视频在线观看| 亚洲午夜久久久| 色狠狠综合天天综合综合| 综合在线观看色| 一本到不卡精品视频在线观看| 国产精品免费观看视频| 成人精品国产免费网站| 国产免费成人在线视频| 国产东北露脸精品视频| 欧美激情一二三区| 不卡的av电影在线观看| 国产精品嫩草影院com| 99久久精品免费观看| 亚洲免费观看高清完整版在线观看|