资源简介
自己编写的粒子群(PSO)算法优化Kmeans聚类的MATLAB代码,MATLAB6.5/7.1测试通过,其它版本没测试。
代码片段和文件信息
clc;clear all;
format long;
%------初始化------------求最小值
%数据,已经归一化
sam=[1.0000 1.0000 0.7476 0.6267 0.1696 0.0710 0.2532 0.8110
0.3188 0.3656 0.8707 0.7704 0.5559 0.5153 0.9213 0.7017
0.5548 0.7423 1.0000 0.5910 1.0000 1.0000 0.8976 1.0000
0.7800 0.7181 0.6875 1.0000 0.2115 0.0214 0.1573 0.8938
0.2680 0.3238 0.9036 0.8210 0.5874 0.3840 0.7037 0.5142
0.6928 0.6630 0.7368 0.8787 0.1818 0.0786 0.2295 0.3820
0.4256 0.4978 0.8429 0.9161 0.7133 0.3130 1.0000 0.7809];
N=50;%粒子数
c1=1.2;c2=1.2;
wmax=0.9;wmin=0.4;
M=200;%代数
K=3;%类别数,根据需要修改%%%%%%%%%%%%%%%%%%%%%%%%
[S D]=size(sam);%%样本数和特征维数
v=rand(NK*D);%初始速度
%初始化分类矩阵
for i=1:N
clmat(i:)=randperm(S);
clmat(iclmat(i:)>K)=ceil(rand(1sum(clmat(i:)>K))*K);
end
fitt=inf*ones(1N);%初始化个体最优适应度
fg=inf;%初始化群体最优适应度
fljg=clmat(1:);%当前最优分类
x=zeros(NK*D);%初始化粒子群位置
y=x;%初始化个体最优解
pg=x(1:);%初始化群体最优解
cen=zeros(KD);%类别中心定维
fitt2=fitt;%粒子适应度定维
%------循环优化开始------------
for t=1:M
for i=1:N
ww = zeros(SK);%
for ii = 1:S
ww(iiclmat(iii)) = 1;%加权矩阵,元素非0即1
end
ccc=[];tmp=0;
for j = 1:K
sumcs = sum(ww(:j)*ones(1D).*sam);
countcs = sum(ww(:j));
if cou
- 上一篇:MATLAB实现HOG特征提取
- 下一篇:风速时程模拟
相关资源
- 粒子群算法matlab工具箱
- 基于粒子群算法的非合作博弈的matl
- 粒子群算法优化pid源码 matlab仿真.ra
- 基于颜色的聚类分割matlab
- 粒子群算法优化RBF网络matlab源码
- 基本粒子群算法,MATLAB文件的M文件编
- 双聚类(Bi-clustering)Matlab工具箱
- 有约束的基于适应度和连续世代策略
- 模糊聚类图像分割FCM/FLICM等
- 粒子群算法求解函数优化问题.zip
- 重叠聚类数据集
- matlab聚类分析工具箱很好用
- K均值聚类算法,图像处理,GUI,mat
- matlab粒子群算法PSO实现函数极值优化
- 谱聚类算法对数据点进行分类
- matlab子空间聚类
- MATLAB聚类分析工具箱
- c均值聚类matlab算法和程序
- DBSCAN算法及Matlab实现
- 近邻传播聚类算法及matlab API
- 聚类数指标matlab工具箱
- Clustering by fast search and find of density
- l粒子群算法工具箱psot
- MATLAB.遗传算法和粒子群算法程序设计
- 蚁群聚类算法
- 四种聚类算法源代码及
- BSAS顺序聚类算法matlab实现代码注释很
- K均值聚类+Matlab实现.rar
- k均值聚类算法的原理与matlab实现
- 路标识别与提取采用聚类方法C-means
评论
共有 条评论