k - Vito
k - Vito
k - Vito
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Hoe kunnen we het verschil tussen<br />
luchtkwaliteitmodelresultaten en<br />
geobserveerde waarden overbruggen?<br />
21 november 2011<br />
Peter Viaene en Mauricio Agudelo
Inleiding<br />
• Modelresultaten wijken af van observaties en<br />
deze zijn allebei onzeker:<br />
wat is dan de ‘echte’ concentratie?<br />
• Oplossing: data assimilatie<br />
CLIMAQS: Mauricio Agudelo (KULeuven)<br />
• Wat is data assimilatie?<br />
• Enkele voorbeelden.<br />
• Besluiten
Data assimilatie: wat?<br />
“Data assimilatie is een methode om<br />
modelresultaten en metingen te combineren<br />
om zo de modelresultaten te verbeteren.”<br />
– Model: hoge spatiale resolutie maar lage<br />
nauwkeurigheid<br />
– Metingen: lage spatiale resolutie maar een hoge<br />
nauwkeurigheid<br />
• Voorbeelden: 3DVar, 4DVAR, Optimale<br />
Interpolatie , Ensemble Kalman Filter
Data assimilatie: een eenvoudig voorbeeld<br />
Gegeven: C 1 en C 2 twee schattingen voor de O 3 koncentratie C<br />
C 1 = 60 µg/m 3 met standaard deviatie σ 1 = 10 µg/m 3<br />
C 2 = 70 µg/m 3 met standaard deviatie σ 2 = 20 µg/m 3
Data assimilatie: een eenvoudig voorbeeld<br />
Standaard deviatie (σ) en dus variantie (σ 2 ) zijn maat voor nauwkeurigheid<br />
(Fisher) informatie I = 1/ σ 2<br />
totale informatie : Itot<br />
I<br />
2<br />
C<br />
I<br />
I<br />
( 1<br />
C<br />
C<br />
C<br />
C<br />
1<br />
1<br />
1<br />
1<br />
tot<br />
C<br />
I<br />
I<br />
I<br />
I<br />
1<br />
C<br />
2<br />
tot<br />
C<br />
2<br />
tot<br />
σ<br />
σ<br />
2<br />
1<br />
2<br />
tot<br />
I<br />
I<br />
) C<br />
K(<br />
C<br />
2<br />
C<br />
1<br />
( C<br />
2<br />
tot<br />
2<br />
( C<br />
2<br />
C<br />
I<br />
I<br />
2<br />
C<br />
1<br />
2<br />
tot<br />
C<br />
1<br />
C<br />
)<br />
1<br />
C<br />
)<br />
BLUE = ‘Best Linear Unbiased Estimator’<br />
2<br />
C ) met K<br />
1<br />
1<br />
2 2<br />
C1<br />
IC<br />
2<br />
σtot<br />
2<br />
σ1<br />
2<br />
σ2<br />
1 2<br />
2 2<br />
σ1<br />
. σ2<br />
σ<br />
σ<br />
2<br />
1<br />
2<br />
tot<br />
1<br />
σ<br />
σ
Data assimilatie: een eenvoudig voorbeeld<br />
Bron: ECMWF<br />
http://www.ecmwf.int/newsevents/training/rcourse_notes/DATA_ASSIMILATION/ASSIM_CONCEPTS/index.html<br />
c<br />
a<br />
2<br />
a<br />
c<br />
b<br />
( 1<br />
k(<br />
c<br />
k<br />
2<br />
)<br />
o<br />
2<br />
b<br />
c<br />
b<br />
)<br />
k<br />
2<br />
2<br />
o
Schatting (predictor)<br />
C<br />
σ<br />
2<br />
( k<br />
C<br />
σ<br />
Data assimilatie: Kalman filter<br />
( k<br />
mod<br />
2<br />
mod<br />
1)<br />
1)<br />
Model tijdstap k-1 -> k<br />
( k)<br />
( k)<br />
C(<br />
k)<br />
σ<br />
2<br />
K<br />
( k)<br />
Analyse (corrector)<br />
σ<br />
C<br />
σ<br />
2<br />
mod<br />
mod<br />
2<br />
mod<br />
2<br />
σ<br />
( k)<br />
( k)<br />
(<br />
k<br />
mod<br />
)<br />
( k)<br />
2<br />
σ<br />
obs<br />
K(<br />
C<br />
Kσ<br />
( k)<br />
obs<br />
2<br />
mod<br />
( k)<br />
( k)<br />
C<br />
mod<br />
( k))
Data assimilatie: praktijk<br />
• Scalair -> vectorieel: c -> C є R n<br />
variantie,σ 2 -> co-variantiematrix є R nXn<br />
• Kalman filter is voor een lineair systeem!<br />
niet-lineair: Extended Kalman filter<br />
• Bepaling foutencovariantie matrices?<br />
– Ensemble Kalman filter<br />
– Optimale interpolatie
9<br />
Ensemble Kalman filter (EnKF)<br />
‘Gebruik Monte Carlo om de pdf van de schatting van de modeltoestandsvariabele (x) op<br />
basis van een eindig aantal (N) toestanden te bepalen x1,x2, … , xN’ Tijdstip k-1 T<br />
1 ( 1) k x<br />
2 ( 1) k x 3 x<br />
4 ( 1) k x<br />
EnKF<br />
x<br />
x(<br />
k 1)<br />
( 1) k<br />
pdf<br />
( 1) k<br />
Gebruik het model om de<br />
toestand voor ieder van de<br />
ensemble leden op tijdstip k te<br />
voorspellen en gebruik dit om<br />
de modelfoutencovariantie<br />
matrix te berekenen.<br />
x<br />
T<br />
( 1) k<br />
Werkelijke<br />
toestand<br />
Tijdstip k<br />
1 ( ) k x<br />
2 ( ) k x 3 x<br />
4 ( ) k x<br />
x(<br />
k)<br />
De voorspelling van ieder<br />
van de ensemble leden<br />
wordt gecorrigeerd op<br />
basis van de informatie uit<br />
de metingen en de<br />
modelfoutencovariantie<br />
Voorspelling Analyse stap<br />
x<br />
T<br />
( ) k<br />
( ) k<br />
Metingen op<br />
tijdstip k
10<br />
AURORA: uitbreiden met onzekerheid op de invoer<br />
c( k 1) M c( k), u(<br />
k)<br />
A<br />
u(k<br />
Onzekerheid op de invoer toevoegen dmv factoren, f:<br />
f ( k) max 0,1 ( k)<br />
2<br />
( k 1) ( k) 1 w( k)<br />
c( k 1) M c( k), λ( k), u(<br />
k)<br />
0<br />
A<br />
λ( k 1) Ψλ(<br />
k)<br />
Σ<br />
x( k 1) M x( k), u( k) Gw(<br />
k)<br />
w(<br />
k)<br />
U(k): Invoer (emissies,meteo,…)<br />
C(k): concentraties<br />
)<br />
MA: niet lineaire operator<br />
α : tijdscorrelatie [0,1]<br />
σ: standaard deviatie λ(k)<br />
w(k) ~ N(0,1)<br />
Ψ<br />
Σ<br />
R<br />
R<br />
n n<br />
n n<br />
diag 1, 2,<br />
,<br />
diag 1 , , 1<br />
n<br />
2 2<br />
1 1 n n
•Bereken model voor ieder ensemble lid: 1 …N<br />
11<br />
x ( k) M x ( k 1), u( k 1) Gw ( k)<br />
f a<br />
i i i<br />
w ( k) ~ N 0, I<br />
i<br />
•Bereken de fouten covariantiematrix uit de<br />
voorspellingen:<br />
f<br />
P ( k )<br />
N 1<br />
N 1 i 1<br />
f<br />
xi<br />
( k)<br />
f<br />
x ( k)<br />
f<br />
xi<br />
( k)<br />
f<br />
x ( k)<br />
N<br />
i k<br />
met<br />
f<br />
x ( k)<br />
1<br />
N<br />
f<br />
x ( )<br />
i<br />
1<br />
EnKF Algoritme<br />
Genereer de initiele ensemble leden zodat deze correct de onzekerheid (pdf) voor de<br />
initiële schatting van de model toestand voorstellen<br />
voor iedere tijdstap k = 1,…<br />
Voorspelling<br />
x ( k 1), x ( k 1), , x<br />
( k 1)<br />
a a a<br />
1 2<br />
N<br />
T<br />
Initializatie<br />
•Bereken K, de Kalman Gain<br />
K P C C P C R<br />
f T f<br />
T<br />
( k) ( k) ( k) ( k) ( k) ( k) ( k)<br />
• corrigeer elk ensemble lid (1…N)<br />
x ( k) x ( k) K( k) y( k) v ( k) C( k) x ( k)<br />
a f f<br />
i i i i<br />
met:<br />
v ( k) ~ N 0, R(<br />
k)<br />
i<br />
•Bereken de nieuwe schatting voor de toestand<br />
N<br />
a 1<br />
xˆ<br />
( k)<br />
x ( k)<br />
x<br />
N<br />
Analyse<br />
metingen<br />
i<br />
1<br />
i k<br />
a<br />
(<br />
)<br />
1
12<br />
EnKF in de praktijk<br />
Monte Carlo: model verschillende keren uitvoeren<br />
Matlab<br />
EnKF<br />
algoritme<br />
Uitwisseling van informatie via bestanden<br />
UNIX<br />
bestanden<br />
systeem<br />
Aurora<br />
Instantie 1<br />
Aurora<br />
Instantie 2<br />
Aurora<br />
Instantie N<br />
concentraties &<br />
correctie factoren<br />
synchronizatie<br />
signalen
Optimale interpolatie<br />
• De model fouten co-variantie matrix kan<br />
beschreven worden met behulp van een<br />
functie waarvan we de parameters kennen of<br />
kunnen bepalen.<br />
• In vergelijking met EnKF:<br />
+ Vereist maar één run van het model: goedkoper in<br />
rekentijd<br />
- Kan niet met het ‘uitgebreide’ model worden gebruikt<br />
en dus geen correctiefactoren schatten voor de<br />
onzekere invoer
Voorbeelden<br />
1. Assimilatie van O 3 en NO 2 metingen voor periode van 2 weken vanaf 28 mei ,<br />
2005.<br />
• Resolutie/domein voor Aurora: 5 km, gans België<br />
• Data assimilatie schema’s: DEnKF en OI (Balgovind)<br />
• Metingen : AirBase<br />
• Stations: enkel achtergrond stations van type ‘rural’, ‘urban’ en ‘suburban’<br />
• Fout op de metingen : 7% voor O 3 en 10% voor NO 2<br />
2. Assimilatie van PM 10 metingen voor periode van 12 dagen vanaf 20 januari, 2010.<br />
• Resolutie/domein voor Aurora: 5 km, gans België<br />
• Data assimilatie schema’s: DEnKF en OI (Balgovind)<br />
• Metingen: IRCEL en dus alleen voor België<br />
• Stations: Rural (RUR) en Urban background (UBA)<br />
• Fout op de PM 10 metingen: 20% in RUR en UBA stations
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
DENKF parameters<br />
Aantal Ensembles: 80<br />
Correctie factoren (f in het uitgebreide model)<br />
15<br />
Grensvoorwaarden voor O 3 (1 factor voor alle windrichtingen samen)<br />
Grensvoorwaarden voor No 2 (1 factor voor alle windrichtingen samen)<br />
Depositiesnelheid voor O 3<br />
bewolkingsgraad<br />
NO x emissies<br />
VOC emissies<br />
Optimale interpolatie:<br />
‘Balgovind’ functie
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
16<br />
O 3 stations<br />
Aantal O 3 assimilatie stations: 61<br />
Aantal O 3 validatie stations: 11<br />
NO 2 stations<br />
Aantal NO 2 assimilatie stations: 59<br />
Aantal NO 2 validatie stations: 10
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
17
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
18
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
19<br />
Gemiddelde O3 concentratie
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
20<br />
Gemiddelde O3 concentratie
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
21<br />
Gemiddelde NO 2 concentratie
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
22<br />
Gemiddelde NO 2 concentratie
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
OI<br />
(Balgovind)<br />
DEnKF<br />
23<br />
Assimilation<br />
stations<br />
O 3 Stations NO 2 Stations<br />
Validation<br />
stations<br />
Assimilation<br />
stations<br />
Validation<br />
stations<br />
Simulation Time<br />
RMSE of Aurora 23.1388 µg/m 3 22.5204 µg/m 3 12.7785 µg/m 3 10.9461 µg/m 3 -----<br />
RMSE 2.8029 µg/m 3 12.2545 µg/m 3 3.30632 µg/m 3 7.8888 µg/m 3<br />
Error reduction 87.89 % 45.58 % 74.13 % 27.93 %<br />
RMSE 11.8113 µg/m 3 13.8003 µg/m 3 8.6153 µg/m 3 8.0094 µg/m 3<br />
Error reduction 48.95 % 38.72 % 32.58 % 26.83 %<br />
(*) 1 PC. Processor: Intel core 2 Quad, 3 GHz. RAM: 4 GB.<br />
(**) 10 Nehalem compute nodes. Processoren per node: 2 quad-core Xeon 5560, 2.8 GHz. RAM per node: 24 GB.<br />
18.88 Hours (*)<br />
18.34 Hours (**)
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
Evolutie van de factoren f voor de onzekere invoer (DEnKF)<br />
24
Voorbeeld 1: Assimilatie O 3 en NO 2<br />
Deze informatie kan gebruikt worden bij de keuze van locaties voor nieuwe meetstations<br />
25
26<br />
Voorbeeld 2: Assimilatie PM 10<br />
DENKF parameters<br />
Aantal Ensembles: 80<br />
Correctie factoren:<br />
Grensvoorwaarden (4 factoren : 1 voor elke windrichting)<br />
Depositiesnelheid PM 10<br />
PM 10 emissies<br />
NH 3 emissies<br />
SO 2 emissies
27<br />
Voorbeeld 2: Assimilatie PM 10
28<br />
Voorbeeld 2: Assimilatie PM 10<br />
24/1 26/1 28/1<br />
Figuren afkomstig van Ircel
29<br />
Voorbeeld 2: Assimilatie PM 10<br />
26/1
30<br />
Voorbeeld 2: Assimilatie PM 10
31<br />
Voorbeeld 2: Assimilatie PM 10<br />
Gemiddelde PM 10 concentratie
32<br />
Voorbeeld 2: Assimilatie PM 10<br />
Gemiddelde PM 2,5 concentratie
33<br />
Voorbeeld 2: Assimilatie PM 10<br />
OI<br />
(Balgovind)<br />
DEnKF<br />
Assimilation<br />
stations<br />
PM 10 Stations<br />
Validation<br />
stations<br />
PM 2.5 Stations Simulation Time<br />
RMSE of Aurora 33 µg/m 3 34.2636 µg/m 3 29.5165 µg/m 3 -----<br />
RMSE 3.8567 µg/m 3 13.71 µg/m 3 9.439 µg/m 3<br />
Error reduction 88.31 % 59.99 % 68.02 %<br />
RMSE 12.5593 µg/m 3 15.8159 µg/m 3 15.668 µg/m 3<br />
Error reduction 61.94 % 53.84 % 46.92 %<br />
(*) 1 PC. Processor: Intel core 2 Quad, 3 GHz. RAM: 4 GB.<br />
8.797 Hours (*)<br />
8.88 Hours (**)<br />
(**) 10 Nehalem compute nodes. Processoren per node: 2 quad-core Xeon 5560, 2.8 GHz. RAM per node: 24 GB.
34<br />
Voorbeeld 2: Assimilatie PM 10
35<br />
Voorbeeld 2: Assimilatie PM 10<br />
Evolutie van de factoren f voor de onzekere invoer (DEnKF)
36<br />
Voorbeeld 2: Assimilatie PM 10
BESLUITEN<br />
• Met data assimilatie kan je de modelresultaten<br />
verbeteren op basis van de meetwaarden<br />
rekening houdend met de onzekerheid in zowel<br />
de modelresultaten als de metingen.<br />
• De optimale interpolatie methode is minder<br />
rekenintensief dan de EnKf en biedt in de<br />
voorbeelden die we zagen even goede resultaten<br />
maar met de EnKf kan je ook de onzekerheid op<br />
de modelinvoer in rekening brengen en nadien de<br />
onzekerheid op het resultaat in kaart brengen.<br />
37