R語言 AHP層次分析法

2021-07-09 20:09:28 字數 1320 閱讀 7085

ahp求權重有兩種方法,和積法和方根法,方根法比較好實現所以用方根法求解。

##輸入:judgematrix 判斷矩陣;round 結果約分位數

##輸出:權重

weight <- function (judgematrix, round=3)

判斷矩陣的一致性檢驗用於檢驗,你的判斷矩陣是否科學合理,ri值只查到了位數達到11的值。所以這段**最多可以檢驗11個變數的判斷矩陣。多於11個變數,可以自己查一下ri和改改**。

###注:crtest呼叫了weight函式

###輸入:judgematrix

###輸出:ci, cr

crtest <- function (judgematrix, round=3)

if (n > 2)

else

} else

if (n <= 2)

consequence <- c(round(ci, round), round(cr, round))

names(consequence) <- c("ci", "cr")

consequence

}

隨便生成了個判斷矩陣,檢驗了一下。

b <- c(1,3,1/2,1/2,3,1/3,1,1/2,1/3,1/2,

3,2,1,3,2,2,3,1/3,1,2,1/3,2,1/2,1/2,1)

(judgematix <- matrix(b, ncol=5))

[,1] [,2] [,3] [,4] [,5]

[1,] 1.0

0.33

2.00.3

[2,] 3.0

1.02

3.02.0

[3,] 0.5

0.51

0.30.5

[4,] 0.5

0.33

1.00.5

[5,] 3.0

0.52

2.01.0

##計算權重

weight(judgematix)

weight(judgematix)

[1] 0.157

0.364

0.092

0.132

0.254

##判斷矩陣一致性檢驗

crtest(judgematix)

ci= 0.118

cr= 0.105

請調整判斷矩陣,使cr<0.1

ci cr

0.118

0.105

層次分析法(AHP)

日常生活中有許多決策問題。決策是指在面臨多種方案時需要依據一定的標準選擇某一種方案。面臨各種各樣的方案,要進行比較 判斷 評價 最後做出決策。這個過程主觀因素占有相當的比重,給用數學方法解決問題帶來不便。而層次分析法就是用來有效處理這類問題的實用方法。一般分為三層,最上面為目標層,最下面為方案層,中...

層次分析法(AHP)

層次分析法 簡稱ahp 的主要特點是通過建立遞階層次結構,把人類的判斷轉化到若干因素兩兩之間重要度的比較上,從而把難於量化的定性判斷轉化為可操作的重要度的比較上面。在許多情況下,決策者可以直接使用ahp進行決策,極大地提高了決策的有效性 可靠性和可行性,但其本質是一種思維方式,它把複雜問題分解成多個...

層次分析法 AHP 介紹

層次分析法 ahp 層次分析法 analytic hierarchy process,簡稱ahp 是美國匹茲堡大學數學系教授,著名運籌學家薩迪 t.l.saaty 於 70 年代中期提出來的一種將定性與定量相結合的 系統化 層次化的多屬性決策分析方法。在多屬性決策問題中,通常具有以下共同特點 屬性之...