吳偉龍,陸麗君,黃翔峰,李匯灃,魏忠慶,2
(1. 同濟(jì)大學(xué)環(huán)境科學(xué)與工程學(xué)院,上海 200092;2. 福州城建設(shè)計(jì)研究院有限公司,福州 350001)
20世紀(jì)50年代,研究區(qū)域水環(huán)境的相關(guān)水文水力模型相繼出現(xiàn),21世紀(jì)初水質(zhì)模型也開(kāi)始逐漸成熟的出現(xiàn)在人們面前[1]。由于水系統(tǒng)的不確定性和人類(lèi)認(rèn)知的局限性,每個(gè)水環(huán)境模型都有局限,從而導(dǎo)致其預(yù)測(cè)評(píng)估存在極限值。隨著水環(huán)境模型的迅速發(fā)展,高度集成的復(fù)雜模型能較準(zhǔn)確地反應(yīng)水動(dòng)力狀態(tài)和生化活動(dòng)[2],因此很多大型的模型軟件得到廣泛應(yīng)用。水文水力模型可用于預(yù)測(cè)洪澇災(zāi)害[3]、評(píng)估排水管網(wǎng)能力等[4];水質(zhì)模型可用于綠色措施方案布設(shè)和評(píng)價(jià)[5],研究河流湖泊污染物的遷移轉(zhuǎn)化[2, 6]等。
這些模型含有大量的參數(shù),互相之間存在高度交互性[7],并且輸入數(shù)據(jù)、模型結(jié)構(gòu)、觀測(cè)資料、性能指標(biāo)等誤差都對(duì)參數(shù)的估計(jì)和模型的預(yù)測(cè)造成不確定性[8]。因此,模型應(yīng)用的前提是保證其精確性,不確定性評(píng)估就成為關(guān)鍵[9]。其中敏感性分析(Sensitivity Analysis, SA)和不確定性分析(Uncertainty Analysis, UA)是量化評(píng)估模型不確定性的重要手段。通過(guò)UA和SA能夠在數(shù)據(jù)挖掘和分析、降低模型模擬的誤差水平、量化模型的不確定性等方面提供良好的輔助決策作用,已成為水環(huán)境模型研究過(guò)程中必不可少的環(huán)節(jié)。
由于SA和UA概念和作用上有一定的聯(lián)系與相似性,目前已有相關(guān)的研究性文獻(xiàn)將兩者結(jié)合起來(lái)進(jìn)行研究,如劉越洋[10]研究了兩者在地下水模型(FEFLOW)中的應(yīng)用,輔助模型率定,找到對(duì)特定結(jié)果有重大影響的模型參數(shù),從而進(jìn)一步優(yōu)化模型。兩者的差異若不能正確被理解和區(qū)分,則無(wú)法發(fā)揮其各自最大的作用。本文梳理SA和UA的分析方法,建立分析流程,形成常用的應(yīng)用框架,并總結(jié)目前兩者在水環(huán)境模型中的應(yīng)用方式,為水環(huán)境模型的相關(guān)研究者提供有意義的借鑒。
通常而言, SA是研究模型輸入因素和輸出變化的響應(yīng)關(guān)系,指出識(shí)別影響模型性能的關(guān)鍵參數(shù),在模型參數(shù)率定、參數(shù)相關(guān)性和不確定性量化等方面都發(fā)揮著重要作用。UA則是對(duì)模型輸出中由于模型驅(qū)動(dòng)、模型參數(shù)、模型結(jié)構(gòu)等綜合而產(chǎn)生的結(jié)果不確定性進(jìn)行量化評(píng)定,得出不確定區(qū)間,評(píng)估最終模型的可靠性。概括來(lái)講,UA回答的是“這個(gè)模型有多不確定?”,而SA回答的是“這種不確定性從何而來(lái)?”[11]。
SA方法根據(jù)樣本空間范圍分為全局SA和局部SA。全局SA主要有回歸法[12]、Morris搜索法[13]、方差法[14](Sobol法、FAST法等)和RSA法[15],局部SA主要有OAT法、偏導(dǎo)數(shù)法等。Neumann等[16]對(duì)兩類(lèi)方法進(jìn)行了比較,指出全局SA無(wú)論是理論基礎(chǔ)還是實(shí)踐的準(zhǔn)確性上都有更好的表現(xiàn)。表1對(duì)幾種常用的全局SA進(jìn)行比較。
表1 全局敏感性分析方法比較Tab.1 Comparison of global sensitivity analysis methods
不確定性分析方法主要包括區(qū)間數(shù)學(xué)法、模糊理論法以及概率分析法。其中概率分析法常用于描述物理系統(tǒng)的不確定性, 根據(jù)模型輸入的概率分布來(lái)確定模型輸出的概率分布, 最終以概率分布的形式來(lái)表達(dá)不確定性,最常用于評(píng)估水環(huán)境模型不確定性[17]。主要包括貝葉斯平均方法(Bayesian Model Averaging, BMA)[18]、馬爾可夫鏈-蒙特卡羅法(Markov chain Monte Carlo, MCMC)[19]、極大似然不確定性方法(Generalized likelihood uncertainty estimation, GLUE)[20]、順序不確定性擬合法(Sequential uncertainty fitting, SUFI-2)[21]和參數(shù)求解法(Parameter solution, Parasol)[22]等。表2總結(jié)了這幾種常用的UA方法的原理、取樣方式、樣本量、參數(shù)相關(guān)性和特點(diǎn)。
表2 不確定性分析方法比較Tab.2 Comparison of Uncertainty Analysis Methods
無(wú)論SA還是UA,每種方法都有著自身的特性,需根據(jù)研究的不同來(lái)選擇合適的方法。分析對(duì)象、研究目的、參數(shù)相關(guān)性、模型結(jié)構(gòu)、方法的計(jì)算成本,以及對(duì)定量計(jì)算和理論支撐的需求等,均是在選擇具體方法時(shí)需要考慮的因素,對(duì)于復(fù)雜的水環(huán)境模型而言,核心要考慮的因素是方法的精確性和時(shí)間成本。
SA中方差法最為完善,利用方差的概念作為不確定性的綜合指標(biāo),繼而實(shí)現(xiàn)定量化。Song等人[23]統(tǒng)計(jì)了前人的研究,發(fā)現(xiàn)研究中最多使用的是Morris和方差法,Tang等[24]比較了18個(gè)因子的流域模型的4種敏感性分析方法(PEST、Sobol、方差法和RSA),發(fā)現(xiàn)Sobol方法理論性更強(qiáng),魯棒性也更好。而其他方法則更適用于定性的敏感性分析,適用于僅僅需要敏感性排序的研究。
UA中基于貝葉斯理論的MCMC普遍被認(rèn)為是理論最完善的方法。Dotto等[25]和Yang等[26]比較了UA的幾種方法,指出各種方法都能成功實(shí)現(xiàn)模型不確定性的定量評(píng)估,但其結(jié)果在不確定區(qū)間范圍和參數(shù)相關(guān)性上有著一定的不同。而在理論完備性上,MCMC方法更勝一籌。其他的方法由于樣本的完全隨機(jī)性,無(wú)法保證樣本的可靠性,因此常常用于計(jì)算量大的模型的初步不確定性分析中。
由于水環(huán)境模型的復(fù)雜性和不確定性,很多研究常采用兩種或多種方法進(jìn)行比較研究[27-28],以達(dá)到相互驗(yàn)證的效果。
SA和UA的時(shí)間成本主要由參數(shù)個(gè)數(shù)和模擬精度決定。參數(shù)個(gè)數(shù)影響樣本量,眾多的參數(shù)之間存在著較強(qiáng)的相關(guān)性,為達(dá)到收斂需加大樣本量。另一方面模擬精度決定了模擬一次的時(shí)間,與樣本量共同決定了時(shí)間成本。
SA定量方法中方差法通常比定性方法需要更多的樣本量[29]。而定性方法雖然所需的樣本量較小,但本身需要設(shè)定較多的參數(shù),只有當(dāng)設(shè)定的參數(shù)符合所構(gòu)建的水環(huán)境模型時(shí),才能達(dá)到和定量方法較為類(lèi)似的結(jié)果[13]。Pianosi等[30]比較了不同研究的樣本量N和參數(shù)個(gè)數(shù)k的關(guān)系,得出Morris法的N=10k~100k,RSA的N=100k~1000k,而方差法的N>1000k,據(jù)此可通過(guò)參數(shù)個(gè)數(shù)來(lái)近似評(píng)估最終的樣本量。對(duì)于UA,還未有研究明確指出參數(shù)與樣本量的關(guān)系,相同的參數(shù)個(gè)數(shù)下,樣本量排序一般是MCMC > SUFI-2 > GLUE > Parasol。模擬精度方面,有的研究需要數(shù)十萬(wàn)的樣本量才能使算法達(dá)到收斂[16],但是一次模擬需要20多秒甚至更長(zhǎng)時(shí)間,這顯然是不現(xiàn)實(shí)的,此時(shí)通常會(huì)選擇樣本量較小的方法。
為降低時(shí)間成本,SA中常采用“二步法”解決,先用定性方法初選再定量計(jì)算。Francos等[31]對(duì)SWAT模型進(jìn)行SA時(shí),先使用Morris定性簡(jiǎn)化,再使用FAST進(jìn)行定量求解,大大減少了時(shí)間成本。而在UA中常用代替模型法來(lái)解決,目前主要用神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建代替模型以取代原有的復(fù)雜水環(huán)境模型[32]。
SA和UA的應(yīng)用需要執(zhí)行一系列相似的步驟,下圖總結(jié)了SA和UA的一般流程,建立了兩者應(yīng)用框架,可以方便地說(shuō)明兩者的區(qū)別與聯(lián)系,有助于將兩者有效的應(yīng)用到水環(huán)境模型中。
圖 水環(huán)境模型SA和UA的流程圖Fig. The flow chart of SA and UA in water environment model
SA和UA的分析流程上主要分為前期準(zhǔn)備和具體分析兩個(gè)部分。其中前期準(zhǔn)備階段,SA和UA的流程是相同的,主要包括因子選擇與隨機(jī)取樣—樣本模型模擬—目標(biāo)函數(shù)選擇與計(jì)算三個(gè)環(huán)節(jié)。而在具體分析階段,SA和UA都有其獨(dú)自的分析規(guī)則、評(píng)價(jià)方式和結(jié)果表現(xiàn)形式。綜合SA和UA的整個(gè)分析流程而言,視研究目的的不同,在水環(huán)境模型中的應(yīng)用主要分為3種情況。
有些研究在不追求系統(tǒng)性或僅完成某一項(xiàng)目標(biāo)的前提下,僅作UA或SA。在水環(huán)境模型中SA最大的作用即篩選敏感因子,以找到控制水環(huán)境變化的主要因子,方便后期的調(diào)控。有研究將其用于模型率定前,實(shí)現(xiàn)因子降維。Nossent等[33]用Sobol法對(duì)SWAT模型水文水質(zhì)參數(shù)共26個(gè)參數(shù)進(jìn)行敏感性分析,在考慮參數(shù)交互作用的情況下篩選出6個(gè)最敏感的參數(shù)用于后期率定。此外,SA還可在水環(huán)境模型中用于模型率定后對(duì)每個(gè)因子做不確定性評(píng)價(jià)以應(yīng)對(duì)各種不同條件。Zhang等[14]通過(guò)Sobol法對(duì)率定好的SWAT模型進(jìn)行分析,比較了干旱年、正常年和濕潤(rùn)年的參數(shù)敏感性,發(fā)現(xiàn)不同條件下,敏感參數(shù)是不同的,找到不同條件下的敏感性參數(shù)為模型未來(lái)在不同場(chǎng)景下的應(yīng)用提供了控制因子,方便控制流量和污染。
UA在水環(huán)境模型的研究則是以量化模型不確定性為主,由于水系統(tǒng)的不確定性,加上人類(lèi)認(rèn)知的局限性,評(píng)估水環(huán)境整體的不確定性尤為重要。Li等利用MCMC評(píng)估黑河的SWAT模型不確定性,結(jié)合參數(shù)分析通過(guò)不確定區(qū)間以縮小范圍并得出參數(shù)的不確定性貢獻(xiàn)較小,而整體模型的不確定性更多的存在于結(jié)構(gòu)和數(shù)據(jù)[34]。另外UA也常應(yīng)用于模型率定后,通過(guò)不確定性分析來(lái)解決復(fù)雜的“異參同效”,如Madsen在多目標(biāo)參數(shù)自動(dòng)率定后,采用“等效參數(shù)組”的概念生成一組確定預(yù)期模型響應(yīng)范圍的置信區(qū)間,而不是生成一個(gè)單一的解決方案[35]。
水環(huán)境建模中,一個(gè)難點(diǎn)是不同的條件下模型的建立很難保持一致性,這往往歸結(jié)于水環(huán)境模型的不確定性。Shin等[36]指出參數(shù)范圍、數(shù)據(jù)周期長(zhǎng)度、流域、模型結(jié)構(gòu)和氣候條件等不同條件都會(huì)影響到水環(huán)境模型的不確定性和敏感性,因此在構(gòu)建模型時(shí)應(yīng)充分考慮這些因素并根據(jù)不同條件合理設(shè)置因子。UA和SA的結(jié)合可以很好的解決這一問(wèn)題,先使用UA整體評(píng)估模型在某種條件下的不確定性,縮小范圍,進(jìn)一步使用SA找出關(guān)鍵因子進(jìn)行調(diào)節(jié)和處理,從而相應(yīng)降低不確定性。
另一種結(jié)合應(yīng)用是輔助模型參數(shù)的“優(yōu)化”率定。Ratto等[37]提出一種新的模型率定方法,將GLUE法與基于方差法的SA耦合起來(lái),先通過(guò)UA縮小參數(shù)范圍,然后在這個(gè)范圍內(nèi)進(jìn)行SA,篩選出敏感性參數(shù),最后對(duì)敏感參數(shù)進(jìn)行率定,為模型的率定提供新的思路。Muleta等[38]先使用SRC法篩選出了SWAT模型中關(guān)鍵的20個(gè)因子,然后使用遺傳算法實(shí)現(xiàn)模型因子的率定并驗(yàn)證,確定了一組最優(yōu)參數(shù)值,最后再使用GLUE法對(duì)模型進(jìn)行不確定性評(píng)估,得出流量模型不確定性小,而產(chǎn)沙模型不確定性大的結(jié)論,同時(shí)也提供了誤差范圍。
大型綜合的水環(huán)境模型往往一次模擬的計(jì)算量很大,同時(shí)由于全局SA和UA都是基于隨機(jī)取樣的原理,在某種程度上可以互相借用樣本實(shí)現(xiàn)混用,這樣大大減少了模擬的運(yùn)算量。Silvestro等[39]先使用GLUE法對(duì)水文模型進(jìn)行預(yù)評(píng)估,確定了因子的不確定性范圍和參數(shù)的后驗(yàn)分布,然后直接利用UA樣本的散點(diǎn)圖找到關(guān)鍵因子,以實(shí)現(xiàn)SA的作用,大大減少了大型水環(huán)境模型的計(jì)算量。Zhao等[28]也采取了類(lèi)似研究思路,利用UA和SA方法原理的相似性,在不同的UA方法中根據(jù)散點(diǎn)圖直接進(jìn)行“粗略”的SA,均篩選出來(lái)了模型中的敏感參數(shù),并在不同UA得到的不確定區(qū)間中進(jìn)行敏感參數(shù)的排序,最終排序結(jié)果相同,以證明多種UA的樣本均可實(shí)現(xiàn)SA。
本文對(duì)SA和UA的概念、分析方法、方法選擇、分析流程與應(yīng)用等進(jìn)行了比較和總結(jié),并介紹了兩者在水環(huán)境模型中的不同應(yīng)用場(chǎng)景。兩者的結(jié)合應(yīng)用更適用于不確定性大的水環(huán)境模型,以保證能得到對(duì)模型不同角度的理解,既知道不確定性的定量表示是多少(UA),又知道這種不確定性受什么的影響最大(SA)。
關(guān)于模型不確定性分析和敏感性分析的研究,以下3個(gè)可能成為未來(lái)的主要方向。
4.1 方法優(yōu)化上。目前尚沒(méi)有一種方法被證明是最好的,雖然上文中建議使用多種方法進(jìn)行比較驗(yàn)證,但無(wú)疑會(huì)增加工作量,對(duì)各種方法的比較優(yōu)化顯得尤為重要。
4.2 計(jì)算效率上。目前已有不少研究將代替模型的方法引入到了水環(huán)境模型中,以實(shí)現(xiàn)計(jì)算效率的提高,未來(lái)代替模型法可能會(huì)成為一種主流。
4.3 結(jié)果可視化上。目前人們對(duì)于SA和UA這種抽象概念的理解并不容易,因此多種樣式的可視化展示可為建模人員利用和分析提供便利。