モデル勉強会 Soetaert & Herman (2009) 輪読 Chapter 11 Testing and Validating the Model 100710 in 東京 玉木 一郎(森林文化アカデミー) 1
Jun 28, 2015
モデル勉強会Soetaert & Herman (2009) 輪読Chapter 11 Testing and Validating the Model
100710 in 東京玉木 一郎(森林文化アカデミー)
1
Testing and Validating the Model
• このChapterでは考案したモデルがまっとうかどうか検証する
• モデルは正しかろうがそうでなかろうが,一応の答えを返してしまうため,検証の作業が必要不可欠
➡ モデルの挙動や安定性をチェック
2
このChapterの目次11.1 Coupled BOD-O2 Model Revisited11.2 Testing the Correctness of the Model Solution11.3 Testing the Internal Logic of the Model11.4 Model Verification and Validity11.5 Model Sensitivity11.6 Case Studies in R11.6.1 Time-Varying Oxygen Consumption in a Small Cylindrical Organism11.6.2 R for Validation and Verification11.6.3 Univariate Local Sensitivity Analysis11.6.4 Bivariate Local Sensitivity Analysis
3
Coupled BOD-O2 model
dBOD
dt= −r · BOD
dO2
dt= −r · BOD + k · (O2
∗ −O2)
BODt = BOD0 · e−r·t
O2t = BOD0 · re−k·t − e−r·t
k − r+ O20 · e
−k·t+ O2
∗ · (1− e−k·t
)
Fig. 11.1 Coupled BOD-O2モデルのイメージ図
解析解(analytical solution)
r:BODの減衰率O2*:飽和酸素濃度k:再曝気系数
4
モデルは正しく解かれているのか?
• モデルが正しく解かれているかどうかのかの確認(model verification)
• 解析解の結果を数値解の結果と比較
• Coupled BOD-O2モデルの場合は2者が一致するのでOK
Fig. 11.2 A Coupled BOD-O2モデルの解析解と数値解の結果
5
モデルの前提条件のチェック
• State variablesは常に正の値を示しているか?例 )密度やバイオマス,濃度は負の値をとらない
✓ ある物質の移動がソースとなるコンパートメントの濃度に依存していない場合
➡ Rate limiting termを設定する必要
✓ 正しくない積分方法(Section 6.2)や近似(Section 6.4)を行った場合に,負の値を示すことも
6
Coupled BOD-O2モデルの改良
• もとのモデルの仮定では,O2の量と無関係にBODが減少
• O2の再曝気がほとんどない場合(k = 0.01)には,O2が負の値を示してしまう...
• O2によるrate limitation termの追加Fig. 11.2 B Rate limitation
termを追加した場合のO2の挙動(実線)と元のモデルの挙動(破線)
dBOD
dt= −r · BOD · O2
O2 + ks
dO2
dt= −r · BOD · O2
O2 + ks+ k · (O2
∗ −O2)
7
モデルの挙動は予想どおり?
• モデルの挙動が期待と異なる場合➡ どこかに不具合があるのかもしれない
➡ (モデル屋じゃない)同僚にモデルの内容を説明し,その際に生じた批判や疑問を検討することで不具合を発見できるかも...
8
モデルの当てはまりのチェック
• モデルの予測値とデータを見比べる✓一致する
➡ とりあえずOKだけど,それは誤っているのを立証できないだけなことに注意
✓食い違う
➡ 再検討する必要
9
モデルの当てはまりのチェック
•データとモデルが食い違う場合✓データの精度はOK?
✓モデルの仮定はOK?
✓パラメータ推定の方法はOK?
10
モデルの感受性
•感受性分析(sensitivity analysis)➡ モデルのパラメータ値を動かしたときに予測値はどんな挙動を示すのか?
➡ Globalとlocalの2タイプ
11
Global sensitivity analysis
• パラメータ値を比較的広いレンジで動かしてモデルの予測値の挙動をさぐる
• Coupled BOD-O2モデルでrを動かした場合のO2の(100日間中の)最小値の挙動
Fig. 11.2 C Coupled BOD-O2モデルのrを動かした時のO2の最小値の挙動。もともとのrの値は0.05に設定
12
Local sensitivity analysis• パラメータ値を少しだけ動かしてモデルの個々の予測値の挙動をさぐる
• Coupled BOD-O2モデルでO2*を300から330に動かした場合の挙動Fig. 11.2 D Coupled BOD-O2モデルのO2*を300から
330に動かした時のO2の挙動
Sij =∆θj
∆yi
δyi
δθj
j番目のパラメータを動かした時のyのi番目の値の感受性
13
感受性分析の活用
• パラメータが予測値に及ぼす影響をランク付けできる
➡ どのパラメータの影響力が最も強い?
• パラメータ間の相互作用➡ Bivariate or multivariate sensitivity analysis
14
Small cylindrical organismの酸素消費の例
1.0 hのbottom water oxygenの濃度変化
δO2
δt= − 1
A· δA · J
δr−Q
J = −DaδO2
δr
r:円柱の半径L:円柱の長さA:円柱の表面積(A = 2πrL)J:diffusive fluxQ:ゼロ次の酸素消費率
O2(r) =Q
4Da(r2 −R2
) + BW R:最外装までの半径BW:bottom waterの酸素濃度
external oxygen一定のもとでの解析解
15
解析解と数値解の比較
Fig. 11.4 AB 10層(A)と100層(B)の場合の解析解(実線)と数値解(丸)の比較
• 数値解は解析解に良く一致• ここまではOK 16
1時間の挙動をチェック
• BWは1時間のサイクルでサインカーブを描く➡ その時の各層における酸素消費動態
Fig. 11.4 CD Bottom waterの1時間の変動(C),1時間の各層における酸素消費動態
色が濃い程,酸素消費が大きい
17
閉鎖系におけるバクテリアの炭素動態の例
Fig. 11.5 バクテリアの炭素動態モデル(A),同モデルによるシミュレーション結果
dBdt
= g · γ · SS + ks
· B− d · B− r · B
dSdt
= −g · SS + ks
· B + d · B
B:バイオマス(mol C m-3)S:グルコース( mol C m-3)g:最大同化率ks:half-saturation constantϒ:成長効率r:呼吸率d:死亡率
18
各パラメータを10%増やしてみると...
• gmaxとeffで全期間をとおしてバクテリアのバイオマスに影響
• Siniはグルコース濃度がかなり低下した後でバイオマスに影響
0 10 20 30 40 50
010203040
Bini
hour
molC/m3
0 10 20 30 40 50
01020304050
Sini
hour
molC/m3
0 10 20 30 40 50
010203040
gmax
hour
molC/m3
0 10 20 30 40 50
01020304050
eff
hour
molC/m3
0 10 20 30 40 50
010203040
ks
hour
molC/m3
0 10 20 30 40 50
010203040
rB
hour
molC/m3
0 10 20 30 40 50
010203040
dB
hour
molC/m3
perturbedreference
Fig. 11.6 バクテリアの炭素動態モデルの各パラメータの値を10%増加させた場合のバクテリアのバイオマス
19
Sijの計算
• Sijは時間とともに変化• いくつかのパラメータは良く似た挙動を示す
0 10 20 30 40 50
0
50
100
150
200
250
tout
Sens
BiniSinigmaxeffksrBdB
δyi
δθj≈
yi|θ∗j − yi|θj
θ∗j − θj
Fig. 11.7 バクテリアの炭素動態モデルの各時間断面における各パラメータの感受性
20
Sij =∆θj
∆yi
δyi
δθj
全体での感受性の評価
• ksの変化は推定値にそれほど影響を与えなそう
• gmaxとeffの影響が大きそう
δSqr δAbs
Bini 9.59 5.21Sini 28.62 19.57gmax 58.88 29.51eff 62.43 37.12ks 0.37 0.17rB 4.65 3.47dB 2.98 2.06
δSqrj =
���� 1n
·n�
i=1
S2ij
δAbsj =
1n
·n�
i=1
|Sij |
(テキストの11.12式はiとjが逆でないか?)
21
Bivariate LocalSensitivity Analysis
• ksをのぞいて総当たりの散布図を作ってチェック
• gmaxとBini,effとgmaxで相関が高い
➡ gmaxの増加によってもたらされるoutputの増加は,Biniの増加によってもまた,もたらされる
Bini
0 20 40
−0.5 1
0 100 200
0.9 −0.21
−10 −6 −2
010203040
−0.68
01020304050
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Sini −0.45 −0.061 −0.58 −0.18
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
gmax 0.92 −0.26
050100150200250
−0.72
050
100150200250
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
eff −0.56 −0.89
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
rB−10−8−6−4−20
0.86
0 20 40
−10−8−6−4−2
0 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0 100 200
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
−10 −6 −2
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!!
!!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! dB
Sensitivity functions
Fig. 11.8 バクテリアの炭素動態モデルのksを除いた全パラメータの各時間断面におけるSijの総当たり散布図 22