实验2层次分析法.docx
《实验2层次分析法.docx》由会员分享,可在线阅读,更多相关《实验2层次分析法.docx(13页珍藏版)》请在冰点文库上搜索。
实验2层次分析法
项目六矩阵的特征值与特征向量
实验2层次分析法
实验目的通过应用层次分析法解决一个实际问题,学习层次分析法的基本原理与方法;掌握用层次分析法建立数学模型的基本步骤;学会用Mathematica解决层次分析法中的数学问题.
基本原理
层次分析法是系统分析的重要工具之一,其基本思想是把问题层次化、数量化,并用数学方法为分析、决策、预报或控制提供定量依据.它特别适用于难以完全量化,又相互关联、相互制约的众多因素构成的复杂问题.它把人的思维过程层次化、数量化,是系统分析的一中新型的数学方法.
运用层次分析法建立数学模型,一般可按如下四个基本步骤进行.
1.建立层次结构
首先对所面临的问题要掌握足够的信息,搞清楚问题的范围、因素、各因素之间的相互关系,及所要解决问题的目标.把问题条理化、层次化,构造出一个有层次的结构模型.在这个模型下,复杂问题被分解为元素的组成部分.这些元素又按其属性及关系形成若干层次.层次结构一般分三层:
第一层为最高层,它是分析问题的预定目标和结果,也称目标层;
第二层为中间层,它是为了实现目标所涉及的中间环节,如:
准则、子准则,也称准则层;
第三层为最底层,它包括了为实现目标可供选择的各种措施、决策方案等,也称方案层.
注:
上述层次结构具有以下特点:
(1)从上到下顺序地存在支配关系,并用直线段表示;
(2)
整个层次结构中层次数不受限制.
2.构造判断矩阵
构造判断矩阵是建立层次分析模型的关键.假定以上一层的某元素y为准则,它所支配
的下一层次的元素为X1,X2,,Xn,这n个元素对上一层次的元素y有影响,要确定它们在y中的比重•采用成对比较法•即每次取两个元素Xi和Xj,用aij表示Xi与Xj对y的影响之比,全部比较的结果可用矩阵A表示,即称矩阵A为判断矩阵.
根据上述定义,易见判断矩阵的元素aj满足下列性质:
当aj0时,我们称判断矩阵A为正互反矩阵.
怎样确定判断矩阵A的元素aj的取值呢?
当某层的元素xi,X2,,xn对于上一层某元素y的影响可直接定量表示时,Xi与Xj对y的影响之比可以直接确定,aij的值也可直接确定.但对于大多数社会经济问题,特别是比较复杂的问题,元素为与Xj对y的重要性不容易直接获得,需要通过适当的量化方法来解决.
通常取数字1~9及其倒数作为aij的取值范围.这是因为在进行定性的成对比较时,通常采用
5级制(表1),在每两个等级之间各有一个中间状态,共1~9个尺度,另外心理学家认为进行成
对比较的因素太多,将超出人们的判断比较能力,降低精确.实践证明,成对比较的尺度以
72为宜,故aj的取值范围是1,2,,9及其倒数.
表1比较尺度aij的取值
3.计算层次单排序权重并做一致性检验层次单排序是指同一层次各个元素对于上一层次中的某个元素的相对重要性进行排序.
具体做法是:
根据同一层n个元素xi,X2,,Xn对上一层某元素y的判断矩阵A,求出它们对
于元素y的相对排序权重,记为W1,W2,,wn,写成向量形式w(w-,,w2,,wn)T,称其为A
的层次单排序权重向量,其中Wi表示第i个元素对上一层中某元素y所占的比重,从而得到
层次单排序•
层次单排序权重向量有几种求解方法,常用的方法是利用
判断矩阵A的特征值与特征向
量来计算排序权重向量W.
关于正互反矩阵A我们不加证明地给出下列结果•
(1)如果一个正互反矩阵A(aj)nn满足
则称矩阵A具有一致性,称元素Xi,Xj,Xk的成对比较是一致的;并且称A为一致矩阵.
(2)n阶正互反矩阵A的最大特征根maxn,当n时,A是一致的.
(3)n阶正互反矩阵是一致矩阵的充分必要条件是最大特征值maXn.
计算排序权重向量的方法和步骤
设w(-,2,,n)T是n阶判断矩阵的排序权重向量,当A为一致矩阵时,根据n
阶判断矩阵构成的定义,有
1
1
1
1
2
n
2
2
2
A
1
2
n
n
n
n
1
2
n
(2.1)
因而满足Awnw,这里n是矩阵A的最大特征根,w是相应的特征向量;当A为一般的
判断矩阵时AWmaxW,其中max是A的最大特征值(也称主特征
根),w是相应的特征向
n
量(也称主特征向量).经归一化(即i1)后,可近似作为排
i1
序权重向量,这种方法称为
特征根法•
一致性检验
在构造判断矩阵时,我们并没有要求判断矩阵具有一致性,
这是由客观事物的复杂性
与人的认识的多样性所决定的•特别是在规模大、因素多的情况下,对于判断矩阵的每个元
素来说,不可能求出精确的i/j,但要求判断矩阵大体上应该
是一致的•一个经不起推敲
的判断矩阵有可能导致决策的失误•利用上述方法计算排序权
重向量,当判断矩阵过于偏离
一致性时,其可靠性也有问题.因此,需要对判断矩阵的一致性进行检验,检验可按如下步骤
进行:
(1)计算一致性指标CI
CImaxn
n1
(2.2)
当CI0,即maxn时,判断矩阵A是一致的.当CI的值越大,判断矩阵A的不一致的程
度就越严重.
(2)查找相应的平均随机一致性指标RI
表2给出了n(1~11)阶正互反矩阵的平均随机一致性指标RI,
其中数据采用了
100〜150个随机样本矩阵A计算得到.
表2
矩阶数
阵
r
2
3
4
5
6
7
8
9
10
11
R
0
0
0.58
0.9
1.12
1.24
1.32
1.41
1.45
1.49
1.51
(3)计算一致性比例CR
CR
CI
RI
(2.3)
当CR0.10时,认为判断矩阵的一致性是可以接受的;否则应对
判断矩阵作适当修正.
4.计算层次总排序权重并做一致性检验
计算出某层元素对其上一层中某元素的排序权重向量后,
还需要得到各层元素,特别
是最底层中各方案对于目标层的排序权重,即层次总排序权重
向量,再进行方案选择.层次
总排序权重通过自上而下地将层次单排序的权重进行合成而得到.
考虑3个层次的决策问题:
第一层只有1个元素,第二层有n个元素,第三层有m个元素.设第二层对第一层的层次单排序的权重向量为第三层对第二层的层次单排序的权重向量为
以wk3)为列向量构成矩阵:
wi?
w2?
,wn?
(3)(3)(3)
w(3)(w<3),w23),,wn3))wi2,w22,,wn2,
(3)w1m,
w2m,
(3)wnm
(2.4)
则第三层对第一层的层次总排序权重向量为w(3)W(3)w
(2)
(2.5)
一般地,若层次模型共有s层,则第k层对第一层的总排序权重向量为
w(k)w(k)w(k1),k3,4,,s
(2.6)
其中w(k)是以第k层对第k1层的排序权向量为列向量组成的矩阵,w(k1)是第k1层对第
一层的总排序权重向量.按照上述递推公式,可得到最下层
(第s层)对第一层的总排序权重
向量为
w⑸W(sW(s1)W(3)w
(2)
(2.7)
对层次总排序权重向量也要进行一致性检验.具体方法是
从最高层到最低层逐层进行检验.
如果所考虑的层次分析模型共有s层.设第l(3ls)层的一
致性指标与随机一致性
指标分别为CIi(l),Cl2°,,Cin°(n是第l1层元素的数目)与rii
(1),ri2°,,Rin°,令
CI(l)[CIi(l),,CIi(l)]w(l1)
(2.8)
RI(l)[Rl1⑴,Rl1(l)]w(l1)(2.9)
则第丨层对第一层的总排序权向量的一致性比率为
CI(丨)
CR⑴CR(l1)-^7,13,4,,s
Rl(l)
(2.10)
其中cr
(2)为由(2.3)式计算的第二层对第一层的排序权重向量的一致性比率.
当最下层对第一层的总排序权重向量的一致性比率CR(s)0.1
时,就认为整个层次结构
的比较判断可通过一致性检验.
应用举例
问题在选购电脑时,人们希望花最少的钱买到最理想的电脑.试通过层次分析法建立数学模型,并以此确定欲选购的电脑.
1.建立选购电脑的层次结构模型
图2-2
该层次结构模型共有三层:
目标层(用符号Z表示最终的选择目标);准则层(分别用符号
y1,y2,,y5表示“性能”、“价格”、“质量”、“外观”、“售后服务”五个判断准则);方案层(分别用符号x1,x2,x3表示品牌1,品牌2,品牌3三种选择方案).
2.构造成对比较判断矩阵
(1)建立准则层对目标层的成对比较判断矩阵
根据表1的定量化尺度,从建模者的个人观点出发,设准
则层对目标层的成对比较判断矩阵为
1
5
39
3
1/5
1
1/22
1/2
A1/3
2
13
1
1/9
1/2
1/31
1/3
1/3
2
13
1
(2.11)
(2)建立方案层对准则层的成对比较判断矩阵
3.计算层次单排序权重向量并做一致性检验
先利用Mathematica计算矩阵A的最大特征值及特征值所对应的特征向量.
输入<(*调用只求实数运算的软件包*)
A={{1.0,5,3,9,3},{1/5,1,1/2,2,1/2},{1/3,2,1,3,1
},
{1/9,1/2,1/3,1,1/3},{1/3,2,1,3,1}};
(*以小数形式1.0输入进行近似计算,可避免精确解太长、太复杂*)
T=Eigensystem[A]//Chop
(*输入//Chop,把与零非常接近的数换成零*)则输出
{{5.00974,Nonreal,Nonreal,0,0},{{0.88126,0.167913,0.304926,0.0960557,0.304926},{0.742882,Nonreal,Nonreal,Nonreal,Nonreal},{0.742882,Nonreal,Nonreal,Nonreal,Nonreal},{-0.993398,0,0.0673976,0.0662265,0.0650555},{-0.65676,0,0.57431,0.043784,-0.486742}}}
(输出中的Nonreal表示复数)
从中得到A的最大特征值max5.00974,及其对应的特征向量输入
Clear[x];
x=T[[2,1]];
ww2二x/Apply[Plus,x]
则得到归一化后的特征向量
计算一致性指标CI亠」,其中n5,max5.00974,故
n1
查表得到相应的随机一致性指标
从而得到一致性比率
因CR
(2)0.1,通过了一致性检验,即认为A的一致性程度在容许的范围之内,可以用归一
化后的特征向量w
(2)作为排序权重向量.
下面再求矩阵Bj(j1,2,,5)的最大特征值及特征值所对应的特征向量,输入
B1=B3={{1.0,1/3,1/5},{3,1,1/2},{5,2,1}};
B2=Transpose[B1];
B4={{1.0,5,3},{1/5,1,1/2},{1/3,2,1}};
B5={{1.0,3,3},{1/3,1,1},{1/3,1,1}};
T1=Eigensystem[B1]//Chop
T2=Eigensystem[B2]//Chop
则输出
T3=Eigensystem[B3]//ChopT4=Eigensystem[B4]//ChopT5=Eigensystem[B5]//Chop
{{3.00369,Nonreal,Nonreal},{{0.163954,0.46286,0.871137},{Nonreal,Nonreal,0.871137},{Nonreal,Nonreal,0.871137}}};
{{3.00369,Nonreal,Nonreal},{{0.928119,0.328758,0.174679},{0.928119,Nonreal,Nonreal},{0.928119,Nonreal,Nonreal}}}{{3.00369,Nonreal,Nonreal},{{0.163954,0.46286,0.871137},{Nonreal,Nonreal,0.871137},{Nonreal,Nonreal,0.871137}}}
{{3.00369,Nonreal,Nonreal},{{0.928119,0.174679,0.328758},
{0.928119,Nonreal,Nonreal},
{0.928119,Nonreal,Nonreal}}}
{{3,0,0},
{{0.904534,0.301511,0.301511},
{-0.973329,0.162221,0.162221},
{-0.170182,-0.667851,0.724578}}
从上面的输出可以分别得到Bj(j1,2,,5)的最大特征值以及上述特征值所对应的特征向量
其中xi(xi1,xi2,xi3),i1,2,,5.为求出归一化后的特征向量,输入
Clear[x1,x2,x3,x4,x5];
x1=T1[[2,1]];
w1=x1/Apply[Plus,x1]
x2=T2[[2,1]];
w2=x2/Apply[Plus,x2]x3=T3[[2,1]];
w3=x3/Apply[Plus,x3]x4=T4[[2,1]];
w4=x4/Apply[Plus,x4]
x5=T5[[2,1]];
w5=x5/Apply[Plus,x5]
则输出
计算一致性指标CIi1n(i1,2,,5),其中n3,输入
n1
lamda={T1[[1,1]],T2[[1,1]],T3[[1,1]],T4[[1,1]],T5[[
1,1]]}
CI=(lamda-3)/(3-1)//Chop
则输出
查表得到相应的随机一致性指标
计算一致性比率CRC^,i1,2,,5,输入
RIi
CR=CI/0.58
则输出
因CRi0.1,(i1,2,,5),通过了一致性检验.即认为Bj(j1,2,,5)的一致性程度在容许的范围之内,可以用归一化后的特征向量作为其排序权重向量.
4.计算层次总排序权重向量并做一致性检验
购买个人电脑问题的第三层对第二层的排序权重计算结果列于表3.
表3
k
1
2
3
4
5
(3)
Wk
0.109452
0.648329
0.109452
0.648329
0.6
0.308996
0.229651
0.308996
0.12202
0.2
0.581552
0.12202
0.581552
0.229651
0.2
k
3.003693.00369
3.003693.003693
以矩阵表示第三层对第二层的排序权重计算结果为
w(3)即是第三层对第二层的权重向量为列向量组成的矩阵.最
下层(第三层)对最上层(第一
层)的总排序权向量为
为了计算上式,输入
W3=Transpose[{w1,w2,w3,w4,w5}];
ww3=W3.ww2
则从输出结果得到
为了对总排序权向量进行一致性检验,计算输入
CI.ww2
则从输出结果得到
再计算RI(3)[RI1,,RI5]w
(2),输入
RI=Table[0.58,{j,5}];
RI.ww2
则从输出结果得到
最后计算C.R(3)C.R
(2)C.I(3)/R.I(3),可得
因为C.R(3)0.1,所以总排序权重向量符合一致性要求的范围.
根据总排序权重向量的分量取值,品牌3的电脑是建模者对这三种品牌机的首选.
实验报告
1.根据你的设想购置一台计算机,需考虑什么样的判断准则?
利用层次分析法及数学软件做出最佳的决策.
2.根据你的经历设想如何报考大学,需要什么样的判断准则?
利用层次分析法及数学软件做出最佳的决策.
3.假期到了,某学生打算做一次旅游,有四个地点可供选择,假定他要考虑5个因素:
费用、景色、居住条件、饮食以及旅游条件.由于该学生没有固定收入,他对费用最为看重,其次是旅游点的景色,至于旅游条件、饮食,差不多就行,住什么地方就更无所谓了.这四个旅游点没有一个具有明显的优势,而是各有优劣.该同学拿不定主意,请用层次分析法帮助他找出最佳旅游点.
4.假设你马上就要从大学毕业,正面临择业的问题,你对工作的选择着重考虑下面几个因素:
(1)单位的声誉;
(2)收入;(3)专业是否对口;(4)是否有机会深造或晋升;(5)工作地点;(6)休闲时间.对上述各种因素你可以根据自己的具体情况排序,也可以增加或减少所考虑的因素.现在有四个单位打算
你,但如果用上述标准来衡量,没有一个单位具有明显的优势请用层次分析法为你自己做一个合理的选择.希望以上资料对你有所帮助,附励志名言3条:
1、要接受自己行动所带来的责任而非自己成就所带来的荣耀。
2、每个人都必须发展两种重要的能力适应改变与动荡的能力以及为长期目标延缓享乐的能力。
3、将一付好牌打好没有什么了不起能将一付坏牌打好的人才值得钦佩。