蔣汝成,顧世祥
(云南省水利水電勘測設計研究院,云南 昆明 50021)
水安全是指一個國家或區域在一定時期、一定技術水平和經濟社會發展條件下,水資源、水環境能夠支撐經濟社會持續發展、維護生態系統良性循環的狀態。近年來,隨著城市化水平不斷提高,城市規模、人口數量逐漸擴大,隨之而來的水資源短缺、洪澇災害、水污染、水土流失等問題已對水安全和生態安全構成嚴重威脅,成為影響國家經濟、社會可持續發展和長治久安的重大戰略問題[1]。由于水安全與區域經濟社會發展的特殊相關性,科學評價區域水安全狀態尤為重要。目前開展區域水安全評價主要存在兩方面問題:①沒有統一或得到普遍認同的水安全評價指標體系。水安全評價研究起步于20世紀70年代,雖然起步較早,但由于評價區域在水資源稟賦、經濟社會發展水平、生態環境壓力、水資源供給能力等方面存在差異,致使影響水安全狀態的關鍵因子不同,從而導致各評價區域間水安全評價指標體系的差異。②缺乏科學客觀的評價方法。目前用于水安全評價的方法有層次分析法[2]、物元分析法[2]、神經網絡法[3]、模糊集對分析法[4]、投影尋蹤法[5]、邏輯斯蒂曲線法[6]等,雖然取得了一定的評價效果,但也存在一些不足:層次分析法指標權重確定的主觀隨意性;物元分析法需要構造較多的評價函數,且函數設計無規律可循;神經網絡法網絡結構確定的隨意性和網絡訓練易出現“過擬合”現象;模糊集對分析法模糊隸屬度值及相異度系數合理取值困難;投影尋蹤法最佳投影方向向量難以選??;邏輯斯蒂曲線法公式參數優化困難等。
本文針對水安全評價方法的不足,基于水貧困指數(water poverty index,WPI)指標,提出多策略布谷鳥搜索(Multi Strategy Cuckoo Search,MSCS)算法與支持向量機(Support Vector Machines,SVM)相融合的區域水安全評價模型,以云南省近10年水安全評價為例進行實例研究。


表1 基于WPI的區域水安全評價指標體系及分級標準
布谷鳥搜索(CS)算法通過模擬自然界布谷鳥孵卵寄生性繁衍后代的方式來求解最優化問題,在搜索過程中基于3條理想規則:①布谷鳥1次只產1顆蛋,并隨機選擇1個鳥巢進行孵化。②最好的蛋所在的鳥巢將會被保留到下一代。③鳥巢的數量n是固定的,鳥巢中外來蛋被發現的概率是pa∈[0,1]。一旦宿主發現外來蛋,可能移除或放棄鳥巢,另尋新位置重建鳥巢[11-13]。在尋優過程中,首先在搜索空間隨機初始化n個鳥巢位置,則D維搜索空間中第t代第i個鳥巢位置可表示為
每個鳥巢最優位置為
群體中鳥巢全局最優位置為
鳥巢位置的更新公式為

(1)
(2)

(3)


(4)
標準CS算法中,根據隨機數r是否大于pa=0.25來決定對鳥巢位置的更新。研究表明,pa取值越小,更新的鳥巢數越多,CS算法全局搜索能力越好;pa取值越大,更新的鳥巢數越小,局部搜索能力越好。為有效提高CS算法的全局搜索與局部搜索平衡能力,參考相關文獻[14],提出多策略改進標準CS算法,利用pa來決定鳥巢位置更新算子,以平衡CS算法的全局搜索與局部搜索能力:
(5)
式中:ω為pa的增加或降低率;pm為控制參數,為rand(0,1)上的隨機數。
如果pa=abs(pm-ω),采用式(6)更新鳥巢位置,以獲得更好的全局搜索能力:
(6)
如果pa=(pm+ω),采用式(7)更新鳥巢位置,以獲得更好的局部搜索能力:
(7)
式中:r、η為均勻分布的隨機數;J為概率變量,J∈[0,1];H(·)為Heaviside函數。
利用SVM進行預測分類的基本思想是尋找一個最優分類面,使得所有訓練樣本離該最優分類面誤差最小。設含有l個訓練樣本的集合為{(xi,yi),i=1,2,…,l},xi(xi∈Rd)為第i個訓練樣本輸入列向量,yi∈R為對應輸出值[15-16]。則在高維特征空間中建立的線性回歸函數為
f(x)=wΦ(x)+b
(8)
式中:Φ(x)為非線性映射函數;w為超平面的法向量;b為超平面的偏移量。
(9)
式中:ε為線性不敏感損失函數。
最終回歸函數為
(10)

