• 沒有找到結果。

第四章 自動化地下水參數檢定系統發展

4.1 參數檢定流程

本系統之參數檢定流程如圖4.1-1 所示,在參數檢定開始後,系統首先 初始化參數值,即淨補注量及抽水量,並讀入相關參數的設定資訊,如分 區設定、觀測井位置、觀測水位等。

在 完 成 初 始 參 數 設 定 後 , 接 著 執 行 地 下 水 模 式 MODFLOW , MODFLOW 完成地下水流模擬後,將地下水位輸出成 ASCII 格式之檔案。

下一步則為專家系統前處理器判斷各分區之觀測水位與模擬水位之誤 差(以下稱為檢定誤差)是否均小於容許誤差。當有一分區之檢定誤差超過容 許誤差,專家系統前處理器則會取出各分區的相關資訊,包括水位高、淨 補注量或抽水量、模擬水位與觀測水位誤差以及上次參數檢定所得參數修 正量,然後傳入專家系統進行推論分析。

將所需資訊傳送至專家系統後,系統接下來會執行專家系統,專家系 統依據知識庫中之規則集合(rules),並搭配推理機(inference engine)之運 作,而推論出各區的參數修正量。

當各區待檢定之參數,由專家系統分析出修正量後,專家系統後處理 器再將各修正量依據MODFLOW 輸入檔格式,對 MODFLOW 輸入檔進行 更新。

接著再次執行MODFLOW,計算出更新參數後的地下水位,再由專家 系統前處理器判斷各分區檢定誤差是否均小於容許誤差,若是則停止參數 檢定,若否則反覆執行上述步驟,直至所有分區檢定誤差均小於容許誤差。

開始參數檢定

初始化參數值與 設定模式參數檢定

相關資訊

執行地下水模式 MODFLOW

傳送相關資訊 至專家系統

專家系統對各區 進行參數修正

以修正值更新 MODFLOW輸入檔

各區檢定誤差

均小於容許誤差 是 停止參數檢定

圖 4.1-1 參數檢定流程圖 4.2 地下水模式自動化參數檢定系統建置

本研究之地下水模式自動化參數檢定系統可分為三個部份,分別為地 下水模擬、參數檢定專家系統建置及專家系統前後處理器建置,以下將分 別說明此三部份之設定及建置。

4.2.1 地下水模擬

本研究選用 MODFLOW 做為地下水模擬模式。MODFLOW 係由數個 套件(package)所組成,每個套件再由數個模組(module)所組成,使用者可依 所需功能選擇使用之套件,未被使用的套件則不啟動以節省電腦計算資 源。本研究所建立之模式則使用了 discretization file (DIS)、zone array (ZONE)、Basic Package (BAS)、Output Control Option (OC)、Layer Property Flow package (LPF)、Well Package (WEL)、Preconditioned Conjugate-Gradient Package (PCG)等七個套件。當 MODFLOW 執行時,MODFLOW 遂依據所 啟用之套件,讀取所相對應之輸入檔。

4.2.2 參數檢定專家系統建置

專家系統乃一模仿人類專家且具有決策能力的智慧型電腦系統,本研 究採用CLIPS(C Language Integrated Production System)建立地下水模式參 數檢定專家系統,CLIPS 乃一方便採用物件導向概念,用以建立專家系統 之工具。在本研究中,地下水模式以分區為概念進行參數檢定,一個分區 即為一個物件,在 CLIPS 中則以建立實例(instance)的方式應用物件導向概 念。在每個實例(物件)中,則有若干屬性(slot)代表各分區的特性,如 K 值、

所在分層、淨補注量或抽水量、模擬水位與觀測水位誤差及各種參數調整 依據。研究所建立之專家系統,乃將熟悉地下水模式參數檢定之人類專家 所具有之經驗及知識轉換成規則(Rule)並將之存放於知識庫(Knowledge Base),當專家系統對地下水模式進行參數檢定時,專家系統依據所輸入之 情況並透過推理機(Inference Engine)對知識庫內之規則進行規則推論(Rule

Inference),其推理結果即為所輸入問題之答案。

4.2.3 專家系統前後處理器建置

