1.算术平均法计算权重的公式如下:


最里面的求和公式将矩阵按列求和,再用每一个aij除以所在列的和进行归一化。
最外面的求和公式将矩阵按行求和,再除以n数,得到的向量即为所需的权重值。
代码如下:

%1.算术平均法计算权重
%输入样例:
% A =[1 1 4 1/3 3;
%  1 1 4 1/3 3;
%  1/4 1/4 1 1/3 1/2;
%  3 3 3 1 3;
%  1/3 1/3 2 1/3 1]
A = input('判断矩阵A=');  %输入判断矩阵
ASum = sum(A,1);        %将判断矩阵每列求和
[n,n] = size(A);        %获取A的行和列,用于对ASum复制,对应位相除归一化
Ar = repmat(ASum,n,1);  %复制Asum n行1列为Ar矩阵
Stand_A = A./Ar;        %归一化
ASumr = sum(Stand_A,2); %各列相加到同一行
disp(ASumr/n);          %将相加后得到的向量每个元素除以n可以得到权重向量

2.几何法计算权重公式如下:


代码如下:

%2.几何平均法求权重
clc;
A = input('判断矩阵A=');
[n,n] = size(A);
prod_A = prod(A,2);         %将A中每一行元素相乘得到一列向量
prod_n_A = prod_A.^(1/n);   %将新的向量的每个分量开n次方等价求1/n次方
re_prod_A = prod_n_A./sum(prod_n_A);%归一化处理
disp(re_prod_A);            %展示权重结果

3.特征值法计算权重

对应代码如下:

clc;
A = input('判断矩阵A=');
[n,n] = size(A);
%求出最大特征值以及对应的特征向量
[V,D] = eig(A);              %V是特征向量 D是特征值构成的对角矩阵
Max_eig = max(max(D));       %先求出每一列的最大值,再求最大值中的最大值
[r,c] = find(Max_eig == D,1);%使用find()函数找出最大特征值对应的特征向量
%对特征向量进行归一化得到所需权重
disp(V(:,c)./sum(V(:,c)));

使用输入样例,采样三种求权重的方法得到的权重值分别如下:

算术平均法 几何计算法 特征值计算法
0.2145 0.2184 0.2121
0.2145 0.2184 0.2121
0.0703 0.0664 0.0679
0.4006 0.3985 0.4114
0.1001 0.0983 0.0965

层次分析之算术平均法、几何计算法、特征值法计算权重 matlab实现相关推荐

  1. [MATLAB]层次分析法计算权重

    [MATLAB]关于层次分析法计算权重值 %层次分析法权重函数 function [w,CR] = cengci(A)[~, n] = size(A); x = ones(n,100); y = on ...

  2. 数学建模竞赛知识点汇总(一)——层次分析法

    文章目录 简介 步骤 建立层次结构模型 构造判断矩阵 计算权重 算术平均值法 几何平均值法 特征值法 一致性检验 合并排序 层次分析法的局限性 后续 简介 ​ 层次分析法(AHP)这是一种定性和定量相 ...

  3. 层次分析法(AHP)算法简介

     一·.模型介绍 层次分析法(AHP)是美国运筹学家萨蒂于上世纪70年代初,为美国国防部研究"根据各个工业部门对国家福利的贡献大小而进行电力分配"课题时,应用网络系统理论和多目标综 ...

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

    02 论文提供的太阳镜的评价体系 03 建立目标层和准则层的判断矩阵 (论文提供) 04 首先需要对判断矩阵进行一致性检验 4.1 一致性检验的一般步骤 4.2 对应上方步骤的变量和代码 05 一致性 ...

  5. 数学建模——层次分析法Python代码

    数学建模--层次分析法Python代码 import numpy as np class AHP: """ 相关信息的传入和准备 """ d ...

  6. 评价类模型:1.层次分析法

    评价类问题 举例 高考结束,小明在华中科技大学和武汉大学之间做选择 首先,选择打分指标及其所占权重: 学习氛围,就业前景,男女比例,校园景色 随后,根据查资料或者其他途径对两所校园的各个指标进行打分 ...

  7. 层次分析法(参考:清风)

    1 背景和应用场景 层次分析法(The Analytic Hierarchy Process即 AHP)是由美国运筹学家. 匹兹堡大学教授T . L. Saaty于20世纪70年代创立的一种系统分析与 ...

  8. 层次分析法——确定指标权重、解决评价类问题

    "评价类问题可以用打分解决." 譬如我们想对A.B.C三个景点进行评分,若题目没给数据可查阅文献(显得专业)得到关于景点评分的几个指标,显然,不同指标对景点的评价高低影响程度不同, ...

  9. 学习笔记----层次分析法

    层次分析法(MATLAB实现) 定义 例题 步骤 细节补充 应用实例 定义   层次分析法是指将一个复杂的多目标决策问题作为一个系统,将目标分解为多个目标或准则,进而分解为多指标(或准则.约束)的若干 ...

  10. 评价类模型——层次分析法

    评价类模型--层次分析法 注:以下故事纯属虚构,部分背景及人物姓名设定借用<你好,旧时光>这部剧,但与原剧基本无关,如有情节雷同,纯属巧合. Q:余周周同学遇到三位追求者,这三位候选人分别 ...

最新文章

  1. 存储过程IN参数疑难问题解决方法【真正解决】
  2. Eclipse导入GitHub项目两处报错处理
  3. 【渝粤教育】国家开放大学2018年春季 0508-21T影视特技及后期合成 参考试题
  4. 类的带参方法有哪几部分构成?
  5. 好文!研究生高效阅读的五大原则
  6. 关于类的入门例子(1): 继承窗体
  7. Jenkins与Docker的自动化CI/CD实战
  8. UNIX高手的10个习惯之一
  9. 从Spring代理的bean中获取代理对象
  10. ntpdate 时间同步
  11. python脚本调度程序_python任务调度实例分析
  12. JS库之Highlight.js高亮代码
  13. Jboss的下载和安装
  14. java中this和super的用法区别
  15. Tableau——备注
  16. 关于屏幕分辨率适配的教程
  17. java7java8 集合中对象的某一个字段分组
  18. Linux查看目录大小文件大小内存大小硬盘大小
  19. Map集合中的常用函数(java)
  20. 一图掌握PEST分析模型及案例

热门文章

  1. lambda表达式(Shawn),android物联网开发配套代码
  2. 不管你信不信,这就是程序员996的真实内幕!
  3. idea创建web项目的时候报错:Error reading file E:/workspaces/**/pom.xml
  4. 未来5年大机遇:做贩卖多巴胺的超级玩家
  5. fms安装教程 linux_linux通过fms搭建流媒体服务器Flash Media Server
  6. Excel如何导出高清图片
  7. 求三阶行列式--学解析几何的朋友计算外积和混合积可以用这个啦--
  8. 计算机网络原理 读书笔记
  9. SQL学习笔记04 极客时间 SQL必知必会50讲
  10. 极客空间-MySQL实战45天-第一天