目前常用的核函數有線性核函數、多項式核函數、徑向基核函數和兩層感知核函數等。核函數可以看成是實際問題的特征提取過程,合理選取核函數有助于提高模型精度。本文選擇徑向基核函數作為SVM的核函數。研究表明,懲罰因子B、核函數參數g和不敏感系數ε的合理選取決定著SVM性能。B值小,對樣本數據懲罰就小,則訓練誤差較大;B值大則訓練誤差小,但B值過大會導致模型的泛化能力變差。g代表RBF帶寬,g值小則擬合誤差小,訓練時間長,但g值過小會導致模型過擬合;ε值用于控制模型的預測能力,ε值小易導致模型欠擬合,ε值大則易導致模型過擬合[17]。
利用MSCS-SVM模型進行區域水安全評價的基本思想是:利用訓練和檢驗樣本構造適應度函數,通過MSCS算法搜尋一組SVM的B、g和ε向量(B,g,ε),使適應度函數的均方誤差最小。模型實現步驟如下。
步驟1 依據表1,在評價指標標準閾值間隨機生成訓練樣本和檢驗樣本,并對樣本進行一致性處理。
步驟2 設定B、g和ε的搜尋范圍,選取式(11)為參數優化適應度函數:
(11)

步驟3 隨機初始化n個鳥巢,搜索空間維數D,最大迭代次數T,Lévy飛行尺度a0、發現概率pa的增加或降低率ω、概率變量J,設置當前迭代次數t=1。


步驟6 執行寄生鳥巢主人發現外來蛋操作。利用式(5)計算pa,如果pa=abs(pm-ω),采用式(6)更新鳥巢位置;否則采用式(7)更新鳥巢位置。
步驟7 利用新更新的鳥巢位置及式(11)計算的適應度值,并與前代鳥巢位置對應的適應度值進行比較,保留適應度值更好的鳥巢位置。
步驟8 令t=t+1,判斷算法迭代終止條件是否滿足,如果滿足,轉向步驟9;否則,執行步驟5~8。
步驟9 輸出最優適應度值minf(B,g,ε)及對應的鳥巢位置(B,g,ε)。
步驟10 對云南省2006—2015年及2020年水安全指標數據及分級標準閾值進行一致性處理,利用獲得的最佳參數(B,g,ε)代入SVM模型對云南省2006—2015年水安全進行評價,并利用Man-Kendall秩次相關檢驗法對其變化趨勢的顯著性進行分析。

τ=4P/N(N-1)-1
(12)
(13)
M=τ/στ
(14)
式中:P為序列所有對偶觀測值;N為序列個數。取置信度α=0.05,相應的臨界值Mα=1.96。若|M|>Mα,則序列發生顯著的趨勢性變化。
為驗證MSCS算法的優化性能,選取6個典型測試函數Sphere函數、Rastrigin函數、Ackley函數、Levy函數、Griewank函數和Rosenbrock函數進行仿真測試,并與基本CS算法進行性能對比。Sphere函數、Rastrigin函數、Ackley函數、Levy函數、Griewank函數和Rosenbrock函數變量取值范圍分別為[-100,100]、[-5.12,5.12]、[-32,32]、[-10,10]、[-600,600]、[-10,10],維度均為30維,理論最優解值均為0。其中,Rastrigin函數、Ackley函數、Levy函數、Griewank函數為多峰函數,存在許多局部極值,用于測試算法逃離局部極值的能力和全局探索能力;Sphere函數、Rosenbrock函數為單峰函數,用于測試算法的收斂速度和尋優精度。算法參數設置:MSCS算法最大迭代次數T=200,鳥窩位置數n=25,Lévy飛行尺度a0=0.1,發現概率pa的增加或降低率ω=0.5、概率變量J=0.3。CS算法最大迭代次數T=200,鳥窩位置數n=25,發現概率pa=0.25。
算法基于Matlab 2010a M語言實現,分別對6個測試函數獨立運行20次,并統計平均最優適應度值和標準差的結果,見表2。平均最優適應度值反映算法達到最大迭代次數時的求解精度,標準差反映算法收斂穩定性能。

