28
Application of data sparse approximation techniques for solving SPDE Alexander Litvinenko Institut f¨ ur Wissenschaftliches Rechnen, Technische Universit¨ at Braunschweig, 0531-391-3008, [email protected] March 6, 2008

Hierarchical matrices for approximating large covariance matries and computing Karhunen-Loeve Expansion in PDEs with uncertain coefficients

Embed Size (px)

Citation preview

Application of data sparse approximationtechniques for solving SPDE

Alexander Litvinenko

Institut fur Wissenschaftliches Rechnen, Technische Universitat Braunschweig,0531-391-3008, [email protected]

March 6, 2008

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

Stochastic PDE

We consider

− div(κ(x , ω)∇u) = f (x , ω) in D,u = 0 on ∂D,

with stochastic coefficients κ(x , ω), x ∈ D ⊆ Rd and ω belongs to the

space of random events Ω.

[Babuska, Ghanem, Schwab, Vandewalle, ...].

Methods and techniques:

1. Response surface

2. Monte-Carlo

3. Perturbation

4. Stochastic Galerkin

Plan of the solution

1. Discretisation of the determ. operator (FE method).

2. Discretisation of the random fields κ(x , ω), f (x , ω) (KLE).KLE is computed by the Lanczos method + sparse data techniques.

3. Iterative solving a huge linear system

Total dimension of the SPDE is the product of dimensions of thedeterm. and stochastic parts.

Covariance functions

The random field requires to specify its spatial correl. structure

covf (x , y) = E[(f (x , ·) − µf (x))(f (y , ·) − µf (y))],

where E is the expectation and µf (x) := E[f (x , ·)].

We classify all covariance functions into three groups:

1. isotropic (directionally independent) and stationary (translationinvariant), i.e.cov(x , y) = cov(|x − y |),

2. anisotropic (directionally dependent) and stationary, i.e.cov(x , y) = cov(x − y),

3. instationary, i.e. of a general type.

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

KLE

The spectral representation of the cov. function isCκ(x , y) =

∑∞i=0 λi ki(x)ki(y), where λi and ki(x) are the eigenvalues

and eigenfunctions.The Karhunen-Loeve expansion [Loeve, 1977] is the series

κ(x , ω) = µk (x) +∞∑

i=1

√λiki(x)ξi(ω), where

ξi (ω) are uncorrelated random variables and ki are basis functions inL2(D).Eigenpairs λi , ki are the solution of

Tki = λi ki , ki ∈ L2(D), i ∈ N, where.

T : L2(D) → L2(D),(Tu)(x) :=

∫D covk (x , y)u(y)dy .

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

Computation of eigenpairs by FFT

If the cov. function depends on (x − y) then on a uniform tensor gridthe cov. matrix C is (block) Toeplitz.Then C can be extended to the circulant one and the decomposition

C =1n

F HΛF (1)

may be computed like follows. Multiply (1) by F , obtain

FC = ΛF , for the first column we have

FC1 = ΛF1.

Since all entries of F1 are unity, obtain

λ = FC1.

FC1 may be computed very efficiently by FFT [Cooley, 1965] inO(n log n) FLOPS.C1 may be represented in a matrix or in a tensor format.

Properties of FFT

Lemma: Let C ∈ Rn×m and C =

∑ki=0 aibT

i , where ai ∈ Rn, bi ∈ R

m.Then

F (2)(C) =

k∑

i=0

F (1)(ai )F(1)(bT

i ). (2)

Lemma: The d-dim. FT F (d) can be represented as following

F (d) =

d⊗

i=i

F (1) = F (1) ⊗ F (1) . . . ⊗ F (1) (3)

and the computational complexity of F (d) is O(dnd log n), where nd isthe number of dofs.

Discrete eigenvalue problem

After discretisation of the integral equation above, obtain

Wij :=∑

k ,m

Dbi(x)bk (x)dxCkm

Dbj(y)bm(y)dy ,

Mij =

Dbi(x)bj (x)dx,

and the discrete equation will be

Wfhℓ = λℓMfh

ℓ , where W := MCM

