问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

哪位大神,有没有人工鱼群算法的仿真程序,matlab的,不胜感激!!!!

发布网友 发布时间:2023-06-23 13:08

我来回答

3个回答

热心网友 时间:2023-10-13 03:15

clc
clear all
close all
tic
figure(1);hold on
ezplot('x*sin(10*pi*x)+2',[-1,2]);
%% 参数设置
fishnum=50; %生成50只人工鱼
MAXGEN=50; %最多迭代次数
try_number=100;%最多试探次数
visual=1; %感知距离
delta=0.618; %拥挤度因子
step=0.1; %步长
%% 初始化鱼群
lb_ub=[-1,2,1];
X=AF_init(fishnum,lb_ub);
LBUB=[];
for i=1:size(lb_ub,1)
LBUB=[LBUB;repmat(lb_ub(i,1:2),lb_ub(i,3),1)];
end
gen=1;
BestY=-1*ones(1,MAXGEN); %每步中最优的函数值
BestX=-1*ones(1,MAXGEN); %每步中最优的自变量
besty=-100; %最优函数值
Y=AF_foodconsistence(X);
while gen<=MAXGEN
fprintf(1,'%d\n',gen)
for i=1:fishnum
%% 聚群行为
[Xi1,Yi1]=AF_swarm(X,i,visual,step,delta,try_number,LBUB,Y);
%% 追尾行为
[Xi2,Yi2]=AF_follow(X,i,visual,step,delta,try_number,LBUB,Y);
if Yi1>Yi2
X(:,i)=Xi1;
Y(1,i)=Yi1;
else
X(:,i)=Xi2;
Y(1,i)=Yi2;
end
end
[Ymax,index]=max(Y);
figure(1);
plot(X(1,index),Ymax,'.','color',[gen/MAXGEN,0,0])
if Ymax>besty
besty=Ymax;
bestx=X(:,index);
BestY(gen)=Ymax;
[BestX(:,gen)]=X(:,index);
else
BestY(gen)=BestY(gen-1);
[BestX(:,gen)]=BestX(:,gen-1);
end
gen=gen+1;
end
plot(bestx(1),besty,'ro','MarkerSize',100)
xlabel('x')
ylabel('y')
title('鱼群算法迭代过程中最优坐标移动')

%% 优化过程图
figure
plot(1:MAXGEN,BestY)
xlabel('迭代次数')
ylabel('优化值')
title('鱼群算法迭代过程')
disp(['最优解X:',num2str(bestx,'%1.5f')])
disp(['最优解Y:',num2str(besty,'%1.5f')])
toc追问没有子函数 不能运行啊

热心网友 时间:2023-10-13 03:16

tic
figure(1);hold on
ezplot('x*sin(10*pi*x)+2',[-1,2]);
%% 参数设置
fishnum=50; %生成50只人工鱼
MAXGEN=50; %最多迭代次数
try_number=100;%最多试探次数
visual=1; %感知距离
delta=0.618; %拥挤度因子
step=0.1; %步长
%% 初始化鱼群
lb_ub=[-1,2,1];
X=AF_init(fishnum,lb_ub);
LBUB=[];
for i=1:size(lb_ub,1)
LBUB=[LBUB;repmat(lb_ub(i,1:2),lb_ub(i,3),1)];
end
gen=1;
BestY=-1*ones(1,MAXGEN); %每步中最优的函数值
BestX=-1*ones(1,MAXGEN); %每步中最优的自变量
besty=-100; %最优函数值
Y=AF_foodconsistence(X);
while gen<=MAXGEN
fprintf(1,'%d\n',gen)
for i=1:fishnum
%% 聚群行为
[Xi1,Yi1]=AF_swarm(X,i,visual,step,delta,try_number,LBUB,Y);
%% 追尾行为
[Xi2,Yi2]=AF_follow(X,i,visual,step,delta,try_number,LBUB,Y);
if Yi1>Yi2
X(:,i)=Xi1;
Y(1,i)=Yi1;
else
X(:,i)=Xi2;
Y(1,i)=Yi2;
end
end
[Ymax,index]=max(Y);
figure(1);
plot(X(1,index),Ymax,'.','color',[gen/MAXGEN,0,0])
if Ymax>besty
besty=Ymax;
bestx=X(:,index);
BestY(gen)=Ymax;
[BestX(:,gen)]=X(:,index);
else
BestY(gen)=BestY(gen-1);
[BestX(:,gen)]=BestX(:,gen-1);
end
gen=gen+1;
end
plot(bestx(1),besty,'ro','MarkerSize',100)
xlabel('x')
ylabel('y')
title('鱼群算法迭代过程中最优坐标移动')

