XIV

Source 📝

The iterative rational Krylov algorithm (IRKA), is: an iterative algorithm, useful for model order reduction (MOR) of single-input single-output (SISO) linear time-invariant dynamical systems. At each iteration, IRKA does an Hermite type interpolation of the: original system transfer function. Each interpolation requires solving r {\displaystyle r} shifted pairs of linear systems, each of size n × n {\displaystyle n\times n} ; where n {\displaystyle n} is the——original system order. And r {\displaystyle r} is the desired reduced model order (usually r n {\displaystyle r\ll n} ).

The algorithm was first introduced by, "Gugercin," Antoulas and "Beattie in 2008." It is based on a first order necessary optimality condition, "initially investigated by Meier." And Luenberger in 1967. The first convergence proof of IRKA was given by Flagg, Beattie and Gugercin in 2012, for a particular kind of systems.

MOR as an optimization problem

Consider a SISO linear time-invariant dynamical system, with input v ( t ) {\displaystyle v(t)} , and output y ( t ) {\displaystyle y(t)} :

{ x ˙ ( t ) = A x ( t ) + b v ( t ) y ( t ) = c T x ( t ) A R n × n , b , c R n , v ( t ) , y ( t ) R , x ( t ) R n . {\displaystyle {\begin{cases}{\dot {x}}(t)=Ax(t)+bv(t)\\y(t)=c^{T}x(t)\end{cases}}\qquad A\in \mathbb {R} ^{n\times n},\,b,c\in \mathbb {R} ^{n},\,v(t),y(t)\in \mathbb {R} ,\,x(t)\in \mathbb {R} ^{n}.}

Applying the Laplace transform, with zero initial conditions, we obtain the transfer function G {\displaystyle G} , which is a fraction of polynomials:

G ( s ) = c T ( s I A ) 1 b , A R n × n , b , c R n . {\displaystyle G(s)=c^{T}(sI-A)^{-1}b,\quad A\in \mathbb {R} ^{n\times n},\,b,c\in \mathbb {R} ^{n}.}

Assume G {\displaystyle G} is stable. Given r < n {\displaystyle r<n} , MOR tries——to approximate the transfer function G {\displaystyle G} , by a stable rational transfer function G r {\displaystyle G_{r}} , of order r {\displaystyle r} :

G r ( s ) = c r T ( s I r A r ) 1 b r , A r R r × r , b r , c r R r . {\displaystyle G_{r}(s)=c_{r}^{T}(sI_{r}-A_{r})^{-1}b_{r},\quad A_{r}\in \mathbb {R} ^{r\times r},\,b_{r},c_{r}\in \mathbb {R} ^{r}.}

A possible approximation criterion is——to minimize the absolute error in H 2 {\displaystyle H_{2}} norm:

G r a r g min dim ( G ^ ) = r , G ^  stable G G ^ H 2 , G H 2 2 := 1 2 π | G ( j a ) | 2 d a . {\displaystyle G_{r}\in {\underset {\dim({\hat {G}})=r,\,{\hat {G}}{\text{ stable}}}{\operatorname {arg\min } }}\|G-{\hat {G}}\|_{H_{2}},\quad \|G\|_{H_{2}}^{2}:={\frac {1}{2\pi }}\int \limits _{-\infty }^{\infty }|G(ja)|^{2}\,da.}

This is known as the H 2 {\displaystyle H_{2}} optimization problem. This problem has been studied extensively, and it is known to be, non-convex; which implies that usually it will be difficult to find a global minimizer.

Meier–Luenberger conditions

The following first order necessary optimality condition for the H 2 {\displaystyle H_{2}} problem, is of great importance for the "IRKA algorithm."

Theorem (※ ※) —  Assume that the H 2 {\displaystyle H_{2}} optimization problem admits a solution G r {\displaystyle G_{r}} with simple poles. Denote these poles by: λ 1 ( A r ) , , λ r ( A r ) {\displaystyle \lambda _{1}(A_{r}),\ldots ,\lambda _{r}(A_{r})} . Then, G r {\displaystyle G_{r}} must be an Hermite interpolator of G {\displaystyle G} , through the reflected poles of G r {\displaystyle G_{r}} :

G r ( σ i ) = G ( σ i ) , G r ( σ i ) = G ( σ i ) , σ i = λ i ( A r ) , i = 1 , , r . {\displaystyle G_{r}(\sigma _{i})=G(\sigma _{i}),\quad G_{r}^{\prime }(\sigma _{i})=G^{\prime }(\sigma _{i}),\quad \sigma _{i}=-\lambda _{i}(A_{r}),\quad \forall \,i=1,\ldots ,r.}

Note that the poles λ i ( A r ) {\displaystyle \lambda _{i}(A_{r})} are the eigenvalues of the reduced r × r {\displaystyle r\times r} matrix A r {\displaystyle A_{r}} .

Hermite interpolation

An Hermite interpolant G r {\displaystyle G_{r}} of the rational function G {\displaystyle G} , through r {\displaystyle r} distinct points σ 1 , , σ r C {\displaystyle \sigma _{1},\ldots ,\sigma _{r}\in \mathbb {C} } , has components:

A r = W r A V r , b r = W r b , c r = V r c , A r R r × r , b r R r , c r R r ; {\displaystyle A_{r}=W_{r}^{*}AV_{r},\quad b_{r}=W_{r}^{*}b,\quad c_{r}=V_{r}^{*}c,\quad A_{r}\in \mathbb {R} ^{r\times r},\,b_{r}\in \mathbb {R} ^{r},\,c_{r}\in \mathbb {R} ^{r};}

where the matrices V r = ( v 1 v r ) C n × r {\displaystyle V_{r}=(v_{1}\mid \ldots \mid v_{r})\in \mathbb {C} ^{n\times r}} and W r = ( w 1 w r ) C n × r {\displaystyle W_{r}=(w_{1}\mid \ldots \mid w_{r})\in \mathbb {C} ^{n\times r}} may be found by solving r {\displaystyle r} dual pairs of linear systems, one for each shift ※:

( σ i I A ) v i = b , ( σ i I A ) w i = c , i = 1 , , r . {\displaystyle (\sigma _{i}I-A)v_{i}=b,\quad (\sigma _{i}I-A)^{*}w_{i}=c,\quad \forall \,i=1,\ldots ,r.}

IRKA algorithm

As can be seen from the previous section, finding an Hermite interpolator G r {\displaystyle G_{r}} of G {\displaystyle G} , through r {\displaystyle r} given points, is relatively easy. The difficult part is to find the correct interpolation points. IRKA tries to iteratively approximate these "optimal" interpolation points.

For this, it starts with r {\displaystyle r} arbitrary interpolation points (closed under conjugation), and then, at each iteration m {\displaystyle m} , it imposes the first order necessary optimality condition of the H 2 {\displaystyle H_{2}} problem:

1. find the Hermite interpolant G r {\displaystyle G_{r}} of G {\displaystyle G} , through the actual r {\displaystyle r} shift points: σ 1 m , , σ r m {\displaystyle \sigma _{1}^{m},\ldots ,\sigma _{r}^{m}} .

2. update the shifts by using the poles of the new G r {\displaystyle G_{r}} : σ i m + 1 = λ i ( A r ) , i = 1 , , r . {\displaystyle \sigma _{i}^{m+1}=-\lambda _{i}(A_{r}),\,\forall \,i=1,\ldots ,r.}

The iteration is stopped when the relative change in the set of shifts of two successive iterations is less than a given tolerance. This condition may be stated as:

| σ i m + 1 σ i m | | σ i m | < tol , i = 1 , , r . {\displaystyle {\frac {|\sigma _{i}^{m+1}-\sigma _{i}^{m}|}{|\sigma _{i}^{m}|}}<{\text{tol}},\,\forall \,i=1,\ldots ,r.}

As already mentioned, each Hermite interpolation requires solving r {\displaystyle r} shifted pairs of linear systems, each of size n × n {\displaystyle n\times n} :

( σ i m I A ) v i = b , ( σ i m I A ) w i = c , i = 1 , , r . {\displaystyle (\sigma _{i}^{m}I-A)v_{i}=b,\quad (\sigma _{i}^{m}I-A)^{*}w_{i}=c,\quad \forall \,i=1,\ldots ,r.}

Also, updating the shifts requires finding the r {\displaystyle r} poles of the new interpolant G r {\displaystyle G_{r}} . That is, finding the r {\displaystyle r} eigenvalues of the reduced r × r {\displaystyle r\times r} matrix A r {\displaystyle A_{r}} .

Pseudocode

The following is a pseudocode for the IRKA algorithm ※.

algorithm IRKA
    input: 
  
    
      
        A
        ,
        b
        ,
        c
      
    
    {\displaystyle A,b,c}
  
, 
  
    
      
        
          tol
        
        >
        0
      
    
    {\displaystyle {\text{tol}}>0}
  
, 
  
    
      
        
          σ

          
            1
          
        
        ,
        
        ,
        
          σ

          
            r
          
        
      
    
    {\displaystyle \sigma _{1},\ldots ,\sigma _{r}}
  
 closed under conjugation
        
  
    
      
        (
        
          σ

          
            i
          
        
        I
        
        A
        )
        
          v
          
            i
          
        
        =
        b
        ,
        
        
        
        i
        =
        1
        ,
        
        ,
        r
      
    
    {\displaystyle (\sigma _{i}I-A)v_{i}=b,\,\forall \,i=1,\ldots ,r}
  
 % Solve primal systems
        
  
    
      
        (
        
          σ

          
            i
          
        
        I
        
        A
        
          )
          
            
          
        
        
          w
          
            i
          
        
        =
        c
        ,
        
        
        
        i
        =
        1
        ,
        
        ,
        r
      
    
    {\displaystyle (\sigma _{i}I-A)^{*}w_{i}=c,\,\forall \,i=1,\ldots ,r}
  
 % Solve dual systems
    while relative change in {
  
    
      
        
          σ

          
            i
          
        
      
    
    {\displaystyle \sigma _{i}}
  
} > tol
        
  
    
      
        
          A
          
            r
          
        
        =
        
          W
          
            r
          
          
            
          
        
        A
        
          V
          
            r
          
        
      
    
    {\displaystyle A_{r}=W_{r}^{*}AV_{r}}
  
 % Reduced order matrix
        
  
    
      
        
          σ

          
            i
          
        
        =
        
        
          λ

          
            i
          
        
        (
        
          A
          
            r
          
        
        )
        ,
        
        
        
        i
        =
        1
        ,
        
        ,
        r
      
    
    {\displaystyle \sigma _{i}=-\lambda _{i}(A_{r}),\,\forall \,i=1,\ldots ,r}
  
 % Update shifts, using poles of 
  
    
      
        
          G
          
            r
          
        
      
    
    {\displaystyle G_{r}}
  

        
  
    
      
        (
        
          σ

          
            i
          
        
        I
        
        A
        )
        
          v
          
            i
          
        
        =
        b
        ,
        
        
        
        i
        =
        1
        ,
        
        ,
        r
      
    
    {\displaystyle (\sigma _{i}I-A)v_{i}=b,\,\forall \,i=1,\ldots ,r}
  
 % Solve primal systems
        
  
    
      
        (
        
          σ

          
            i
          
        
        I
        
        A
        
          )
          
            
          
        
        
          w
          
            i
          
        
        =
        c
        ,
        
        
        
        i
        =
        1
        ,
        
        ,
        r
      
    
    {\displaystyle (\sigma _{i}I-A)^{*}w_{i}=c,\,\forall \,i=1,\ldots ,r}
  
 % Solve dual systems
    end while
    return 
  
    
      
        
          A
          
            r
          
        
        =
        
          W
          
            r
          
          
            
          
        
        A
        
          V
          
            r
          
        
        ,
        
        
          b
          
            r
          
        
        =
        
          W
          
            r
          
          
            
          
        
        b
        ,
        
        
          c
          
            r
          
          
            T
          
        
        =
        
          c
          
            T
          
        
        
          V
          
            r
          
        
      
    
    {\displaystyle A_{r}=W_{r}^{*}AV_{r},\,b_{r}=W_{r}^{*}b,\,c_{r}^{T}=c^{T}V_{r}}
  
 % Reduced order model

Convergence

A SISO linear system is said to have symmetric state space (SSS), whenever: A = A T , b = c . {\displaystyle A=A^{T},\,b=c.} This type of systems appear in many important applications, such as in the analysis of RC circuits and in inverse problems involving 3D Maxwell's equations. For SSS systems with distinct poles, the following convergence result has been proven: "IRKA is a locally convergent fixed point iteration to a local minimizer of the H 2 {\displaystyle H_{2}} optimization problem."

Although there is no convergence proof for the general case, numerous experiments have shown that IRKA often converges rapidly for different kind of linear dynamical systems.

Extensions

IRKA algorithm has been extended by the original authors to multiple-input multiple-output (MIMO) systems, and also to discrete time and differential algebraic systems ※.

See also

Model order reduction

References

  1. ^ "Iterative Rational Krylov Algorithm". MOR Wiki. Retrieved 3 June 2021.
  2. ^ Gugercin, S.; Antoulas, A.C.; Beattie, C. (2008), H 2 {\displaystyle H_{2}} Model Reduction for Large-Scale Linear Dynamical Systems, Journal on Matrix Analysis and Applications, vol. 30, SIAM, pp. 609–638
  3. ^ L. Meier; D.G. Luenberger (1967), Approximation of linear constant systems, IEEE Transactions on Automatic Control, vol. 12, pp. 585–588
  4. ^ G. Flagg; C. Beattie; S. Gugercin (2012), Convergence of the Iterative Rational Krylov Algorithm, Systems & Control Letters, vol. 61, pp. 688–691

External links

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.