為了讓專家系統與MODFLOW 進行溝通,本研究使用 C++ 程式語言 為平台,建立專家系統與MODFLOW 的溝通橋樑,此即為專家系統前後處 理器。

專家系統前處理器的主要功能可分為兩個部份,第一個功能為讀取專 家系統所需之資訊:前處理器將MODFLOW 計算出的模擬水位進行處理,

取出所需的水位資訊,並且從執行MODFLOW 所需的各種輸入檔中,讀取 模式的相關資訊,匯整後傳入專家系統進行參數檢定。第二個功能為分析 各分區是否滿足收斂標準;前處理器分析各分區模擬水位與觀測水位的誤 差是否都在容許誤差內,若超出容許誤差,則重新啟動MODFLOW,若小 於容許誤差標準,則停止參數檢定,並結束程式。

專家系統後處理器的主要功能為,依據專家系統檢定後的修正值,更 新MODFLOW 的輸入檔。

4.3 參數檢定知識擷取

在建立專家系統之前,必須先擷取參數檢定之經驗及知識。由於本研 究室之研究團隊,在地下水檢定方面已有相當多研究,相關經驗豐富,因 此與研究團隊之學長以及指導教授進行訪談及討論,之後再依據討論結 果,歸納出以下幾點概念:

1. 一般地下水流模式中,由於受到流線的影響,使得上游進行調整 時,會對下游影響較大;而下游進行調整時,對上游影響較小。因 此模式大多會從上游開始往下游調整。

2. 在多層地下水模式檢定中,由於表層補注量的大小對於下層含水層 抽水量有顯著的影響,因此進行人工檢定時,通常會先進行表層抽

水/(補注)量檢定,再依序往下層進行抽水量檢定。

3. 在人工檢定地下水模式時,通常會以迭代方式來回調整各分區參 數,使各區之檢定誤差逐漸縮小。

基於上述概念,本研究經由反覆測試,將其歸納成更具體的參數調整 原則,詳細說明如下所示:

1. 在進行參數調整前,各分區應先設定初始修正量(ΔQ),作為參數調 整幅度之基準。

2. 開始調整時,需判別修正方向。當觀測水位大於模擬水位時,往正 方向調整,即增加水量;當觀測水位小於模擬水位時,往負方向調 整,此時應減少水量。

3. 判別修正方向後,接著應判斷修正量,其判斷方法為比較本次檢定 與上次檢定時之修正方向。若修正方向相同,表示參數修正持續向 同方向進行,則修正量不變;若修正方向相反,表示參數調整震盪,

則修正量減半。

4. 經多次調整後,參數修正量會逐漸縮小,然而因多分區同時進行調 整,各分區會受相鄰分區影響,可能使得調整量縮小過快,造成檢 定速度趨緩,因此當檢定速度過慢時,各分區調整量設定為同時放 大一定倍數。

4.4 參數檢定規則說明

本研究將上述抽水量檢定相關經驗,歸納成 10 條規則,再由這 10 條 規則連接成推論鏈,並儲存於知識庫中,此推論鏈為前向鏈結(Forward Chaining),主要由水位演繹出修正量,其推論鏈如圖 4.4-1 所示。

該分區是否

Rule calibrating_adjust

Rule belonging

Rule first_dry Rule below_sink

Rule calibrating_direction

圖4.4-1 專家系統抽水量檢定推論鏈 4.4.1 參數檢定前之初始設定及定義說明

首先,專家系統在進行初次檢定時,會先設定各分區參數調整量ΔQ。

之後每次參數調整,ΔQ 都會根據規則進行調整,並儲存起來作為下一次

參數調整之參考。各分區均有自己的ΔQ,根據規則進行調整,不受其它分 區影響。此外,每次進行推論會得出一個ΔQ 之外,還會獲得一個正號或 負號。正號即代表該區的實際的水量應比現在要多,因此需增加水量,所 以將現在的抽水量(或補注量)Qn 加上所推論出的ΔQn,而獲得新的抽水量 (或補注量)Qn+1,如式 4.1。反之亦然,負號即代表該區的水量應比現在要 少,因此需減少水量,所以將現在的抽水量或補注量Qn減去所推論出的Δ Qn,而獲得新的抽水量或補注量Q n+1,如式4.2。