Approximate C in

a low rank format the H-matrix format a sparse tensor format

and use the Lanczos method to compute m largest eigenvalues.

H-matrix [Hackbusch et al. 99]

25 11

11 20 12

1320 11

9 1613

1320 11

11 20 13

13 3213

13

20 8

10 20 13

13 32 13

1332 13

13 32

13

13

20 11

11 20 13

13 32 13

1320 10

10 20 12

12 3213

1332 13

13 32 13

1332 13

13 32

13

13

20 11

11 20 13

13 32 13

1332 13

13 3213

13

20 9

9 20 13

13 32 13

1332 13

13 32

13

13

32 13

13 32 13

1332 13

13 3213

1332 13

13 32 13

1332 13

13 32

Figure: An H-matrix approximates of cov(x , y) = e−2|x−y|, CH ∈ Rn×n,

n = 322. Dense blocks are red and rank-k blocks green, max. rank-k = 13.

Construction process

H-matrixvertices

finite elements

cluster treeblockcluster tree

admissibilitycondition

admissiblepartitioning

ACAcov. function

a goodpreconditioner

fast arithmetics

Figure: A block cluster tree. The initial matrix is decomposed into blocks andeach block is filled by a low-rank matrix or by a dense matrix.

H - Matrices

Comp. complexity is O(kn log n) and storage O(kn log n).

To assemble low-rank blocks use ACA [Bebendorf, Tyrtyshnikov].

Dependence of the computational time and storage requirements ofCH on the rank k , n = 322.

k time (sec.) memory (MB) ‖C−CH‖2

‖C‖2

2 0.04 2e + 6 3.5e − 56 0.1 4e + 6 1.4e − 59 0.14 5.4e + 6 1.4e − 512 0.17 6.8e + 6 3.1e − 717 0.23 9.3e + 6 6.3e − 8

The time for dense matrix C is 3.3 sec. and the storage 1.4e + 8 MB.

H - Matrices

Let h =

√∑2

i=1

(√h2

i /ℓ2i + d2 − d

)2, where hi := xi − yi , i = 1, 2, 3,

ℓi are cov. lengths and d = 1.

exponential cov(h) = σ2 · exp(−h),The cov. matrix C ∈ R

n×n, n = 652.

ℓ1 ℓ2‖C−CH‖2

‖C‖2

0.01 0.02 3e − 20.1 0.2 8e − 31 2 2.8e − 610 20 3.7e − 9

H - matrices + ARPACK → Eigenvalues

Table: Time required for computing m eigenpairs. exponential cov. matrixC ∈ R

n×, n = 2572, ℓ1 = ℓ2 = 0.1. H-matrix comp. time is 26 sec., storagefor C is 1.2 GB.

m 10 20 40 80 160time (sec.), ℓ1 = ℓ2 = 1 7 16 34 104 449

time (sec.), ℓ1 = ℓ2 = 0.1 35 51 97 194 532

Eigenvalues and the computational error for different covariancelengths, max. rank k = 20.

ℓ1 = ℓ2 = 1 ℓ1 = ℓ2 = 0.1i λi ‖Cxi − λi xi‖2 λi ‖Cxi − λi xi‖2

1 303748 1.6e-4 26006 0.032 56358 1.7e-3 21120 0.0120 1463 2.2e-2 4895 0.280 139 4.2e-2 956 0.26150 68 7e-2 370 0.5

Exponential Eigenvalue decay

0 100 200 300 400 500 600 700 800 900 10000

100

200

300

400

500

600

700

0 100 200 300 400 500 600 700 800 900 10000

1

2

3

4

5

6

7

8

9

10x 10

4

0 100 200 300 400 500 600 700 800 900 10000

200

400

600

800

1000

1200

1400

1600

1800

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

2

2.5x 10

5

0 100 200 300 400 500 600 700 800 900 10000

50

100

150

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

2

2.5

3

3.5

4x 10

4

Figure: 23 grid 48 × 64 × 40, (left) ℓ1 = 1, ℓ2 = 2, ℓ3 = 1 and (right) ℓ1 = 5,ℓ2 = 10, ℓ2 = 5. 1st row - Gaussian, 2-nd exponential and 3-rd spherical cov.

