林驍元
摘要:通過研究工程造價的構(gòu)成及其影響因素,利用神經(jīng)網(wǎng)絡(luò)有效處理多輸入多輸出非線性映射的優(yōu)點,將工程主要特征量作為網(wǎng)絡(luò)的輸入量,工程造價作為輸出量,建立了基于神經(jīng)網(wǎng)絡(luò)的工程估價模型。收集了某核電廠若干BOP電氣工程作為樣本,將訓(xùn)練好的網(wǎng)絡(luò)用于某BOP子項電氣工程的造價預(yù)測,經(jīng)測算其精度滿足要求,能夠用于工程快速估算。
Abstract: By studying the constitution of engineering cost and its influencing factors, using advantages of neural networks to effectively handle the multi-input multi-output nonlinear mapping, the main feature of the project is taken as the input of the network, and the project cost is used as the output, an engineering evaluation model based on the neural network is established. A number of BOP electrical projects in a nuclear power plant were collected as samples, and the trained network was used to predict the cost of a certain BOP sub-item electrical project. The accuracy was measured to meet the requirements and could be used for rapid project estimation.
關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò);工程造價;估算模型
Key words: neural network;project cost;estimation model
中圖分類號:TP183;TU723.3 文獻標(biāo)識碼:A 文章編號:1006-4311(2018)27-0077-04
0 引言
在整個建設(shè)工程周期中,建設(shè)前期的工程造價估算對整個建造成本的控制,起著關(guān)鍵的作用。造價估算是整個成本管理過程的起點,是成本控制的基礎(chǔ),因此尋找一套快速、便捷、實用的工程造價估算方法已成為一種迫切的需要。[1]而神經(jīng)網(wǎng)絡(luò)作為人工智能常用的一種方法,具有學(xué)習(xí)、記憶、聯(lián)想、歸納、概括和抽取、容錯以及自適應(yīng)的能力,已在很多領(lǐng)域都得到廣泛的應(yīng)用。本文針對工程造價估算問題,結(jié)合神經(jīng)網(wǎng)絡(luò)的優(yōu)點,嘗試采用基于神經(jīng)網(wǎng)絡(luò)的工程造價估算方法。
1 神經(jīng)網(wǎng)絡(luò)簡介
神經(jīng)網(wǎng)絡(luò)多種多樣,本文以應(yīng)用最為廣泛的誤差逆?zhèn)鞑ト斯ど窠?jīng)網(wǎng)絡(luò)(Back Propagation Artificial Neural Network,BP ANN)即BP神經(jīng)網(wǎng)絡(luò)作為模型。
1.1 基本原理[2]
BP神經(jīng)網(wǎng)絡(luò)由多個神經(jīng)元組成,見圖1(a),分為輸入層、隱含間和輸出層,工作分為訓(xùn)練和預(yù)測兩個階段,在訓(xùn)練階段,修正權(quán)值和獲得映射關(guān)系固定權(quán)值,預(yù)測階段計算并輸出結(jié)果。學(xué)習(xí)階段分為兩部分,一部分是輸入信號經(jīng)過隱含層到達輸出層為正向傳播,另一部分是當(dāng)實際輸出與樣本的希望值不一致時,系統(tǒng)自動算出輸出誤差,是誤差反向傳播,誤差信號由輸出層沿原路逐層向前反饋。網(wǎng)絡(luò)層之間的聯(lián)接權(quán)值由誤差調(diào)節(jié)并修改,最終使誤差達到最小值。在模擬中,經(jīng)過大量樣本的訓(xùn)練,權(quán)值被固定為定值,見圖1(b)。
1.2 神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法[3]
BP算法的學(xué)習(xí)由四個過程組成:輸入模式由輸入層經(jīng)隱含層向輸出層的“模式順傳播”過程;網(wǎng)絡(luò)的希望輸出與網(wǎng)絡(luò)實際輸出之差的誤差信號由輸出層經(jīng)隱含層向輸入層修正連接權(quán)的“誤差逆?zhèn)鞑ァ边^程;由“模式順傳播”與“誤差逆?zhèn)鞑ァ钡姆磸?fù)交替進行的網(wǎng)絡(luò)“記憶訓(xùn)練”過程;網(wǎng)絡(luò)趨向收斂即網(wǎng)絡(luò)的全局誤差趨向極小值的“學(xué)習(xí)收斂”過程,即“模式順傳播”→“誤差逆?zhèn)鞑ァ薄?“記憶訓(xùn)練”→ “學(xué)習(xí)收斂”四個過程,這四個過程可以進一步合并為“正向傳播”和“反向傳播”兩個過程,算法描述如下:
1.2.1 正向傳播,計算實際的輸出yj
上式中,n是結(jié)點j的輸入結(jié)點個數(shù),xi是第i個輸入結(jié)點的輸出值,Wij是第i個輸入結(jié)點到結(jié)點j的權(quán)值,i=0時,Wij和xi分別代表閾值和1。
1.2.2 反向傳播,修改第K層結(jié)點的權(quán)值和閾值的公式:
上式中,xj是結(jié)點j的實際輸出值,m是結(jié)點j的輸出結(jié)點個數(shù),Wij是結(jié)點j到下一層的連接權(quán)值和閾值。
由于BP算法采用的是梯度下降法,即訓(xùn)練過程從某一起點沿著誤差函數(shù)的斜面逐漸趨于最小點E→0,這就有可能會使整個網(wǎng)絡(luò)模型陷于極小值點,同時BP算法學(xué)習(xí)速度較慢,為避免這些現(xiàn)象的發(fā)生,采用動量法和學(xué)習(xí)率自適應(yīng)調(diào)整兩種策略來抑制網(wǎng)絡(luò)陷于局部極小和提高其訓(xùn)練速度。
1.3 神經(jīng)網(wǎng)絡(luò)的特點
①BP人工神經(jīng)網(wǎng)絡(luò)的重要功能是實現(xiàn)非線性映射,找出兩組數(shù)據(jù)之間的關(guān)聯(lián),實現(xiàn)網(wǎng)絡(luò)層間的空間映射,適合于函數(shù)逼近;
②求解權(quán)值用梯度下降法迭代運算,能夠使誤差較小。雖然能夠使權(quán)值收斂到某個值,可能會產(chǎn)生一個局部最小值,不一定是全局最小值,但可以采用動量法和學(xué)習(xí)率自適應(yīng)調(diào)整兩種策略來彌補不足;
③使用隱含層結(jié)點,能使可調(diào)參數(shù)的數(shù)量增加,優(yōu)化了神經(jīng)網(wǎng)絡(luò),從而得到更精確的解;
④BP神經(jīng)網(wǎng)絡(luò)是全局逼近的網(wǎng)絡(luò),且具有泛化功能,其泛化能力與網(wǎng)絡(luò)結(jié)構(gòu)有關(guān)。
2 估算網(wǎng)絡(luò)的建立
分析工程造價估算問題,可以理解為一種映射問題,神經(jīng)網(wǎng)絡(luò)的重要特點之一就是可以高度逼近任意兩個不同維空間的非線性映射,其建立在簡單非線性函數(shù)復(fù)合的基礎(chǔ)上,可以表達工程造價這一復(fù)雜過程。
2.1 網(wǎng)絡(luò)結(jié)構(gòu)的取定
BP網(wǎng)絡(luò)結(jié)構(gòu)是一種多層網(wǎng)絡(luò)結(jié)構(gòu),由輸入層、一層或多層隱含層和輸出層組成,各層之間采用全互連接,但同一層單元間不相互連接。一般而言,三層BP網(wǎng)絡(luò)可以逼近任何復(fù)雜的非線性函數(shù)。為此,采用三層BP網(wǎng)絡(luò)模型。
2.1.1 輸入層
輸入層結(jié)點的個數(shù)由工程特征的數(shù)量確定,一般提取與工程造價關(guān)系最為密切的參數(shù)。
2.1.2 輸出層
輸出層結(jié)點對應(yīng)于評價結(jié)果,即工程的造價。
2.1.3 隱含層
隱含層結(jié)點的個數(shù)按柯爾莫哥洛夫定理取為2m+1(m為輸入層結(jié)點的個數(shù))。
2.2 輸入輸出數(shù)據(jù)的歸一化
考慮到工程各項特征量之間取值范圍差異很大,沒有統(tǒng)一的度量標(biāo)準(zhǔn),會影響計算結(jié)果,并帶來分析和處理上的不便。所以在輸入結(jié)點送入神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)之前,都應(yīng)實施歸一化處理,神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果再經(jīng)過反變換后變?yōu)閷嶋H的輸出結(jié)果,其歸一化變換公式:
上式中,x為輸入特征量,xmax和xmin分別為輸入特征量的最大值和最小值。
歸一化反變換公式:
2.3 造價估算流程
通過將用來描述工程造價特征的信息作為網(wǎng)絡(luò)的輸入向量;將造價作為神經(jīng)網(wǎng)絡(luò)的輸出;利用過去積累的典型工程的工程特征、造價分析資料作為訓(xùn)練樣本對網(wǎng)絡(luò)進行訓(xùn)練,使不同的輸入向量得到不同的輸出量值,從而實現(xiàn)輸入空間(工程特征)到輸出空間(工程造價)的映射,它就是基于神經(jīng)網(wǎng)絡(luò)的造價估算,其流程如圖2所示。
3 實例分析
本文以某核電廠六個BOP子項的電氣工程作為樣本,運用神經(jīng)網(wǎng)絡(luò)對該核電廠某子項電氣工程進行造價估算。
3.1 工程特征量的選取
根據(jù)電氣工程的特點、歷史造價資料及相關(guān)設(shè)計規(guī)范,本文確定了九項工程特征量:負荷等級、計算負荷、應(yīng)急(備用)電源容量、建筑物層數(shù)、建筑高度、建筑物周長、平均照明功率密度、防雷建筑物等級、建筑面積。六個樣本的特征量及造價原始數(shù)據(jù)見表1。
3.2 樣本數(shù)據(jù)的歸一化處理
由上一節(jié)可知,在進行神經(jīng)網(wǎng)絡(luò)訓(xùn)練之前,輸入量需要進行歸一化的變換,變換后的數(shù)據(jù)見表2。
3.3 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練
在matlab中搭建神經(jīng)網(wǎng)絡(luò),輸入層結(jié)點為9個,輸出層結(jié)點為1個,隱含層結(jié)點為19個。將樣本作為輸入進行訓(xùn)練,給定允許全局誤差為10-4,允許最大訓(xùn)練步數(shù)為2000步。經(jīng)439步達到全局誤差為9.97-4,如圖3所示,得到的網(wǎng)絡(luò)權(quán)值及閾值見表3。
3.4 神經(jīng)網(wǎng)絡(luò)的預(yù)測
將該核電廠某子項的工程特征量提取后,如表4所示,經(jīng)歸一化變換后,輸入已訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)中,輸出量經(jīng)歸一化反變換后得到電氣工程的總造價為160.1599萬元。
3.5 預(yù)測結(jié)果分析
某子項電氣工程預(yù)算總造價為171.9392萬元,而預(yù)測的結(jié)果為160.1599萬元,誤差為6.85%,說明網(wǎng)絡(luò)有比較高的泛化能力,估算效果良好,可見利用神經(jīng)網(wǎng)絡(luò)做造價估算快速,便捷,具有實際的工程應(yīng)用價值。
4 結(jié)束語
利用BP神經(jīng)網(wǎng)絡(luò)建立了工程造價的估算模型,經(jīng)過訓(xùn)練后能夠達到理想的學(xué)習(xí)效果,訓(xùn)練好的網(wǎng)絡(luò)能夠估算其他工程的造價,為工程快速估算提供了一種有效的途徑。但是基于神經(jīng)網(wǎng)絡(luò)的估算方法主要限制在于工程特征向量的選取和訓(xùn)練樣本的選取上,準(zhǔn)確度取決于這兩點。然而這兩個方面的選取目前只能憑借經(jīng)驗來完成,暫時還缺乏理論指導(dǎo)。因此,只要選取的工程特征能夠代表工程本質(zhì)、選取的訓(xùn)練樣本量多面廣,那么應(yīng)用神經(jīng)網(wǎng)絡(luò)進行工程估價將更具有發(fā)展?jié)摿Α?/p>
參考文獻:
[1]陳小龍,王立光.基于建筑設(shè)計參數(shù)分析模型的工程造價估算[J].同濟大學(xué)學(xué)報(自然科學(xué)版),2009,37(6):1116.
[2]周麗萍,胡振鋒.BP神經(jīng)網(wǎng)絡(luò)在建筑工程估價中的應(yīng)用[J].西安建筑科技大學(xué)學(xué)報(自然科學(xué)版),2005,37(2):262.
[3]Simon Haykin著.神經(jīng)網(wǎng)絡(luò)原理[M].葉世偉,史忠植,譯.北京:機械工業(yè)出版社,2004:11.