efficient cyclic reduction for qbds with rank structured
play

Efficient cyclic reduction for QBDs with rank structured blocks: - PowerPoint PPT Presentation

Dario A. Bini, Stefano Massei, Leonardo Robol Efficient cyclic reduction for QBDs with rank structured blocks: algorithm and analysis University of Pisa Scuola Normale Superiore KU Leuven stefano.massei@sns.it Budapest, 28 June 2016 Speaker:


  1. Dario A. Bini, Stefano Massei, Leonardo Robol Efficient cyclic reduction for QBDs with rank structured blocks: algorithm and analysis University of Pisa Scuola Normale Superiore KU Leuven stefano.massei@sns.it Budapest, 28 June 2016 Speaker: Stefano Massei 28 June 2016 1 / 19

  2. Quasi-birth-death processes A QBD process, in discrete time, is a bidimensional Markov chain whose transition probability matrix has the tridiagonal block Toeplitz structure   B 0 B 1 A − 1 A 0 A 1     A − 1 A 0 A 1   P = ,   ...   A − 1 A 0     ... ... with A i , B i ∈ R m × m ( m ∈ N ∪ { + ∞} ) non negative and P stochastic. m 0 0 Speaker: Stefano Massei 28 June 2016 2 / 19

  3. The main problem Suppose m < ∞ and let the matrix P be irreducible and nonperiodic. We consider the computation of the stationary distribution of the QBD, i.e. an infinite vector π π π such that π T P = π π T , π π π π π π ≥ 0 , and � π π π � 1 = 1 . Due to the matrix-geometric property of π π , a crucial step consists in finding the π minimal non negative solution G of the quadratic matrix equation: X = A − 1 + A 0 X + A 1 X 2 , X ∈ R m × m . Many numerical methods have been proposed to address the problem and most of them are designed to deal with the general case where the block coefficients A − 1 , A 0 and A 1 have no particular structure. Speaker: Stefano Massei 28 June 2016 3 / 19

  4. Cyclic Reduction The method on which we are going to focus is the Cyclic Reduction. Its iterative scheme requires the computation of four sequences of matrices, A ( h ) , i ( h ) , which follow the recurrence relations: i = − 1 , 0 , 1 and ˆ A 0 0 ) − 1 A ( h ) A ( h + 1 ) = A ( h ) ( I − A ( h ) 1 , 1 1 0 ) − 1 A ( h ) 0 ) − 1 A ( h ) A ( h + 1 ) = A ( h ) + A ( h ) ( I − A ( h ) − 1 + A ( h ) − 1 ( I − A ( h ) 1 , 0 0 1 0 ) − 1 A ( h ) A ( h + 1 ) = A ( h ) − 1 ( I − A ( h ) − 1 , − 1 ( h + 1 ) = ˆ ( h ) + A ( h ) 0 ) − 1 A ( h ) ˆ ( I − A ( h ) A 0 A 0 − 1 . 1 ( 0 ) = A 0 . with A ( 0 ) = A i , i = − 1 , 0 , 1 and ˆ A 0 i After each step, an approximation of the matrix G is provided by ( h ) ) − 1 A − 1 . ( I − ˆ A 0 Under mild hypothesis applicability and quadratic convergence are guaranteed. The cost of each iteration is O ( m 3 ) because it involves four matrix multiplications and the resolution of 2 m linear systems of size m . Speaker: Stefano Massei 28 June 2016 4 / 19

  5. Cyclic Reduction/ Banded blocks For example, consider the case in which A i is finite m tridiagonal for i = − 1 , 0 , 1 (Double Quasi-Birth and Death). 0 The band structure is lost immediately when applying CR due to the inversions in its iteration scheme. Goal: Find an alternative structure to exploit for speeding up the cyclic reduction. Speaker: Stefano Massei 28 June 2016 5 / 19

  6. Quasiseparable rank Definition A ∈ R m × m has quasiseparable rank k if the maximum rank among the off diagonal submatrices of A is k. Properties: (i) q rank ( A + B ) ≤ q rank ( A ) + q rank ( B ) (ii) q rank ( A · B ) ≤ q rank ( A ) + q rank ( B ) (iii) q rank ( A ) = q rank ( A − 1 ) Vandebril, Van Barel and Mastronardi. Matrix computations and semiseparable matrices. Johns Hopkins University Press, 2008. Speaker: Stefano Massei 28 June 2016 6 / 19

  7. Experimental evidences Example: Cyclic reduction with starting Exponential decay of the Singular values 0 points A i ∈ R 1000 × 1000 10 −5 10 tridiagonal. Distribution of the singular −10 10 values of the sub-block −15 10 −20 10 −25 10 −30 10 −35 10 −40 10 in A ( h ) 0 5 10 15 20 25 30 35 40 during the iteration. n−th Singular value 0 Speaker: Stefano Massei 28 June 2016 7 / 19

  8. Hierarchical matrices Strategy: Partition the row and column indices recursively and - at each step - represent the new off-diagonal blocks as low-rank outer products. Stop when the diagonal blocks reach a small dimension and represent them as full matrices. Matrix operations: Addition O ( m log ( m )) O ( m log ( m ) 2 ) Multiplication O ( m log ( m ) 2 ) Lin. System Storage O ( m log ( m )) B¨ orm, Grasedyck and Hackbusch. Hierarchical matrices. Lecture notes, 2003. Hackbusch. Hierarchical Matrices: Algorithms and Analysis. Springer Berlin, 2016. Speaker: Stefano Massei 28 June 2016 8 / 19

  9. A bunch of applications H -matrix approximation of BEM matrices. [Hackbusch, Sauter,. . . 1990s] Matrix sign function iteration in H -arithmetic for solving matrix Lyapunov and Riccati equations. [Grasedyck,Hackbusch,Khoromskij 2004] Contour integral + H -matrices for matrix functions [Gavrilyuk et al. 2002]. H -matrix based preconditioning for FE discretization of 3D Maxwell [Ostrowski et al. 2010]. Block low-rank approximation of kernel matrices [Si, Hsieh, Dhillon 2014, Wang et al. 2015]. Clustered low-rank approximation of graphs [Savas, Dhillon 2011]. Cyclic reduction + H -matrices for quadratic matrix equations with quasiseparable coefficients. [Bini, M., Robol 2016] . . . Speaker: Stefano Massei 28 June 2016 9 / 19

  10. Numerical Results/ Tridiagonal: Size VS Execution Time Execution time 10 5 CR H 10 − 16 H 10 − 12 10 3 H 10 − 8 Time (s) 10 1 10 − 1 10 2 10 3 10 4 10 5 10 6 Size CR H 10 − 16 H 10 − 12 H 10 − 8 Size Time (s) Residue Time (s) Residue Time (s) Residue Time (s) Residue 100 6 . 04 e − 02 1 . 91 e − 16 2 . 21 e − 01 1 . 79 e − 15 2 . 04 e − 01 8 . 26 e − 14 1 . 92 e − 01 7 . 40 e − 10 200 1 . 88 e − 01 2 . 51 e − 16 5 . 78 e − 01 1 . 39 e − 14 5 . 03 e − 01 1 . 01 e − 13 4 . 29 e − 01 2 . 29 e − 09 400 1 . 61 e + 01 2 . 09 e − 16 3 . 32 e + 00 1 . 41 e − 14 2 . 60 e + 00 1 . 33 e − 13 1 . 98 e + 00 1 . 99 e − 09 800 2 . 63 e + 01 2 . 74 e − 16 4 . 55 e + 00 1 . 94 e − 14 3 . 49 e + 00 2 . 71 e − 13 2 . 63 e + 00 2 . 69 e − 09 1600 8 . 12 e + 01 3 . 82 e − 12 1 . 18 e + 01 3 . 82 e − 12 8 . 78 e + 00 3 . 82 e − 12 6 . 24 e + 00 3 . 39 e − 09 3200 6 . 35 e + 02 5 . 46 e − 08 3 . 12 e + 01 5 . 46 e − 08 2 . 21 e + 01 5 . 46 e − 08 1 . 51 e + 01 5 . 43 e − 08 6400 5 . 03 e + 03 3 . 89 e − 08 7 . 83 e + 01 3 . 89 e − 08 5 . 38 e + 01 3 . 89 e − 08 3 . 58 e + 01 3 . 87 e − 08 12800 4 . 06 e + 04 1 . 99 e − 08 1 . 94 e + 02 1 . 99 e − 08 1 . 29 e + 02 1 . 99 e − 08 8 . 37 e + 01 1 . 97 e − 08 Speaker: Stefano Massei 28 June 2016 10 / 19

  11. Quasiseparable rank’s growth 36 34 Q rank of A 0 32 30 Quasiseparable rank 28 26 24 22 20 18 1 2 3 4 10 10 10 10 Dimension of blocks Speaker: Stefano Massei 28 June 2016 11 / 19

  12. Numerical Results/ Size= 1600 : Band VS Execution Time Execution time CR H 10 − 16 H 10 − 12 H 10 − 8 10 2 Time (s) 10 1 10 0 10 1 10 2 10 3 Band CR H 10 − 16 H 10 − 12 H 10 − 8 Band Time (s) Residue Time (s) Residue Time (s) Residue Time (s) Residue 2 7 . 47 e + 01 2 . 11 e − 16 1 . 58 e + 01 6 . 95 e − 15 1 . 08 e + 01 2 . 62 e − 13 7 . 86 e + 00 2 . 57 e − 09 4 7 . 65 e + 01 1 . 66 e − 16 1 . 92 e + 01 4 . 88 e − 15 1 . 48 e + 01 2 . 36 e − 13 9 . 44 e + 00 3 . 15 e − 09 8 7 . 82 e + 01 1 . 48 e − 16 2 . 81 e + 01 6 . 11 e − 15 2 . 15 e + 01 2 . 08 e − 13 1 . 31 e + 01 2 . 10 e − 09 16 7 . 50 e + 01 1 . 35 e − 16 4 . 99 e + 01 4 . 98 e − 15 3 . 48 e + 01 2 . 29 e − 13 2 . 28 e + 01 2 . 08 e − 09 32 7 . 97 e + 01 1 . 33 e − 16 9 . 40 e + 01 5 . 79 e − 15 6 . 32 e + 01 2 . 01 e − 13 4 . 15 e + 01 2 . 28 e − 09 64 8 . 03 e + 01 1 . 31 e − 16 1 . 97 e + 02 6 . 79 e − 15 1 . 29 e + 02 1 . 99 e − 13 8 . 37 e + 01 2 . 01 e − 09 128 7 . 53 e + 01 1 . 28 e − 16 4 . 01 e + 02 5 . 89 e − 15 2 . 71 e + 02 2 . 02 e − 13 1 . 75 e + 02 2 . 15 e − 09 Speaker: Stefano Massei 28 June 2016 12 / 19

  13. Theoretical analysis/ Functional interpretation of CR We associate at each step of the CR the matrix Laurent polynomial ϕ ( h ) ( z ) := − z − 1 · A ( h ) − 1 + ( I − A ( h ) 0 ) − z · A ( h ) ϕ ( z ) := ϕ ( 0 ) ( z ) , 1 , and the matrix function defined by recurrence 2 h − 1 � ψ ( 0 ) ( z ) := ϕ ( z ) − 1 ⇒ ψ ( h ) ( z 2 h ) = 1 � ψ ( 0 ) ( ζ j z ) ψ ( h + 1 ) ( z 2 ) := 1 2 ( ψ ( h ) ( z ) + ψ ( h ) ( − z )) 2 h j = 0 Theorem (Bini,Meini) Let z ∈ C � { 0 } be such that det ( ϕ ( i ) ( z ))) � = 0 ∀ i = 0 , . . . , h and let det ( I − A ( i ) 0 ) � = 0 ∀ i = 0 , . . . , h − 1 then ϕ ( i ) ( z ) = ψ ( i ) ( z ) − 1 , i = 0 , . . . , h . � − 1 In particular ϕ ( h ) ( z 2 h ) = ψ ( h ) ( z 2 h ) − 1 = � � 2 h − 1 1 j = 0 ψ ( 0 ) ( ζ j z ) . 2 h Speaker: Stefano Massei 28 June 2016 13 / 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend