付家棋,胡國杰
(遼寧工業(yè)大學(xué) 經(jīng)濟管理學(xué)院,遼寧 錦州 121001)
在建筑工程擬建之前,工程項目的造價預(yù)測對可行性分析與項目決策起著重要的作用。在傳統(tǒng)的估算方法中,工程造價的從業(yè)人員通過各省頒布的投資估算指標(biāo),對工程造價進行預(yù)測,由于受到造價人員職業(yè)素養(yǎng)和主觀性的影響,工程造價的預(yù)測效果并不理想。人工神經(jīng)網(wǎng)絡(luò)具有良好的擬合能力,可以較為準(zhǔn)確地預(yù)測擬建項目的工程造價,預(yù)測的數(shù)據(jù)可以為工程估算提供有效的參考,郝艷芬等[1]采用BP神經(jīng)網(wǎng)絡(luò)實現(xiàn)了市政工程的造價預(yù)測。但是,BP神經(jīng)網(wǎng)絡(luò)存在著搜索能力差、對初始位置較為敏感的缺陷[2]。為加強神經(jīng)網(wǎng)絡(luò)的全局探索能力,潘雨紅等[3]運用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),為其賦予最佳的初始迭代位置,加快了收斂速度,準(zhǔn)確地預(yù)測了公路工程的造價。陳小麗[4]采用粒子群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),實現(xiàn)了高層住宅工程的造價預(yù)測。
2014年Mirjalili等[5]提出了灰狼優(yōu)化算法(Grey Wolf Optimization Algorithm,GWO)?;依撬惴ň哂性O(shè)置參數(shù)少和尋優(yōu)能力強的優(yōu)點,在預(yù)測的準(zhǔn)確度和算法時間方面具有良好的表現(xiàn)。但是,灰狼算法存在著種群多樣性單一、全局探索和局部搜索能力不易協(xié)調(diào)、過早收斂的缺陷。為了改進算法的性能,Nadimi-Shahraki等[6]提出了改進灰狼算法(Improved Grey Wolf Optimizer,I-GWO)。I-GWO采用了一種名為維度學(xué)習(xí)的搜索策略(Dimension Learningbased Hunting,DHL),增強了灰狼種群的多樣性,平衡了全局探索和局部搜索的能力。
本文將主成分分析降維處理的數(shù)據(jù)輸入到IGWO-BP模型中進行訓(xùn)練,通過與其他模型進行對比分析和誤差評價分析,驗證I-GWO-BP模型的有效性。
為展開住宅工程的造價預(yù)測,需要輸入一組可以代表工程特征的數(shù)據(jù),這些數(shù)據(jù)不僅能直接反映建筑工程的特點,而且還是影響建筑工程造價的重要因素。按照各分部工程對工程造價的重要性程度,對工程造價指標(biāo)進行初步選取。通過查閱資料,并對梁喜等[7-16]學(xué)者的文獻進行分析,根據(jù)造價指標(biāo)的重要性程度與獲取難易程度進行篩選,最終選取出14項造價指標(biāo),同時對定性指標(biāo)進行量化處理,具體指標(biāo)見表1。
表1 住宅工程造價指標(biāo)量化表
灰狼的種群中存在著特定的等級制度。在算法的搜索過程中,每次迭代時最佳的3只灰狼被定義為α,β和δ,其引導(dǎo)其余的灰狼ω在搜索空間中搜尋獵物?;依撬惴ǖ膶?yōu)過程為包圍獵物、狩獵跟蹤、攻擊獵物。
(1)灰狼包圍獵物的模型如下
式中:D表示個體與獵物之間的距離;Xp表示獵物的位置向量;X表示灰狼的位置向量;t表示當(dāng)前的迭代的次數(shù),式(2)表示灰狼位置的更新公式。A和C是系數(shù)向量,由式(3)和式(4)計算。
式中:r1和r2是[0,1]之間的隨機值;a為收斂因子。在迭代過程中從2線性減少到0。
(2)灰狼有協(xié)作包圍獵物的能力,由適應(yīng)度最佳的灰狼α,β和δ帶領(lǐng)其余灰狼進行位置更新?;依莻€體的獵物跟蹤模型如下
式中:Dα,Dβ,Dδ分別表示灰狼α,β和δ與其他灰狼ω個體之間的距離;Xα,Xβ,Xδ分別代表灰狼α,β和δ的當(dāng)前位置;C1,C2,C3的值由式(4)所計算。
式中:X1(t)表示灰狼ω個體朝向灰狼α更新的步長;X2(t)表示灰狼ω個體朝向灰狼β更新的步長;X3(t)表示灰狼ω個體朝向灰狼δ更新的步長?;依铅貍€體最終的更新位置由式(7)所確定。
經(jīng)過不斷的迭代與更新,獵物最佳的位置將會被確定,即灰狼α所處的位置。
灰狼算法是在尋優(yōu)的過程中每只灰狼通過最佳的灰狼引導(dǎo)來進行位置更新的,這就導(dǎo)致了灰狼算法種群多樣性差,易早熟收斂。為了克服灰狼算法的這些缺陷,Nadimi-Shahraki[6]提出了一種選擇和更新相組合的搜索策略。這種搜索策略名為維度學(xué)習(xí)。DLH的搜索策略提高了全局搜索能力,改善了種群多樣性。改進灰狼算法的搜尋過程為初始化、移動、選擇和更新。
(1)初始化階段:I-GWO進行初始化操作,將N只灰狼隨機分布在搜索空間內(nèi),其范圍為[lj,uj]。初始化模型如下
式中:lj和uj分別代表搜索邊界的上下限;randj[0,1]為0到1之間的隨機值。
第i只灰狼在第t次迭代中的位置為實值向量Xi(t)={Xi1,Xi2,…,XiD},由適應(yīng)度函數(shù)f(Xi(t))計算,其中D為問題的數(shù)量。初始化后的狼群被儲存在N行D列的Pop矩陣中。
(2)移動階段:DLH搜索策略與GWO算法搜索策略都會產(chǎn)生一個候選位置來引導(dǎo)灰狼進行位置更新。Xi-GWO(t+1)是GWO算法引導(dǎo)灰狼位置更新的第一個候選位置,由式(7)所計算。首先,在DLH搜索策略中,灰狼個體是向鄰域內(nèi)不同的灰狼和Pop種群內(nèi)隨機選擇的灰狼學(xué)習(xí)的。計算灰狼個體的鄰域半徑,模型如下
式中:鄰域的半徑Ri(t)表示的是當(dāng)前灰狼位置Xi(t)與候選位置Xi-GWO(t+1)之間的歐氏距離。
然后,在此鄰域內(nèi)所有的灰狼表示為Ni(t),其中Di為Xi(t)與Xj(t)之間的歐氏距離。
最后,DLH搜索策略為灰狼Xi(t)提供另一個更新的候選位置,表示為Xi-DLH(t+1),模型如下
式中:Xi-DLH,d(t+1)的第d維是由Ni(t)中隨機選擇的灰狼XN,d(t)的第d維與Pop種群中隨機選擇的灰狼Xr,d(t)的第d維進行計算的。對灰狼的第d維執(zhí)行此操作后,迭代計數(shù)器加1,直到達到最大的迭代次數(shù)D完成候選位置的更新操作,其中D為問題的維數(shù)。
(3)選擇和更新階段:通過比較Xi-GWO(t+1)與Xi-DLH,d(t+1)的適應(yīng)度值來選出最佳的候選位置。如果最佳候選位置Xi(t+1)的適應(yīng)度值優(yōu)于灰狼個體Xi(t),則進行位置更新,否則,灰狼Xi(t)的位置保持不變。
所有灰狼個體完成位置更新后,迭代計數(shù)器加1,直到達到預(yù)先設(shè)定的迭代次數(shù)。
若誤差函數(shù)存在多個峰值,BP神經(jīng)網(wǎng)絡(luò)沿著負梯度方向?qū)ふ易顑?yōu)解的過程中易陷入局部極小點,預(yù)測結(jié)果產(chǎn)生的偏差較大。然而,I-GWO算法的全局搜索能力較強,可以為神經(jīng)網(wǎng)絡(luò)尋找出全局最優(yōu)解。使用BP神經(jīng)網(wǎng)絡(luò)的誤差函數(shù)作為I-GWO算法的適應(yīng)度函數(shù),通過BP神經(jīng)網(wǎng)絡(luò)連接權(quán)值和閾值的數(shù)量來決定I-GWO算法中灰狼的維數(shù),那么I-GWO算法尋優(yōu)的過程就是權(quán)值和閾值更新的過程。因此,I-GWO算法尋優(yōu)的過程替代了BP神經(jīng)網(wǎng)絡(luò)梯度下降的過程[17]。經(jīng)過不斷更新和迭代,最終確定出全局最優(yōu)值,即灰狼α所處的位置。最后將灰狼α的位置映射為BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,并結(jié)合BP神經(jīng)網(wǎng)絡(luò)公式對樣本數(shù)據(jù)進行擬合和預(yù)測。改進灰狼算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的算法過程如下。
步驟1:確定神經(jīng)網(wǎng)絡(luò)的節(jié)點數(shù)量和激活函數(shù),適應(yīng)度函數(shù)選用均方誤差(Mean Square Error,MSE)。
步驟2:確定初始化參數(shù)。包括灰狼的維數(shù)、參數(shù)的上下界、灰狼的種群數(shù)量及最大的迭代次數(shù)。
步驟3:初始化灰狼位置。將N只灰狼隨機的分布到搜索空間,并計算每只灰狼的適應(yīng)度。
步驟4:選取出適應(yīng)度最佳的3只灰狼α,β和δ。根據(jù)式(7)計算出第一個候選位置Xi-GWO(t+1),并更新參數(shù)A,C和a。
步驟5:根據(jù)式(9)計算出鄰域的半徑Ri(t),并構(gòu)建Ni(t)的鄰域矩陣。
步驟6:根據(jù)式(11)計算另一個候選更新位置Xi-DLH,d(t+1),并判斷每一維度是否存在越界行為。
步驟7:比較Xi-GWO(t+1)與Xi-DLH,d(t+1)的適應(yīng)度值,選出最優(yōu)的候選位置。如果所選擇的最佳候選位置劣于Xi(t),則Xi(t)作為最佳候選位置。
步驟8:判斷是否達到最大迭代次數(shù),若是算法結(jié)束,否則執(zhí)行步驟4到步驟7。
步驟9:將最優(yōu)解的位置映射為神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,并輸入到神經(jīng)網(wǎng)絡(luò)的公式中進行擬合與預(yù)測。
樣本數(shù)據(jù)源于“廣聯(lián)達造價指標(biāo)網(wǎng)”和“鄭州市建設(shè)信息網(wǎng)”,共收集了31組2013—2019年之間河南地區(qū)住宅工程造價數(shù)據(jù)。由于各地區(qū)經(jīng)濟發(fā)展水平的不同和編制時間的差異,以河南省鄭州市2019年第一季度造價指標(biāo)作為基準(zhǔn),對31組單方造價指標(biāo)進行比例換算。河南省住宅工程造價部分?jǐn)?shù)據(jù)見表2。
表2 河南省住宅工程造價數(shù)據(jù)(部分)
由于各工程造價指標(biāo)的量綱不同,并且數(shù)量級差距過大。在主成分分析之前,需要對31組造價數(shù)據(jù)進行標(biāo)準(zhǔn)化處理。本文采用標(biāo)準(zhǔn)分?jǐn)?shù)法(Z-SCORE)對原始數(shù)據(jù)進行標(biāo)準(zhǔn)化操作,并將處理好的數(shù)據(jù)導(dǎo)入SPSS中進行主成分分析。各主成分的方差百分比與累計貢獻率見表3。
表3 方差百分比與累計貢獻率
樣本數(shù)據(jù)KMO為0.65大于要求的0.5,并且巴特利特顯著性為0,證明該組數(shù)據(jù)適合進行主成分分析。本文選取前7個累積貢獻率達94.29%的主成分作為預(yù)測模型的輸入集,并進行訓(xùn)練與仿真。
選擇河南省造價數(shù)據(jù)集前24組作為訓(xùn)練樣本,剩余7組作為檢驗樣本。I-GWO算法的參數(shù)設(shè)置如下:算法初始化邊界范圍為[-3,3],灰狼個數(shù)N=150,最大的迭代次數(shù)為1 000次。BP神經(jīng)網(wǎng)絡(luò)采用7-7-1的拓撲結(jié)構(gòu),使用sigmoid作為激活函數(shù)。同時,通過多模型對比分析,驗證I-GWO-BP模型的有效性。其中GWO算法的參數(shù)設(shè)置與I-GWO算法保持相同,PSO算法的參數(shù)設(shè)置如下:慣性權(quán)重w采用線性遞減的策略wmax=0.9,wmin=0.5,學(xué)習(xí)因子c1=c2=2,粒子個數(shù)N=100,最大訓(xùn)練次數(shù)為1 000次。傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)、粒子群算法、傳統(tǒng)灰狼算法與改進灰狼算法的預(yù)測結(jié)果對比如圖1所示。算法的誤差曲線如圖2所示。
由圖1可知,BP神經(jīng)網(wǎng)絡(luò)的預(yù)測誤差最大,貼合度最差。同時在算法執(zhí)行的過程中發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)具有較強的隨機性,需要多次訓(xùn)練才能達成滿意的結(jié)果,預(yù)測穩(wěn)定性最差。隨著優(yōu)化算法的加入,預(yù)測結(jié)果準(zhǔn)確度和穩(wěn)定性有了很大的改善。其中I-GWO算法的預(yù)測結(jié)果與真實結(jié)果最為貼近,在貼合度和預(yù)測準(zhǔn)確性上要優(yōu)于其他算法。
圖1 不同算法預(yù)測結(jié)果對比
從圖2可知,PSO算法誤差曲線下降緩慢,并經(jīng)過一段時間的迭代后誤差停止減少,訓(xùn)練誤差最大。其原因是在PSO算法尋優(yōu)的過程中陷入了局部極小點,同時PSO算法也無法從中脫困,導(dǎo)致了預(yù)測的準(zhǔn)確度較差。GWO算法前期收斂速度較慢,隨著迭代次數(shù)的增加誤差仍然可以繼續(xù)降低,最后也可以達到理想的誤差精度。I-GWO算法誤差曲線下降速度最快,誤差的精度較高,說明該算法的全局尋優(yōu)能力較強。
圖2 不同算法誤差曲線對比
本文使用平均誤差Mean、均方根誤差RMSE、擬合優(yōu)度對各預(yù)測模型進行評價。各算法運行20次,并選取各評價結(jié)果的均值進行對比,結(jié)果見表4。
由表4可以看出I-GWO算法的預(yù)測模型要明顯優(yōu)于其他算法,I-GWO算法的均方根誤差最小,平均誤差最小,擬合優(yōu)度最大,說明該模型預(yù)測的準(zhǔn)確度較高。I-GWO-BP模型的最大均方根誤差為67.89元/m2,最小均方根誤差為53.17元/m2。同時I-GWO-BP模型最大相對誤差為3.48%,最小相對誤差為2.63%,其預(yù)測誤差滿足可行性研究階段10%的誤差要求。IGWO-BP預(yù)測模型在住宅工程的造價預(yù)測中具有實際的現(xiàn)實意義。
表4 不同模型預(yù)測結(jié)果對比
本文采用I-GWO-BP模型對住宅工程造價進行預(yù)測,有以下結(jié)論:
(1)I-GWO-BP模型可以對中高層、高層和超高層住宅的工程造價做出很好的區(qū)分,并根據(jù)建筑的特點和往年的造價數(shù)據(jù)實現(xiàn)了住宅工程的造價預(yù)測。
(2)采用主成分分析法篩選工程造價指標(biāo),選取出7個累計貢獻率為94.29%的造價指標(biāo),簡化了輸入數(shù)據(jù),提高預(yù)測準(zhǔn)確度。
(3)使用I-GWO算法代替BP神經(jīng)網(wǎng)絡(luò)梯度下降的過程,增強了神經(jīng)網(wǎng)絡(luò)的全局搜索能力,預(yù)測結(jié)果更加準(zhǔn)確。I-GWO-BP模型預(yù)測結(jié)果滿足可行性研究階段的誤差要求,可以作為房地產(chǎn)估價師的輔助工具。