# Calibrating a hydrological model robustly to rain perturbations with stochastic surrogates

Katarina Radišić, Claire Lauvernet, Arthur Vidard

► To cite this version:

Katarina Radišić, Claire Lauvernet, Arthur Vidard. Calibrating a hydrological model robustly to rain perturbations with stochastic surrogates. LEFE/MANU 2023 - Colloque sur les Méthodes mathématiques et numériques, Météo France, Jun 2023, Toulouse, France. hal-04383513

HAL Id: hal-04383513

https://hal.inrae.fr/hal-04383513v1

Submitted on 9 Jan 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
# Calibrating a hydrological model robustly to rain perturbations with stochastic surrogates

Katarina Radišić¹²

Claire Lauvernet¹, Arthur Vidard²

¹INRAE, RiverLy, Lyon-Villeurbanne

²Univ. Grenoble-Alpes, Inria, CNRS, Grenoble-INP, LJK

<figure><img src="image_2.png" /></figure>

RÉPUBLIQUE
FRANÇAISE

École
Étudiante
Environnement

INRAE

<figure><img src="image_3.png" /></figure>
Context

<figure><img src="image_4.png" /></figure>

**Figure:** PESHMELBAª, a process-based, spatially distributed water and pesticide transfer model, representing dynamical behavior of pesticides in agricultural catchments. Semi-conceptual, semi-physically based model, highly non-linear.

ªEmilie Rouzies et al. (June 2019). "From agricultural catchment to management scenarios: A modular tool to assess effects of landscape features on water and pesticide behavior". en. In: *Science of The Total Environment* 671, pp. 1144–1160.
Context

<figure><img src="image_5.png" /></figure>

Figure: PESHMELBAª, a process-based, spatially distributed water and pesticide transfer model, representing dynamical behavior of pesticides in agricultural catchments. Semi-conceptual, semi-physically based model, highly non-linear.

* Not all model parameters can be measured directly

<footnote>ªEmilie Rouzies et al. (June 2019). "From agricultural catchment to management scenarios: A modular tool to assess effects of landscape features on water and pesticide behavior". en. In: *Science of The Total Environment* 671, pp. 1144–1160.</footnote>
Context

<figure><img src="image_6.png" /></figure>

Figure: PESHMELBAª, a process-based, spatially distributed water and pesticide transfer model, representing dynamical behavior of pesticides in agricultural catchments. Semi-conceptual, semi-physically based model, highly non-linear.

* Not all model parameters can be measured directly

* → calibrate these model parameters with terrain observations

<footnote>ªEmilie Rouzies et al. (June 2019). "From agricultural catchment to management scenarios: A modular tool to assess effects of landscape features on water and pesticide behavior". en. In: *Science of The Total Environment* 671, pp. 1144–1160.</footnote>
Context

<figure><img src="image_7.png" /></figure>

Figure: PESHMELBAª, a process-based, spatially distributed water and pesticide transfer model, representing dynamical behavior of pesticides in agricultural catchments. Semi-conceptual, semi-physically based model, highly non-linear.

* Not all model parameters can be measured directly

* → calibrate these model parameters with terrain observations

* Impact of external uncertainties on the calibration results

<footnote>ªEmilie Rouzies et al. (June 2019). "From agricultural catchment to management scenarios: A modular tool to assess effects of landscape features on water and pesticide behavior". en. In: *Science of The Total Environment* 671, pp. 1144–1160.</footnote>
# Introduction

<figure><img src="image_8.png" /></figure>
<figure><img src="image_9.png" /></figure>

<figure><img src="image_10.png" /></figure>

<figure><img src="image_11.png" /></figure>

<figure><img src="image_12.png" /></figure>

<figure><img src="image_13.png" /></figure>

<figure><img src="image_14.png" /></figure>

# Introduction

<figure><img src="image_15.png" /></figure>

<figure><img src="image_16.png" /></figure>
# Introduction

<figure><img src="image_17.png" /></figure>

<figure><img src="image_18.png" /></figure>

<figure><img src="image_19.png" /></figure>
# Introduction

<figure><img src="image_20.png" /></figure>

<figure><img src="image_21.png" /></figure>
<figure><img src="image_22.png" /></figure>

<figure><img src="image_23.png" /></figure>

