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

  • 大小: 3KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2024-01-27
  • 語言: 其他
  • 標簽: 萬有引力??

資源簡介

萬有引力測試函數程序,對初學者應該能夠有多幫助,有需要的同學拿去。

資源截圖

代碼片段和文件信息

function?[FbestLbestBestChartMeanChart]=GSA(F_indexNmax_itElitistCheckmin_flagRpower)
%V:速度?a:加速度?M:質量.Ma=Mp=Mi=M;?dim:待求解未知量維數?N:智能粒子個位數
%X:種群個體位置.dim-by-N?matrix.?R:種群之間的距離
%[low-up]:取值范圍?%Rnorm:范數?%Rpower:Power?of?R
Rnorm=2;%2階范數,即歐氏距離
%獲取待求解目標方程的未知數個數個體及取值范圍
[lowupdim]=test_functions_range(F_index);
%隨機的初始化個體
X=initialization(dimNuplow);
%適應度值數組初始化
BestChart=[];
MeanChart=[];
V=rand(Ndim);%速度初始化
%V=zeros(Ndim);%速度初始化
for?iteration=1:max_it%迭代開始
????%iteration
????%檢查x個體是否在取值范圍內
????X=space_bound(Xuplow);
????%計算適應度值
????fitness=evaluateF(XF_index);
????if?min_flag==1
????????[best?best_X]=min(fitness);%minimization.
????else
?????????[best?best_X]=max(fitness);%maximization.
????end
????if?iteration==1
????????Fbest=best;Lbest=X(best_X:);
????end
????if?min_flag==1
????????if?best????????????Fbest=best;Lbest=X(best_X:);
????????end
????else
????????if?best>Fbest%極大值求解
?????????????Fbest=best;Lbest=X(best_X:);
????????end
????end
????BestChart=[BestChart?Fbest];%最優適應度值
????MeanChart=[MeanChart?mean(fitness)];%平均適應度值
????%M計算
????[M]=massCalculation(fitnessmin_flag);
????%萬有引力常數計算
????G=Gconstant(iterationmax_it);
????%加速度a計算
????a=Gfield(MXGRnormRpowerElitistCheckiterationmax_it);
????%個體更新
????[XV]=move(XaV);
end%迭代終止
%3.獲取待求解目標方程的未知數個數及取值范圍
function?[downupdim]=test_functions_range(F_index)
dim=30;
if?F_index==1
????down=-100;up=100;
end
if?F_index==2
????down=-10;up=10;
end
if?F_index==3
????down=-10;up=10;
end
if?F_index==4
????down=-100;up=100;
end
if?F_index==5
????down=-30;up=30;
end
if?F_index==6
????down=-1.28;up=1.28;
end
if?F_index==7
????down=-5.12;up=5.12;
end
%4.隨機的初始化個體
function?[X]=initialization(dimNupdown)
%dim:未知數個數,粒子個數
%N:種群數
%up:取值上限
%down:取值下限
%X:初始化的個體值
if?size(up2)==1
????X=rand(Ndim).*(up-down)+down;
end
if?size(up2)>1
????for?i=1:dim
????????high=up(i);low=down(i);
????????X(:i)=rand(N1).*(high-low)+low;
????end
end

function?X=space_bound(X0uplow)
%約定個體在相應的up和down取值范圍內
[Ndim]=size(X0);
X=zeros(Nsize(X02));
for?i=1:N
????Tp=X0(i:)>up;Tm=X0(i:)????X(i:)=(X0(i:).*(~(Tp+Tm)))+((rand(1dim).*(up-low)+low).*(Tp+Tm));
end

function?fitness=evaluateF(XF_index)
%計算適應度值
[Ndim]=size(X);
fitness=zeros(N1);
for?i=1:N%L第i個種群,包含一組未知量解得個體
????L=X(i:);
????%第i個種群的適應度計算
????fitness(i)=test_functions(LF_indexdim);
end

%相應的目標函數如下
%適應度函數
function?fit=test_functions(LF_index~)
%不同的適應度函數
if?F_index==1
????fit=sum(L.^2);
end

if?F_index==2
????fit=sum(abs(L))+prod(abs(L));
end
????if?F_index==3
????????fit=0;
????????for?i=1:30
????????????fit=fit+sum(L(1:i))^2;
????????end
????end
if?F_index==4
????fit=max(abs(L));
end
if?F_index==5
???fit=sum(100*(L(2:30)-(L(1:30-1).^2)).^2+(L(1:30-1)-1).^2);
end
if?F_index==6
????fit=sum([1:30].*(L.^4))+rand;
end
if?F_index==7
????fit=sum(L.^2-10*cos(2*pi.*L)+10);
end

%萬有引力中質量M的計算程序
fu

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????4738??2017-11-02?11:28??測試函數程序\GSA.m
?????文件?????????611??2017-11-02?11:08??測試函數程序\wanyouyinli1.m
?????目錄???????????0??2017-11-02?13:15??測試函數程序\

評論

共有 條評論