清风学习笔记—层次分析法—matlab对判断矩阵的一致性检验

这篇具有很好参考价值的文章主要介绍了清风学习笔记—层次分析法—matlab对判断矩阵的一致性检验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在判断矩阵是否为正互反矩阵这块,我写了两种代码,改进前很麻烦且有错误,改进后简洁多了,改进前的代码还有错误,忽略了对角线的值必须都是1,只考虑了除开对角线的元素相乘为1。 


%% 改进前代码
A=[3 2 4;1/2 4 2;1/4 1/2 5]
diag_A=diag(A)
C=ones(1,size(A,2))
%将矩阵A的对角线更改为全1向量C
A(logical(eye(size(A))))=C
%获取矩阵A的共轭转置矩阵A2
A2=A.'
%如果A2和A进行点乘能够得到一个单位矩阵,那么A就是一个正互反矩阵
if isequal(A2.*A,ones(size(A,1)))
    fprintf("A是一个正互反矩阵")
end
%将矩阵A的主对角线进行还原
A(logical(eye(size(A))))=diag_A

%% 改进后代码
if sum(sum(A'.*A~=ones(n)))>0
    error=3;
    disp("不为正互反矩阵")
end

下面是全部代码文章来源地址https://www.toymoban.com/news/detail-740101.html

%% 输入判断矩阵
clear;clc
disp('请输入判断矩阵A: ')
A = input('判断矩阵A=');
[r,c]=size(A);
error=0;
%% 判断矩阵是否为方阵并且阶数大于等于2
if r~=c || r<2
  error=1;
end
%% 判断矩阵是否大于15
if r==c&&r>15
    error=2;
end

%% 判断矩阵A是否为正互反矩阵
if error~=1 && sum(sum(A'.*A~=ones(r)))>0
    error=3;
end
%% 计算
if error==0
    %% 算术平均法求权重
    Sum_A = sum(A);
    [n,m] = size(A);
    SUM_A = repmat(Sum_A,n,1);
    Stand_A = A ./ SUM_A;
    sum(Stand_A,2);
    disp('算术平均法求权重的结果为:');
    disp(sum(Stand_A,2) ./ n)
    %% 方法2:几何平均法求权重
    Prduct_A = prod(A,2);
    Prduct_n_A = Prduct_A .^ (1/n);
    disp('几何平均法求权重的结果为:');
    disp(Prduct_n_A ./ sum(Prduct_n_A));
    %% 方法3:特征值法求权重

    [V,D] = eig(A);
    Max_eig = max(max(D));
    [r,c] = find(D == Max_eig , 1);
    V(:,c);
    disp('特征值法求权重的结果为:');
    disp( V(:,c) ./ sum(V(:,c)) )
    %% 计算一致性比例CR
    CI = (Max_eig - n) / (n-1);
    RI=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];  %注意哦,这里的RI最多支持 n = 15
    CR=CI/RI(n);
    disp('一致性指标CI=');disp(CI);
    disp('一致性比例CR=');disp(CR);
    if CR<0.10
        disp('因为CR < 0.10,所以该判断矩阵A的一致性可以接受!');
    else
        disp('注意:CR >= 0.10,因此该判断矩阵A需要进行修改!');
    end
elseif error==1
        disp("输入的A不为方阵或者阶数小于2")
elseif error==2
        disp("判断矩阵的阶数大于15")
elseif error==3
    disp("不为正互反矩阵")
end

到了这里,关于清风学习笔记—层次分析法—matlab对判断矩阵的一致性检验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Matlab:如何利用层次分析法(升级版)计算具有多重指标的判断矩阵的一致性检验和权重

    02 论文提供的太阳镜的评价体系 03 建立目标层和准则层的判断矩阵 (论文提供) 04 首先需要对判断矩阵进行一致性检验 4.1 一致性检验的一般步骤 4.2 对应上方步骤的变量和代码 05 一致性检验通过之后开始计算权重 5.1 算术平均法计算权重-理论部分 5.2 算术平均法计算权重

    2024年02月03日
    浏览(70)
  • 数学建模学习笔记||层次分析法

    解决评价类问题首先需要想到一下三个问题 我们评价的目标是什么 我们为了达到这个目标有哪几种可行方案 评价的准则或者说指标是什么 对于以上三个问题,我们可以根据题目中的背景材料,常识以及网上收集到的参考资料进行结合,从而筛选出最合适的指标 优先选择知

    2024年01月23日
    浏览(54)
  • 【数学建模学习】matlab实现评价模型——层次分析法(AHP)

    目录 1概述  2算法实现流程 3实例  4matlab实现层次分析法 5计算结果 层次分析法,简称AHP,是评价模型中的一种算法,指将与决策总是有关的元素分解成目标、准则、方案等层次,在此基础之上进行定性和定量分析的决策方法。层次分析法的缺陷在于判断矩阵是主观决定的,

    2024年02月04日
    浏览(54)
  • 数学建模学习笔记(1):层次分析法(AHP)(附有详细使用步骤)

    层次分析法是由美国运筹学家T.L.Saaty于20世纪七十年代创立的一种系统分析与决策的综合评价方法,是在充分研究了人类思维过程的基础上提出的较为合理的解决定性问题定量化的处理过程。 层次分析法的主要特点是通过建立递阶层次结构,把人类的判断转化到若干因素两两

    2024年02月07日
    浏览(47)
  • 层次分析法(MATLAB)

    对之前的学习进行总结,整个比赛下来好像就用到了这个方法,最后也不知道对不对,反正最后还有点赶,就是很懵的那种,对于层次分析话的还是有点了解了,由于是纯小白,有错误的地方希望各位大佬能够指出。 目录 数据提取 归一化处理 判断矩阵 一致性检验  算术平

    2024年02月12日
    浏览(45)
  • 层次分析法(matlab实现)

           在决策理论中,层次分析法是一种以 数学 和 心理学 为基础,组织和分析复杂决策的结构化技术,它代表了一种 量化决策标准权重 的准确方法,通过成对比较,利用个别专家的经验来估计因素的相对大小        在很多情况下,我们对事物的评价,应该多维度的进

    2024年02月09日
    浏览(44)
  • 数学建模之层次分析法(含MATLAB代码)

    层次分析法的基本原理与步骤 人们在进行社会的、经济的以及科学管理领域问题的系统分析中,面临的常常是 一个由相互关联、相互制约的众多因素构成的复杂而往往缺少定量数据的系统。层次 分析法为这类问题的决策和排序提供了一种新的、简洁而实用的建模方法。 基本

    2024年02月01日
    浏览(56)
  • MCM备赛笔记——层次分析法

    层次分析法 Key Concept 层次分析法(Analytic Hierarchy Process, AHP)是一种结构化的、定量化的决策方法,用于处理复杂的决策问题。它通过建立层次结构模型,将复杂问题分解为更小的部分(即准则、子准则和备选方案),然后通过成对比较和权重赋予来评估这些部分的相对重要

    2024年01月19日
    浏览(39)
  • 数学建模———层次分析法及其matlab语法,函数和代码实现

    层次分析法思想登场 建模比赛中最基础的模型之一,其主要用于解决评价类问题(例如:选择那种方案最好,哪位运动员或者员工表现的更优秀。) 评价类问题字眼: 评价的目标是什么? 达到这个目标有那几种方案? 评价准则或指标是什么? 确定权重的方方法——分而治

    2024年02月15日
    浏览(43)
  • 数模学习day01-层次分析法模型

            已经一个多月没有更新过文章了,为了保住那绩点的意思微弱的优势,直接开摆,开始复习专业课和公共课考试了,结果虽然有遗憾但是还是算不错,至少没有掉到3.xx嘿嘿。         然后现在就要开始学习数学建模和算法同步了。接下来的文章也会更新这两个

    2024年02月03日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包