- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565643 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174916
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
层次分析法! b# o! |' s N: Z
1.建立模型
6 Q+ r' I# A2 v4 Y8 }3 g' ^; {! k ) G. @. c) H+ ~% @; c
目标:想要达到的目的 准则:影响目的的因素 可供选择物:备选方案 2.计算第二层 因素权重 (1)构造判断矩阵 ![]()
4 s/ z: o( |3 m- F6 G) A
! q: ?& Q9 Z+ V! ?* N4 E/ S 根据以上准则对因素进行两两比较,得出正互反矩阵,即判断矩阵) X! _& W/ x; ?5 y g. p
0 |+ |- m0 \, [/ }6 i2 [" z0 p (2)计算因素权重
; J: j* Q3 E/ \9 \, V, Y1 Q; R% D1 V3 E4 Q. U" J
8 I+ d; C& s3 o! M) \! n7 S
& F( N& L! Z+ @4 } M) K
此处A即判断矩阵,W即为因素的权重,将其归一化即可。
6 T$ _" z: K& X6 ~) Q" [0 l* c) u5 o# a$ G% G' w y7 G& P
(3)判断计算的权重是否可用
. x. w6 [# [ i* i$ p5 b. \7 D7 q
即一致性检验
6 F8 q3 M2 t# a5 _ q" M( @) N6 q, O
6 o# s T$ f; w CI需自己计算 RI需要查询
; v9 J9 G/ D- z5 @+ ^6 i# t! O8 e6 Q( F4 E! M5 J. y2 O9 |
当 CR<0.1 时,认为判断矩阵的一致性是可以接受的,否则应对判断矩阵作适当修正。 ( a- y0 T5 J' E/ `
6 o) |2 T; P5 K% z1 C
! I" U' F( s2 e: K( Y1 {
# {) k2 `* g+ G* G3.计算第三层 方案的权重2 w2 y* F3 J# a- V' x n/ n
6 T0 C% Y; S- x: A, U' y5 X8 ^. r
因为方案的权重在不同因素下结果不同,所以n个因素需要n个判断矩阵。$ A5 ]" J/ r& z( E; j' g
% s6 t3 n: `( ~0 M, j计算方法和第二层计算方法相同
' x: u' ]( {$ e8 g. g8 I: O. E; V9 S0 H6 ]5 }5 M
最后会算出来n个W向量
' t- Q0 V2 F" |
- _! W i e4 m' H4 }5 h( W将这n个W向量相加,再归一化即可获得最后的结果。
* j N1 L* K2 M1 \5 Y1 ^
+ m9 I6 ~3 p$ G& Z. k4 G/ E1 I附代码, n) I2 D* F& J# O/ ?0 f" K! N
function Q=AHP(A)+ P# ^' q) g; p* x) V& S9 n- O' b) m
[m,n]=size(A);
, o7 p% V) ^- Y9 n! ARI=[0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49 1.51];! i, z" |$ ]9 _5 w- g/ n
R=rank(A); %求判断矩阵的秩8 ^8 y; g: K( a! s$ I
[V,D]=eig(A); %求判断矩阵的特征值和特征向量,V特征向量,D特征值(对角阵);
0 n0 |, b3 b* ]' h0 g& Itz=max(D);
& c- k( c/ K; }. L9 n/ OB=max(tz); %最大特征值
+ r: r7 F4 @, b7 x! x. Q0 c4 _[row, col]=find(D==B); %最大特征值所在位置5 f% _ x" y5 i
C=V(:,col); %对应特征向量
7 r- N M* }5 {CI=(B-n)/(n-1); %计算一致性检验指标CI( u9 p; F! w; t
CR=CI/RI(1,n); $ v, o# y7 d; `0 A$ I; {) I; `
if CR<0.10! x; l9 L+ Z) ?- p' I2 Q
disp('CI=');disp(CI);
' q) \: t0 D/ G7 h& ^ disp('CR=');disp(CR);
- b! v9 T, U, h# X$ i disp('对比矩阵A通过一致性检验,各向量权重向量Q为:');
: D: x/ m4 j! _/ f( n4 R. v Q=zeros(n,1);4 J" @- N7 N4 W7 ~2 M4 i
for i=1:n
) a# Q, |0 {, q( Y8 o Q(i,1)=C(i,1)/sum(C(:,1)); %特征向量标准化' ^3 o* \& W( `9 K4 e. \" T
end9 A6 A& ` `+ {( n
else! O) R. F* R1 [& \- F
disp('对比矩阵A未通过一致性检验,需对对比矩阵A重新构造');% T+ r- e! a: i+ y
( `6 K8 N% b2 a; ~) J% `9 C) V% k n4 G, }. L
! F; R+ `; x0 c2 l
$ ?8 q3 m: f o$ V/ p |
zan
|