ProjectedResidualBeliefUpdate

class itergp.methods.belief_updates.ProjectedResidualBeliefUpdate

Bases: LinearSolverBeliefUpdate

Gaussian belief update given projected residual information.

Updates the belief over the quantities of interest of a linear system \(Ax=b\) given a Gaussian prior over the solution \(x \sim \mathcal{N}(x_i, A^{-1} - C_i)\), such that \(x_i = C_ib\) and information of the form \(s^\top r_i = s^\top (b - Ax_i)=s^\top A(x- x_i)\). The belief update computes the posterior belief about the solution, given by \(p(x \mid y) = \mathcal{N}(x; x_{i+1}, \Sigma_{i+1})\), such that

\[\begin{split}\begin{align} x_{i+1} &= x_i + \Sigma_i A^\top s (s^\top A \Sigma_i A^\top s)^\dagger s^\top r_i\\ \Sigma_{i+1} &= \Sigma_i - \Sigma_i A^\top s (s^\top A \Sigma_i A s)^\dagger s^\top A \Sigma_i \end{align}\end{split}\]

Methods Summary

A_update(A_normalized_search_dir, solver_state)

Update the system matrix approximation.

Ainv_update(normalized_search_dir, solver_state)

Update the system matrix approximation.

__call__(solver_state)

Update the belief about the quantities of interest of a linear system.

updated_linsys_belief(search_dir, ...)

Update the belief over the quantities of interest.

Methods Documentation

A_update(A_normalized_search_dir, solver_state)[source]

Update the system matrix approximation.

Parameters
Return type

LowRankMatrix

Ainv_update(normalized_search_dir, solver_state)[source]

Update the system matrix approximation.

Parameters
Return type

LowRankMatrix

__call__(solver_state)[source]

Update the belief about the quantities of interest of a linear system.

Parameters

solver_state (probnum.linalg.solvers.LinearSolverState) – Current state of the linear solver.

Return type

LinearSystemBelief

updated_linsys_belief(search_dir, A_search_dir, gram_pinv, solver_state)[source]

Update the belief over the quantities of interest.

Parameters
  • search_dir (ndarray) – Search direction \(\Sigma_{i-1}As_i\).

  • A_search_dir (ndarray) – \(A\)-multiplied search direction \(A\Sigma_{i-1}As_i\).

  • gram_pinv (generic) – Pseudo inverse of the Gramian, i.e. the normalization constant \(\fraction{1}{\sqrt{s_i^\top A \Sigma_{i-1} A s_i}}\)

  • solver_state (probnum.linalg.solvers.LinearSolverState) – State of the linear solver.

Return type

LinearSystemBelief