<figure><img src="image_24.png" /></figure>

<figure><img src="image_25.png" /></figure>

<figure><img src="image_26.png" /></figure>

<figure><img src="image_27.png" /></figure>

# Introduction

<figure><img src="image_28.png" /></figure>

<figure><img src="image_29.png" /></figure>

<figure><img src="image_30.png" /></figure>
Introduction

<figure><img src="image_31.png" /></figure>
Introduction

<figure><img src="image_32.png" /></figure>
Introduction

<figure><img src="image_33.png" /></figure>
Introduction

<figure><img src="image_34.png" /></figure>
# Introduction

<figure><img src="image_35.png" /></figure>
Introduction

<figure><img src="image_36.png" /></figure>
# Introduction

<figure><img src="image_37.png" /></figure>
Introduction

<figure><img src="image_38.png" /></figure>
<figure><img src="image_39.png" /></figure>

<figure><img src="image_40.png" /></figure>

<figure><img src="image_41.png" /></figure>

<figure><img src="image_42.png" /></figure>

<figure><img src="image_43.png" /></figure>

# Introduction

<figure><img src="image_44.png" /></figure>

What does it mean to find a *robust* minimizer ?

<figure><img src="image_45.png" /></figure>
<figure><img src="image_46.png" /></figure>

<figure><img src="image_47.png" /></figure>

<figure><img src="image_48.png" /></figure>

<figure><img src="image_49.png" /></figure>

<figure><img src="image_50.png" /></figure>

<figure><img src="image_51.png" /></figure>

<figure><img src="image_52.png" /></figure>

Methods: Robust estimators

$$1. \theta_{\mathbb{E}}^{*} = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_{U}[J(\theta, U)],$$

<figure><img src="image_53.png" /></figure>
Methods: Robust estimators

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\text{Var}}^* = \underset{\theta}{\operatorname{argmin}} \text{Var}_U[J(\theta, U)],$

<figure><img src="image_54.png" /></figure>
Methods: Robust estimators

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\mathrm{Var}}^* = \underset{\theta}{\operatorname{argmin}} \mathrm{Var}_U[J(\theta, U)],$

3. Pareto of $\theta_{\mathbb{E}}^*$, $\theta_{\mathrm{Var}}^*$

<figure><img src="image_55.png" /></figure>
# Methods: Robust estimators

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\mathrm{Var}}^* = \underset{\theta}{\operatorname{argmin}} \mathrm{Var}_U[J(\theta, U)],$

3. Pareto of $\theta_{\mathbb{E}}^*$, $\theta_{\mathrm{Var}}^*$

4. ...

<figure><img src="image_56.png" /></figure>
# Methods: Robust estimators

<figure><img src="image_57.png" /></figure>

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\mathrm{Var}}^* = \underset{\theta}{\operatorname{argmin}} \mathrm{Var}_U[J(\theta, U)],$

3. Pareto of $\theta_{\mathbb{E}}^*$, $\theta_{\mathrm{Var}}^*$

4. ...

* How to estimate the robust parameters from a limited number of model simulations?
# Methods: Robust estimators

<figure><img src="image_58.png" /></figure>

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\mathrm{Var}}^* = \underset{\theta}{\operatorname{argmin}} \mathrm{Var}_U[J(\theta, U)],$

3. Pareto of $\theta_{\mathbb{E}}^*$, $\theta_{\mathrm{Var}}^*$

4. ...

* How to estimate the robust parameters from a limited number of model simulations?

<figure><img src="image_59.png" /></figure>
# Methods: Robust estimators

