基於matlab實現層次分析的演算法

2022-09-19 11:57:13 字數 1041 閱讀 8888

層次分析(ahp),以乙個準則層判斷矩陣和四個方案層判斷矩陣為例,包括一致性檢驗、特徵向量、特徵值的計算。我們以特徵向量作權重向量,直接輸出。

**如下:

format short

clc; clear

ri=[0,0,0.58,0.90,1.12,1.24,1.32,1.41,1.45];

a=input('

請輸入決策層判斷矩陣:');

b = input('

請輸入方案層判斷矩陣集合:');

[c,d]=eig(a);

shape =length(eig(d));

lamda =max(diag(d));

ri =ri(length(d))

ci = (roundn(lamda,-10)-shape)/(shape-1)

cr = ci/ri

if cr<0.10loc = find(diag(d)==lamda);

w0 = c(:,loc)./sum(c(:,loc))

else

disp(

'該矩陣未通過一致性檢驗,請修正後重試')

endc =;

for i = 1:length(b)

sprintf(

'方案層第%s個判斷矩陣

',num2str(i))

[e,f] =eig(b);

shape = length(eig(b));

lamda =max(diag(f));

ri = ri(length(b))

ci = (roundn(lamda,-10)-shape)/(shape-1)

cr = ci/ri

if cr<0.10loc = find(diag(f)==lamda);

wi = e(:,loc)./sum(e(:,loc))

c =[c,wi];

else

disp(

'該矩陣未通過一致性檢驗,請修正後重試')

end

endgoal = c*w0

層次分析法(Matlab實現)

基本步驟 1.建立層次分析結構模型。常見的有目標層 準則層 方案層模型。2.構造成對比較矩陣。常用的有1 9尺度。尺度大小取決於下層的元素個數。3.計算權向量並作一致性檢驗。引入一致性指標ci,ci越大,不一致越嚴重。引入隨機一致性指標ri。定義一致性比率cr ci ri。cr 0.1時,通過一致性...

層次分析法MATLAB

輸入成對比較矩陣,輸出權重值和一致性檢驗結果。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...

基於matlab的FFT分析

離散傅利葉變換dft的計算公式如下,fft為dft的一種快速演算法。n 64時 fs 100 取樣頻率 n 64 資料點數 n 0 n 1 抽樣間隔ts 1 fs,所以t n ts n fs為時間序列 t n fs 時間序列 x 0.5 sin 2 pi 15 t 2 sin 2 pi 40 t y...