赞
踩
1基本原理:
本质上也是一种概率算法,通过大概率收敛到最佳值,和其他的智能算法很相似。蚁群分泌的信息素存在正反馈,使得较佳的解
具有大概率被选到,当全局都选用较佳的解,变可以得到整体的最优解。
2几个关键点:
1) 概率选择:
受信息素浓度和启发函数影响,启发函数为距离的倒数
2)信息素挥发
考虑到信息素随时间的挥发,加入挥发因子
3程序设计步骤:
1初始化各个参数:包括各点的距离,信息素的初始浓度,蚂蚁数量,信息素挥发因子,
信息素和启发函数的重要度因子,启发函数,最大迭代次数,路径记录表等等
2迭代:对每个蚂蚁随机制定初始值,再根据概率选择,选择出每只蚂蚁的路径,确定每只蚂蚁的路径总长度,
以及蚁群的最佳路径长度和平均长度,并对信息素进行更新。
3展示:展示出最佳路径,以及最佳路径对迭代的变化图
4Matlab代码
clc,clear %清空环境中的变量
load data.txt %读入城市的坐标
t0 = clock; %程序计时开始
%%
%%%%%%%%%%%%%%%%%%%初始化%%%%%%%%%%%%%%%%%
city=data;
n = size(city,1); %城市距离初始化
D = zeros(n,n);
for i = 1:n
for
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。