componentwise accurate numerical methods for markov
play

Componentwise accurate numerical methods for Markov-modulated - PowerPoint PPT Presentation

Componentwise accurate numerical methods for Markov-modulated Brownian motion Giang T. Nguyen 1 Federico Poloni 2 1 U of Adelaide, School of Mathematical Sciences 2 U Pisa, Italy, Dept of Computer Science 9 th Matrix Analytic Methods Conference


  1. Componentwise accurate numerical methods for Markov-modulated Brownian motion Giang T. Nguyen 1 Federico Poloni 2 1 U of Adelaide, School of Mathematical Sciences 2 U Pisa, Italy, Dept of Computer Science 9 th Matrix Analytic Methods Conference Budapest, June 2016 F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 1 / 19

  2. Subtraction-free algorithms Error analysis in an (imprecise) slogan TL;DR: when you subtract two close numbers, you lose accuracy. More precise: instead of a and b , a computer may store a + δ and b + ε ; the number ( a + δ ) − ( b + ε ) may be at a large relative distance from a − b (if a and b have the same sign). So, let’s stop doing subtractions. Luckily, for many probabilities computations this is possible. E.g., computing AB , for A ≥ 0 , B ≥ 0. Most subtractions come from M-matrices, but we can avoid them! F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 2 / 19

  3. Regular M-matrices A matrix A with sign pattern (possibly including zeros)   + − − − − + − −   A =   − − + −     − − − + is called regular M -matrix if there are v > 0 , w ≥ 0 such that A v = w . E.g., ( − Q ) 1 = 0 for the rate matrix of a CTMC Attention! [Guo CH, 2013] � � 0 0 Not all M-matrices are regular! E.g., − 1 0 F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 3 / 19

  4. GTH algorithm For a regular M-matrix A , one can store its off-diagonal entries, v and w (triplet representation).   ? − − − − ? − −   A = A v = w   − − ? −     − − − ? GTH-like algorithm [Grassmann et al ’85, O’Cinneide ’93, Alfa et al ’02. . . ] Given a triplet representation for A ∈ R n × n , one can compute B = A − 1 subtraction-free, obtaining perfect componentwise accuracy: | ˜ b ij − b ij | ≤ O ( n 3 ) · | b ij | · eps . Variants: LU factorization, left and right kernel, Perron vector. Variant: v ⊤ A = w ⊤ F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 4 / 19

  5. GTH algorithm An example � � 1 − 1 : can only compute inverse up to accuracy κ ( A ) ≈ ε − 1 . A = − 1 1 + ε � � � � � � ? − 1 1 0 A = such that A = : full accuracy possible. − 1 ? 1 ε Works especially well when dealing with different orders of magnitude. Plan: triplet representation are a great idea — let’s rewrite our matrix iterations to use them! F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 5 / 19

  6. Obtaining triplets Theorem [Nguyen P. ’16 — or earlier?] Given a regular M -matrix and its triplet representation partitioned as � � � � � � A B v 1 w 1 = , C D v 2 w 2 one can obtain explicitly without subtractions triplet representations for its submatrices and Schur complements (censorings): Dv 2 = w 2 − Cv 1 , ( A − BD − 1 C ) v 1 = w 1 − BD − 1 w 2 . F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 6 / 19

  7. Cyclic reduction CR solves matrix equations of the form R 2 A − RB + C = 0, with A , C ≥ 0, and B − A − C a regular M-matrix [Bini et al ’01, BLM book] Cyclic Reduction A 0 = A , B 0 = “ B 0 = B , C 0 = C A k +1 = A k B − 1 k A k , B k +1 = B k − A k B − 1 k C k − C k B − 1 k A k , C k +1 = C k B − 1 k C k , B k +1 = “ “ B k − C k B − 1 k A k . At the end of the iteration, R = C 0 “ B − 1 ∞ , where “ B ∞ = lim “ B k . F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 7 / 19

  8. Cyclic Reduction and triplets  ... ...    ...   B − C     Cyclic Reduction = Schur complements on − A − C B     ...   − A  B    ... ...   Two triplet representations follow: ( A k − B k + C k ) 1 = 0 : gives triplet for B k , already known and used. [e.g. Bini et al, SMCTools software] ( A 0 − “ B k + C k ) 1 = 0 : gives triplet for “ B ∞ , new for the final step. Theorem [Nguyen P. ’16] CR with triplet representations gives | ˜ f − f | ≤ O (2 k n 4 ) | f | eps for the computed value ˜ f of each entry f of A k , B k , C k , “ B k , R k . F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 8 / 19

  9. Doubling algorithm An unusual matrix iteration that can be seen as repeated censoring / Schur complementation: �� − 1 � � � � � � � � � � 0 0 0 0 E new G new G E G E = + I − H new F new H 0 0 F H 0 0 F Keep track of triplet representations at each step = ⇒ componentwise-accurate algorithms for fluid queues / Riccati equations. [Xue et al ’12, Nguyen P. ’15, Xue Li ’16] F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 9 / 19

  10. Markov-modulated Brownian motion [Asmussen ’95, Karandikar Kulkarni ’95, Rogers ’94] φ ( t ) continuous-time Markov chain with transition matrix Q ∈ R n × n ; y ( t ) evolves as Brownian motion with drift d φ ( t ) and variance v φ ( t ) . The invariant density follows p ′′ ( x ) V − p ′ ( x ) D + p ( x ) Q = 0 . V , D ∈ R n × n diagonal matrices containing v i , d i . Invariant density and many properties can be computed using an invariant pair, i.e., ( X ∈ R ℓ × ℓ , U ∈ R ℓ × n ) such that X 2 UV − XUD + UQ = 0 . [Rogers ’94, Ivanovs, ’10, Betcke Kressner ’11, Gohberg et al ’82] � � Often, U = . I Ψ F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 10 / 19

  11. Invariant pairs and Cyclic Reduction How do we compute invariant pairs? Cyclic reduction gives a special one: R 2 IA − RIB + IC = 0 . Plan: tinker with the problem to turn it into this form. Discretizing transformation from eigenvalue properties: [Bini et al ’10] we need a “continuous-time stable” pair: eig ( X ) ⊆ left half-plane. CR produces a “discrete-time stable” one: eig ( R ) ⊆ unit circle So we make a change of variables R = f ( X ). R = ( I + X )( I − X ) − 1 won’t work: cannot find X = f − 1 ( R ) subtraction-free. Instead, we use R = I + hX , with h sufficiently small. F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 11 / 19

  12. The algorithm 1 Choose h small enough so that v i + d i h + q ii h 2 > 0 (*) (and the subtraction is ‘tame’). 2 Set A := 1 B := 2 1 h 2 V + 1 C := 1 h 2 V + 1 h 2 V ≥ 0 , h D , h D + Q ≥ 0 . 3 Use subtraction-free CR on ( A , B , C ) to compute R . 4 Compute the off-diagonal of X = h − 1 ( R − I ). 5 Compute the left Perron vector µ of Q using the triplet Q 1 = 0 . 6 Compute the triplet µ ( − X ) = 1 h µ A ∞ “ B − 1 ∞ , and obtain diag( X ). Works whenever v i > 0 for all i (positive variances). Otherwise, we can’t enforce (*) F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 12 / 19

  13. Zero variances In E 2 = { i : v i = 0 , d i ≤ 0 } , we can’t obtain v i + d i h + q ii h 2 > 0. We won’t be able to choose U = I , because we only have enough stable eigenvalues to form an invariant pair of size n − | E 2 | . Solution to both problems: shift infinite eigenvalues [He et al ’01] . From: � � � � � � + 0 + 0 + + A = B = C = , , 0 0 0 − + ?? move 2 nd column “one matrix to the left” and change its sign: � � � � � � + 0 + − + 0 ˆ ˆ ˆ A = B = C = , , . 0 + 0 + 0 M Shift ⇐ ⇒ differentiating some of the equations. See “index reduction” in ODE literature. [Kunkel Mehrmann ’06] F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 13 / 19

  14. Recovering the solution Still, R is not the final solution. � � + 0 “ B − 1 The shift trick adds spurious zero eigenvalues: R = ∞ . + 0 Solution to remove them: switch to a different invariant pair: ( KRK − 1 ) 2 KA + ( KRK − 1 ) KB + KC = 0 . � 2 � � � � � � � � � 0 0 R 11 I Ψ R 11 I Ψ I Ψ A + B + C = 0 . R 12 0 0 I R 12 0 0 I 0 I New R is block-triangular = ⇒ “reduced invariant pair” ( R 11 , [ I Ψ ]). True but not obvious: all this can be done subtraction-free. F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 14 / 19

  15. The (general) algorithm 1 Choose h small so that h − 2 v i + h − 1 d i + q ii > 0 for all i �∈ E 2 . 2 Set A := 1 B := 2 1 h 2 V + 1 C := 1 h 2 V + 1 h 2 V ≥ 0 , h D , h D + Q ≥ 0 . 3 Shift technique to produce equivalent ˆ A , ˆ B , ˆ C . 4 Use componentwise accurate CR on (ˆ A , ˆ B , ˆ C ) to compute ˆ B ∞ . 5 Use similarity as in the previous slide to compute ( R 11 , [ I Ψ ]). 6 Compute the off-diagonal of X = h − 1 ( R 11 − I ). 7 Compute the left Perron vector µ of Q using the triplet Q 1 = 0 . 8 Compute a triplet v ⊤ ( − X ) = w ⊤ (long formula omitted). Works even with zero variances. F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 15 / 19

  16. Experiments: the competitors KK [Karandikar Kulkarni ’95] : compute eigenvalues explicitly. AS [Agapie Sohraby ’01] : iterative algorithm for span(stable eigenvalues), then orthogonal transformations. LN [Latouche Nguyen ’15] : (non-subtraction-free) Cyclic Reduction. QZ QZ algorithm: orthogonal transformations — well-known linear algebra workhorse. NP our new algorithm. F. Poloni (U Pisa) Componentwise MMBM MAM9 2016 16 / 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