SubApSnap: Solving parameter-dependent linear systems with a snapshot and subsampling
Eleanor Jones, Yuji Nakatsukasa
TL;DR
SubApSnap addresses the challenge of solving many related linear systems $A(p)x(p)=b(p)$ by combining snapshot-based subspace projection with row subsampling. Offline, it builds a low-dimensional span $X$ from solutions at a set of snapshot parameters, and online it solves a small, subsampled least-squares problem to obtain $x(p_*)$ without reading the full matrix $A(p_*)$. The method, which generalises DEIM to parameter-dependent $A(p)$, achieves substantial speedups (often orders of magnitude) while maintaining accuracy, demonstrated across parameter-dependent PDEs, transfer-function evaluation in model order reduction, large-scale delay systems, and kernel ridge regression hyperparameter searches. Theoretical bounds connect subsampling quality to the full problem through polar decompositions and subspace embeddings, while practical guidance on snapshot placement and sampling strategies supports robust performance. Overall, SubApSnap offers a scalable, data-efficient framework for rapid parameter-sweep computations in scientific computing and data science contexts.
Abstract
A growing number of problems in computational mathematics can be reduced to the solution of many linear systems that are related, often depending smoothly or slowly on a parameter $p$, that is, $A(p)x(p)=b(p)$. We introduce an efficient algorithm for solving such parameter-dependent linear systems for many values of $p$. The algorithm, which we call SubApSnap (for \emph{Sub}sampled $A(p)$ times \emph{Snap}shot), is based on combining ideas from model order reduction and randomised linear algebra: namely, taking a snapshot matrix, and solving the resulting tall-skinny least-squares problems using a subsampling-based dimension-reduction approach. We show that SubApSnap is a strict generalisation of the popular DEIM algorithm in nonlinear model order reduction. SubApSnap is a sublinear-time algorithm, and once the snapshot and subsampling are determined, it solves $A(p_*)x(p_*)=b(p_*)$ for a new value of $p_*$ at a dramatically improved speed: it does not even need to read the whole matrix $A(p_*)$ to solve the linear system for a new value of $p_*$. We prove under natural assumptions that, given a good subsampling and snapshot, SubApSnap yields solutions with small residual for all parameter values of interest. We illustrate the efficiency and performance of the algorithm with problems arising in PDEs, model reduction, and kernel ridge regression, where SubApSnap achieves speedups of many orders of magnitude over a standard solution; for example over $20,000\times$ for a $10^7\times 10^7$ problem, while providing good accuracy.
