数模学习笔记(四)——AHP
1.层次分析法是对复杂、较为模糊的问题作出决策的简易方法。
2.步骤:
(i)建立递阶层次结构模型:最高层(目标层),中间层(准则层),最底层(措施层)
(ii)构造出各层次中的所有判断矩阵
各准则在在目标衡量中所占的比重并不一定相同,采用判断矩阵A来定量评估n个因子对Z的影响:
aij=Xi对Z的影响/Xj对Z的影响,用1~9标度。
A是正互反矩阵。
(iii)层次单排序及一致性检验
计算一致性指标CI和CR来检验矩阵A的一致性
(iv)层次总排序及一致性检验
上面得到的是方案层单排序权值,总排序权重要自上而下地将单准则下的权重进行合成。CR值也是单准则下的CR的合成。
3.AHP函数的matlab程序
%This is a function of AHP%
%a:judgment matrix in criterion layer
%b:cell array,judgment matrix in plan layer
%ri:coincidence indicator
function [ts,cr,cr1]=AHP(a,b,ri)
[x,y]=eig(a);
lamda=max(diag(y));
num=find(diag(y)==lamda);
w0=x(:,num)/sum(x(:,num));%准则层权值
n1=length(a);
cr0=(lamda-n1)/(n1-)/ri(n1);
n2=length(b);
for i=:n1
[x,y]=eig(b{i});
lamda=max(diag(y));
num=find(diag(y)==lamda);
w1(:,i)=x(:,num)/sum(x(:,num)); %方案层单排序权值
cr1(i)=(lamda-n2)/(n2-)/ri(n2); %单排序随机一致性比例
end
ts=w1*w0;%总排序权值
cr=cr1*w0;%总排序随机一致性比例
end
4.example

Q:
(1)根据上述矩阵可以看出四项标准在你心目中的比重是不同的,请按由重到
轻顺序将它们排出。
(2)哪辆车最便宜、哪辆车最省油、哪辆车最舒适、哪辆车最漂亮?
(3)用层次分析法确定你对这三种车型的喜欢程度。
Solution:
(1)价格>耗油量>舒适程度>外表美观
(2)a b a b
(3)0.40913,0.44157,0.1493
数模学习笔记(四)——AHP的更多相关文章
- 数模学习笔记(五)——BP神经网络
1.BP神经网络是一种前馈型网络(各神经元接受前一层的输入,并输出给下一层,没有反馈),分为input层,hide层,output层 2.BP神经网络的步骤: 1)创建一个神经网络:newff a.训 ...
- python3.4学习笔记(四) 3.x和2.x的区别,持续更新
python3.4学习笔记(四) 3.x和2.x的区别 在2.x中:print html,3.x中必须改成:print(html) import urllib2ImportError: No modu ...
- Linux学习笔记(四) vi编辑器
一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...
- MySql学习笔记四
MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...
- C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- java之jvm学习笔记四(安全管理器)
java之jvm学习笔记四(安全管理器) 前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器. 安全管理器 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Typescript 学习笔记四:回忆ES5 中的类
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
随机推荐
- Java初认识--Java语言的书写规范及基本的运算符
一.Java中名称的规范和书写程序的规范. 1.Java中的名称规范: (1)包名全是小写:xxyyzz: (2)类名接口名:首字母大写:XxxYyy: (3)变量名和函数名:变量名不能是关键字:多单 ...
- C---通过指针访问数组
C语言规定:如果指针变量P已指向数组中的一个元素,则P+1指向同一数组中的下一个元素. 引入指针变量后,就可以用俩种方法来访问数组元素了. 如果p的初值为&a[0],则: P+i 和a+i 就 ...
- MyReport报表引擎2.7.6.7新功能
新增二维码控件PDF417 设计器新增数据选项卡,可以拖放字段进行绑定 相关链接 MyReport演示.产品站点 相关文章 MyReport专栏
- 淘宝开放源码WebserverTengine基本安装步骤
1.Tengine 安装pcre #支持Tengine伪静态 # cd /usr/local/ # tar zxvf pcre-8.13.tar.gz #解压jar包 # cd pcre-8.13 # ...
- Spring IOC之 使用JSR 330标准注解
从Spring 3.0开始,Spring提供了对 JSR 330标准注解的支持.这些注解可以喝Spring注解一样被扫描到.你只需要将相关的Jar包加入到你的classpath中即可. 注意:如果你使 ...
- Objective C多态
面向对象的封装的三个基本特征是.继承和多态. 包是一组简单的数据结构和定义相关的操作在上面的其合并成一个类,继承1种亲子关系,子类能够拥有父类定的成员变量.属性以及方法. 多态就是指父类中定义的成员变 ...
- js理解
js-提前声明和new操作符理解 1.提前声明:声明变量后,js会把声明部分提前到作用域前面. var a=1; function aheadOfStatement(){ alert(a); va ...
- android中自定义shape
<shape> <!-- 实心 --> <solid android:color="#ff9d77"/> <!-- 渐变 --> & ...
- 认识CLR [《CLR via C#》读书笔记]
认识CLR [<CLR via C#>读书笔记] <CLR via C#>读书笔记 什么是CLR CLR的基本概念 通用语言运行平台(Common Language Runti ...
- 10-18 noip提高组模拟赛(codecomb)T1倍增[未填]
T1只想到了找环,> <倍增的思想没有学过,所以看题解看得雨里雾里的(最近真的打算学一下! 题目出的挺好的,觉得noip极有可能出现T1T2T3,所以在此mark 刚开始T1以为是模拟,还 ...