91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-01
  • 語言: Matlab
  • 標簽: BBO??DE,Matlab??

資源簡介

一種比較新的生物地理學算法(BBO)以及BBO算法和差分進化算法相結合的matlab程序,程序優化較好,比較小,運行速度快。

資源截圖

代碼片段和文件信息

%BBO算法,無改進,整理時間:2011.06.10

clear?all
close?all

G?=?200;?????????????????????????%?進化代數
Size?=?50;???????????????????????%?種群規模
pmodify?=?1;?????????????????????%?遷移概率
NumVar?=?35;?????????????????????%?參數個數
Keep?=?3;????????????????????????%?精因個數
pmutate?=?0.05;??????????????????%?變異概率
lambdaLower?=?0.0;???????????????%?對于每個基因的最小遷入率
lambdaUpper?=?1;?????????????????%?對于每個基因的最大遷入率
dt?=?1;??????????????????????????%?步長
I?=?1;???????????????????????????%?對于每個棲息地的最大遷入率
e?=?1;???????????????????????????%?對于每個棲息地的最大遷出率

%確定每個參數的取值范圍
for?i=1:1:NumVar
????MinX(i)=-32;
????MaxX(i)=32;
end
%初始化種群
for?i=1:1:NumVar
????E=MinX(i)+(MaxX(i)-MinX(i))*rand(Sizei);
end
%求適應度值
for?i=1:1:Size
????Population(i).chrom=E(i:);
????p=Population(i).chrom;
????Population(i).cost=Ackley(p);
end
%排序
Population?=?PopSort(Population);
%初始化種群概率
for?j?=?1?:?Size
????Prob(j)?=?1?/?Size;?
end

%進化開始
for?kg?=?1:1:G
????time(kg)?=?kg?;??
????%保存最優個體
????for?j?=?1?:?Keep
????????chromKeep(j:)?=?Population(j).chrom;
????????costKeep(j)?=?Population(j).cost;
????end

????for?i?=?1?:?length(Population)
????????%求種群數量
????????if?Population(i).cost?????????????Population(i).SpeciesCount?=?Size?-?i;
????????else
????????????Population(i).SpeciesCount?=?0;
????????end
????????%計算每個棲息地的移入移出率
????????%余弦模型
????????lambda(i)?=?0.5?*?I?*?(cos(pi*Population(i).SpeciesCount?/?Size)+1);
????????mu(i)?=?0.5?*?e?*?(-cos(pi*Population(i).SpeciesCount?/?Size)+1);
????????%二次模型
????%?????lambda(i)?=??I?*?(Population(i).SpeciesCount?/?Size?-1)^2;
????%?????mu(i)?=?e?*?(Population(i).SpeciesCount?/?Size?)^2;
????????%指數模型
????%?????lambda(i)?=?I?*?exp(-Population(i).SpeciesCount?/?Size);
????%?????mu(i)?=?e?*?exp(Population(i).SpeciesCount?/?Size?-?1)?;
????????%線性模型
%?????????lambda(i)?=?I?*?(1?-?Population(i).SpeciesCount?/?Size);
%?????????mu(i)?=?e?*?Population(i).SpeciesCount?/?Size;
????end
????lambdaMin?=?min(lambda);
????lambdaMax?=?max(lambda);
????for?k?=?1:1?:?Size
????????if?rand?>?pmodify
????????????continue;
????????end
????????%標準化移入率
????????lambdaScale?=?lambdaLower?+?(lambdaUpper?-?lambdaLower)?*?(lambda(k)?-?lambdaMin)?/?(lambdaMax?-?lambdaMin);
????????%遷移操作,概率的輸入新的信息到棲息地i
????????for?j?=?1?:?NumVar
????????????if?rand?????????????????RandomNum?=?rand?*?sum(mu);
????????????????Select?=?mu(1);
????????????????SelectIndex?=?1;
????????????????while?(RandomNum?>?Select)?&?(SelectIndex?????????????????????SelectIndex?=?SelectIndex?+?1;
????????????????????Select?=?Select?+?mu(SelectIndex);
????????????????end
????????????????Island(kj)?=?Population(SelectIndex).chrom(j);
????????????else
????????????????Island(kj)?=?Population(k).chrom(j);
????????????end
????????end
????end
?for?j?=?1?:?1?:Size
?????????%余弦模型
????????lambdaMinus?=?0.5?*?I?*?(cos(pi*(Population(j).SpeciesCount-1)?/?Size)+1);
????????muPlus?=?0.5?*?e?*?(-cos(pi*(Population(j).Species

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-08-21?16:02??BBO\
?????文件????????5686??2013-08-21?10:49??BBO\BBO.asv
?????文件????????5796??2013-08-21?16:24??BBO\BBO.m
?????文件????????5251??2013-08-21?10:49??BBO\BBODE.m
?????文件????????4299??2013-08-21?10:49??BBO\BBODE_2.m
?????文件????????5765??2013-08-21?10:49??BBO\BBO_1.asv
?????文件????????5822??2013-08-21?10:49??BBO\BBO_1.m
?????文件?????????530??2013-08-21?10:49??BBO\PopSort.m

評論

共有 條評論