34
Advanced data assimilation methods: Extended Kalman Filter (EKF) Ensemble Kalman Filter (EnKF) And Advanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland 10:00-12:30 CSS 2428 November 12, 2008

Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Advanced data assimilation methods:Extended Kalman Filter (EKF)

Ensemble Kalman Filter (EnKF)And

Advanced Kalman Filter TechniquesDave Kuhl, Hong Li and Eugenia

Kalnay

University of Maryland

10:00-12:30 CSS 2428

November 12, 2008

Page 2: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Introduction

• Introduction• Data Assimilation Review:

– OI-Scaler– OI Multi-variate

• Kalman Filters– Extended Kalman Filter– Ensemble Kalman Filter– Advanced Ensemble Kalman Filters

• LETKF computer lab

Page 3: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

OI Assimilation for a Scaler (sect. 5.3)

Tem

pera

ture

t

Tb

Ta

To

Optimal weight to minimize the analysis error is:!

Ta

= Tb

+W (To"T

b)

!

W =(" b

)2

(" b)2

+ (" o)2

time

σb

σo

σa

!

(" a)2

= (1#W )(" b)2

Page 4: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Sequential Assimilation of a Scalar (sect. 5.3.3)

model

timet1 t2 t3

Tem

pera

ture

Tb2

Ta2

To2

Tb1

Ta1

To1 Tb

3

Ta3

To3

!

Ti

a= T

i

b+W (T

i

o"T

i

b)

!

Ti+1

b= M[T

i

a]

!

("i

a)2

= (1#W )("i

b)2

Include a model (M) to advance the time step:

Page 5: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Multivariate Data Assimilation

xa = analysis model state

xb = background model state

W = weighting matrix

yo = observations

H = observation operator (model->obs)

x

timet1 t2 t3

xb1

xa1

yo1

xb2

xa2

yo2

xb3

xa3

yo3

!

xi

a= x

i

b+W(y

i

o"Hx

i

b)

!

xi+1

b= M[x

i

a]

Page 6: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Multivariate OI Assimilation (sect. 5.4.1)

Pa=A=analysis error covariance Matrix

Pb=B=background error covariance Matrix

Po=R=observation error covariance Matrix

H=Linear observation operator

x

timet1 t2 t3

xb1

xa1

yo1

xb2

xa2

yo2

xb3

xa3

yo3 Po=R

Pa=A

Pb=B

!

xi

a= x

i

b+W(y

i

o"Hx

i

b)

!

xi+1

b= M[x

i

a]

!

W = BHT[HBH

T+R]

"1

!

Pa

= [I"WH]B

Page 7: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Multivariate OI Assimilation (sect. 5.4.1)

•But where do you get B?

•B is statistically pre-estimated, andconstant in time in it’s practicalimplementations.

x

timet1 t2 t3

xb1

xa1

yo1

xb2

xa2

yo2

xb3

xa3

yo3 Po=R

Pa=A

Pb=B

!

xi

a= x

i

b+W(y

i

o"Hx

i

b)

!

xi+1

b= M[x

i

a]

!

W = BHT[HBH

T+R]

"1

!

Pa

= [I"WH]B

TrueAtmos

xt

!

B = "xb # ("xb )T

!

"xb = xb# x

t

Page 8: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Background Error Covariance Issue

• The spatial variation of the errors is highly time dependent.• With a constant (in time) Background Error Covariance (OI and 3D-

Var) the assimilation cannot take advantage of the “errors of theday”

“Errors of the day” computed with the Lorenz 3 variable model:compare with rms (constant) error

!z

2= (z

b" z

t)2

=0.08

Page 9: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

“Errors of the day” obtained in the reanalysis(figs 5.6.1 and 5.6.2 in the book)

Note that the mean error went down from 10m to 8m because ofimproved observing system, but the “errors of the day” (on a synoptic timescale) are still large.

In 3D-Var/OI not only the amplitude, but also the structure of B is fixedwith time

Page 10: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Flow independent error covariance

In OI(or 3D-Var), the scalar error correlation between two points in thesame horizontal surface is assumed homogeneous and isotropic. (p162 inthe book)

!!!!!

"

#

$$$$$

%

&

=

2

,2,1

,2

2

22,1

,12,1

2

1

...covcov

.........

covcov

cov...cov

nnn

n

n

B

'

'

'

If we observe only Washington, D.C,we can get estimate for Richmond andPhiladelphia corrections through the

error correlation (off-diagonal term in B).

Page 11: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Typical 3D-Var error covariance

In OI(or 3D-Var), the error correlation between two mass points in thesame horizontal surface is assumed homogeneous and isotropic.(p162in the book)

!!!!!

"

#

$$$$$

%

&

=

2

,2,1

,2

2

22,1

,12,1

2

1

...covcov

.........

covcov

cov...cov

nnn

n

n

B

'

'

'

Page 12: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Background ~106-8 d.o.f.

Suppose we have a 6hr forecast (background) and new observationsSuppose we have a 6hr forecast (background) and new observations

The 3D-Var Analysis doesn’t know about the errors of the day

Observations ~105-7 d.o.f.

BR

Page 13: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Kalman Filter Data Assimilation

x

timet1 t2 t3

xb

xa

yo

• In Kalman Filter Data Assimilation theBackground Error Covariance (B) is advanced intime along with the analysis.

• In Extended Kalman filtering a linear tangentmodel (L) that transforms the initial perturbationat time ti to a final perturbation at time ti+1

Page 14: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Extended Kalman Filter Data (sect. 5.6.1)

x

timet1 t2 t3

xb

xa

yo

K=Kalman Gain Matrix (weighting Matrix)

Q=Covariance Matrix of the Noise

L=Linear Tangent Model

!

xi

a= x

i

b+K

i(y

i

o"Hx

i

b)

!

xi+1

b= M[x

i

a]

!

Ki= B

iH

T[HB

iH

T+R]

"1

!

Pi

a= [I"K

iH]B

i

!

Bi+1 = P

i+1

b= L

iPi

aLi

T+Q

i

Page 15: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Background ~106-8 d.o.f.

Errors of the day: they lieon a low-dim attractor

With Ensemble Kalman Filtering we get perturbations pointingWith Ensemble Kalman Filtering we get perturbations pointingto the directions of the to the directions of the ““errors of the dayerrors of the day””

3D-Var Analysis: doesn’t know about the errors of the day

Observations ~105-7 d.o.f.

Page 16: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Background ~106-8 d.o.f.

Errors of the day: they lieon a low-dim attractor

Ensemble Kalman Filter Analysis:correction computed in the low dimensemble space

Ensemble Kalman Filtering is efficient because Ensemble Kalman Filtering is efficient because matrix operations are performed in the low-dimensional matrix operations are performed in the low-dimensional

space of the ensemble perturbationsspace of the ensemble perturbations

3D-Var Analysis: doesn’t know about the errors of the day

Observations ~105-7 d.o.f.

Page 17: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Background ~106-8 d.o.f.

Errors of the day: they lieon the low-dim attractor

Observations ~105-7 d.o.f.

After the EnKF computes the analysis and the analysis error covarianceAfter the EnKF computes the analysis and the analysis error covarianceAA, the new ensemble initial perturbations are computed:, the new ensemble initial perturbations are computed:1

1

k

T

i i

i

! !+

=

=" a a A

i!a

These perturbations represent the analysis error covariance and areused as initial perturbations for thenext ensemble forecast

Page 18: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Flow-dependence – a simple example (Miyoshi,2004)

This is not appropriateThis does reflects the flow-dependence.

There is a cold front inour area…

What happens in thiscase?

Page 19: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

An Example of the analysis corrections from3D-Var (Kalnay, 2004)

Page 20: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

An Example of the analysis corrections fromEnKF (Kalnay, 2004)

Page 21: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Extended Kalman Filter (sect. 5.6.1)

x

timet1 t2 t3

xb

xa

yo

• Updating the forecast error covariance matrix (B) ensures that theanalysis takes into account the “errors of the day.”

• Unfortunately the EKF filter is exceeding expensive since the lineartangent model (L) has size n, n=the number of degrees of freedom.For a modern model ~10^6.

• So updating B is equivalent to performing O(n) model integrations.

Page 22: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Kalman Filter Data Assimilation

x

timet1 t2 t3

xb

xa

yo

• An ensemble of of model forecasts are made from an ensemble ofinitial conditions created from the analysis and analysis errorcovariance

• How the ensemble of analysis initial conditions (xai=1-K) is created

(ensemble update) differentiates the different forms of the ensembleKalman Filter

• The number of ensembles is usually of the order of 10-100– How can such a small number of ensembles capture appropriately the

error covariance?

Page 23: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Kalman Filter (sect. 5.6.2)

x

timet1 t2 t3

xb

xa

yo

• The Ensemble Kalman Filter only provides an estimate of thebackground error covariance.

• Before with EKF:

• One form of EnKF:

!

Bi+1 = P

i+1

b= L

iPi

aLi

T+Q

i

!

Bi+1 = Pi+1

b "1

K #1(xk

f # x f)

k$1

K

% (xk

f # x f)

T

K=# ensembles

xf1

xfK

xf=mean ofForecastedensembles

Page 24: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Kalman Filter (sect. 5.6.2)

• The ensemble Kalman filtering covariance is estimated from only alimited sample of ensemble members (K~O(10-100)), comparedwith a much larger number of degrees of freedom of the model(n~O(10^7)), so it is rank deficient (K<<n).

• “errors of day” are the instabilities of the background flow. Stronginstabilities have a few dominant shapes (perturbations lie in a low-dimensional subspace).

• It makes sense to assume that large errors are in similarly low-dimensional spaces that can be represented by a low order EnKF.

Page 25: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Kalman Filter: Ensemble Update• Again how do we update the ensemble: How do we get xa

i?• Two basic techniques

1. Perturbed Observations Method– The Analysis Ensemble is formed by assimilating random perturbations added to the

observations2. Ensemble Square Root Filter Method

– The Analysis Ensemble is formed by transforming the forecast ensembleperturbations through a transform matrix.

xbxa

yoRandom

perturbationsadded to obs

Perturbed Observation Method

xbxa

yoAssimilateto meanAnalysis

EnSRF Method

Form ensemblethrough

transformationmatrix

xbxa xbxa

Page 26: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Update: two approaches1. Perturbed Observations method:An “ensemble of data assimilations”

It has been proven that an observationalensemble is required (e.g., Burgers et al.1998). Otherwise

is not satisfied.

Random perturbations are added to theobservations to obtain observations foreach independent cycle

However, it introduces a source of samplingerrors when perturbing observations.

xi

a

(k )= x

i

b

(k )+K

i(y

i

o

(k )! Hx

i

b

(k ))

Pi

a

n!n = [I "KiH]P

i

b

xi

b

(k )= Mx

i!1

a

(k )

Ki= P

i

bH

T[HP

i

bH

T+ R]

!1

Pi

b !1

K "1(x

k

b

k=1

K

# " xb )(xk

b " xb )T

noiseo

ik

o

i+= yy

)(

xbxa

yoRandom

perturbationsadded to obs

Perturbed Observation Method

xbxa

Page 27: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Update: two approaches

2. Ensemble square root filter(EnSRF) Observations are assimilated to

update only the ensemble mean.

Assume analysis ensembleperturbations can be formed bytransforming the forecast ensembleperturbations through a transformmatrix

xi

a= x

i

b+K

i(y

i

o! Hx

i

b)

xi

b= Mx

i!1

a

Ki= P

i

bH

T[HP

i

bH

T+ R]

!1

Pi

b !1

K "1(x

k

b

k=1

K

# " xb )(xk

b " xb )T

xi

a= x

i

b+K

i(y

i

o! Hx

i

b)

xbxa

yoAssimilateto meanAnalysis

EnSRF Method

Form ensemblethrough

transformationmatrix

xbxa

!

xi(k )

a= x

i

a+X

i(k )

a

!

Xi(k )

a= T

iX

i(k )

b

Page 28: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Ensemble Update: two approaches2. Ensemble square root

filter (EnSRF) Basically we know what Pa is

from the assimilation and wewant to form an ensemble whichsatisfies that result.

Different Flavors of EnSRF: EnSRF (Andrews 1968,

Whitaker and Hamill 2002) EAKF (Anderson 2001) ETKF (Bishop et al 2001) LETKF (Hunt 2005)

xbxa

yoAssimilateto meanAnalysis

EnSRF Method

Form ensemblethrough

transformationmatrix

xbxa

X

a= (I ! %KH)X

b, %K = "K

Xa= AX

b

Xa= X

bT

2/1)~( abaPXX =

Page 29: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

LETKF Data AssimilationLETKF is roughly based upon the ETKF assimilation

however model space is broken into local regionswhere assimilation occurs simultaneously

Provides computational efficiency on parallelcomputer systems. Each local region can becomputed separately and independently.

Page 30: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Summary steps of LETKF

Ensemble analysis

Observations

GCM

Obs.operator

Ensembleforecast

Ensemble forecastat obs. locations

LETKF

1) Global 6 hr ensemble forecaststarting from the analysis ensemble

2) Choose the observations used foreach grid point3) Compute the matrices of forecastperturbations in ensemble space Xb

4) Compute the matrices of forecastperturbations in observation space Yb

5) Compute Pb in ensemble spacespace and its symmetric square root

6) Compute wa, the k vector ofperturbation weights

7) Compute the local grid pointanalysis and analysis perturbations.