1. $\theta_{\mathbb{E}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{E}_U[J(\theta, U)],$

2. $\theta_{\mathbb{V}_{ar}}^* = \underset{\theta}{\operatorname{argmin}} \mathbb{V}_{ar}_U[J(\theta, U)],$

3. Pareto of $\theta_{\mathbb{E}}^*$, $\theta_{\mathbb{V}_{ar}}^*$

4. ...

* How to estimate the robust parameters from a limited number of model simulations?

→ Stochastic metamodelª

$u_1, u_2, u_3$

<figure><img src="image_60.png" /></figure>

<footnote>ªNora Lüthen, Stefano Marelli, and Bruno Sudret (Mar. 2023). “A spectral surrogate model for stochastic simulators computed from trajectory samples”. en. In: *Computer Methods in Applied Mechanics and Engineering* 406, p. 115875.</footnote>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

<figure><img src="image_61.png" /></figure>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* → ok, for when a rain realization is fixed

<figure><img src="image_62.png" /></figure>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* → ok, for when a rain realization is fixed

$$J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_{\alpha} \psi_{\alpha}(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_{\alpha} \psi_{\alpha}(\theta)$$

<figure><img src="image_63.png" /></figure>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* —→ ok, for when a rain realization is fixed

$$J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_{\alpha} \psi_{\alpha}(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_{\alpha} \psi_{\alpha}(\theta)$$

* ...but when the rain is an external, unknown, unparametrized uncertainty ?

<figure><img src="image_64.png" /></figure>
Methods: Stochastic metamodel

• Polynomial chaos expansion (useful for models with sparse observations)

• —→ ok, for when a rain realization is fixed

$$
J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_\alpha \psi_\alpha(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_\alpha \psi_\alpha(\theta)
$$

• ...but when the rain is an external, unknow, unparametrized uncertainty ?

$$
\hat{J}(\theta, \omega) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right)
$$

<figure><img src="image_65.png" /></figure>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* —→ ok, for when a rain realization is fixed

$$J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_{\alpha} \psi_{\alpha}(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_{\alpha} \psi_{\alpha}(\theta)$$

* ...but when the rain is an external, unknow, unparametrized uncertainty ?

$$\hat{J}(\theta, \omega) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right)$$

* PCE on each rain realization, then Principal component analysis on the PCE coefficients

<figure><img src="image_66.png" /></figure>
# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* —→ ok, for when a rain realization is fixed

$$J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_{\alpha} \psi_{\alpha}(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_{\alpha} \psi_{\alpha}(\theta)$$

* ...but when the rain is an external, unknow, unparametrized uncertainty ?

$$\hat{J}(\theta, \omega) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right)$$

* PCE on each rain realization, then Principal component analysis on the PCE coefficients

* representation of the impact of the variability of the rain on the cost function through a random variable in the latent space
<figure><img src="image_67.png" /></figure>

<figure><img src="image_68.png" /></figure>

<figure><img src="image_69.png" /></figure>

<figure><img src="image_70.png" /></figure>

<figure><img src="image_71.png" /></figure>

<figure><img src="image_72.png" /></figure>

# Methods: Stochastic metamodel

* Polynomial chaos expansion (useful for models with sparse observations)

* —→ ok, for when a rain realization is fixed

$$J(\theta) = \sum_{\alpha \in \mathbb{N}^K} c_{\alpha} \psi_{\alpha}(\theta) \approx \sum_{\alpha \in \mathcal{A}_q^{K,p}} c_{\alpha} \psi_{\alpha}(\theta)$$

* ...but when the rain is an external, unknow, unparametrized uncertainty ?

$$\hat{J}(\theta, \omega) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right)$$

* PCE on each rain realization, then Principal component analysis on the PCE coefficients

* representation of the impact of the variability of the rain on the cost function through a random variable in the latent space

* the mean and variance are analytically available and independent of the distribution of Z

<figure><img src="image_73.png" /></figure>
Methods: Stochastic metamodel

<figure><img src="image_74.png" /></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$

<figure><img src="image_75.png" /></figure>
Methods: Stochastic metamodel

<figure><img src="image_76.png" /></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$
Methods: Stochastic metamodel

<figure><img src="image_77.png" /></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$
Methods: Stochastic metamodel

<figure><img src="image_78.png" /></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$
Methods: Stochastic metamodel

<figure><img src="image_79.png" /></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$
Case study: Moisture profile observations, twin experience

$$ 
\begin{array}{l} 
J(\theta, u) = (M(\theta, u) - y_{\text{true}})^2 \\ 
\theta \in \mathbb{R}^6 \\ 
y_{\text{true}} \in \mathbb{R}^{25} 
\end{array} 
$$

Season = S - Duration = 6h - Intensity = 35.7mm

<figure><img src="image_80.png" /><figcaption>Rain and parameter changes on the moisture profile</figcaption></figure>

<figure><img src="image_81.png" /></figure>
Case study: Moisture profile observations, twin experience

<figure><img src="image_82.png" /><figcaption>Rain and parameter changes on the moisture profile</figcaption></figure>

$$ 
\begin{array}{l}
J(\theta, u) = (M(\theta, u) - y_{\text{true}})^2 \\
\theta \in \mathbb{R}^6 \\
y_{\text{true}} \in \mathbb{R}^{25}
\end{array}
$$

Season = S - Duration = 6h - Intensity = 35.7mm

<figure><img src="image_83.png" /></figure>
Case study: Moisture profile observations, twin experience

<figure><img src="image_84.png" /><figcaption>Rain and parameter changes on the moisture profile</figcaption></figure>

$$ 
\begin{gathered}
J(\theta, u) = (M(\theta, u) - y_{\text{true}})^2 \\
\theta \in \mathbb{R}^6 \\
y_{\text{true}} \in \mathbb{R}^{25}
\end{gathered}
$$

Season = S - Duration = 6h - Intensity = 35.7mm

<figure><img src="image_85.png" /></figure>
Case study: Moisture profile observations, twin experience

<figure><img src="image_86.png" /><figcaption>Rain and parameter changes on the moisture profile</figcaption></figure>

$$ J(\theta, u) = (M(\theta, u) - y_{true})^2 \\ \theta \in \mathbb{R}^6 \\ y_{true} \in \mathbb{R}^{25} $$

<figure><img src="image_87.png" /><figcaption>Season = S - Duration = 6h - Intensity = 35.7mm</figcaption></figure>
# Results: Conditional minimization

* PCE constructed conditionally to each train rain realization.

* Determination coefficients $R^2 > 0.95$

* Minimization BFGS conditionally to each rain realization.

<figure><img src="image_88.png" /></figure>

**Figure:** Histogram of conditional minimizers to each train rain realization.

<figure><img src="image_89.png" /></figure>
## Results: Validation of the emulator

<figure><img src="image_90.png" /><figcaption>Figure: Comparison of the *train* and the *test* means $E_U[J(\theta, U)]$.</figcaption></figure>

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in A} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$

* The emulator mean is a good estimator of the true mean.
<figure><img src="image_91.png" /></figure>

<figure><img src="image_92.png" /></figure>

<figure><img src="image_93.png" /></figure>

<figure><img src="image_94.png" /></figure>

<figure><img src="image_95.png" /></figure>

## Results: Validation of the emulator

<figure><img src="image_96.png" /><figcaption>Test vs train set trajectories projected on PCE basis</figcaption></figure>

Figure: Comparison of the **train** and the **test** trajectories of PESHMELBA simulations, projected on the PCE basis.

$$ \hat{J}(\theta, U(\omega)) = \hat{\mu}(\theta) + \sum_{k=1}^{K} \sqrt{\lambda_k} Z_k(\omega) \left( \sum_{\alpha \in \mathcal{A}} b_{\alpha}^{(k)} \psi_{\alpha}(\theta) \right) $$

* The emulator mean is a good estimator of the true mean.

* The **train** set and the **test** set do not present the same variabilities, thus the emulator does not reproduce correctly the impact of rain perturbations on the cost function.
Results: Validation of the emulator

<figure><img src="image_97.png" /></figure>

**Figure:** Cost function evaluated at the test points, the simulations performed with the minimizer of the mean have a lower mean and variance than the one obtained with the minimizer conditioned on one rain realization.

INRAO
# Conclusion

* The PCE approximations on each conditioned rains have a determination coefficient $R^2 > 0.95$ and the approximation of the metamodel mean is good.

* The minimizer of the mean has lower cost function on unseen rains than a randomly chosen conditional minimizer.

* The variance of the metamodel is not a good estimate

## What next ?

→ work on the estimation of the variance

→ study the Pareto-optimal minimizers

→ augment rain perturbations

→ minimize mean and variance with Gaussian Process based Efficient Global Optimization, compare the precision and number of model evaluations needed.

→ observe another output, for example pesticide quantities in the river, interaction will be added.

→ up the domain to the catchment scale

<figure><img src="image_98.png" /></figure>
Thank you for your attention !

<figure><img src="image_99.png" /></figure>
<figure><img src="image_100.png" /></figure>

<figure><img src="image_101.png" /></figure>

<figure><img src="image_102.png" /></figure>