表2 函數測試對比結果
從表2可以看出:對于多峰Rastrigin函數、Griewank函數,MSCS算法收斂到全局最優解0,尋優精度遠遠優于CS算法,表現出較好的逃逸局部極值能力;對于單峰Sphere函數,MSCS算法尋優精度高于CS算法91個數量級以上,具有快的收斂速度和較高的尋優精度;對于多峰Ackley函數、Levy函數,MSCS算法尋優精度高于CS算法14個數量級以上,展現出較好的全局尋索能力;對于病態單峰Rosenbrock函數,MSCS算法表現出較好極值尋優能力,在最大迭代次數僅200次時,其平均最優適應度值達到4.12×10-7,高于CS算法8個數量級以上。同時,MSCS算法也表現出較好的收斂穩定性能。
綜上,無論單峰還是多峰函數,MSCS算法表現出較好的收斂速度、極值尋優能力和全局搜索性能,表明基于發現概率pa的鳥巢多策略位置更新算子可以有效平衡CS算法的全局搜索與局部搜索能力,獲得較理想的尋優效果。
云南省地處我國西南邊陲,轄昆明、曲靖、玉溪等16個州(市),國土面積39萬km2,分屬長江、珠江、紅河、瀾滄江、怒江、伊洛瓦底江6大水系,多年平均降水量1 280 mm,水資源總量2 220億m3,僅次于西藏、四川兩省區,居全國第三位,湖泊靜貯水量近300億m3,從鄰近省區入境水量1 625億m3,從緬甸、越南、老撾入境水量25億m3,出境水量3 835億m3,水資源總量相對豐富。近10年來,隨著云南省經濟社會的迅猛發展,以水利為主要內容的水安全建設為促進云南省經濟、社會、環境和諧發展提供了重要支撐和保障。云南省水資源總量雖然豐富,但由于開發利用難度大、成本高、邊際效益低,氣候條件復雜多變,加之水資源分布與土地資源、經濟布局不相匹配的矛盾突出,水資源短缺、水污染、洪澇災害、水土流失等問題日益突出,水安全問題面臨著嚴峻挑戰。因此,科學評價云南省近10年來的水安全狀態,對于云南省“因地制宜、因域施策”地提出水安全保障應對措施,提高水安全保障能力,實現云南省水資源永續利用和經濟社會的可持續發展具有重要意義。本文研究數據來源于歷年云南省水資源公報、云南省統計年鑒及《云南省“十三五”水利發展規劃》等。基于WPI的云南省水安全評價指標數據見表3。

表3 基于WPI的云南省水安全評價指標數據

