资源简介
蚁群算法求函数最大值的程序
function [F]=F(x1,x2) %目标函数
F=-(x1.^2+2*x2.^2-0.3*cos(3*pi*x1)-0.4*cos(4*pi*x2)+0.7);
End?
代码片段和文件信息
function [F]=F(x1x2) %目标函数
F=-(x1.^2+2*x2.^2-0.3*cos(3*pi*x1)-0.4*cos(4*pi*x2)+0.7);
End?
function [maxxmaxymaxvalue]=antcolony%?蚁群算法求函数最大值的程序
ant=200;%蚂蚁数量
times=50;%蚂蚁移动次数
rou=0.8;%信息素挥发系数
p0=0.2;%转移概率常数
lower_1=-1;%设置搜索范围
upper_1=1;%
lower_2=-1;%
upper_2=1;%
for i=1:ant??
X(i1)=(lower_1+(upper_1-lower_1)*rand);%随机设置蚂蚁的初值位置
X(i2)=(lower_2+(upper_2-lower_2)*rand);
tau(i)=F(X(i1)X(i2));%第i只蚂蚁的信息量?end?%随机初始每只蚂蚁的位置
step=0.05;%网格划分单位
f=‘-(x.^2+2*y.^2-0.3*cos(3*pi*x)-0.4*cos(4*pi*y)+0.7)‘;
[xy]=meshgrid(lower_1:step:upper_1lower_2:step:upper_2);
z=eval(f);%eval函数,将字符串内的内容执行再赋给对象
figure(1);
mesh(xyz);%网格图?
hold on;
plot3(X(:1)X(:2)tau‘k*‘)%蚂蚁初始位置
hold on;
text(0.10.8-0.1‘蚂蚁的初始分部位置‘)
xlabel(‘x‘);
ylabel(‘y‘);
zlabel(‘f(xy)‘);
for t=1:times %第t次移动
lamda=1/t;?%步长系数,随移动次数增大而减少?
????[tau_best(t)bestindex]=max(tau);%第t次移动的最优值及其位置
for i=1:ant %第i只蚂蚁
p(ti)=(tau(bestindex)-tau(i))/tau(bestindex);%最优值与第i只蚂蚁的值的差比
%计算状态转移概率
end??
for?i=1:ant
if p(ti) temp1=X(i1)+(2*rand-1)*lamda;%移动
相关资源
- 用蚁群算法求解TSP问题的matlab程序
- 蚁群算法论文+源代码
- matlab最速下降法与牛顿法结合求解函
- 针对栅格路径规划的蚁群算法MATLAB
- 蚁群算法实现三维路径规划Matlab源码
- matlab蚁群算法.zip
- 论文研究-基于改进蚁群算法的车辆路
- 基于蚁群算法和神经网络匹配算法的
- matlab蚁群算法各种经典蚁群算法for
- 基于栅格地图的蚁群算法路径规划
- 基于蚁群算法和神经网络匹配算法的
- 基于蚁群算法和神经网络匹配算法的
- 多种蚁群算法在机器人路径规划中的
- 机器人避障航路规划蚁群算法MATLAB仿
- 蚁群算法进行二维路径规划.zip
- 蚁群算法MATLAB代码287131
- 蚁群算法路径规划避障MATLAB源程序
- 蚁群算法无人机路径规划
- 粒子群 模拟退火 蚁群算法MATLAB实现
- 基本蚁群聚类算法及其改进算法带M
- 基于蚁群算法和神经网络匹配算法的
- 运用matlab编程实现蚁群算法的低压电
- 蚁群算法算法的路径规划MATLAB实现
- 利用蚁群算法对PID参数自整定程序源
- 蚁群算法最短路径matlab程序
- 蚁群算法求最短路径1
- 蚁群算法最短路径万能matlab源代码
- MATLAB蚁群算法ACA最短路径-注释完整
- 路径规划蚁群算法
- 蚁群算法粗糙集matlab代码
评论
共有 条评论