- 在线时间
- 0 小时
- 最后登录
- 2009-9-19
- 注册时间
- 2009-7-28
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 25 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 17
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 19
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   12.63% 该用户从未签到
|
MATLAB在层次分析法中的应用 % R0 X. u: ]* ?5 t; v# b. F- [
基于matlab层次分析法的实现1 J8 p" Z( g3 |. p" {/ ?
2006年07月28日 星期五 上午 11:04
( E( Z7 i! q0 F) k8 vdisp('请输入判断矩阵A(n阶)');3 a# X4 X. b( _$ D6 D
A=input('A=');
% a1 h( q, D* P' Q, M# x& _' S2 L0 e[n,n]=size(A);
3 o& M. B* `# z1 k" U" ox=ones(n,100);
! v- r+ M$ C4 _. P; x( W; [ Jy=ones(n,100);( a3 u+ k' o( z/ @) K( T
m=zeros(1,100);
6 d1 {9 n4 o3 {9 [3 \m(1)=max(x(:,1));
& @' ]% K t _- P) _& @y(:,1)=x(:,1);( z9 Q% _# e6 ^) O5 V
x(:,2)=A*y(:,1);
2 g8 A U& \. V: m; E2 vm(2)=max(x(:,2));. A5 U' f: h- `, l1 v
y(:,2)=x(:,2)/m(2);
5 k7 ~* j( v1 xp=0.0001;i=2;k=abs(m(2)-m(1));+ k! B0 m3 b t+ `2 B. O1 W
while k>p
( {+ a5 \/ m4 z/ i- z i=i+1;* I* Q6 @# S6 F1 o4 \$ \1 s S X/ g
x(:,i)=A*y(:,i-1);$ l" E( a5 y0 l- W9 ~
m(i)=max(x(:,i));2 ? T9 {" M6 F& @6 \
y(:,i)=x(:,i)/m(i);3 m* d, \& e8 u% y4 N! {& w0 {
k=abs(m(i)-m(i-1));# U7 ]8 I6 J0 O7 N1 V/ l' h
end) X' e4 ]1 ~* t+ h
a=sum(y(:,i));
( L2 {- P! @0 f8 k# ]( o% O. H3 aw=y(:,i)/a;
" a3 s, ^# ~# F. Y) l+ U1 {t=m(i);
4 P4 `9 B3 h' H2 d6 ^$ |disp(w);disp(t);! C1 t. \( y" G$ T$ [ h
%以下是一致性检验3 p, } v/ q% M( l3 a
CI=(t-n)/(n-1);RI=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];
+ v, H3 o; ~7 {2 D+ }# C2 |. LCR=CI/RI(n);& T4 Z; E0 L% j+ g4 I6 ?1 Y4 ]
if CR<0.10; b7 A- \+ P5 a7 |* P
disp('此矩阵的一致性可以接受!');
# ^, p8 P i- S" h0 K/ t! D3 j# w! j disp('CI=');disp(CI);
7 o, |7 V- s) L$ C1 ` n disp('CR=');disp(CR);- q. z% O* N9 O, r
end |
|