English

A Geometric Algorithm for Solving Linear Systems

Numerical Analysis 2020-04-28 v1 Numerical Analysis

Abstract

Based on the geometric {\it Triangle Algorithm} for testing membership of a point in a convex set, we present a novel iterative algorithm for testing the solvability of a real linear system Ax=bAx=b, where AA is an m×nm \times n matrix of arbitrary rank. Let CA,rC_{A,r} be the ellipsoid determined as the image of the Euclidean ball of radius rr under the linear map AA. The basic procedure in our algorithm computes a point in CA,rC_{A,r} that is either within ε\varepsilon distance to bb, or acts as a certificate proving b∉CA,rb \not \in C_{A,r}. Each iteration takes O(mn)O(mn) operations and when bb is well-situated in CA,rC_{A,r}, the number of iterations is proportional to log(1/ε)\log{(1/\varepsilon)}. If Ax=bAx=b is solvable the algorithm computes an approximate solution or the minimum-norm solution. Otherwise, it computes a certificate to unsolvability, or the minimum-norm least-squares solution. It is also applicable to complex input. In a computational comparison with the state-of-the-art algorithm BiCGSTAB ({\it Bi-conjugate gradient method stabilized}), the Triangle Algorithm is very competitive. In fact, when the iterates of BiCGSTAB do not converge, our algorithm can verify Ax=bAx=b is unsolvable and approximate the minimum-norm least-squares solution. The Triangle Algorithm is robust, simple to implement, and requires no preconditioner, making it attractive to practitioners, as well as researchers and educators.

Keywords

Cite

@article{arxiv.2004.12978,
  title  = {A Geometric Algorithm for Solving Linear Systems},
  author = {Bahman Kalantari and Chun Lau and Yikai Zhang},
  journal= {arXiv preprint arXiv:2004.12978},
  year   = {2020}
}

Comments

12 pages, 6 figures

R2 v1 2026-06-23T15:07:49.008Z