本文用C语言编程实现了基于传递闭包的模糊聚类分析,分析事物的类别和优劣,对事物作出评估。采用作者发现的模糊相似矩阵传递闭包的Warshall算法进行模糊聚类,时间复杂度比平方法低。用C语言设计了模糊相似矩阵夹角余弦标定法、Warshall算法计算传递闭包、置信水平排序、动态聚类模块,用菜单驱动,并对算法进行了分析。在应用中,对生丝厂的生丝质量进行了动态聚类分析,采用
2 1年 6 02月
第2期
教
学
与
科
技
模糊聚类分析 C程序实现
付尚朴
(国工程物理研究院工学院,四川绵阳,6 10 )中 29 0
摘
要
本文用C语言编程实现了基于传递闭包的模糊聚类分析,分析事物的类别和优劣,对事物作出评
估。采用作者发现的模糊相似矩阵传递闭包的Wasal rhl算法进行模糊聚类,时间复杂度比平方法低。用C语言设计了模糊相似矩阵夹角余弦标定法、Wasal r l h算法计算传递闭包、置信水平排序、动态聚类模块,用菜单驱动,并对算法进行了分析。在应用中,对生丝厂的生丝质量进行了动态聚类分析,采用了已有的生丝质量数据, 然后用本程序计算,与已有结果一致。本程序效率高,菜单界面,易于操作,原始数据存放在文件中,易于保
存读取。
X∑
七
关键词
模糊相似矩阵;传递闭包;Wasal r l算法 h
O引言
聚类分析指按事物的一定特征进行分类的方法。如,按学生的总成绩将学生分为优、良、中、及格、不及格五类。如果事物特征模糊,则采用模糊聚类分析来分类,具体有三大类:( )系统聚类法: 1
基于模糊关系分类方法。如:传递闭包法、直接聚类法、最大树法;( )逐步聚类法。如:迭代聚类 2法、IO A A法;( )混合法:通过参考数据的分布规律和某些经验、要求进行分类【 SD T 3 l】。模糊聚类分
析用于管理信息处理、计算机病毒分析等等【】本文讨论传递闭包法,。将其中计算传递闭包的平方法,
换为作者发现的模糊相似矩阵传递闭包的 Wasal法【, r l算引时间效率会大大提高。 h本系统在 DE -+ VC+5中用 C语言开发。
1模糊相似矩阵的标定
设待分类事物为{l 2…,> X,, X,X的特征为X= X,, x ) _1, m.{l 2…, . i (i…,m,f,…, X,, X ) l 2 2
构成的模糊相似矩阵为 R= ) (,‘,的标定采用夹角余弦法
,
i j= 1…。 。, 2 m
C函数为: l t s (ot l,ot 2]/ f aamhf ax[f ax[, o l 1 l )计算 n维行矩阵 x、x l 2的点积
{
it; n i l t m=0 f a u o s;
fr=; ni+ o( 0i; ) i
收稿日期:2 1 .2 1 0
20—2