efficient sampling algorithms for non-gaussian data ...€¦ · ahmed attia 1, vishwas rao , and...

21
Efficient Sampling Algorithms for Non-Gaussian Data Assimilation Ahmed Attia 1 , Vishwas Rao 1 , and Adrian Sandu 1 1 Computational Science Laboratory (CSL) Department of Computer Science Virginia Tech {attia;sandu}@cs.vt.edu Workshop on Meteorological Sensitivity Analysis and Data Assimilation 1-5 June 2015 Roanoke, West Virginia [1/20] June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Upload: others

Post on 04-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Efficient Sampling Algorithms forNon-Gaussian Data Assimilation

Ahmed Attia1, Vishwas Rao1, and Adrian Sandu1

1Computational Science Laboratory (CSL)Department of Computer Science

Virginia Tech{attia;sandu}@cs.vt.edu

Workshop on Meteorological Sensitivity Analysis and Data Assimilation1-5 June 2015 Roanoke, West Virginia

[1/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 2: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Outline

I Motivation

I Sampling approach

I Sampling filter+smoother

I Experiments and results

I Conclusion

Outline [2/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 3: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Motivation:I Data Assimilation:

Model + Prior + Observations︸ ︷︷ ︸with associated uncertainties

→ Best Description of the posterior︸ ︷︷ ︸Ensemble+Variational

I Goal: Ensemble representation of the posterior PDF for the generalnon-Gaussian and non-linear cases.

Sample the posterior PDF

I MCMC (Gold Standard) : popular and guaranteed to converge BUT:Transition Kernel, R-W behaviour , Convergence Rate, Acceptance Rate , Poor Mixing , ...

I Accelerated MCMC: Hybrid Monte Carlo (HMC)Duane et. al. (1987); Neal (1993); Bennett, and Chua (1994)

Recursively use HMC for Filtering and Smoothing

Motivation [3/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 4: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Motivation:I Data Assimilation:

Model + Prior + Observations︸ ︷︷ ︸with associated uncertainties

→ Best Description of the posterior︸ ︷︷ ︸Ensemble+Variational

I Goal: Ensemble representation of the posterior PDF for the generalnon-Gaussian and non-linear cases.

Sample the posterior PDF

I MCMC (Gold Standard) : popular and guaranteed to converge BUT:Transition Kernel, R-W behaviour , Convergence Rate, Acceptance Rate , Poor Mixing , ...

I Accelerated MCMC: Hybrid Monte Carlo (HMC)Duane et. al. (1987); Neal (1993); Bennett, and Chua (1994)

Recursively use HMC for Filtering and SmoothingMotivation [3/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 5: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Hybrid MC:+ The Hamiltonian:

H(p,x) =12

pT M−1p− log(π(x)) =12

pT M−1p︸ ︷︷ ︸kinetic energy

+ J (x)︸ ︷︷ ︸potential energy

(1)

+ The Hamiltonian dynamics:

dxdt

= ∇p H = M−1p ,dpdt

= −∇x H = −∇xJ (x) (2)

+ Symplectic integrator(e.g. Verlet, two-stage, three-stage,...) is used:

xk+1/2 = xk +h2

M−1 pk , pk+1 = pk − h∇xJ (xk+1/2) , (3)

xk+1 = xk+1/2 +h2

M−1 pk+1.

+ The canonical PDF of (p, x):

∝ exp (−H(p, x)) = exp(−1

2pT M−1p− J (x)

)= exp

(−1

2pT M−1p

)π(x) (4)

Sampling Approach: HMCMC [4/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 6: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

HMC Sampling Algorithm to sample from ∝ π(x):- View state vector (x ) as a position variable in an extended phase space,- Add ”momentum“ p ∼ N (0,M) and sample from the joint (canonical) PDF.

→ Generate a MC with invariant distribution ∝ exp (−H(p, x)).

I Initialize the MC← x0I For k = 0,1, . . .

1- Draw pk ∼ N (0,M)

2- Use (Verlet, two-stage, three-stage,...) to propose a new state:

(p∗, x∗) = ΦT(pk , xk

)︸ ︷︷ ︸Acts as a TRANSITION KERNEL of the MC

; T = m h .

3- Acceptance Probability: a(k) = 1 ∧ e−∆H , ∆H = H(p∗, x∗)− H(pk , xk )

4- Discard both p∗, pk

5-

xk+1 =

{x∗ with probability a(k)

xk with probability 1− a(k)

I Collect samples after CONVERGENCE

Sampling Approach: HMCMC [5/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 7: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Sequential DA:I Baye’s Theorem:

Pa(x) = P(x|y) =P(y|x)Pb(x)P(y)

, (5a)

∝ P(y|x)Pb(x) = π(x) (5b)

I Gaussian framework:

Pb(x) ∝ exp(−1

2(x− xb)T B−1(x− xb)

), (6)

P(y|x) ∝ exp(−1

2(H(x)− y)T R−1(H(x)− y)

). (7)

I Posterior PDF:

Pa(x) ∝

π(x)︷ ︸︸ ︷exp (−J (x)) , (8)

J (x) =12‖x− xb‖B−1 +

12‖H(x)− y‖R−1 , (9)

where∇xJ (x) = B−1(x− xb) + HT R−1(H(x)− y) . (10)

HMC sampling filter [6/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 8: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

HMC Sampling Filter:

Given observation yk at time point tk ,

Assimilation cycle

I Forecast: given an analysis ensemble {xak−1(e)}e=1,2,...,Nens at time tk−1:

xbk (e) =Mtk−1→tk

(xa

k−1(e)), e = 1,2, . . . , Nens (11)

I Analysis: use HMC to sample from ∝ π(x) = exp (−J (x)):

1- Set the elements of Hamiltonian and the integrator:- M (e.g. constant diagonal, diagonal of B−1

k )- (Pseudo) time step settings (T = hm) of the symplectic integrator

2- Initialize the chain (x0): (e.g. Forecast, EnKF, 3D-Var ,... )

4- Generate the MC and sample {xak (e)}e=1,2,...,Nens after convergence.

HMC sampling filter [7/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 9: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using Lorenz-96

I Lorenz-96 with 40-variables:

dxi

dt= xi−1 (xi+1 − xi−2)− xi + F , (12)

where x = (x1, x2, . . . , x40)T ∈ R40; x0 ≡ x40.

The forcing parameter F = 8.

Observation uncertainty: 5%

Background uncertainty: 8%

Every third component is observed

Experiment and Results [8/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 10: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using Lorenz-96: linear H

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

RM

SE

0

2

4

6

Time

Forecast

EnKF

HMC

(a) Verlet integrator0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(b) x1

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(c) x2

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

RM

SE

0

2

4

6

Time

Forecast

EnKF

HMC

(d) Two-stage integrator0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(e) x1

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(f) x2

Figure : h = 0.01, m = 10. 50 burn-in steps, and 10 mixing steps. Nens = 30.

Experiment and Results [9/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 11: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using Lorenz-96: discontinuous quadratic H

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

RM

SE

0

2

4

6

Time

Forecast

MLEF

IEnKF

HMC

(a) Three-stage integrator0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(b) x1

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(c) x2

Figure : h = 0.01, m = 10. 50 burn-in steps, and 10 mixing steps. Nens = 30.

0 2 4 6 8 10 12 14 16 18 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

(a) Three-stage inte-grator; Nens = 20

0 2 4 6 8 10 12 14 16 18 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

(b) Three-stage inte-grator; Nens = 20

0 2 4 6 8 100

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

(c) Three-stageintegrator; Nens = 10

0 2 4 6 8 100

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

(d) Three-stage inte-grator; Nens = 10

Figure : h = 0.01, m = 10. 50 burn-in steps, and 10 mixing steps.Experiment and Results [10/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 12: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using SWE

I Shallow water equations on a sphere:

∂u∂t

+1

a cos θ

(u∂u∂λ

+ v cos θ∂u∂θ

)−(

f +u tan θ

a

)v +

ga cos θ

∂h∂λ

= 0,

(13a)∂v∂t

+1

a cos θ

(u∂v∂λ

+ v cos θ∂v∂θ

)+

(f +

u tan θa

)u +

ga∂h∂θ

= 0, (13b)

∂h∂t

+1

a cos θ

(∂ (hu)∂λ

+∂(hv cos θ)

∂θ

)= 0 . (13c)

State vector: x = [u, v ,h]T ∈ R7776

h is the height; u, v are zonal and meridional wind.

All components are observed

Experiment and Results [11/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 13: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using SWE: linear H I

Time (hours)

0 2 4 6 8 10 12 14 16 18 20 22

RM

SE

300

350

400

450

500

550

Forecast

HMC

EnKF

Figure : Two-stage, h = 0.01, m = 10. 50 burn-in steps, 10 mixing steps. Nens = 100

Experiment and Results [12/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 14: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using SWE: linear H II

0 10 20 30 40 50 60 70 80 90 1000

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

(a) h; Nens = 1000 10 20 30 40 50 60 70 80 90 1000

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

(b) u; Nens = 1000 10 20 30 40 50 60 70 80 90 1000

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

(c) v ; Nens = 100

0 2 4 6 8 10 12 14 16 18 200

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(d) h; Nens = 200 2 4 6 8 10 12 14 16 18 200

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(e) u; Nens = 200 2 4 6 8 10 12 14 16 18 200

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

(f) v ; Nens = 20

Figure : Two-stage, h = 0.01, m = 10. 50 burn-in steps, 10 mixing steps.

Experiment and Results [13/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 15: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

HMC Filter for replenishing purposes:I Parallel implementations of operational filters (e.g. EnKF, MLEF, IEnKF,...)

face complications due to the death of one or more of the nodes.

I HMC filter can be used to replenish the ensemble with new independentmembers.

Time0 2 4 6 8 10

RMSE

0

2

4

6

ForecastIEnKFIEnKF-AverageIEnKF-HMC

Figure : Lorenz-96. Quadratic discontinuous H. Two-stage with h = 0.01, andm = 10. 4 mixing steps.

Experiment and Results [14/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 16: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Four-dimensional DA:I From Baye’s Theorem: Pa(x0) = P(x0|y0:m)∝ P(y0:m|x0)Pb(x0)

I Gaussian framework:

Pb(x0) ∝ exp(−1

2(x0 − xb

0)T B−1

0 (x0 − xb0)

), (14)

P(y0:m|x0) ∝ exp

(−1

2

m∑k=0

((Hk (xk )− yk )

T R−1k (Hk (xk )− yk )

)), (15)

xk =Mt0→tk (x0)

I Posterior PDF:

Pa(x0) ∝

π(x0)︷ ︸︸ ︷exp (−J (x0)) , (16a)

J (x0) =12‖x0 − xb

0‖B−10

+12

m∑k=0

‖Hk (xk )− yk‖R−1k, (16b)

∇x0J (x0) = B−1(x0 − xb0) +

m∑k=0

MT0,k HT

k R−1k (Hk (xk )− yk ) , (17)

Experiment and Results [15/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 17: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

HMC Sampling Smoother:Given Forecast ensemble x0(e)e=1,2,...,Nens

, and observations y0, y1, . . .ym:

Assimilation cycle

I Analysis: use HMC to sample from ∝ π(x0) = exp (−J (x0)):

1- Set the elements of Hamiltonian and the integrator:- M (e.g. constant diagonal, diagonal of B−1

0 )- Time (artificial) step settings of the symplectic integrator

2- Initialize the chain (x0): (e.g. Forecast, EnKS, 4D-Var ,... )

4- Generate the MC and sample {xa0(e)}e=1,2,...,Nens after convergence.

I Forecast: given an analysis ensemble {xa0(e)}e=1,2,...,Nens at time tk−1:

xbk (e) =Mtk−1→tk

(xa

k−1(e)), e = 1,2, . . . , Nens; k = 1,2, . . . ,m (18)

Experiment and Results [16/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 18: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Results using Lorenz-96:

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 210

−2

10−1

100

101

Time

RMSE

HMC

4D−Var

Forecast

(a) Linear observation operator

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 210

−2

10−1

100

101

Time

RMSE

HMC

4D−Var

Forecast

(b) Quadratic observation operator

Figure : Quadratic observation operator; every second component only observed. Two-stage integrator , h = 0.01, m = 10. 30 burn-in steps, 10 mixing steps.

Experiment and Results [17/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 19: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

4D DA results (SWE): linear H

Figure : Linear observation operator. 8 observations on each assimilation window.Two-stage with h = 0.01, and m = 10. 30 burn-in steps, 4 mixing steps.

Experiment and Results [18/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 20: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Conclusion

I Non-Gaussian sampling filter and smoother, based on HMC, werepresented.

I Better description of the prior PDF!

I Avoid using the adjoint of the full model,

I Filter and smoother enhancement and parallelization,

I Test with larger models in operational settings (SPEEDY, WRF,...)

Thank You

Conclusion [19/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)

Page 21: Efficient Sampling Algorithms for Non-Gaussian Data ...€¦ · Ahmed Attia 1, Vishwas Rao , and Adrian Sandu 1Computational Science Laboratory (CSL) Department of Computer Science

Symplectic numerical integratorsOne step advance of the solution of the Hamiltonian equations from time tk totime tk+1 = tk + h as follows:

1. Position Verlet integrator

xk+1/2 = xk +h2

M−1 pk , (19a)

pk+1 = pk − h∇xJ (xk+1/2) , (19b)

xk+1 = xk+1/2 +h2

M−1 pk+1. (19c)

2. Two-stage integrator

x1 = xk + (a1h)M−1pk , (20a)

p1 = pk − (b1h)∇xJ (x1) , (20b)

x2 = x1 + (a2h)M−1p1 , (20c)

pk+1 = p1 − (b1h)∇xJ (x2) , (20d)

xk+1 = x2 + (a2h)M−1pk+1 , (20e)

a1 = 0.21132 , a2 = 1− 2a1 , b1 = 0.5 .

Conclusion [20/20]June 4, 2015, Efficient Sampling for Non-Gaussian Data Assimilation, Attia A., Sandu A.. (http://csl.cs.vt.edu)