1. 层次分析法(AHP):一种层次权重决策分析方法,日常生活中比如:冰箱品牌的选购(考虑到价格,性能,售后等因素);旅游景点的选择(交通,居住环境,饮食等)。
  2. 解题步骤:
    (1).建立层次结构模型
    (2).构造判断(成对比较)矩阵
    (3).一致性检验
  3. 案例:

    构造判断(成对比较)矩阵
    标度表:主要用于构造判断矩阵

    注意:构造判断矩阵时,不同元素之间的重要程度一般主观判断,即自己凭主观做出判断,不过在真正的数学建模上建议还是这样说“经过查找资料得出判断矩阵”,尽管是自己主观给出的判断,但是比赛的话,表面功夫还是要做足的。(不同元素之间的重要性的比用1-9之间的数值标出,参考标度表,主要是两两比较,给出两者的重要程度的比值)

(C1:C1 = 1:1说明重要程度一样,C1:C2 = 1:1/2说明C1比C2重要一点,C1:C3 = 1:4说明C3比C1较重要,以此类推,所有的重要程度由自己主观判断,如果有专门的数据说明重要程度就更好了,一般套路:经过文献的调研,可以得到以下判断矩阵)
完整的判断矩阵的构建如下:


注意:A为相对于Z,A1-A5的重要程度的判断矩阵
B1为相对于A1,B1-B3的重要程度的判断矩阵
B2为相对于A2,B1-B3的重要程度的判断矩阵
B3为相对于A3,B1-B3的重要程度的判断矩阵
B4为相对于A4,B1-B3的重要程度的判断矩阵
B5为相对于A5,B1-B3的重要程度的判断矩阵
经过matlab计算得到6个判断矩阵的权重值:

4.代码

% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
%层次分析法matlab实现:
% 运行代码
% (1)输入:判断矩阵A(n阶)
% (2)输出:该判断矩阵的相关权重,并给出该矩阵一致性检验是否通过,并且输出CI,CR
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
% 以下为判断矩阵,执行代码后分别输入:
% A = [2 1 7 5 5
% 1/4 1/7 1 1/2 1/3
% 1/3 1/5 2 1 1
% 1/3 1/5 3 1 1];
%
% B1 = [1 2 5
% 1/2 1 2
% 1/5 1/2 1]
%
% B2 = [1 1/3 1/8
% 3 1 1/3
% 8 3 1]
%
% B3 = [1 1 3
% 1/3 1 3
% 1/4 1 1]
%
% B4 = [1 3 4
% 1/3 1 1
% 1/4 1 1]
%
% B5 = [1 1 1/4
% 1 1 1/4
% 4 4 1]%层次分析法(AHP)
clc,clear
disp('请输入判断矩阵A(n阶)');
A = input('A=');
[n,n] = size(A);
x = ones(n,100);
y = ones(n,100);
m = zeros(1,100);
m(1) = max(x(:,1));
y(:,1) = x(:,1);
x(:,2) = A*y(:,1);
m(2) = max(x(:,2));
y(:,2) = x(:,2)/m(2);
p=0.0001; i=2; k=abs(m(2)-m(1));
while k>pi=i+1;x(:,i) = A*y(:,i-1);m(i) = max(x(:,i));y(:,i) = x(:,i)/m(i);k=abs(m(i)-m(i-1));
end
a = sum(y(:,i));
w = y(:,i)/a;
t = m(i);
disp(w);
%一致性检验
CI = (t-n)/(n-1);
RI = [0 0 0.52 0.89 1.12 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];
CR = CI/RI(n);
if CR<0.10disp('此矩阵一致性可以接受!');disp('CI=');disp(CI);disp('CR=');disp(CR);
end

结果(运行6次,分多次输入各个判断矩阵):

以上就是全部内容,如有错误的地方望指出。

