蔣汝成,顧世祥
(云南省水利水電勘測(cè)設(shè)計(jì)研究院,云南 昆明 50021)
水安全是指一個(gè)國(guó)家或區(qū)域在一定時(shí)期、一定技術(shù)水平和經(jīng)濟(jì)社會(huì)發(fā)展條件下,水資源、水環(huán)境能夠支撐經(jīng)濟(jì)社會(huì)持續(xù)發(fā)展、維護(hù)生態(tài)系統(tǒng)良性循環(huán)的狀態(tài)。近年來(lái),隨著城市化水平不斷提高,城市規(guī)模、人口數(shù)量逐漸擴(kuò)大,隨之而來(lái)的水資源短缺、洪澇災(zāi)害、水污染、水土流失等問(wèn)題已對(duì)水安全和生態(tài)安全構(gòu)成嚴(yán)重威脅,成為影響國(guó)家經(jīng)濟(jì)、社會(huì)可持續(xù)發(fā)展和長(zhǎng)治久安的重大戰(zhàn)略問(wèn)題[1]。由于水安全與區(qū)域經(jīng)濟(jì)社會(huì)發(fā)展的特殊相關(guān)性,科學(xué)評(píng)價(jià)區(qū)域水安全狀態(tài)尤為重要。目前開(kāi)展區(qū)域水安全評(píng)價(jià)主要存在兩方面問(wèn)題:①?zèng)]有統(tǒng)一或得到普遍認(rèn)同的水安全評(píng)價(jià)指標(biāo)體系。水安全評(píng)價(jià)研究起步于20世紀(jì)70年代,雖然起步較早,但由于評(píng)價(jià)區(qū)域在水資源稟賦、經(jīng)濟(jì)社會(huì)發(fā)展水平、生態(tài)環(huán)境壓力、水資源供給能力等方面存在差異,致使影響水安全狀態(tài)的關(guān)鍵因子不同,從而導(dǎo)致各評(píng)價(jià)區(qū)域間水安全評(píng)價(jià)指標(biāo)體系的差異。②缺乏科學(xué)客觀的評(píng)價(jià)方法。目前用于水安全評(píng)價(jià)的方法有層次分析法[2]、物元分析法[2]、神經(jīng)網(wǎng)絡(luò)法[3]、模糊集對(duì)分析法[4]、投影尋蹤法[5]、邏輯斯蒂曲線法[6]等,雖然取得了一定的評(píng)價(jià)效果,但也存在一些不足:層次分析法指標(biāo)權(quán)重確定的主觀隨意性;物元分析法需要構(gòu)造較多的評(píng)價(jià)函數(shù),且函數(shù)設(shè)計(jì)無(wú)規(guī)律可循;神經(jīng)網(wǎng)絡(luò)法網(wǎng)絡(luò)結(jié)構(gòu)確定的隨意性和網(wǎng)絡(luò)訓(xùn)練易出現(xiàn)“過(guò)擬合”現(xiàn)象;模糊集對(duì)分析法模糊隸屬度值及相異度系數(shù)合理取值困難;投影尋蹤法最佳投影方向向量難以選??;邏輯斯蒂曲線法公式參數(shù)優(yōu)化困難等。
本文針對(duì)水安全評(píng)價(jià)方法的不足,基于水貧困指數(shù)(water poverty index,WPI)指標(biāo),提出多策略布谷鳥(niǎo)搜索(Multi Strategy Cuckoo Search,MSCS)算法與支持向量機(jī)(Support Vector Machines,SVM)相融合的區(qū)域水安全評(píng)價(jià)模型,以云南省近10年水安全評(píng)價(jià)為例進(jìn)行實(shí)例研究。
表1 基于WPI的區(qū)域水安全評(píng)價(jià)指標(biāo)體系及分級(jí)標(biāo)準(zhǔn)
布谷鳥(niǎo)搜索(CS)算法通過(guò)模擬自然界布谷鳥(niǎo)孵卵寄生性繁衍后代的方式來(lái)求解最優(yōu)化問(wèn)題,在搜索過(guò)程中基于3條理想規(guī)則:①布谷鳥(niǎo)1次只產(chǎn)1顆蛋,并隨機(jī)選擇1個(gè)鳥(niǎo)巢進(jìn)行孵化。②最好的蛋所在的鳥(niǎo)巢將會(huì)被保留到下一代。③鳥(niǎo)巢的數(shù)量n是固定的,鳥(niǎo)巢中外來(lái)蛋被發(fā)現(xiàn)的概率是pa∈[0,1]。一旦宿主發(fā)現(xiàn)外來(lái)蛋,可能移除或放棄鳥(niǎo)巢,另尋新位置重建鳥(niǎo)巢[11-13]。在尋優(yōu)過(guò)程中,首先在搜索空間隨機(jī)初始化n個(gè)鳥(niǎo)巢位置,則D維搜索空間中第t代第i個(gè)鳥(niǎo)巢位置可表示為
每個(gè)鳥(niǎo)巢最優(yōu)位置為
群體中鳥(niǎo)巢全局最優(yōu)位置為
鳥(niǎo)巢位置的更新公式為
(1)
(2)
(3)
(4)
標(biāo)準(zhǔn)CS算法中,根據(jù)隨機(jī)數(shù)r是否大于pa=0.25來(lái)決定對(duì)鳥(niǎo)巢位置的更新。研究表明,pa取值越小,更新的鳥(niǎo)巢數(shù)越多,CS算法全局搜索能力越好;pa取值越大,更新的鳥(niǎo)巢數(shù)越小,局部搜索能力越好。為有效提高CS算法的全局搜索與局部搜索平衡能力,參考相關(guān)文獻(xiàn)[14],提出多策略改進(jìn)標(biāo)準(zhǔn)CS算法,利用pa來(lái)決定鳥(niǎo)巢位置更新算子,以平衡CS算法的全局搜索與局部搜索能力:
(5)
式中:ω為pa的增加或降低率;pm為控制參數(shù),為rand(0,1)上的隨機(jī)數(shù)。
如果pa=abs(pm-ω),采用式(6)更新鳥(niǎo)巢位置,以獲得更好的全局搜索能力:
(6)
如果pa=(pm+ω),采用式(7)更新鳥(niǎo)巢位置,以獲得更好的局部搜索能力:
(7)
式中:r、η為均勻分布的隨機(jī)數(shù);J為概率變量,J∈[0,1];H(·)為Heaviside函數(shù)。
利用SVM進(jìn)行預(yù)測(cè)分類(lèi)的基本思想是尋找一個(gè)最優(yōu)分類(lèi)面,使得所有訓(xùn)練樣本離該最優(yōu)分類(lèi)面誤差最小。設(shè)含有l(wèi)個(gè)訓(xùn)練樣本的集合為{(xi,yi),i=1,2,…,l},xi(xi∈Rd)為第i個(gè)訓(xùn)練樣本輸入列向量,yi∈R為對(duì)應(yīng)輸出值[15-16]。則在高維特征空間中建立的線性回歸函數(shù)為
f(x)=wΦ(x)+b
(8)
式中:Φ(x)為非線性映射函數(shù);w為超平面的法向量;b為超平面的偏移量。
(9)
式中:ε為線性不敏感損失函數(shù)。
最終回歸函數(shù)為
(10)
目前常用的核函數(shù)有線性核函數(shù)、多項(xiàng)式核函數(shù)、徑向基核函數(shù)和兩層感知核函數(shù)等。核函數(shù)可以看成是實(shí)際問(wèn)題的特征提取過(guò)程,合理選取核函數(shù)有助于提高模型精度。本文選擇徑向基核函數(shù)作為SVM的核函數(shù)。研究表明,懲罰因子B、核函數(shù)參數(shù)g和不敏感系數(shù)ε的合理選取決定著SVM性能。B值小,對(duì)樣本數(shù)據(jù)懲罰就小,則訓(xùn)練誤差較大;B值大則訓(xùn)練誤差小,但B值過(guò)大會(huì)導(dǎo)致模型的泛化能力變差。g代表RBF帶寬,g值小則擬合誤差小,訓(xùn)練時(shí)間長(zhǎng),但g值過(guò)小會(huì)導(dǎo)致模型過(guò)擬合;ε值用于控制模型的預(yù)測(cè)能力,ε值小易導(dǎo)致模型欠擬合,ε值大則易導(dǎo)致模型過(guò)擬合[17]。
利用MSCS-SVM模型進(jìn)行區(qū)域水安全評(píng)價(jià)的基本思想是:利用訓(xùn)練和檢驗(yàn)樣本構(gòu)造適應(yīng)度函數(shù),通過(guò)MSCS算法搜尋一組SVM的B、g和ε向量(B,g,ε),使適應(yīng)度函數(shù)的均方誤差最小。模型實(shí)現(xiàn)步驟如下。
步驟1 依據(jù)表1,在評(píng)價(jià)指標(biāo)標(biāo)準(zhǔn)閾值間隨機(jī)生成訓(xùn)練樣本和檢驗(yàn)樣本,并對(duì)樣本進(jìn)行一致性處理。
步驟2 設(shè)定B、g和ε的搜尋范圍,選取式(11)為參數(shù)優(yōu)化適應(yīng)度函數(shù):
(11)
步驟3 隨機(jī)初始化n個(gè)鳥(niǎo)巢,搜索空間維數(shù)D,最大迭代次數(shù)T,Lévy飛行尺度a0、發(fā)現(xiàn)概率pa的增加或降低率ω、概率變量J,設(shè)置當(dāng)前迭代次數(shù)t=1。
步驟6 執(zhí)行寄生鳥(niǎo)巢主人發(fā)現(xiàn)外來(lái)蛋操作。利用式(5)計(jì)算pa,如果pa=abs(pm-ω),采用式(6)更新鳥(niǎo)巢位置;否則采用式(7)更新鳥(niǎo)巢位置。
步驟7 利用新更新的鳥(niǎo)巢位置及式(11)計(jì)算的適應(yīng)度值,并與前代鳥(niǎo)巢位置對(duì)應(yīng)的適應(yīng)度值進(jìn)行比較,保留適應(yīng)度值更好的鳥(niǎo)巢位置。
步驟8 令t=t+1,判斷算法迭代終止條件是否滿(mǎn)足,如果滿(mǎn)足,轉(zhuǎn)向步驟9;否則,執(zhí)行步驟5~8。
步驟9 輸出最優(yōu)適應(yīng)度值minf(B,g,ε)及對(duì)應(yīng)的鳥(niǎo)巢位置(B,g,ε)。
步驟10 對(duì)云南省2006—2015年及2020年水安全指標(biāo)數(shù)據(jù)及分級(jí)標(biāo)準(zhǔn)閾值進(jìn)行一致性處理,利用獲得的最佳參數(shù)(B,g,ε)代入SVM模型對(duì)云南省2006—2015年水安全進(jìn)行評(píng)價(jià),并利用Man-Kendall秩次相關(guān)檢驗(yàn)法對(duì)其變化趨勢(shì)的顯著性進(jìn)行分析。
τ=4P/N(N-1)-1
(12)
(13)
M=τ/στ
(14)
式中:P為序列所有對(duì)偶觀測(cè)值;N為序列個(gè)數(shù)。取置信度α=0.05,相應(yīng)的臨界值Mα=1.96。若|M|>Mα,則序列發(fā)生顯著的趨勢(shì)性變化。
為驗(yàn)證MSCS算法的優(yōu)化性能,選取6個(gè)典型測(cè)試函數(shù)Sphere函數(shù)、Rastrigin函數(shù)、Ackley函數(shù)、Levy函數(shù)、Griewank函數(shù)和Rosenbrock函數(shù)進(jìn)行仿真測(cè)試,并與基本CS算法進(jìn)行性能對(duì)比。Sphere函數(shù)、Rastrigin函數(shù)、Ackley函數(shù)、Levy函數(shù)、Griewank函數(shù)和Rosenbrock函數(shù)變量取值范圍分別為[-100,100]、[-5.12,5.12]、[-32,32]、[-10,10]、[-600,600]、[-10,10],維度均為30維,理論最優(yōu)解值均為0。其中,Rastrigin函數(shù)、Ackley函數(shù)、Levy函數(shù)、Griewank函數(shù)為多峰函數(shù),存在許多局部極值,用于測(cè)試算法逃離局部極值的能力和全局探索能力;Sphere函數(shù)、Rosenbrock函數(shù)為單峰函數(shù),用于測(cè)試算法的收斂速度和尋優(yōu)精度。算法參數(shù)設(shè)置:MSCS算法最大迭代次數(shù)T=200,鳥(niǎo)窩位置數(shù)n=25,Lévy飛行尺度a0=0.1,發(fā)現(xiàn)概率pa的增加或降低率ω=0.5、概率變量J=0.3。CS算法最大迭代次數(shù)T=200,鳥(niǎo)窩位置數(shù)n=25,發(fā)現(xiàn)概率pa=0.25。
算法基于Matlab 2010a M語(yǔ)言實(shí)現(xiàn),分別對(duì)6個(gè)測(cè)試函數(shù)獨(dú)立運(yùn)行20次,并統(tǒng)計(jì)平均最優(yōu)適應(yīng)度值和標(biāo)準(zhǔn)差的結(jié)果,見(jiàn)表2。平均最優(yōu)適應(yīng)度值反映算法達(dá)到最大迭代次數(shù)時(shí)的求解精度,標(biāo)準(zhǔn)差反映算法收斂穩(wěn)定性能。
表2 函數(shù)測(cè)試對(duì)比結(jié)果
從表2可以看出:對(duì)于多峰Rastrigin函數(shù)、Griewank函數(shù),MSCS算法收斂到全局最優(yōu)解0,尋優(yōu)精度遠(yuǎn)遠(yuǎn)優(yōu)于CS算法,表現(xiàn)出較好的逃逸局部極值能力;對(duì)于單峰Sphere函數(shù),MSCS算法尋優(yōu)精度高于CS算法91個(gè)數(shù)量級(jí)以上,具有快的收斂速度和較高的尋優(yōu)精度;對(duì)于多峰Ackley函數(shù)、Levy函數(shù),MSCS算法尋優(yōu)精度高于CS算法14個(gè)數(shù)量級(jí)以上,展現(xiàn)出較好的全局尋索能力;對(duì)于病態(tài)單峰Rosenbrock函數(shù),MSCS算法表現(xiàn)出較好極值尋優(yōu)能力,在最大迭代次數(shù)僅200次時(shí),其平均最優(yōu)適應(yīng)度值達(dá)到4.12×10-7,高于CS算法8個(gè)數(shù)量級(jí)以上。同時(shí),MSCS算法也表現(xiàn)出較好的收斂穩(wěn)定性能。
綜上,無(wú)論單峰還是多峰函數(shù),MSCS算法表現(xiàn)出較好的收斂速度、極值尋優(yōu)能力和全局搜索性能,表明基于發(fā)現(xiàn)概率pa的鳥(niǎo)巢多策略位置更新算子可以有效平衡CS算法的全局搜索與局部搜索能力,獲得較理想的尋優(yōu)效果。
云南省地處我國(guó)西南邊陲,轄昆明、曲靖、玉溪等16個(gè)州(市),國(guó)土面積39萬(wàn)km2,分屬長(zhǎng)江、珠江、紅河、瀾滄江、怒江、伊洛瓦底江6大水系,多年平均降水量1 280 mm,水資源總量2 220億m3,僅次于西藏、四川兩省區(qū),居全國(guó)第三位,湖泊靜貯水量近300億m3,從鄰近省區(qū)入境水量1 625億m3,從緬甸、越南、老撾入境水量25億m3,出境水量3 835億m3,水資源總量相對(duì)豐富。近10年來(lái),隨著云南省經(jīng)濟(jì)社會(huì)的迅猛發(fā)展,以水利為主要內(nèi)容的水安全建設(shè)為促進(jìn)云南省經(jīng)濟(jì)、社會(huì)、環(huán)境和諧發(fā)展提供了重要支撐和保障。云南省水資源總量雖然豐富,但由于開(kāi)發(fā)利用難度大、成本高、邊際效益低,氣候條件復(fù)雜多變,加之水資源分布與土地資源、經(jīng)濟(jì)布局不相匹配的矛盾突出,水資源短缺、水污染、洪澇災(zāi)害、水土流失等問(wèn)題日益突出,水安全問(wèn)題面臨著嚴(yán)峻挑戰(zhàn)。因此,科學(xué)評(píng)價(jià)云南省近10年來(lái)的水安全狀態(tài),對(duì)于云南省“因地制宜、因域施策”地提出水安全保障應(yīng)對(duì)措施,提高水安全保障能力,實(shí)現(xiàn)云南省水資源永續(xù)利用和經(jīng)濟(jì)社會(huì)的可持續(xù)發(fā)展具有重要意義。本文研究數(shù)據(jù)來(lái)源于歷年云南省水資源公報(bào)、云南省統(tǒng)計(jì)年鑒及《云南省“十三五”水利發(fā)展規(guī)劃》等。基于WPI的云南省水安全評(píng)價(jià)指標(biāo)數(shù)據(jù)見(jiàn)表3。
表3 基于WPI的云南省水安全評(píng)價(jià)指標(biāo)數(shù)據(jù)
表4 模型訓(xùn)練及檢驗(yàn)結(jié)果
a. 構(gòu)造樣本?;诒?,在各評(píng)價(jià)指標(biāo)分級(jí)閾值間隨機(jī)生成20個(gè)數(shù)據(jù)樣本,5級(jí)共獲得100個(gè)數(shù)據(jù)樣本,隨機(jī)選取60個(gè)作為訓(xùn)練樣本,余下的40個(gè)作為檢驗(yàn)樣本,并將5、4、3、2、1分別作為非常安全/Ⅰ級(jí)、安全/Ⅱ級(jí)、臨界/Ⅲ級(jí)、不安全/Ⅳ級(jí)和危險(xiǎn)/Ⅴ級(jí)5個(gè)等級(jí)的對(duì)應(yīng)輸出。對(duì)于越大越優(yōu)型指標(biāo)利用式(15)進(jìn)行歸一化處理;對(duì)于越小越優(yōu)型指標(biāo),對(duì)其取倒數(shù)后再利用式(15)進(jìn)行歸一化處理:
(15)
b. 參數(shù)設(shè)置。SVM懲罰因子B、核函數(shù)參數(shù)g和不敏感系數(shù)ε的搜索空間分別設(shè)置為0.1~1 000、0.1~1 000和0.001~1。
c. 建立模型?;贛atlabR2011b環(huán)境編程構(gòu)建20輸入1輸出的云南省區(qū)域水安全MSCS-SVM、CS-SVM評(píng)價(jià)模型,分別利用所構(gòu)造的樣本對(duì)2種模型進(jìn)行訓(xùn)練及檢驗(yàn)。2種模型獨(dú)立運(yùn)行20次,分別統(tǒng)計(jì)平均最優(yōu)適應(yīng)度值、標(biāo)準(zhǔn)差,訓(xùn)練樣本平均相對(duì)誤差絕對(duì)值、標(biāo)準(zhǔn)差和檢驗(yàn)樣本平均相對(duì)誤差絕對(duì)值、標(biāo)準(zhǔn)差,見(jiàn)表4。
d. 結(jié)果分析。從表4可以看出,MSCS-SVM模型20次獨(dú)立運(yùn)行獲得的平均最優(yōu)適應(yīng)度值、訓(xùn)練樣本平均相對(duì)誤差絕對(duì)值和檢驗(yàn)樣本平均相對(duì)誤差絕對(duì)值完全優(yōu)于CS-SVM模型;標(biāo)準(zhǔn)差除訓(xùn)練樣本為2.22×10-16外,其余均為理論最優(yōu)值0,遠(yuǎn)優(yōu)于CS-SVM模型,再次驗(yàn)證了MSCS算法具有較好的收斂精度、極值尋優(yōu)能力和收斂穩(wěn)定性能。
按式(12)對(duì)表3數(shù)據(jù)及表1中各指標(biāo)分級(jí)閾值進(jìn)行歸一化處理,利用經(jīng)訓(xùn)練及檢驗(yàn)的MSCS-SVM模型對(duì)云南省2006—2015年、2020年水安全進(jìn)行評(píng)價(jià),并將指標(biāo)分級(jí)閾值輸出值作為水安全評(píng)價(jià)等級(jí)劃分的依據(jù),結(jié)果見(jiàn)表5及圖1。
表5 MSCS-SVM模型評(píng)價(jià)結(jié)果
圖1 云南省各評(píng)價(jià)年度水安全評(píng)價(jià)雷達(dá)圖
從表5和圖1可以得出以下結(jié)論:
a. 云南省2006年水安全評(píng)價(jià)為不安全,2007—2015年評(píng)價(jià)為臨界,2020年評(píng)價(jià)為安全。從圖1可以直觀看出,云南省2020年水安全評(píng)價(jià)值最大,為3.516 1,2006年最小,為2.265 9。利用式(12)~式(13)對(duì)2006—2015年MSCS-SVM模型輸出結(jié)果進(jìn)行計(jì)算。經(jīng)計(jì)算,Kendall統(tǒng)計(jì)量|M|為3.12,大于置信水平為0.05時(shí)的相應(yīng)臨界值1.96,表明云南省水安全隨時(shí)間呈提升趨勢(shì),且提升趨勢(shì)顯著。
b. 云南省2006—2015年水安全評(píng)價(jià)值總體呈增加趨勢(shì),但2010—2012年MSCS-SVM模型輸出值從3.083 6下降到3.006 6,連續(xù)3年呈下降趨勢(shì),這主要受云南省2010—2012年3年連續(xù)干旱的影響,表明由降水引起的水資源系統(tǒng)隨機(jī)變化對(duì)年度水安全評(píng)價(jià)具有一定影響。
c. 除受自然因素如降水的影響外,區(qū)域水安全受經(jīng)濟(jì)社會(huì)發(fā)展、生態(tài)環(huán)境治理保護(hù)力度、用水效率效益影響較大?!笆濉逼陂g,云南省通過(guò)持續(xù)推進(jìn)節(jié)水型社會(huì)建設(shè)、加大水源工程和水利基礎(chǔ)設(shè)施建設(shè)、強(qiáng)化水污染防治措施、落實(shí)最嚴(yán)格水資源管理制度,以及加快城鎮(zhèn)化進(jìn)程步伐、持續(xù)改善民生福祉等舉措,在有效灌溉面積率、蓄水工程供水率、供水量模數(shù)、水功能區(qū)達(dá)標(biāo)率、生態(tài)環(huán)境用水率、城鎮(zhèn)化率、第一產(chǎn)業(yè)占GDP比例等指標(biāo)方面得到明顯改善,水安全水平得到進(jìn)一步提升,從現(xiàn)狀的臨界提升至安全狀態(tài),但受人均COD環(huán)境容量、人均水資源量、人口增長(zhǎng)以及降水量等因素的制約,云南省水安全提升空間有限。
a. 針對(duì)云南省近10年來(lái)經(jīng)濟(jì)社會(huì)發(fā)展給水安全帶來(lái)的挑戰(zhàn),利用MSCS-SVM模型對(duì)云南省2006—2015年和2020年水安全狀態(tài)進(jìn)行評(píng)價(jià)。結(jié)果顯示:云南省2006年水安全狀態(tài)為不安全,2007—2015年為臨界,2020年為安全,近10年水安全隨時(shí)間呈提升趨勢(shì),且提升趨勢(shì)顯著。該評(píng)價(jià)結(jié)果可為云南省科學(xué)提出水安全保障應(yīng)對(duì)措施,提高水安全保障能力提供參考。
b. 針對(duì)水安全評(píng)價(jià)指標(biāo)選取缺乏依據(jù)的問(wèn)題,將國(guó)際上通用的WPI引入水安全評(píng)價(jià)中,依據(jù)WPI構(gòu)建區(qū)域水安全評(píng)價(jià)指標(biāo)體系,并提出樣本構(gòu)造方法、水安全評(píng)價(jià)指標(biāo)分級(jí)標(biāo)準(zhǔn)閾值確定方法等。
c. 針對(duì)基本CS算法存在早熟收斂、易陷入局部極值等不足,提出多策略布谷鳥(niǎo)搜索(MSCS)算法。選取6個(gè)典型測(cè)試函數(shù)對(duì)MSCS算法進(jìn)行仿真驗(yàn)證及對(duì)比。結(jié)果表明MSCS算法有較好的尋優(yōu)精度、逃離局部極值能力和收斂穩(wěn)定性能,通過(guò)鳥(niǎo)巢多策略位置更新算子可以有效提高基本CS算法的尋優(yōu)能力。