表4 模型訓練及檢驗結果
a. 構造樣本?;诒?,在各評價指標分級閾值間隨機生成20個數據樣本,5級共獲得100個數據樣本,隨機選取60個作為訓練樣本,余下的40個作為檢驗樣本,并將5、4、3、2、1分別作為非常安全/Ⅰ級、安全/Ⅱ級、臨界/Ⅲ級、不安全/Ⅳ級和危險/Ⅴ級5個等級的對應輸出。對于越大越優型指標利用式(15)進行歸一化處理;對于越小越優型指標,對其取倒數后再利用式(15)進行歸一化處理:
(15)
b. 參數設置。SVM懲罰因子B、核函數參數g和不敏感系數ε的搜索空間分別設置為0.1~1 000、0.1~1 000和0.001~1。
c. 建立模型。基于MatlabR2011b環境編程構建20輸入1輸出的云南省區域水安全MSCS-SVM、CS-SVM評價模型,分別利用所構造的樣本對2種模型進行訓練及檢驗。2種模型獨立運行20次,分別統計平均最優適應度值、標準差,訓練樣本平均相對誤差絕對值、標準差和檢驗樣本平均相對誤差絕對值、標準差,見表4。
d. 結果分析。從表4可以看出,MSCS-SVM模型20次獨立運行獲得的平均最優適應度值、訓練樣本平均相對誤差絕對值和檢驗樣本平均相對誤差絕對值完全優于CS-SVM模型;標準差除訓練樣本為2.22×10-16外,其余均為理論最優值0,遠優于CS-SVM模型,再次驗證了MSCS算法具有較好的收斂精度、極值尋優能力和收斂穩定性能。
按式(12)對表3數據及表1中各指標分級閾值進行歸一化處理,利用經訓練及檢驗的MSCS-SVM模型對云南省2006—2015年、2020年水安全進行評價,并將指標分級閾值輸出值作為水安全評價等級劃分的依據,結果見表5及圖1。

表5 MSCS-SVM模型評價結果

圖1 云南省各評價年度水安全評價雷達圖
從表5和圖1可以得出以下結論:
a. 云南省2006年水安全評價為不安全,2007—2015年評價為臨界,2020年評價為安全。從圖1可以直觀看出,云南省2020年水安全評價值最大,為3.516 1,2006年最小,為2.265 9。利用式(12)~式(13)對2006—2015年MSCS-SVM模型輸出結果進行計算。經計算,Kendall統計量|M|為3.12,大于置信水平為0.05時的相應臨界值1.96,表明云南省水安全隨時間呈提升趨勢,且提升趨勢顯著。
b. 云南省2006—2015年水安全評價值總體呈增加趨勢,但2010—2012年MSCS-SVM模型輸出值從3.083 6下降到3.006 6,連續3年呈下降趨勢,這主要受云南省2010—2012年3年連續干旱的影響,表明由降水引起的水資源系統隨機變化對年度水安全評價具有一定影響。
c. 除受自然因素如降水的影響外,區域水安全受經濟社會發展、生態環境治理保護力度、用水效率效益影響較大。“十三五”期間,云南省通過持續推進節水型社會建設、加大水源工程和水利基礎設施建設、強化水污染防治措施、落實最嚴格水資源管理制度,以及加快城鎮化進程步伐、持續改善民生福祉等舉措,在有效灌溉面積率、蓄水工程供水率、供水量模數、水功能區達標率、生態環境用水率、城鎮化率、第一產業占GDP比例等指標方面得到明顯改善,水安全水平得到進一步提升,從現狀的臨界提升至安全狀態,但受人均COD環境容量、人均水資源量、人口增長以及降水量等因素的制約,云南省水安全提升空間有限。
a. 針對云南省近10年來經濟社會發展給水安全帶來的挑戰,利用MSCS-SVM模型對云南省2006—2015年和2020年水安全狀態進行評價。結果顯示:云南省2006年水安全狀態為不安全,2007—2015年為臨界,2020年為安全,近10年水安全隨時間呈提升趨勢,且提升趨勢顯著。該評價結果可為云南省科學提出水安全保障應對措施,提高水安全保障能力提供參考。
b. 針對水安全評價指標選取缺乏依據的問題,將國際上通用的WPI引入水安全評價中,依據WPI構建區域水安全評價指標體系,并提出樣本構造方法、水安全評價指標分級標準閾值確定方法等。
c. 針對基本CS算法存在早熟收斂、易陷入局部極值等不足,提出多策略布谷鳥搜索(MSCS)算法。選取6個典型測試函數對MSCS算法進行仿真驗證及對比。結果表明MSCS算法有較好的尋優精度、逃離局部極值能力和收斂穩定性能,通過鳥巢多策略位置更新算子可以有效提高基本CS算法的尋優能力。