% Developed in MATLAB R2017b
% 猎食者算法
function [TargetScore,Target,Convergence_curve]=HPO(nPop,MaxIt,lb,ub,dim,CostFunction)
%% HPO Parameters
% MaxIt = Maximum Nomber of Iterations
% nPop = Population Size
Convergence_curve = zeros(1,MaxIt);
% Constriction Coefeicient
B = 0.1;
%% Initialization
HPpos=rand(nPop,dim).*(ub-lb)+lb;
% for i=1:nPop
% HPposFitness(i)=inf;
% end
% Evaluate
for i=1:size(HPpos,1)
HPposFitness(i)=CostFunction(HPpos(i,:));
end
% NFE = nPop;
[~,indx] = min(HPposFitness);
%
Target = HPpos(indx,:); % Target HPO
TargetScore =HPposFitness(indx);
Convergence_curve(1)=TargetScore;
%nfe = zeros(1,MaxIt);
%% HPO Main Loop
for it = 2:MaxIt
c = 1 - it*((0.98)/MaxIt); % Update C Parameter
kbest=round(nPop*c); % Update kbest
for i = 1:nPop
r1=rand(1,dim)<c;
r2=rand;
r3=rand(1,dim);
idx=(r1==0);
z=r2.*idx+r3.*~idx;
% r11=rand(1,dim)<c;
% r22=rand;
% r33=rand(1,dim);
% idx=(r11==0);
% z2=r22.*idx+r33.*~idx;
if rand<B
xi=mean(HPpos);
dist = pdist2(xi,HPpos);
[~,idxsortdist]=sort(dist);
SI=HPpos(idxsortdist(kbest),:);
HPpos(i,:) =HPpos(i,:)+0.5*((2*(c)*z.*SI-HPpos(i,:))+(2*(1-c)*z.*xi-HPpos(i,:)));
else
for j=1:dim
rr=-1+2*z(j);
HPpos(i,j)= 2*z(j)*cos(2*pi*rr)*(Target(j)-HPpos(i,j))+Target(j);
end
end
HPpos(i,:) = min(max(HPpos(i,:),lb),ub);
% Evaluation
HPposFitness(i) = CostFunction(HPpos(i,:));
% Update Target
if HPposFitness(i)<TargetScore
Target = HPpos(i,:);
TargetScore = HPposFitness(i);
end
end
Convergence_curve(it)=TargetScore;
end
end
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![mp4](https://img-home.csdnimg.cn/images/20210720083504.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
共 4 条
- 1
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/1e529c6af006432cb55c280e71efde36_weixin_63199521.jpg!1)
昨日与你1
- 粉丝: 253
- 资源: 220
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)