ADI for Tensor Structured Equations

Preview:

Citation preview

MAX PLANCK INSTITUTE

FOR DYNAMICS OF COMPLEX

TECHNICAL SYSTEMS

MAGDEBURG

83rd GAMM Annual Scientific ConferenceDarmstadt, 28 March 2012

ADI for Tensor Structured Equations

Thomas Mach and Jens Saak

Max Planck Institute for Dynamics of Complex Technical SystemsComputational Methods in Systems and Control Theory

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 1/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Classic ADI [Peaceman/Rachford ’55]

Developed to solve linear systems related to Poisson problems

−∆u = f in Ω ⊂ Rd , d = 1, 2

u = 0 on ∂Ω.

uniform grid size h, centered differences, d = 1,

⇒ ∆1,hu = h2 f

∆1,h =

2 −1−1 2 −1

. . .. . .

. . .

−1 2 −1−1 2

.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 2/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Classic ADI [Peaceman/Rachford ’55]

Developed to solve linear systems related to Poisson problems

−∆u = f in Ω ⊂ Rd , d = 1, 2

u = 0 on ∂Ω.

uniform grid size h, 5-point difference star, d = 2,

⇒ ∆2,hu = h2 f

∆2,h =

K −I−I K −I

. . .. . .

. . .

−I K −I−I K

and K =

4 −1−1 4 −1

. . .. . .

. . .

−1 4 −1−1 4

.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 2/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Classic ADI [Peaceman/Rachford ’55]

Observation

∆2,h = (∆1,h ⊗ I )︸ ︷︷ ︸=:H

+ (I ⊗∆1,h)︸ ︷︷ ︸=:V

.

Solve ∆2,hu = h2 f =: f exploiting structure in H and V .

For certain shift parameters perform

(H + pi I ) ui+ 12

= (pi I − V ) ui + f ,

(V + pi I ) ui+1 = (pi I − H) ui+ 12

+ f ,

until ui is good enough.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 3/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Classic ADI [Peaceman/Rachford ’55]

Observation

∆2,h = (∆1,h ⊗ I )︸ ︷︷ ︸=:H

+ (I ⊗∆1,h)︸ ︷︷ ︸=:V

.

Solve ∆2,hu = h2 f =: f exploiting structure in H and V .

For certain shift parameters perform

(H + pi I ) ui+ 12

= (pi I − V ) ui + f ,

(V + pi I ) ui+1 = (pi I − H) ui+ 12

+ f ,

until ui is good enough.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 3/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Classic ADI [Peaceman/Rachford ’55]

Observation

∆2,h = (∆1,h ⊗ I )︸ ︷︷ ︸=:H

+ (I ⊗∆1,h)︸ ︷︷ ︸=:V

.

Solve ∆2,hu = h2 f =: f exploiting structure in H and V .

For certain shift parameters perform

(H + pi I ) ui+ 12

= (pi I − V ) ui + f ,

(V + pi I ) ui+1 = (pi I − H) ui+ 12

+ f ,

until ui is good enough.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 3/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

ADI and Lyapunov Equations [Wachspress ’88]

Lyapunov Equation

FX + XFT = −GGT

Vectorized Lyapunov Equation[(I ⊗ F )︸ ︷︷ ︸

=:HF

+ (F ⊗ I )︸ ︷︷ ︸=:VF

]vec(X ) = −vec(GGT )

Same structure ⇒ apply ADI

(F + pi I )Xi+ 12

= −GGT − Xi

(FT − pi I

)(F + pi I )Xi+1 = −GGT − XT

i+ 12

(FT − pi I

)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 4/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

ADI and Lyapunov Equations [Wachspress ’88]

Lyapunov Equation

FX + XFT = −GGT

Vectorized Lyapunov Equation[(I ⊗ F )︸ ︷︷ ︸

=:HF

+ (F ⊗ I )︸ ︷︷ ︸=:VF

]vec(X ) = −vec(GGT )

Same structure ⇒ apply ADI