Q

n+1 =

Q

n +∆

Q

n (4.1)

Q

n+1 =

Q

n −∆

Q

n (4.2) 4.4.2 參數檢定之推論

本參數檢定系統由10 條規則連接,形成一個推論鏈。推論鏈首先判斷 參數調整量是否足夠,此部分將在 4.4.5 節進一步說明。若為第一次調整 時,則直接給予參數調整量足夠的判定。接著判斷該分區是否位於第一層。

若是在第一層,則判斷該分區是否抽乾。若不在第一層(即在下層),則判斷 該分區是否為下層補注。當該分區位於第一層且為抽乾的狀態,即代表該 分區的儲水量太少,所以判定本次調整輸出的ΔQn為〝+〞。若該分區位於 下層且為下層補注的狀態,則不符合一般物理特性,下層不應有補注來源,

判定本次調整輸出的ΔQn為〝-〞,讓該分區變回抽水的狀態。

當推論鏈前兩個判斷的結果為,該分區位於第一層且未抽乾或該分區 位於下層且為抽水的狀態,則表示該分區為正常狀態,可繼續判斷該區Δ Qn的正負號,其判斷方式為,當該分區的觀測水位大於模擬水位,代表該 分區水量不夠多,因此判定輸出的ΔQn為〝+〞。當該分區的觀測水位小於 模擬水位,代表該分區水量太多,因此判定輸出的ΔQn為〝-〞。

在判定正負號後,接著將判斷調整量,然後輸出結果,其中調整量將

於4.4.3 與 4.4.4 節說明。

4.4.3 輸出應為增加水量的情形解說

當判定調整量為增加水量(即ΔQ n為〝+〞)後,其接續之專家系統推論 鏈如圖4.4-2,會先判斷上次輸出ΔQ n-1是否為〝+〞。若上次輸出的ΔQ n-1 為〝+〞,則不需調整ΔQn的量,因此ΔQn = ΔQn-1。若ΔQn-1為〝-〞,則 再判斷ΔQn的值,若該值大於 10-8(m/day),則ΔQn = ΔQn-1/2;若該值小 於10-8(m/day),表示現在ΔQ 值已經趨近於 0,所以令ΔQ 不變,則ΔQn = ΔQn-1。第 n+1 次之抽水量即為 Q n+1 =Q n +ΔQ n

ΔQn-1方向為+

ΔQn-110-8 (m/day)

ΔQn= ΔQn-1/2

ΔQn= ΔQn-1

ΔQn= ΔQn-1 否 是

否 是

ΔQn方向為+

Rule calibrating_plus_correction

Rule posi_min_deltQ

圖4.4-2 輸出為增加水量時之專家系統推論流程圖 4.4.4 輸出應為減少水量的情形解說

當判定調整為減少水量(即ΔQ n為〝-〞)後,其接續之專家系統推論鏈 如圖4.4-3,判斷方式與上一小節相似,首先為判斷上次輸出ΔQ n-1的正負 號。若上次輸出的ΔQ n-1為〝-〞,則不需調整ΔQn的量,因此ΔQn = ΔQn-1。 若上次輸出ΔQ n-1為〝+〞,則再判斷ΔQ n-1的值,若該值大於 10-8(m/day),

則ΔQn = ΔQn-1/2;若該值小於 10-8(m/day),表示現在ΔQ 值已經趨近於 0,

所以令ΔQ 不變,則ΔQn =ΔQn-1。第 n+1 次之抽水量即為 Q n+1 =Qn +ΔQn

ΔQn-1方向為+

ΔQn-110-8 (m/day)

ΔQn= ΔQn-1

ΔQn= ΔQn-1/2

ΔQn= ΔQn-1

是 否

ΔQn方向為

-是

Rule calibrating_minus_correction

Rule negi_min_deltQ

圖4.4-3 輸出為減少水量時之專家系統推論流程圖 4.4.5 調整量是否足夠說明

當第一次檢定結束後,後續檢定進行時,推論鏈中參數調整量是否足 夠的判定將依據公式4.3 進行判斷。

η ε

ε ε =

) max(

) max(

) max(