模糊聚类分析实验报告Word文档格式.docx

上传人:b****2 文档编号:1152846 上传时间:2023-04-30 格式:DOCX 页数:16 大小:208KB
下载 相关 举报
模糊聚类分析实验报告Word文档格式.docx_第1页
第1页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第2页
第2页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第3页
第3页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第4页
第4页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第5页
第5页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第6页
第6页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第7页
第7页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第8页
第8页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第9页
第9页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第10页
第10页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第11页
第11页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第12页
第12页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第13页
第13页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第14页
第14页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第15页
第15页 / 共16页
模糊聚类分析实验报告Word文档格式.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

模糊聚类分析实验报告Word文档格式.docx

《模糊聚类分析实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《模糊聚类分析实验报告Word文档格式.docx(16页珍藏版)》请在冰点文库上搜索。

模糊聚类分析实验报告Word文档格式.docx

x8=(66,45,65,55,34,32)

建立相似矩阵,并用传递闭包法进行模糊聚类。

2解决步骤:

建立原始数据矩阵

设论域

为被分类对象,每个对象又有

个指标表示其性状,

由此可得原始数据矩阵。

于是,得到原始数据矩阵为

其中

表示第

个分类对象的第

个指标的原始数据,其中m=6,n=8。

2.2样本数据标准化

2.2.1对上述矩阵进行如下变化,将数据压缩到[0,1],使用方法为平移极差变换和最大值规格化方法。

(1)平移极差变换:

显然有

,而且也消除了量纲的影响。

(2)最大值规格化:

2.2.2使用Matlab实现代码:

function[x_zuida,x_pingyi]=bzh(x)

%函数功能:

标准化矩阵

[m,n]=size(x);

B=max(x);

B1=max(x)-min(x);

Bm=min(x);

fori=1:

n

x1(:

i)=x(:

i)/B(i);

%最大值规格化

x2(:

i)=(x(:

i)-Bm(i))/B1(i);

%平移极差标准化

end

x_zuida=x1

x_pingyi=x2

 

2.2.3样本数据标准化后结果如图所示:

图一最大值规格化

图二平移极差标准化

2.3构造模糊相似矩阵

2.3.1根据各分类对象的不同指标的标准化数据,计算分类对象间的相似程度rij,建立模糊相似矩阵R,该操作又称标定,计算标定的方法很多,这里使用最大最小法和算术平均最小法。

(1)最大最小法:

(2)算术平均最小法:

2.3.2使用Matlab实现代码:

function[R1,R2]=bd(x)

标定

m

forj=1:

fork=1:

qx(k)=min(x(i,k),x(j,k));

%取小

qd(k)=max(x(i,k),x(j,k));

%取大

end

R1(i,j)=sum(qx)/sum(qd);

%最大最小法

R2(i,j)=2*sum(qx)/(sum(x(i,:

))+sum(x(j,:

)));

%算术平均最小法

ifi==j

R1(i,j)=1;

R2(i,j)=1;

end

R_zuidazuixiao=R1

R_suanshu=R2

2.3.4将最大规格化后的数据进行构造模糊相似矩阵如图所示:

图三最大最小法构造模糊相似矩阵

图四算术平均法造构造模糊相似矩阵

2.4建立模糊等价矩阵

2.4.1根据标定所得的矩阵,只是一个模糊相似矩阵

,不一定具有传递性,为了进行分类,还需要将

改造成等价矩阵

采用平方法计算传递闭包:

经过有限次运算后存在k使

,于是

即为所求的模糊等价矩阵。

2.4.2使用Matlab实现代码:

function[tr]=chuandi(x)

求传递闭包

R=x;

a=size(R);

B=zeros(a);

flag=0;

whileflag==0

fori=1:

a

forj=1:

fork=1:

a

B(i,j)=max(min(R(i,k),R(k,j)),B(i,j));

%R与R内积,先取小再取大

ifB==R

flag=1;

else

R=B;

%循环计算R传递闭包

tr=B;

2.4.3对最大最小法构造模糊的相似矩阵求传递闭包结果如图所示:

图五最大最小法构造模糊相似矩阵的传递闭包

图六算术平均法造构造模糊相似矩阵的传递闭包

2.5聚类分析

2.5.1得到模糊等价矩阵

后,可在适当水平

上截取

,将模糊等价矩阵中大于值

的数归为一类。

2.5.2使用Matlab实现求截矩阵代码:

function[M,N]=julei(tR1)

求出lamda截矩阵