8) Gather the new global analysisensemble. Go to 1

Page 31: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

LETKF algorithm summary, Hunt 2006Forecast step (done globally): advance the ensemble 6 hours, global model size n

xn

b(i )= M (x

n!1

a(i )) i = 1,...,k

Analysis step (done locally). Local model dimension m, locally used obs s

Xb= X ! x

bY

b= H (X) ! H (x

b) " HX

b

in model space (mxm)

Ensemble analysis perturbations in model space (mxk)

in ensemble space (kxk)

Analysis increments in ensemble space (kx1)

xn

a= x

n

a+ X

bw

n

a Analysis (mean) in model space (mx1)

We finally gather all the analysis and analysis perturbations from each grid pointand construct the new global analysis ensemble (nxk) and go to next forecast step

xn

a= x

n

a+ X

a Analysis ensemble in model space (mxk)

(mxk) (sxk)

%Pa = (k !1)I + HXb( )

T

R!1HX

b"#

$%

!1

babTaaTaXPXXXP

~==

2/1)~( abaPXX =

)(~ 1 b

n

o

n

bTaa

nyyRYPw !=

!

Page 32: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

Issues with the Kalman Filter: Inflationx

timet1 t2 t3

xb

xa

yo

• As was discussed last time without any help the Kalman filter tendsto calculate decreased error with each time step eventually leadingto disregarding any new observations.

• A tuned error covariance inflation factor must be used to balance outthe decrease in error from each assimilation time step– Too small of factor: Converges on model, Disregards Observations– Too large of factor: Disregards model, Converges on Observations

t4

Page 33: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

LETKF Computer Lab

• Set-up the Lorenz-96 model– Create Control forecast– Create Ensemble of forecasts

• Set-up fake observations:– Create Observations by perturbing the Control forecast

• Set-up LETKF (without localization) to assimilateobservations

• Investigate the impact of different variables on results:– Number of observations– Observation Error– Size of the ensemble– Inflation factor

Page 34: Advanced data assimilation methods: Extended Kalman ...dkuhl/AOSC614/614_EnKFclass.pdfAdvanced Kalman Filter Techniques Dave Kuhl, Hong Li and Eugenia Kalnay University of Maryland

References and thanks:Ott, Hunt, Szunyogh, Zimin, Kostelich, Corazza, Kalnay, Patil, Yorke, 2004: Local

Ensemble Kalman Filtering, Tellus, 56A,415–428.

Kalnay, 2003: Atmospheric modeling, data assimilation and predictability,Cambridge University Press, 341 pp. (3rd printing)

Hunt, Kalnay, Kostelich, Ott, Szunyogh, Patil, Yorke, Zimin, 2004: Four-dimensional ensemble Kalman filtering. Tellus 56A, 273–277.

Szunyogh, Kostelich, Gyarmati, Hunt, Ott, Zimin, Kalnay, Patil, Yorke, 2005:Assessing a local ensemble Kalman filter: Perfect model experiments with theNCEP global model. Tellus, 57A. 528-545.

Hunt, 2006: Efficient Data Assimilation for Spatiotemporal Chaos: a LocalEnsemble Transform Kalman Filter. Physica D., submitted.

Whitaker and Hamill, 2002: Ensemble Data Assimilation Without PerturbedObservations. Monthly Weather Review, 130, 1913-1924.