數模學習(一) AHP層次結構法

2021-10-07 15:15:05 字數 2617 閱讀 9483

ahp常用於評價類模型,根據專家經驗或者自己意見(通常是自己的awa)對不同的指標評分,再利用一致性檢驗的方法來判斷這類評價是否合理,如果合理,我們就可以通過指標一開始的不同權重,按照從大到小的順序清楚哪一類的指標最為重要,依據這個順序你就可以找到影響方案的最重要因素有哪些啦。

1.確定解決問題的層次結構

確定好我們的目標層(objective),準則層(criterion)和方案層(plan),在這個地方**寫作需要標註好箭頭,箭頭的順序是目標層—>準則層—>方案層,畫出乙個類似這樣的圖:

畫好這樣的圖的前提,需要了解的是:

2.準則層的判斷矩陣

現在我們的三個層次我們都已經清楚了(這裡先不介紹多層次的情況,後續遇到再更新),我們第二步需要做的就到了糾結的打分環節,這裡你可以選擇在網上找一些專家的評分(通常找不到),最推薦的節省時間的方式是根據隊伍的頭腦風暴+搜尋有關資料的理解來進行打分,那麼如何打分呢?

為了能讓程式設計隊友更容易的上手程式設計,我們這裡打分的步驟可以按照這樣的流程:

先將準則層的幾個準則依據這樣的**進行評價打分,目前假設我們確定的準則層有:景色、花費、居住、飲食和交通,打分**如下:

這個判斷矩陣就是根據不同準則的重要性進行兩兩對比得到的結果,然後用整數或者分數來表示,這個矩陣有幾個特點:

主對角線全部為1

根據主對角線對稱的兩個值aij

、aji

a_、a_

aij​、a

ji​,一定有aij

⋅aji

=1a_·a_ = 1

aij​⋅a

ji​=

1根據這兩個特點來填寫、檢查我們的判斷矩陣

3.乙個準則下對所有方案層進行比較

這一步裡我們這裡是將方案層的所有元素依據同一準則下的重要性不同來進行比較,打分形式與第二步一樣,需要得到的也是這麼乙個**:

根據第2、3步的判斷矩陣,得到最後的乙個總的判斷矩陣

不贅述啦,總結得到的圖是這樣的:

你可能會有些疑問,我的這些指標權重怎麼求呢,我們剛剛得到的只是乙個有著整數和小數的矩陣,這裡我們根本得不到最後需要的權重指數啊,接下來講解的就是在使用ahp中最重要的部分了:幾何平均法

步驟可以分為三步:

經過幾何平均法得到的權重向量的各個元素可以表示為:

ω i=

∏aij

1n(∑

∏akj

i)\omega_=\frac}^}}}^i)}

ωi​=(∑

∏akj

​i)∏

aij​

n1​​

最後得到的值為:

權重和應該為1,這裡由於四捨五入的原因所以可以忽略這些誤差

特徵值法(強烈推薦)

特徵值是最為常用的方法, 也是國賽**中最常見的關於ahp的方法,這裡我們還需要引入兩個概念:

通過計算我們得到了特徵值n

nn和對應的cr,如果cr符合要求,則可以選擇將特徵值代入矩陣得到對應的特徵向量後進行歸一化處理,最後得到的就是我們的權重向量啦~

5. 算方案層的最終得分,得分最高者即為目標層的最佳方案

根據上述方法求得的權重和各指標之間的對比關係,我們可以得到最後的這張圖:

然後對應行對應單元格相乘就可以了,計算步驟可以表示為,蘇杭:0.2636

∗0.5954+.

...+

0.1087

∗0.1667

=0.299.

0.2636*0.5954+....+0.1087*0.1667 = 0.299.

0.2636

∗0.5

954+

....

+0.1

087∗

0.16

67=0

.299

. 以上就是我們這節的全部內容了,在這裡還需要注意兩個地方:

層次分析法(AHP)

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

層次分析法(AHP)

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

MATLAB學習 層次分析法(AHP)

matlab實現 層次分析法 ahp 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 m 2...