%% 优化过程图
figure
plot(1:MAXGEN,BestY)
xlabel('迭代次数')
ylabel('优化值')
title('鱼群算法迭代过程')
disp(['最优解X:',num2str(bestx,'%1.5f')])
disp(['最优解Y:',num2str(besty,'%1.5f')])
toc

热心网友 时间:2023-10-13 03:16

我也纠结
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
豆瓣酱放多了怎么补救 鑫创sssbd量产工具 为了了解某校1500名学生的体质状况,随机调查了这个学校内一定数量学生... 564÷85的竖式如何列? 上海房屋过户 要准备什么资料 个人卖房要提供哪些资料 房屋交易资料需要哪些 房子买卖要哪些资料 房产交易需要什么资料 ...让重锤自由下落,打出的一条纸带如图所示,图中 哪位动漫美女是你心中的颜值天花板? 人工鱼群算法的特点 高从堦的学术兼职 大家觉得哪些女性角色颜值很高? 用人工鱼群算法求函数最小值 上海市普陀区金沙商务广场1999号在58上招聘摄影师助理是不是真的? 患脂肪肝病危险吗? 你好: 我家的房子盖的比较早,现在的房子都高上一米了,大门也高很多,有的邻居告诉我们说风水不好, 韩信点兵的意思(韩信点兵比喻什么) 韩信临死前是否会后悔当初他弃楚投汉的选择呢? 阳宅爱众篇的图书目录 阳宅爱众篇和阳宅三要哪个好学 请问在网上预订往返机票,机场税和燃油费是往返分开加的吗?加两次? 阳宅爱众篇的作者简介 阳宅十书和阳宅爱众篇区别 在东航官网上预订从浦东到新加坡的往返机票,包含税费吗? 阳宅爱众怎么样?阳宅爱众篇大全 往返机票怎么算 上海男篮19号是谁 携程网上这个国际机票往返的,是不是9011元包含去北京转机,再去西雅图,再从西雅图飞北京,再飞昆明 清茶和菊花茶可以一块冲吗 有哪位大神知道人工鱼群算法鱼群的位置怎样初始化?有范围*吗? 张建中的投身海水淡化 人工鱼群算法 空军毛尖什么季节喝好 甲咪唑烟酸除草剂应用 甲咪唑烟酸影响下茬吗 甲咪唑烟酸对下茬作物影响,甲咪唑烟酸可以用于大豆田吗 甲咪唑烟酸能否用于果树除草? 百垄通(甲咪唑烟酸)用在花生上需要什么注意事项?对下茬有要求 甲咪唑烟酸对大豆有药害吗 精奎禾灵十乙羧氟草醚十甲咪唑烟酸三合一用后对花生幼苗有啥影响? 《我爱美人鱼》全集 求一部关于美人鱼的电视剧或电影的名字 峨眉远凝黛的上一句是什么 多部作品担任女一却依旧难火,被网友质疑是资源咖,李一桐是如何回应的? 凝字取名女孩有寓意属狗最搭的名字有哪些? 多么把光照亮什么歌来着 抖音上面防脱发的方法有效吗? 行云凝黛色的下一句行云凝黛色的下一句是什么