(F + pi I )Xi+ 12

= −GGT − Xi

(FT − pi I

)(F + pi I )Xi+1 = −GGT − XT

i+ 12

(FT − pi I

)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 4/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

ADI and Lyapunov Equations [Wachspress ’88]

Lyapunov Equation

FX + XFT = −GGT

Vectorized Lyapunov Equation[(I ⊗ F )︸ ︷︷ ︸

=:HF

+ (F ⊗ I )︸ ︷︷ ︸=:VF

]vec(X ) = −vec(GGT )

Same structure ⇒ apply ADI

(F + pi I )Xi+ 12

= −GGT − Xi

(FT − pi I

)(F + pi I )Xi+1 = −GGT − XT

i+ 12

(FT − pi I

)Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 4/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Generalizing Matrix Equations

∆2,hvec(X ) = vec(B)(

I ⊗ I ⊗

I ⊗ ∆1,h︸ ︷︷ ︸=H

+

I ⊗ I ⊗

∆1,h ⊗ I︸ ︷︷ ︸=V

+ I ⊗ ∆1,h ⊗ I ⊗ I︸ ︷︷ ︸=R

+ ∆1,h ⊗ I ⊗ I ⊗ I︸ ︷︷ ︸=Q

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

Xa

b

c

d Xa

b

c

d

Xa

b

c

d Xabcd

a∆µa

b∆µb

c ∆µc

d ∆µd

+

+

+ = Ba

b

c

d

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 5/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Generalizing Matrix Equations

∆4,hvec(X ) = vec(B)(I ⊗ I ⊗ I ⊗ ∆1,h︸ ︷︷ ︸

=H

+ I ⊗ I ⊗ ∆1,h ⊗ I︸ ︷︷ ︸=V

+ I ⊗ ∆1,h ⊗ I ⊗ I︸ ︷︷ ︸=R

+ ∆1,h ⊗ I ⊗ I ⊗ I︸ ︷︷ ︸=Q

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

Xabcd Xabcd

Xabcd Xabcd

a∆µa

b∆µb

c ∆µc

d ∆µd

+

+

+ = Babcd

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 5/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Generalizing ADI

(I ⊗ ∆1,h︸ ︷︷ ︸

=H

+ ∆1,h ⊗ I︸ ︷︷ ︸=V

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

(H + I ⊗ pi ,1I )Xi+ 12

= (pi ,1I − V )Xi + B

(V + pi ,2I ⊗ I )Xi+ 12

= (pi ,2I − H)Xi+ 12

+ B

(I ⊗ I ⊗ I ⊗ ∆1,h︸ ︷︷ ︸

=H

+ I ⊗ I ⊗ ∆1,h ⊗ I︸ ︷︷ ︸=V

+ I ⊗ ∆1,h ⊗ I ⊗ I︸ ︷︷ ︸=R

+ ∆1,h ⊗ I ⊗ I ⊗ I︸ ︷︷ ︸=Q

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

(H + I ⊗ I ⊗ I ⊗ pi ,1I )Xi+ 14

= (pi ,1I − V − R − Q)Xi + B

(V + I ⊗ I ⊗ pi ,2I ⊗ I )Xi+ 12

= (pi ,2I − H − R − Q)Xi+ 14

+ B

(R + I ⊗ pi ,3I ⊗ I ⊗ I )Xi+ 34

= (pi ,3I − H − V − Q)Xi+ 12

+ B

(Q + pi ,4I ⊗ I ⊗ I ⊗ I )Xi+1 = (pi ,4I − H − V − R)Xi+ 34

+ B

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 6/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Generalizing ADI

(I ⊗ ∆1,h︸ ︷︷ ︸

=H

+ ∆1,h ⊗ I︸ ︷︷ ︸=V

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

(H + I ⊗ pi ,1I )Xi+ 12

= (pi ,1I − V )Xi + B

(V + pi ,2I ⊗ I )Xi+ 12

= (pi ,2I − H)Xi+ 12

+ B

(I ⊗ I ⊗ I ⊗ ∆1,h︸ ︷︷ ︸

=H

+ I ⊗ I ⊗ ∆1,h ⊗ I︸ ︷︷ ︸=V

+ I ⊗ ∆1,h ⊗ I ⊗ I︸ ︷︷ ︸=R

+ ∆1,h ⊗ I ⊗ I ⊗ I︸ ︷︷ ︸=Q

)vec(X )︸ ︷︷ ︸

=u

= vec(B)︸ ︷︷ ︸=f

(H + I ⊗ I ⊗ I ⊗ pi ,1I )Xi+ 14

= (pi ,1I − V − R − Q)Xi + B

(V + I ⊗ I ⊗ pi ,2I ⊗ I )Xi+ 12

= (pi ,2I − H − R − Q)Xi+ 14

+ B

(R + I ⊗ pi ,3I ⊗ I ⊗ I )Xi+ 34

= (pi ,3I − H − V − Q)Xi+ 12

+ B

(Q + pi ,4I ⊗ I ⊗ I ⊗ I )Xi+1 = (pi ,4I − H − V − R)Xi+ 34

+ B

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 6/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Goal

Solve AX = B

A = I ⊗ I ⊗ · · · ⊗ I ⊗ I ⊗ A1 +

I ⊗ I ⊗ · · · ⊗ I ⊗ A2 ⊗ I +

. . . +

Ad ⊗ I ⊗ · · · ⊗ I ⊗ I ⊗ I

B is given in tensor train decomposition⇒ X is sought in tensor train decomposition.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 7/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

T (i1, i2, . . . , id) =

r1,...,rd−1∑α1,...,αd−1=1

G1(i1, α1)G2(α1, i2, α2)

· · ·Gj(αj−1, ij , αj) · · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id).

G1(i1, α1) α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 8/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

Tensor trains are

computable, and

require only O(dnr2) storage, with TT-rank r and T ∈ Rnd .

Canonical representation

T (i1, i2, . . . , id) =∑α

G1(i1, α) · · ·Gd(id , α)

Tucker decomposition

T (i1, i2, . . . , id) =∑

α1,...,αd

C (α1, . . . , αd)G1(i1, α1) · · ·Gd(id , αd)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 9/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

(I ⊗ · · · ⊗ I ⊗ A1)

−1

T

G1(i1, α1)

i1

A1(β, i1)

α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

= G1(β, α1) = A1G1

T (i1, i2, . . . , id)×1 A1

−1

=∑

α1,...,αd−1

A1

−1

∣∣β,i1G1(i1, α1)G2(α1, i2, α2)

· · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 10/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

(I ⊗ · · · ⊗ I ⊗ A1)

−1

T

G1(i1, α1)

i1

A1(β, i1)

α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

= G1(β, α1) = A1G1

T (i1, i2, . . . , id)×1 A1

−1

=∑

α1,...,αd−1

A1

−1

∣∣β,i1G1(i1, α1)G2(α1, i2, α2)

· · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 10/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

(I ⊗ · · · ⊗ I ⊗ A1)

−1

T

G1(i1, α1)

i1

A1(β, i1)

α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

= G1(β, α1) = A1G1

T (i1, i2, . . . , id)×1 A1

−1

=∑

α1,...,αd−1

A1

−1

∣∣β,i1G1(i1, α1)G2(α1, i2, α2)

· · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 10/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

(I ⊗ · · · ⊗ I ⊗ A1)

−1

T

G1(i1, α1)

i1

A1(β, i1)

α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

= G1(β, α1) = A1G1

T (i1, i2, . . . , id)×1 A1

−1

=∑

α1,...,αd−1

A1

−1

∣∣β,i1G1(i1, α1)G2(α1, i2, α2)

· · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 10/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Tensor Trains [Oseledets, Tyrtyshnikov ’09]

(I ⊗ · · · ⊗ I ⊗ A1)−1T

G1(i1, α1)

i1

A1(β, i1)

α1 G2(α1, i2, α2) α2 · · · Gd(αd−1, id)

= G1(β, α1) = A1\G1

T (i1, i2, . . . , id)×1 A1−1 =

∑α1,...,αd−1

A1−1∣∣β,i1G1(i1, α1)G2(α1, i2, α2)

· · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 10/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Algorithm

Input: A1, . . . ,Ad, tensor train B, accuracy εOutput: tensor train X , with AX = Bforall j ∈ 1, . . . , d do

X(0)j := zeros(n, 1, 1)

end

while∥∥r (i)

∥∥ > ε do

Choose shift piforall k ∈ 1, . . . , d do

X (i+ kd ) :=

(B+piX

(i+ k−1d )−

d∑j=1j 6=k

X (i+ k−1d ) ×j Aj

)×k (Ak + pi I )

−1

end

end

r (i) := Bforall j ∈ 1, . . . , d do

r (i) := r (i) − Xi ×j Aj

end

(I ⊗ I ⊗ · · · ⊗ I ⊗ Aj ⊗ I ⊗ · · · ⊗ I )Xi+ k−1d

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 11/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Algorithm

Input: A1, . . . ,Ad, tensor train B, accuracy εOutput: tensor train X , with AX = Bforall j ∈ 1, . . . , d do

X(0)j := zeros(n, 1, 1)

end

while∥∥r (i)

∥∥ > ε do

Choose shift piforall k ∈ 1, . . . , d do

X (i+ kd ) :=

(B+piX

(i+ k−1d )−

d∑j=1j 6=k

X (i+ k−1d ) ×j Aj

)×k (Ak + pi I )

−1

end

end

r (i) := Bforall j ∈ 1, . . . , d do

r (i) := r (i) − Xi ×j Aj

end

(I ⊗ I ⊗ · · · ⊗ I ⊗ Aj ⊗ I ⊗ · · · ⊗ I )Xi+ k−1d

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 11/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Algorithm

Input: A1, . . . ,Ad, tensor train B, accuracy εOutput: tensor train X , with AX = Bforall j ∈ 1, . . . , d do

X(0)j := zeros(n, 1, 1)

end

while∥∥r (i)

∥∥ > ε do

Choose shift piforall k ∈ 1, . . . , d do

X (i+ kd ) :=

(B+piX

(i+ k−1d )−

d∑j=1j 6=k

X (i+ k−1d ) ×j Aj

)×k (Ak + pi I )

−1

end

end

r (i) := Bforall j ∈ 1, . . . , d do

r (i) := r (i) − Xi ×j Aj

end

(I ⊗ I ⊗ · · · ⊗ I ⊗ Aj ⊗ I ⊗ · · · ⊗ I )Xi+ k−1d

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 11/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Eigenvalues

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

Stephanos’ theorem:

⇒ λi (A) = λi1(A1) + λi2(A2) + · · ·+ λid (Ad),

with i = i1 + i2n1 + · · ·+ idd−1∏j=1

nj .

AX = B ⇔d∑

j=1X ×j Aj = B

A is regular ⇔ λi (A) 6= 0 ∀i ⇐ Ai Hurwitz ∀i

mk = argmaxj∈1,...,nk : Im (λi (Ak ))≥0

|λj(Ak)|

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 12/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Eigenvalues

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

Stephanos’ theorem:

⇒ λi (A) = λi1(A1) + λi2(A2) + · · ·+ λid (Ad),

with i = i1 + i2n1 + · · ·+ idd−1∏j=1

nj .

AX = B ⇔d∑

j=1X ×j Aj = B

A is regular ⇔ λi (A) 6= 0 ∀i ⇐ Ai Hurwitz ∀i

mk = argmaxj∈1,...,nk : Im (λi (Ak ))≥0

|λj(Ak)|

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 12/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Lemma

Lemma [Grasedyck ’04]

The tensor equation ∑dj=1 X ×j Aj = B

with Ak Hurwitz ∀k has the solution

X = −∫∞

0 B ×1 exp(A1t)×2 · · · ×d exp(Ad t)dt

Z (t) = B ×1 exp(A1t)×2 · · · ×d exp(Ad t)

Z (t) =d∑

j=1

Z (t)×j Aj Z (∞)− Z (0) =

∫ ∞0

Z (t)dt,

0− B =d∑

j=1

∫ ∞0

Z (t)dt ×j Aj

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 13/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Theorem

Theorem

A1, . . . ,Ad ⇒ A, Λ(A) ⊂ [−λmax,−λmin]⊕ ı [−µ, µ] ⊂ C−.Let k ∈ N and use the quadrature points and weights:

hst := π√k, tj := log

(e jhst +

√1 + e2jhst

), wj := hst√

1+e−2jhst.

Then the solution X can be approximated by

X (i1, i2, . . . , id) = −r1,...,rd−1∑

α1,...,αd−1=1H1(i1, α1) · · ·Hd(αd−1, id),

with Hp(αp−1, ip, αp) :=∑k

j=−k2wj

λmin

∑βpe

2tjλmin

Ap∣∣ip,βp

Gp (αp−1, βp, αp)

with the approximation error

‖X − X‖2 ≤ Cstπλmin

e2µλ−1

min+1

π−π√k∮

Γ

∥∥∥(λI − 2A/λmin)−1∥∥∥

2dΓλ ‖B‖2 .

extending [Grasedyck ’04] (X and B of low Kronecker rank) to low TT-rank

B (i1, i2, . . . , id) =∑

α1,...,αd−1

G1(i1, α1)G2(α1, i2, α2)

· · ·Gj(αj−1, ij , αj) · · ·Gd−1(αd−2, id−1, αd−1)Gd(αd−1, id).

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 14/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Approximation Accuracy

0 5 10 15 20 25 30

2

4

6

8

Iteration

Sto

rage

in10

4·D

oub

le constant truncation errortightened truncation error

10−20

10−14

10−8

10−2

Tru

nca

tion

Err

orε i

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 15/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Example: Laplace – Ai = ∆1, 111

Ai = ∆1, 111

B =[0 0 . . . 0 1

]

Shifts:pi := e1(∗1) + . . .+ ed(∗d) — random chosen eigenvalue

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 16/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = ∆1, 111

d t in s residual mean(#it)

2 3.887 e−01 7.015 e−10 112.85 5.398 e+00 7.467 e−10 45.88 6.007 e+00 6.936 e−10 12.8

10 3.662 e+00 7.685 e−10 6.825 3.142 e+01 2.437 e−10 5.050 2.268 e+02 2.049 e−10 5.075 7.192 e+02 4.036 e−10 5.0

100 1.700 e+03 1.864 e−10 5.0150 5.538 e+03 1.801 e−10 5.0200 1.280 e+04 1.472 e−10 5.0250 2.499 e+04 1.816 e−10 5.0300 4.298 e+04 2.535 e−10 5.0500 1.952 e+05 2.039 e−10 5.0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 17/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = ∆1, 111

sparse densed TADI \ MESS Penzl’s sh. \ lyap

2 0.310 0.0006 0.024 0.003 0.0003 0.00054 3.130 0.1695 0.011 0.049 6.331 0.0126 8.147 — 0.076 0.094 — 7.178 5.458 — 5.863 1.097 — 13 698.2

10 5.306 — 3 445.523 249.464 — —

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 18/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = ∆1, 111

10 100 30010−2

10−1

100

101

102

103

104

105

Dimension d

Com

pu

tati

onT

ime

ins

Tensor ADI

sparse \MESSPenzl’s shifts

dense \lyap

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 19/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = ∆1, 111

10 100 30010−2

10−1

100

101

102

103

104

105

Dimension d

Com

pu

tati

onT

ime

ins

Tensor ADI

sparse \MESSPenzl’s shifts

dense \lyap

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 19/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Single Shift and Convergence

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

We assume Λ(Ak) ⊂ R−.

Error Propagation, Single Shift

‖G1‖2 ≤ maxλk∈Λ(Ak ),k=1,...,d

∣∣∣∣∣∣d∏

l=0

p −∑k

λk + λl

p + λl

∣∣∣∣∣∣ =

∣∣∣∣∣∣d∏

l=0

1−

∑k

λk

p + λl

∣∣∣∣∣∣ .If ‖G1‖2 < 1, then the ADI iteration converges.

p < 0 and p > −∞

p < λi (A) =∑d

k=1 λk(Ak) ∀iLyapunov case (Ak = A0 ∀k): p < d−2

2 λmin(A0)

= 0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 20/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Single Shift and Convergence

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

We assume Λ(Ak) ⊂ R−.

Error Propagation, Single Shift

‖G1‖2 ≤ maxλk∈Λ(Ak ),k=1,...,d

∣∣∣∣∣∣d∏

l=0

p −∑k

λk + λl

p + λl

∣∣∣∣∣∣ =

∣∣∣∣∣∣d∏

l=0

1−

∑k

λk

p + λl

∣∣∣∣∣∣ .If ‖G1‖2 < 1, then the ADI iteration converges.

p < 0 and p > −∞p < λi (A) =

∑dk=1 λk(Ak) ∀i

Lyapunov case (Ak = A0 ∀k): p < d−22 λmin(A0)

= 0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 20/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Single Shift and Convergence

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

We assume Λ(Ak) ⊂ R−.

Error Propagation, Single Shift

‖G1‖2 ≤ maxλk∈Λ(Ak ),k=1,...,d

∣∣∣∣∣∣d∏

l=0

p −∑k

λk + λl

p + λl

∣∣∣∣∣∣ =

∣∣∣∣∣∣d∏

l=0

1−

∑k

λk

p + λl

∣∣∣∣∣∣ .If ‖G1‖2 < 1, then the ADI iteration converges.

p < 0 and p > −∞p < λi (A) =

∑dk=1 λk(Ak) ∀i

Lyapunov case (Ak = A0 ∀k): p < d−22 λmin(A0)

= 0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 20/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Single Shift and Convergence

A = I ⊗ · · · ⊗ I ⊗A1 + I ⊗ · · · ⊗ I ⊗A2 ⊗ I + . . .+ Ad ⊗ I ⊗ · · · ⊗ I

We assume Λ(Ak) ⊂ R−.

Error Propagation, Single Shift

‖G1‖2 ≤ maxλk∈Λ(Ak ),k=1,...,d

∣∣∣∣∣∣d∏

l=0

p −∑k

λk + λl

p + λl

∣∣∣∣∣∣ =

∣∣∣∣∣∣d∏

l=0

1−

∑k

λk

p + λl

∣∣∣∣∣∣ .If ‖G1‖2 < 1, then the ADI iteration converges.

p < 0 and p > −∞p < λi (A) =

∑dk=1 λk(Ak) ∀i

Lyapunov case (Ak = A0 ∀k): p < 2−22 λmin(A0) = 0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 20/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Shifts

Min-Max-Problem

minp1,1,...,p`,d⊂C

maxλk∈Λ(Ak ) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi ,k −∑

j 6=k λj

pi ,k + λk

∣∣∣∣∣

Min-Max-Problem, Lyapunov case (Ak = A0 ∀k , A0 Hurwitz)

maxλk∈Λ(A0) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi

,k

−∑

j 6=k λj

pi

,k

+ λk

∣∣∣∣∣λk = λ0 ∀kPenzl’s idea: p1, . . . , p` ⊂ (d − 1)Λ(A0)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 21/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Shifts

Min-Max-Problem

minp1,1,...,p`,d⊂C

maxλk∈Λ(Ak ) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi ,k −∑

j 6=k λj

pi ,k + λk

∣∣∣∣∣Min-Max-Problem, Lyapunov case (Ak = A0 ∀k , A0 Hurwitz)

minp1,1,...,p`,d⊂C

maxλk∈Λ(A0) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi ,k −∑

j 6=k λj

pi ,k + λk

∣∣∣∣∣

λk = λ0 ∀kPenzl’s idea: p1, . . . , p` ⊂ (d − 1)Λ(A0)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 21/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Shifts

Min-Max-Problem

minp1,1,...,p`,d⊂C

maxλk∈Λ(Ak ) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi ,k −∑

j 6=k λj

pi ,k + λk

∣∣∣∣∣Min-Max-Problem, Lyapunov case (Ak = A0 ∀k , A0 Hurwitz)

minp1,...,p`⊂C

maxλk∈Λ(A0) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi

,k

−∑

j 6=k λj

pi

,k

+ λk

∣∣∣∣∣

λk = λ0 ∀kPenzl’s idea: p1, . . . , p` ⊂ (d − 1)Λ(A0)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 21/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Shifts

Min-Max-Problem

minp1,1,...,p`,d⊂C

maxλk∈Λ(Ak ) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi ,k −∑

j 6=k λj

pi ,k + λk

∣∣∣∣∣Min-Max-Problem, Lyapunov case (Ak = A0 ∀k , A0 Hurwitz)

minp1,...,p`⊂C

maxλk∈Λ(A0) ∀k

∣∣∣∣∣∏i=0

d∏k=0

pi

,k

−∑

j 6=k λj

pi

,k

+ λk

∣∣∣∣∣λk = λ0 ∀kPenzl’s idea: p1, . . . , p` ⊂ (d − 1)Λ(A0)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 21/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Random Example

seed := 1;

R := rand(10);

R := R + R ′;

R := R − λmin + 0.1;

A0 = −R;

Λ(A0) = −0.1000,−0.2250,−1.1024,−1.7496,−2.0355,

−2.4402,−3.1330,−3.3961,−3.9347,−11.9713

⇒ The random shifts do not lead to convergence.

p0 = λ10(A0)(d − 1)

p1 = λ9(A0)(d − 1)

p2 = λ8(A0)(d − 1)

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 22/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = −R

d t in s residual #it

2 2.7673 9.1353 e−09 219.05 7.8942 9.6503 e−09 98.08 18.9964 9.8650 e−09 84.0

10 18.4739 7.5746 e−09 58.015 27.5661 5.0619 e−09 40.020 32.2409 4.9971 e−09 32.025 40.2462 5.1732 e−09 29.050 76.3225 7.4093 e−09 14.075 159.6627 3.2629 e−09 10.0

100 436.6120 9.1137 e−09 11.0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 23/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Numerical Results – Ai = −R

d t in s tdmrg in s #it

2 2.7673 0.0148 219.05 7.8942 2.5576 98.08 18.9964 5.4536 84.0

10 18.4739 5.5852 58.015 27.5661 6.3068 40.020 32.2409 7.4044 32.025 40.2462 8.3371 29.050 76.3225 11.8840 14.075 159.6627 18.0581 10.0

100 436.6120 28.8515 11.0

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 23/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Conclusions and Outlook

We have seen

a generalization of the ADI method,

capable of solving tensor Lyapunov and Sylvester equations,

producing solutions of low TT-rank.

Open questions:

more sophisticated shift strategies and

why is the dmrg solver so much faster?

Thank you for your attention.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 24/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Conclusions and Outlook

We have seen

a generalization of the ADI method,

capable of solving tensor Lyapunov and Sylvester equations,

producing solutions of low TT-rank.

Open questions:

more sophisticated shift strategies and

why is the dmrg solver so much faster?

Thank you for your attention.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 24/24

ADI ADI for Tensors Numerical Results and Shifts Conclusions

Conclusions and Outlook

We have seen

a generalization of the ADI method,

capable of solving tensor Lyapunov and Sylvester equations,

producing solutions of low TT-rank.

Open questions:

more sophisticated shift strategies and

why is the dmrg solver so much faster?

Thank you for your attention.

Max Planck Institute Magdeburg Thomas Mach, Jens Saak, Tensor-ADI 24/24

Recommended