周澤云 鄢烈虎 孫劍橋 陳財(cái)森 鄭顯柱
摘要:層次分析法作為多指標(biāo)綜合評價(jià)的常用方法,在各領(lǐng)域應(yīng)用廣泛。但在應(yīng)用中發(fā)現(xiàn),輔助完成層次分析法計(jì)算的軟件工具一般都存在安裝復(fù)雜或操作不便的問題。通過分析層次分析法原理和計(jì)算步驟,研究了判斷矩陣的特征向量、最大特征值的計(jì)算方法和一致性檢驗(yàn)方法,基于C#和SQLite數(shù)據(jù)庫設(shè)計(jì)開發(fā)了層次分析法軟件,以可視化界面完成評價(jià)指標(biāo)和數(shù)據(jù)錄入與管理。應(yīng)用表明,該軟件明顯提高了操作的方便性,對于進(jìn)一步推廣層次分析法在各領(lǐng)域的應(yīng)用具有重要意義。
關(guān)鍵詞:層次分析法;特征向量;最大特征值;SQLite
DOIDOI:10.11907/rjdk.161063
中圖分類號:TP319
文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2016)005-0082-03
0 引言
我們經(jīng)常會遇到一些復(fù)雜問題,需要進(jìn)行綜合評價(jià)才能作出決策。綜合評價(jià)就是將影響事物的各類因素分解,得到一個綜合指標(biāo)體系,在對各種指標(biāo)分解評價(jià)的基礎(chǔ)上進(jìn)行匯聚,從整體上反映被評價(jià)事物的情況[1]。
近年來,多指標(biāo)綜合評價(jià)研究不斷深入,其它領(lǐng)域的相關(guān)知識不斷滲入,使得多指標(biāo)綜合評價(jià)方法不斷豐富。目前,國內(nèi)外提出的綜合評價(jià)方法已有幾十種之多,而其中的層次分析法(AHP)因?yàn)樵硐鄬唵危谲娛?、?jīng)濟(jì)、衛(wèi)生、教育、工程等各個領(lǐng)域應(yīng)用廣泛。
但是,在應(yīng)用AHP進(jìn)行決策時,可選用的工具一般是Matlab軟件或者Excel,前者安裝過程相對復(fù)雜,學(xué)習(xí)成本相對較高,后者在評價(jià)指標(biāo)個數(shù)發(fā)生變化時,調(diào)整的工作量比較大。有的研究人員采用Yaahp軟件進(jìn)行計(jì)算,操作比較方便,但是免費(fèi)版功能過于簡單,不能完全滿足應(yīng)用需求。為此,筆者在研究層次分析法原理的基礎(chǔ)上,自行設(shè)計(jì)開發(fā)了用于計(jì)算的軟件,可以大幅提高AHP運(yùn)用的效率。
1 AHP原理與計(jì)算步驟
1.1 AHP原理
層次分析法是美國著名運(yùn)籌學(xué)家Saaty在20世紀(jì)70年代初提出的一種多目標(biāo)決策系統(tǒng)分析方法[2],其原理是:將需要決策的問題置于一個大系統(tǒng)中,將問題分解并層次化,形成一個多層次的評價(jià)分析模型;之后綜合運(yùn)用數(shù)學(xué)方法與定性分析方法,計(jì)算出每個評價(jià)指標(biāo)對上級指標(biāo)產(chǎn)生的影響權(quán)重。最終通過逐層計(jì)算,得到問題總目標(biāo)的權(quán)重,以此評價(jià)解決方案的優(yōu)劣,實(shí)現(xiàn)輔助決策。
1.2 計(jì)算步驟
(3)按照上述過程計(jì)算每一級指標(biāo)權(quán)重,然后自下而上逐級相乘,最終得到每個評價(jià)指標(biāo)相對總目標(biāo)的權(quán)重。
2 程序設(shè)計(jì)
2.1 開發(fā)環(huán)境
軟件基于VS2005.NET開發(fā),具體開發(fā)語言選用C#,數(shù)據(jù)庫選擇SQLite。
基于數(shù)據(jù)庫對評價(jià)方案進(jìn)行管理,程序開發(fā)相對簡便,計(jì)算效率高、速度快、存儲方便。而且,基于數(shù)據(jù)庫進(jìn)行管理,有利于軟件將來修改為中間件或者Web服務(wù)供其它軟件調(diào)用,可進(jìn)一步提高軟件的使用率。
SQLite數(shù)據(jù)庫是一個開源的嵌入式關(guān)系數(shù)據(jù)庫,它區(qū)別于其它數(shù)據(jù)庫的最大特點(diǎn)是零配置。它既不需要安裝和管理配置,也不需要系統(tǒng)管理員對數(shù)據(jù)庫進(jìn)行管理。此外,SQLite還具有存儲量大、速度快、可靠性好、支持標(biāo)準(zhǔn)SQL、無數(shù)據(jù)類型限制、源代碼開放、完全免費(fèi)、持續(xù)升級、可用于任何用途等諸多特點(diǎn)。
2.2 功能設(shè)計(jì)
軟件主要設(shè)計(jì)評價(jià)方案管理、評價(jià)指標(biāo)管理、數(shù)據(jù)管理、計(jì)算與結(jié)果輸出等功能。
(1)評價(jià)方案管理。主要提供評價(jià)方案的增加、刪除、修改等功能。如圖1所示,可以將評價(jià)方案數(shù)據(jù)保存在數(shù)據(jù)庫中,避免用戶進(jìn)行AHP評價(jià)操作時重新輸入數(shù)據(jù)。
(2)評價(jià)指標(biāo)管理。主要提供評價(jià)指標(biāo)的增加、刪除、修改等功能。如圖2所示,基于樹形控件對評價(jià)指標(biāo)進(jìn)行操作,指標(biāo)層次關(guān)系更清晰、操作更方便。
(3)數(shù)據(jù)管理。主要提供判斷矩陣初始數(shù)據(jù)錄入和修改功能。如圖3所示,軟件基于表格控件管理數(shù)據(jù),相比控制臺更直觀、操作更方便。軟件根據(jù)n個評價(jià)指標(biāo)自動生成n行n列的數(shù)據(jù)表格。設(shè)行標(biāo)為i,列標(biāo)為j,當(dāng)i=j時,第i行第j列自動設(shè)定為1且不允許修改。輸入其它單元格(i,j)數(shù)據(jù)x時,對應(yīng)單元格(j,i)的值自動設(shè)定為1/x。
5 結(jié)語
本文設(shè)計(jì)開發(fā)的層次分析法軟件,通過SQLite數(shù)據(jù)庫存儲數(shù)據(jù),以可視化的界面完成評價(jià)指標(biāo)和數(shù)據(jù)錄入與管理,可以明顯提高操作的方便性,對于進(jìn)一步推廣層次分析法在各領(lǐng)域的應(yīng)用具有重要意義。
參考文獻(xiàn):
[1]虞曉芬,傅玳.多指標(biāo)綜合評價(jià)方法綜述[J].統(tǒng)計(jì)與決策, 2004(11):119-121.
[2]陳明,郭立新. 基于AHP-熵權(quán)-TOPSIS的電動汽車動力性經(jīng)濟(jì)性綜合評價(jià)方法[J]. 機(jī)械設(shè)計(jì),2013(4):15-19.
[3]常建娥,蔣太立. 層次分析法確定權(quán)重的研究[J]. 武漢理工大學(xué)學(xué)報(bào):信息與管理工程版, 2007(1):153-156.
[4]葉耀軍,王首軍,魏磊,等. 矩陣最大特征值的近似求法[J]. 河南農(nóng)業(yè)大學(xué)學(xué)報(bào), 2001(S1):69-71.
[5]洪志國,李焱,范植華,等. 層次分析法中高階平均隨機(jī)一致性指標(biāo)(RI)的計(jì)算[J]. 計(jì)算機(jī)工程與應(yīng)用,2002(12):45-47,150.
(責(zé)任編輯:杜能鋼)