杜麗娟
(中國地質大學(武漢) 機械與電子信息學院,武漢 430074)
水資源作為一種戰略性經濟資源,其重要性不言而喻[1]。隨著城市化的快速發展,城市水資源供需矛盾日益加劇,水資源優化配置方面的相關研究顯得尤為必要。水資源優化配置是指在特定區域內,對有限的、不同形式的水資源進行科學合理的分配,以滿足各方用水基本需求[2]。我國水資源優化配置研究始于20世紀80年代初,從最初的宏觀水資源優化配置模型研究,逐步深化到具有地區特性的多層次、多目標的水資源優化配置研究。由于區域水資源體量差異明顯,同時存在多個供水單位和用水單位,使得區域水資源優化配置成為一個典型的多目標問題。孫志林[3]基于多目標非線性規劃原理,提出了一種適用于多水源、多用戶的水資源優化配置模型。高亮、張玲玲[4]以濟寧市為例,建立了多水源多用戶水資源優化配置模型,求解出不同保證率條件下優化配置結果并對其進行了水量平衡分析。通過查閱現有參考文獻發現,對于多水源多用戶水資源優化配置方面的研究較少涉及,多數集中在水資源相對承載力和水資源保護研究等方面。
在優化配置模型求解方面,傳統水資源優化配置的優化方法每次計算只能得到一個非劣解,而采用遺傳算法一次計算能得到更多的非劣解,在其中搜索確定出最優解,計算過程更為簡便,結果更加精確。同時,針對傳統二進制遺傳算法存在的不成熟收斂、搜索效率低和參數選取困難等關鍵性技術難點[5],提出了基于實數編碼的多種群遺傳算法。本文以都江堰灌區為例,建立多目標水資源優化配置模型,通過基于實數編碼的多種群遺傳算法進行求解,得到灌區水資源優化配置結果,為相關部門進行水資源調度提供科學的理論依據。
實數編碼多種群遺傳算法是在傳統遺傳算法基礎上進行的一系列改進補充。
首先,傳統遺傳算法中編碼方式采用的是二進制編碼,雖然易于遺傳操作的實現,但其編碼譯碼過程已經脫離問題本身,問題的自身結構特征不能得到很好的反映,存在過早收斂于局部最優并不能找到全局最優解,對于多維優化問題由于個體串位太大而造成計算量過大及過早收斂[6]。若采用實數編碼,直接以原始變量數據組成個體,則可避免二進制編碼譯碼的繁瑣過程,以及過早收斂的問題。
其次,未成熟收斂作為遺傳算法中不可忽視的現象,主要表現在群體中的所有個體趨于同一狀態而停止進化,算法最終不能給出最優解。針對此類問題,多種群遺傳算法被提出,通過引入不同控制參數對多個子種群同時進行優化搜索,通過移民算子對各個子種群進行聯系,實現了多種群的協同進化[7]。在兼顧全局搜索和局部搜索的同時,其收斂速度更快,對克服未成熟收斂有顯著效果。
因此,本文針對傳統遺傳算法存在的問題,提出了基于實數編碼的多種群遺傳算法,在精簡遺傳計算過程的同時,有效地避免過早未成熟收斂問題。
本文以都江堰灌區為例,討論水資源優化配置模型的建立及求解思路。都江堰灌區位于四川盆地西部,由于岷江中上游地區原始森林亂砍濫伐,流域內的自然環境遭到嚴重破壞,水資源呈逐年減少趨勢[8]。依據都江堰灌區閘首進口所處位置,將都江堰灌區劃分為6個子灌區,分別為蒲陽河子灌區、柏條河子灌區、走馬河子灌區、江安河子灌區、沙溝河子灌區和黑石河子灌區。以都江堰6個子灌區為研究對象,通過建立水資源優化配置模型,運用基于實數編碼多種群遺傳算法進行求解。
設水資源合理配置的決策變量為:
X=(xijk)
(1)
式中:xijk為第i分區利用第j種水源向第k類用水部門分配的水量,104m3;i為分區編號,依次為蒲陽河子灌區、柏條河子灌區、走馬河子灌區、江安河子灌區、沙溝河子灌區和黑石河子灌區;j為水源編號,依次為堰渠首引水、過境徑流引水、當地水庫蓄水和地下水;k為用水部門編號,依次為工業用水、農業用水、生活用水及生態用水。
目標1:區域供水凈效益最大
(2)
式中:aijk為i分區的j種水源向k用水部門的供水效益系數。
目標2:區域整體缺水量最小
(3)
式中:bik為i分區k用水部門的總需水量。
目標3:區域內地下水開采量最小
(4)
1) 水資源約束。公式如下:
都江堰渠首供水量約束:
(5)
過境徑流供水量約束:
(6)
當地水庫全年可供水量約束:
(7)
地下水水量約束:
(8)
式中:Qqs,Qgj,Qsk,Qdx分別為第i分區的渠首、過境徑流、當地水庫、地下水可供水量。
2)生活需水量約束。公式如下:
i=1,2,3,4,5,6
(9)
式中:BLi為第i分區內生活需水量。
3)支渠設計流量約束。公式如下:
i=1,2,3,4,5,6
(10)
式中:Qfi為i號支渠的設計流量,m3/s;Ti為i號支渠一年的引水天數。
4)變量非負約束。
xijk≥0
i=1,2,3,4,5,6;j=1,2,3,4;k=1,2,3,4
(12)
模型求解算法步驟如下:
1) 實數編碼。本文采用實數編碼,直接以原始變量構成個體。
2) 初始化種群。取種群規模為N,隨機產生個體構成集合,同時保證其滿足目標函數相對應的約束條件。
3) 構造適應度函數。在算法計算過程中,各子種群分別獨立計算其適應度以確定優秀個體,適應度計算函數如下[9]:
Fi=a×fi+b
當fmin≥2×fp-fmax時,
當fmin≤2×fp-fmax時,
其中fp,fmax,fmin分別表示遺傳當代的適應度值的均值、最大值及最小值。
4) 多種群遺傳算法實現。多種群遺傳算法實現步驟步驟詳見文獻[7],遺傳算法操作參數設定如下[5]:子群體規模取50;單點交叉概率0.9;高斯變異概率0.01;最大遺傳代數50代;個體替換百分比25%;交換頻率取3;移民數目為最好的5個個體。
5) 輸出結果。通過判斷群體是否滿足收斂條件及遺傳進化代數是否達到最大遺傳代數,滿足條件迭代終止,獲得的最好個體即為具有最優解,即為優化后的各種水源為各分區在各部門的最優配水量。
取都江堰灌區6個子灌區水平年2017的實際資料。以供水凈效益最大、缺水量最小及地下水開采量最小為目標函數,本算例中的供水成本、可供水量和需水量等數據采用2017年水平年的實際數據。具體見表1-表3。
各子灌區工業用水凈效益取28元/m3,農業用水凈效益取7元/m3,生活用水凈效益取3元/m3,生態用水凈效益取2元/m3。優化算法成功運行10次,所得到的優化最佳配水方案見表4(第3-第6列)。相應各分區各部門水資源供需平衡分析見表4。