Sparse tensor decompositions of kernelscov(x , y) = cov(x − y)

We want to approximate C ∈ RN×N , N = nd by

Cr =∑r

k=1 V 1k ⊗ ... ⊗ V d

k such that ‖C − Cr‖ ≤ ε.

The storage of C is O(N2) = O(n2d ) and the storage of Cr is O(rdn2).

To define V ik use e.g. SVD.

Approximate all V ik in the H-matrix format ⇒ HKT format

[Hackbusch, Khoromskij, Tyrtyshnikov].

Assume f (x , y), x = (x1, x2), y = (y1, y2), then the equivalent approx.problem is f (x1, x2; y1, y2) ≈

∑rk=1 Φk (x1, y1)Ψk (x2, y2).

Numerical examples of tensor approximations

Gaussian kernel exp−|x − y |2 has the Kroneker rank 1.

The exponen. kernel exp−|x − y | can be approximated by a tensorwith low Kronecker rank

r 1 2 3 4 5 6 10‖C−Cr‖∞

‖C‖∞11.5 1.7 0.4 0.14 0.035 0.007 2.8e − 8

‖C−Cr‖2

‖C‖26.7 0.52 0.1 0.03 0.008 0.001 5.3e − 9

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

Application: covariance of the solution

Let K be the stiffness matrix. For SPDE with stochastic RHS theeigenvalue problem and spectral decom. look like

Cf fℓ = λℓfℓ, Cf = Φf Λf ΦTf .

If we only want the covariance

Cu = (K ⊗ K)−1Cf = (K−1 ⊗ K−1)Cf = K−1Cf K−T ,

one may with the KLE of Cf = Φf Λf ΦTf reduce this to

Cu = K−1Cf K−T = K−1

Φf ΛΦTf K−T .

Application: higher order moments

Let operator K be deterministic and

Ku(θ) =∑

α∈J

Ku(α)Hα(θ) = f(θ) =∑

α∈J

f (α)Hα(θ), with

u(α) = [u(α)1 , ..., u(α)

N ]T . Projecting onto each Hα obtain

Ku(α) = f (α).

The KLE of f(θ) is

f(θ) = f +∑

√λℓφℓ(θ)fℓ =

α

√λℓφ

(α)ℓ Hα(θ)fℓ

=∑

α

Hα(θ)f (α),

where f (α) =∑

√λℓφ

(α)ℓ fℓ.

Application: higher order moments

The 3-rd moment of u is

M(3)u = E

α,β,γ

u(α) ⊗ u(β) ⊗ u(γ)HαHβHγ

=∑

α,β,γ

u(α)⊗u(β)⊗u(γ)cα,β,γ ,

cα,β,γ := E (Hα(θ)Hβ(θ)Hγ(θ)) = cα,β · γ!, and cα,β are constantsfrom the Hermitian algebra.

Using u(α) = K−1f (α) =∑

√λℓφ

(α)ℓ K−1fℓ and uℓ := K−1fℓ, obtain

M(3)u =

p,q,r

tp,q,r up ⊗ uq ⊗ ur , where

tp,q,r :=√

λpλqλr

α,β,γ

φ(α)p φ

(β)q φ

(γ)r cα,βγ .

Outline

Problem setup

Karhunen-Loeve expansion

Data Sparse TechniquesFast Fourier Transformation (FFT)Hierarchical MatricesSparse tensor approximation

Applications

Conclusion

Conclusion

Covariance matrices allow data sparse approximations. Application of H-matrices

extend the class of covariance functions to work with, allows non-regular discretisations of the cov. function on large

spatial grids.

Application of sparse tensor product allows computation of k -thmoments.

Plans for Feature

1. Apply H-matrix - ARPACK technique for solving SPDEs [M.Krosche’s software]

2. Further research how to apply sparse KLE for computingmoments and functionals of the solution [DFG]

3. Implement sparse tensor vector product for the Lanczos method[MPI Leipzig]

Thank you for your attention!

Questions?