菜鸟的数学建模之路(六):层次分析法相关推荐

  1. 数学建模第一讲:层次分析法

    数学建模第一讲:层次分析法 笔记大部分由观看[强烈推荐]清风:数学建模算法.编程和写作培训的视频课程整理出: 视频链接:https://www.bilibili.com/video/BV1DW411s ...

  2. 数学建模模型01:层次分析法(AHP)

    层次分析法(The analytic hierarchy process, 简称AHP) 建模比赛中最基础的模型之一,其主要用于解决 评价类问题(例如:选择哪种方案最好.哪位运动员或者员工表现的更优秀 ...

  3. 数学建模算法总结——04层次分析法

    一.层次分析法的应用 题目分类: 评价类(评价.分类.排序) 特征: 合理地将定性与定量的决策结合起来,按照思维.心理的规律把决策过程层次化.数量化. 层次分析法的三大典型应用 (1)用于最佳方案的选 ...

  4. 数学建模模型学习(1)--层次分析法

    前面我已经写了两篇博客,是关于matlab基础的,如果没有matlab基础,对于后面这些文章的代码来计算会比较吃力. (一)matlab常用基本语法和函数总结 (二)用matlab求得矩阵的最大特征值 ...

  5. 数学建模常用算法—灰色关联分析法(GRA)

    解决问题 灰色关联分析的基本思想是根据序列曲线几何形状的相似程度来判断其联系是否紧密.曲线越接近,相应序列之间的关联度就越大,反之就越小. 一般的抽象系统,如社会系统.经济系统.农业系统.生态系统.教 ...

  6. 菜鸟的数学建模之路(二):线性与非线性回归

    回归分析 根据回归方法中因变量的个数和回归函数的类型(线性或非线性),可将回归方法分为一元线性回归.一元非线性回归和多元回归. 简单粗暴理解:可以理解为找到一个从特征空间X到输出空间Y的最优的线性映射 ...

  7. 菜鸟的数学建模之路(一):最短路径算法

    最短路径算法主要有两种,Dijkstra算法和floyd算法,当时在学习这两种算法时经常弄混了,关于这两种算法,记得当时是在交警平台设置的那一道题目上了解到的,就去查很多资料,花了不少时间才基本了解了 ...

  8. 菜鸟的数学建模之路(四):BP神经网络

    个人理解 BP神经网络属于人工智能范畴,在我看来它更多的是一个用于预测的工具,尽管它的用处还不仅于此.在数学建模上,很多时候,题目提供了很多历史数据,我经常用这些历史数据,用BP神经网络训练它,利用训 ...

  9. 菜鸟的数学建模之路(七):灰色预测方法

    灰色预测的概念 灰色系统.白色系统和黑色系统 (1)白色系统是指一个系统的内部特征是完全已知的,既系统信息是完全充分的. (2)黑色系统是一个系统的内部信息对外界来说是一无所知的,只能通过它与外界的联 ...

最新文章

  1. Jedis操作Redis数据库
  2. gridview、datalist、repeater、FormView、DetailsView的区别详解
  3. MODE ——计算了 任意多个数字的平均值(知识点:for的循环)
  4. 大学毕业后八大让你加班成狗专业盘点,你的专业上榜了嘛?
  5. GOF之结构型模式Ⅱ(重点)
  6. 《Optimized Risk Scores》论文附带代码运行记录
  7. c语言原型,C语言原型模式
  8. adb工具包的安装和使用(Windows)
  9. 联想Y580黑苹果安装
  10. CImagelist 基本用法
  11. 认识网络、几种常用的网络拓扑图
  12. 计算机时间单位,时间单位换算表与计算机单位换算
  13. 副业真没想你的这么容易做!
  14. android 置灰不可点击,android 按钮置灰效果
  15. 数据分析——人力资源
  16. 【原生JS】仿新浪微博名片弹框
  17. python给乘风破浪的姐姐制作词云打call图
  18. postman的使用-----号码归属地查询接口测试
  19. 摩尔斯电码(Python字典实现)
  20. 《厚黑学》| 读书三诀

热门文章

  1. 世界上第一台计算机应用于什么方面,世界上第一台计算机的电子元器件是什么...
  2. 关于options请求的一点理解
  3. linux dns 自动识别,Linux 自动化部署DNS服务器
  4. OLED屏显传感器数据显示到OLED上
  5. 空气污染指数API的计算方法
  6. .net framework4.0 安装回滚问题
  7. 莫尔斯代码的c语言编码,c语言编写莫尔斯码,帮帮忙啊,速回
  8. 一对一直播软件如何盈利?
  9. 小piu页面,突然比例变很小,如何调整
  10. 人工智能基础——为什么逻辑学中“假推真”、“假推假”永远是真命题?