表1 各水源可供水量約束 /108 m3

表2 各用水單位需水量約束 /108 m3

表3 支渠引水數據 /108 m3

表4 各部門水資源供需平衡分析結果 108 m3

續表4
根據表4優化結果,6個子灌區中工業用水和生活用水均能得到保證,農業用水與生態用水均存在缺水情況。由于相應約束條件的限制,工業用水凈效益最高,故各子灌區優化后的工業用水能夠保證需要,同時也能夠保證基本的生活用水滿足要求。
依據優化結果顯示,6個子灌區在農業用水和生態用水方面都有一定的缺口,在農業用水方面,柏條河、沙溝河和江安河子灌區缺水情況比較嚴重;在生態用水方面,黑石河、柏條河和江安河子灌區缺水情況嚴重,都在30%以上。針對各子灌區缺水情況,需要及時采取應對措施:
1) 對于農業用水有缺口的地區,需要大力發展節水農業,主要是4個方面:①農藝節水,即改進農作物結構和耕作技術;②生理節水,即培訓抗旱的作物品種;③調控節水,即通過相應管理手段達到節水目的;④灌溉節水,即采用噴灌、滴灌等先進的灌溉方式。
2) 對于生態用水有缺口的地區,需要及時采取節水措施,特別是要加強工業用水的循環利用,減少水資源的占有量,工業廢水也需要進行一系列污水處理措施方可排出。同時,在農業和生活方面也需要采取一定的節水措施。
1) 針對水資源優化配置的多目標性,綜合考慮區域水資源的供水效益、缺水量以及地下水開采量等優化配置目標,同時構建需水量、供水量等約束條件,建立了一個多目標水資源優化配置模型。采用實數編碼多種群遺傳算法對其進行求解,解決了模型求解的問題,得到的優化配置結果驗證了所建模型的合理性。
2) 針對傳統遺傳算法存在的早熟收斂問題,提出基于實數編碼的多種群遺傳算法。采用實數編碼有效避免了編碼譯碼繁瑣過程,加快了計算速度。該算法中各子種群可同時進行搜尋最優解,使遺傳算法全局搜索能力大大提高,避免了過早收斂現象。
3) 本文建立的水資源優化配置模型約束條件設置靈活,可根據實際情況對相關約束參數進行調整,其適用性強。