劉永軒
(1. 北京市測繪設計研究院, 北京 100038; 2. 城市空間信息工程北京市重點實驗室, 北京 100038; 3. 工匠創新工作室, 北京 100038)
流域首先是一個地理單元,它具有本身獨特的自然地理特征和生態特征。它的存在與人類社會、經濟的發展有著十分密切的聯系,流域可以為各種生物提供棲息地、涵養水源調節河流的徑流量、凈化水質、維持其周圍區域的生態平衡[1]。近些年來,因為人類經濟飛速發展,人類的一些活動對流域健康產生了嚴重的影響。因此,社會各界已經開始對流域水生態健康的問題產生了密切的關注和重視。流域作為一個相對獨立完整的基本單元,越來越多的專家和學者開始以流域為單元進行生態健康評價方面的研究工作[2]。與此同時,隨著以地理信息技術不斷發展與成熟,使得關于流域水生態健康的相關研究與工作更加方便。
本文基于流域生態學、景觀生態學、生態系統健康、地理信息等學科理論知識[3],以云南省滇池流域為例,分析了流域空間分布規律,構建了健康評價指標,設計實現了健康評價得分模型,最后利用WebGIS進行服務發布與評價結果展示,具體技術路線如圖1所示。

圖1 研究技術路線圖
滇池,英文名稱為Tien Lake,也叫作昆明池或者昆明湖,位于云南昆明市西南區,是云南省最大的湖,主要呈南北走向的分布,湖體大致呈弓背向東的弓形。其東部的天然沙灘將滇池分為南北兩個部分,稱為外湖和內湖,海拔約為1 887 m,總面積約為300 km2。主要的河流有古城河、白于河、撈漁河、新寶象河等。文中數據來源于中國科學院大學野外采樣小組,采樣站點均勻分布于滇池流域四周,有松華壩水庫、黃龍潭水庫、石房子水庫、官渡寶象河水庫、撈魚河、大河等[4-5]。
根據研究區域河流的特點,本次水生態健康評價指標包含如下3個方面[6-8]:
(1)物理指標,包括水文指標與河流生境指標,該類指標主要從影響水生生物最重要的幾個方面進行選取,如棲境地復雜性、河岸帶植被特征、底質特征、大型水生物植物分布特征、河道變化、堤岸穩定性、河道速度、河道深度特征和河漫灘的土地利用開發類型等。
(2)水體化學指標,包括水體內的營養鹽指標與反映人為活動影響的水化學指標。
(3)水生生物指標,包括野生藻類指標、大型底棲動物指標庫和魚類指標。
根據河段、河流、水系實際采樣數據,建立健康評價得分模型對健康狀況進行計算,得出評價值。健康評價的計算實質是一種計權型多因子環境質量評價。其計算公式如下:
(1)
式(1)中:P為環境質量綜合指數;Wj表示第j個因子的權重,范圍在0到1之間;Pj表示第j個因子進行標準化之后的數值,是因素層的分指數,公式表示如下:
(2)
式(2)中,Pj為壓力、狀態、響應的分指數;wi為各因素所含指標的權重值;xi表示各個因素層指標標準化之后的值。
在大型數據庫系統中,存在著一些特定的SQL語句和控制語句,這些語句存在于數據庫中,并被封裝起來,執行特定功能。最后經過數據庫的編譯,由用戶指定其名稱給出相應的參數,便稱之為存儲過程,它也可以通過存儲過程的名稱直接調用,也可以指定輸入和輸出參數[9]。本文將評價得分模型封裝成相應的存儲過程,應用程序對數據庫的操作是通過存儲過程調用來實現的,與傳統直接調用SQL語句執行操作,利用存儲過程具有執行速度快、通信負擔小、易于擴展與維護等優點[10]。
將物理、化學和生物指標作為水生態健康評價模型的因子,利用存儲過程,構建健康評價得分模型,通過WebGIS發布服務并展示結果。由于篇幅有限,文中僅以魚類為例進行說明。
(1)魚類評價指標表設計
魚類評價指標表設計如表1所示。

表1 魚類評價指標表
(2)魚類表設計
在SQL Server 2008里建立WaterEcosystemDB數據庫,建立魚類表如表2所示,將野外采樣小組采集站點魚類數據導入,完成數據初始化工作。

表2 魚類表
對于魚類,將分類單元數(S)、生物多樣性指數Shannon-Wiener(H)、 Berger-Parker優勢度指數(D)、生物完整性指數(IBI)作為健康評價得分指標,本文采用S、H、D作為指標(IBI可作為備選指標)進行評價,得分計算公式如下:

(3)

CREATE PROCEDURE[dbo].[pro _ ShannonWiener] (
@ param _ positionid varchar (10),
@ OutParameter float output)
AS
BEGIN
declare @ parameterSum float
declare @ parameterTemp1 float
declare @ parameterTemp2 float
-------定義一個游標,用來控制每一個站點所有的記錄
declare mycursor cursor for select density from WATERECO _ FISH where positionid=@ param _ positionid
select @ parameterSum=SUM (density) from WATERECO _ FISH where positionid=@param _ positionid
open mycursor
fetch next from mycursor into @ parameterTemp1
while(@fetch _ status=0)
begin
-------開始計算
set @ parameterTemp2=@ parameterTemp1/@ parameterSum
set @ OutParameter+=-(@ parameterTemp2 * LOG (@ parameterTemp2))
fetch next from mycursor into @ parameterTemp1
end
close mycursor
deallocate mycursor
END
(2)根據構建的3個指標(S、H、D),分別執行對應的存儲過程,結合魚類得分公式,在數據庫建立魚類健康得分模型存儲過程計算魚類得分,部分程序代碼如下:
---------執行存儲過程,求得S/H/D
execute pro _ Fish _ Taxon @parameterTempPOSITIONID,@parameterTemp1 execute pro _ Fish _ BergerParker @parameterTempPOSITIONID,@parameterTemp2
execute pro _ Fish _ ShannonWiener @parameterTempPOSITIONID,@parameterTemp3
---------最后計算魚類得分
set @ OutParameter=@ parameterTemp1+ @ parameterTemp2+@ parameterTemp3 / 3
END
根據流域水生態健康評價得分模型,利用WebGIS發布對應服務接口,客戶端通過調用該服務,完成評價得分,通過Arcgis server for Javascript API完成野外采樣站點數據在地圖上的顯示與得分評價[11-12]。
隨著人類經濟飛速發展,人類的一些生產活動也對流域健康產生了一定的影響,流域健康也越來越受到關注與重視。本文以云南滇池為例,分析了該流域的空間分布規律,根據流域生態學、景觀生態學、生態系統健康等理論基礎知識構建了流域水生態健康評價指標,利用數據庫存儲過程將健康評價得分模型進行存儲,極大提高了模型執行速度與效率,方便后期的擴展與維護,最后利用WebGIS技術,將評價結果通過地圖在空間上進行展示,取得了良好的效果。但由于流域生態學專業知識的不足,對于健康評價得分模型中的評價指標和影響評價指標的各個因子的選取,可能存在選取不夠全面的問題。下一步應該繼續研究完善評價指標模型庫,建立科學、全面、系統的健康評價得分模型,為流域數字化管理與建設提供科學的參考和思路。