资源简介
蚁群聚类算法的matlab实现,有说明和详尽的报告。
代码片段和文件信息
function [solVIDXCtime] = ACOClu(XminItermaxIterKupdNumpherCneedPrinting)
tic
solValue = zeros(maxIter1);
[Ndms]=size(X);
M = 100;
Pher = ones(NK);
pThres = 0.9;
volR = 0.1;
iter = 1;
fstSol = initSol(XK);
preSol = zeros(MN);
solRepeatN =0;
convRepeatN = 20;
while ((iter<=maxIter) && ((iter solution = zeros(MN+1);
for i = 1 : M
if iter == 1
solution(i1:N) = fstSol‘;
else
rr = rand(1N);
for g = 1 : N
if rr(g) < pThres
[~cluTag] = max(Pher(g:));
solution(ig) = cluTag;
else
cumTau = cumsum(Pher(g:));
cumTau = cumTau/cumTau(end);
cumTau(end)=1;
idxList = find(cumTau>=rand);
if isempty(idxList)
cumTau
error(‘cumTau‘);
else
solution(ig) = idxList(1);
end
end
end
end
cluster_center = zeros(Kdms);
MSE = zeros(K1);
for j = 1:K
pick = find(j==solution(i:));
cCluN=size(pick2);
cCluX = zeros(cCluNdms);
for v = 1:dms
temp=X(:v);
cCluX(:v) =temp(pick);
end
cluster_center(j:) = mean(cCluX1);
for s = 1:cCluN
temp = cCluX(s:)-cluster_center(j:);
MSE(j) = MSE(j) + temp*temp‘;
end
end
solution(iend) = sum(MSE);
end
[ascSolVascSolIdx] = sort(solution(:end)1);
ascSolution = [solution(ascSolIdx1:end-1) ascSolV];
L=updNum;
% the best L solutions will be used to update Pher[]
for j = 1:L
tau_F = ascSolution(jend);
for i = 1 : N
Pher(iascSolution(ji)) = (1 - volR) * Pher(iascSolution(ji)) + pherC/ tau_F;
end
end
solValue(iter) = ascSolution(1end);
if isequal(preSolascSolution(11:N))
solRepeatN = solRepeatN + 1;
else
solRepeatN =0;
end
preSol = ascSolution(11:N);
iter=iter+1;
end
convIter = iter-1;
solV = solValue(convIter);
%preSol
time=toc;
IDX = preSol;
C =cluster_center;
if needPrinting==1
solValue(1)
solV
pMaxIter = min(ceil(convIt
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1290 2013-11-02 13:46 data.txt
文件 1739 2013-11-03 16:38 initSol.m
文件 670 2013-11-03 16:37 KM.m
文件 1457 2013-11-03 16:38 Main.m
文件 588 2013-11-03 16:26 plotSol.m
文件 85 2013-11-03 16:40 ReadMe.txt
文件 106695 2013-12-08 23:43 蚁群算法之聚类.docx
文件 3375 2013-11-03 16:27 ACOClu.m
----------- --------- ---------- ----- ----
115899 8
- 上一篇:sumili
nk直接序列扩频通信仿真 - 下一篇:蚁群-微分进化算法解TSP
相关资源
- 蚁群-微分进化算法解TSP
- matlab三维散乱点云曲率算法
- 现代控制系统matlab程序
- 图像分割与腐蚀膨胀matlab代码
- AM调制解调matlab实验代码加噪声
- 元胞自动机交通流模型代码matlab代码
- Buck-Boost充电Matlab仿真模型
- 霍夫圆边缘检测MATLAB
- matlab BP神经网络 0-9数字识别
- matlab椒盐高斯混合噪声滤波
- 背景差分 matlab 代码
- 最小二乘椭圆拟合matlab
- matlab 螺旋波模拟程序,基于FHN模型
- 清扫机器人路径规划算法仿真
- 基于MATLAB中级联分类器的人脸五官分
- 基于人工神经网络的信号预测在Matl
- 牛顿法matlab程序
- 共轭梯度法相关matlab程序
- 用matlab编写的小动画程序钟摆
- 基于改进遗传算法的路径规划MATLAB实
- RANSAC去除误匹配算法
- MATLAB图像二值化程序源代码
- 伪彩色 MATLAB代码
- (eWiley) Optimum Array Processing最优阵列
- Matlab 图像链码获取
- 任意大小矩阵的zigzag排序Matlab程序
- matlab图像拼接算法
- matlab求解共线方程公式以及生成等高
- 有关emd分解的matlab源程序
- 离散粒子群算法DPSOMatlab代码
评论
共有 条评论