MATLAB实现智能计算方法实验:实验一 模糊聚类分析

  • 𝛌-截矩阵 根据模糊等价矩阵,建立𝛌-截矩阵,按𝛌由大到小进行聚类,编写jjz4函数,代码如下:
function[D, k] = jjz4(b)
L = unique(b)';
a = size(b);
D = zeros(a);
for m = length(L): -1 : 1
    k = L(m);
    for i = 1: a
        for j = 1: a
            if b(i, j) >= k
                D(i, j) = 1;
            else
                D(i, j) = 0;
            end
        end
    end
    B = unique(D, 'rows');
        [hei] = size(B);
    for j = 1: hei
        eval(['L', num2str(j) '= [];'])
    end
    for i = a: -1: 1
        for j = 1: hei
            if D(i, :) == B(j, :)
                p = eval(['L', num2str(j);]);
                p = [['x', num2str(i), ' '] p];
                eval(['L', num2str(j) '= p;']);
            end
        end
    end
    fprintf("当分类系数k=%5.4f时,", L(m));
    fprintf("所得截距阵为:\n\n");
    disp(D);
    fprintf("分类结果为:\n");
    for j = 1: hei
        fprintf("第%d类:", j);
        disp(eval(['L', num2str(j);]));
    end
    fprintf("\n");
end
end

输入jjz4(m0)调用该函数,为了便于看到所有的结果,先将显示截距阵的一行代码注释掉,运行得到所有分类结果如下图。

MATLAB实现智能计算方法实验:实验一 模糊聚类分析图3.1 所有分类结果 选取𝛌 = 0.8791时函数得到的截距阵及分类结果图如下。
MATLAB实现智能计算方法实验:实验一 模糊聚类分析

Original: https://blog.csdn.net/qq_36949278/article/details/121051493
Author: lazyn
Title: MATLAB实现智能计算方法实验:实验一 模糊聚类分析

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/650149/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球