tR=tR1;

lamda=unique(tR);

%取A矩阵不同元素构成的向量,来确定阈值

L=length(lamda);

lamda=sort(lamda,'

descend'

);

L

tR=tR1;

lamda(i)

tR(find(tR>

=lamda(i)))=1;

%令大于lamda的为1

tR(find(tR<

lamda(i)))=0;

%令小于lamda的为0

tR

2.5.3对最大最小法构造模糊相似矩阵的传递闭包求出截矩阵,然后进行聚类,聚类结果如下:

(1)当

时,这8种产品分为8类{x1},{x2},{x3},{x4},{x5},{x6},{x7},{x8}。

图七

时的截矩阵

(2)当

时,这8种产品分为7类{x1},{x2},{x3},{x4,x5},{x6},{x7},{x8}。

图八

(3)当

时,这8种产品分为6类{x1},{x2,x3},{x4,x5},{x6},{x7},{x8}。

图九

(4)当

时,这8种产品分为5类{x1},{x2,x3},{x4,x5,x8},{x6},{x7}。

图十

(5)当

时,这8种产品分为4类{x1},{x2,x3},{x4,x5,x6,x8},{x7}。

图十一

(6)当

时,这8种产品分为3类{x1},{x2,x3,x7},{x4,x5,x6,x8}。

图十二

(7)当

时,这8种产品分为2类{x1},{x2,x3,x7,x4,x5,x6,x8}。

图十三

(8)当

时,这8种产品分为1类{x1,x2,x3,x7,x4,x5,x6,x8}。

图十四

2.5动态聚类图

根据所求得的传递闭包,再让

由大变小,就可形成动态聚类图。

2.5.2使用Matlab实现代码:

function[M,N]=juleitu(tR)

画动态聚类图

%取A矩阵不同元素构成的向量,来确定阈值

M=1:

L;

fori=L-1:

-1:

1%获得分类情况:

对元素分类进行排序

[m,n]=find(tR==lamda(i));

N{i,1}=n;

N{i,2}=m;

tR(m

(1),:

)=0;

mm=unique(m);

N{i,3}=mm;

len=length(find(m==mm

(1)));

depth=length(find(m==mm

(2)));

index1=find(M==mm

(1));

MM=[M(1:

index1-1),M(index1+depth:

L)];

index2=find(MM==mm

(2));

M=M(index1:

index1+depth-1);

M=[MM(1:

index2-1),M,MM(index2:

end)];

M=[1:

M;

ones(1,L)];

h=(max(lamda)-min(lamda))/L;

figure

text(L,1,sprintf('

x%d'

M(2,L)));

text(0,1,sprintf('

%3.4f'

1));

text(0,(1+min(lamda))/2,sprintf('

(1+min(lamda))/2));

text(0,min(lamda),sprintf('

min(lamda)));

holdon

每一个子类的元素

m=N{i,2};

n=N{i,1};

mm=N{i,3};

k=find(M(2,:

)==mm

(1));

l=find(M(2,:

)==mm

(2));

x1=M(1,k);

y1=M(3,k);

x2=M(1,l);

y2=M(3,l);

x=[x1,x1,x2,x2];

M(3,[k,l])=lamda(i);

M(1,[k,l])=sum(M(1,[k,l]))/length(M(1,[k,l]));

y=[y1,lamda(i),lamda(i),y2];

plot(x,y);

text(i,1,sprintf('

M(2,i)));

text(M(1,k

(1)),lamda(i)+h*0.1,sprintf('

lamda(i)));

axis([0L+1min(lamda)max(lamda)])

axisoff

holdoff

2.5.1动态聚类图如图所示:

图十五动态聚类图

实验心得:

通过这次实验,让我了解到模糊矩阵的一些基本知识,同时也让我了解到了模糊关系,然后也让我学会应用模糊聚类分析。

同时也让我更加了解对Matlab的操作,特别是关于矩阵的操作命令。

附录:

x=[373812161312;

697374226417;

738649276839;

575864846328;

385665856227;

655564152648;

655615426535;

664565553432];

x_zuida=[];

x_pingyi=[];

R_zuidazuixiao=[];

R_suanshu=[];

[x_zuida,x2]=bzh(x);

[R_zuidazuixiao,R_suanshu]=bd(x_zuida);

tR_zuidazuixiao=chuandi(R_zuidazuixiao)

tR_suanshu=chuandi(R_suanshu)

juleitu(tR_zuidazuixiao)

julei(tR_zuidazuixiao)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2