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

  • 大小: 3KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-16
  • 語言: Matlab
  • 標(biāo)簽: DE??MATLAB??

資源簡介

DE算法MATLAB代碼,運(yùn)行速度快,效果好,代碼簡單易懂

資源截圖

代碼片段和文件信息

%
%?Copyright?(c)?2015?Yarpiz?(www.yarpiz.com)
%?All?rights?reserved.?Please?read?the?“l(fā)icense.txt“?for?license?terms.
%
%?Project?Code:?YPEA107
%?Project?title:?Implementation?of?Differential?Evolution?(DE)?in?MATLAB
%?Publisher:?Yarpiz?(www.yarpiz.com)
%?
%?Developer:?S.?Mostapha?Kalami?Heris?(Member?of?Yarpiz?Team)
%?
%?Contact?Info:?sm.kalami@gmail.com?info@yarpiz.com
%

clc;
clear;
close?all;

%%?Problem?Definition

CostFunction=@(x)?Sphere(x);????%?Cost?Function

nVar=20;????????????%?Number?of?Decision?Variables

VarSize=[1?nVar];???%?Decision?Variables?Matrix?Size

VarMin=-5;??????????%?Lower?Bound?of?Decision?Variables
VarMax=?5;??????????%?Upper?Bound?of?Decision?Variables

%%?DE?Parameters

MaxIt=1000;??????%?Maximum?Number?of?Iterations

nPop=50;????????%?Population?Size

beta_min=0.2;???%?Lower?Bound?of?Scaling?Factor
beta_max=0.8;???%?Upper?Bound?of?Scaling?Factor

pCR=0.2;????????%?Crossover?Probability

%%?Initialization

empty_individual.Position=[];
empty_individual.Cost=[];

BestSol.Cost=inf;

pop=repmat(empty_individualnPop1);

for?i=1:nPop

????pop(i).Position=unifrnd(VarMinVarMaxVarSize);
????
????pop(i).Cost=CostFunction(pop(i).Position);
????
????if?pop(i).Cost????????BestSol=pop(i);
????end
????
end

BestCost=zeros(MaxIt1);

%%?DE?Main?Loop

for?it=1:MaxIt
????
????for?i=1:nPop
????????
????????x=pop(i).Position;
????????
????????A=randperm(nPop);
????????
????????A(A==i)=[];
????????
????????a=A(1);
????????b=A(2);
????????c=A(3);
????????
????????%?Mutation
????????%beta=unifrnd(beta_minbeta_max);
????????beta=unifrnd(beta_minbeta_maxVarSize);
????????y=pop(a).Position+beta.*(pop(b).Position-pop(c).Position);
????????y?=?max(y?VarMin);
y?=?min(y?VarMax);

????????%?Crossover
????????z=zeros(size(x));
????????j0=randi([1?numel(x)]);
????????for?j=1:numel(x)
????????????if?j==j0?||?rand<=pCR
????????????????z(j)=y(j);
????????????else
????????????????z(j)=x(j);
????????????end
????????end
????????
????????NewSol.Position=z;
????????NewSol.Cost=CostFunction(NewSol.Position);
????????
????????if?NewSol.Cost????????????pop(i)=NewSol;
????????????
????????????if?pop(i).Cost???????????????BestSol=pop(i);
????????????end
????????end
????????
????end
????
????%?Update?Best?Cost
????BestCost(it)=BestSol.Cost;
????
????%?Show?Iteration?Information
????disp([‘Iteration?‘?num2str(it)?‘:?Best?Cost?=?‘?num2str(BestCost(it))]);
????
end

%%?Show?Results

figure;
%plot(BestCost);
semilogy(BestCost?‘LineWidth‘?2);
xlabel(‘Iteration‘);
ylabel(‘Best?Cost‘);
grid?on;

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-15?16:15??Differential?Evolution\
?????文件?????????121??2015-09-09?08:24??Differential?Evolution\www.yarpiz.com.url
?????文件????????2702??2015-09-09?08:24??Differential?Evolution\de.m
?????文件?????????398??2015-09-09?08:24??Differential?Evolution\main.m
?????文件?????????440??2015-09-09?08:24??Differential?Evolution\Sphere.m
?????文件????????1350??2015-09-09?08:24??Differential?Evolution\license.txt

評論

共有 條評論