C. T. Kelley Created 2026-10-14 Updated 2026-11-05
C. T. Kelley studies numerical analysis, including iterative methods for nonlinear equations, mathematical optimization and linear systems. His research connects solver design with numerical stability and computational cost, including methods that perform different stages at different arithmetic precisions.[ref]
https://ctkelley.github.io/. Author homepage, professional research activities and nonlinear-equation books
Homepage: ctkelley.github.io/
Gradient descent Created 2026-09-24 Updated 2026-10-18
Gradient descent is an iterative method for minimizing a differentiable function : choose an initial vector and repeatedly move opposite its gradient.[ref]
With a fixed positive step size , the update isThe direction and the step size play different roles: the gradient supplies local information about increase, while determines how far that information is trusted. A varying step size gives instead; exact line search for a positive-definite quadratic chooses it by minimizing along the current direction.
Why is this the steepest direction? For a unit vector in the Euclidean norm, the directional derivative is . The Cauchy-Schwarz inequality bounds it below by , attained by when the gradient is nonzero. This is steepest descent relative to the Euclidean norm; changing the norm can change the steepest direction. A finite step need not decrease , because a directional derivative describes infinitesimal motion.
For the quadratic form with linear term , assuming is a symmetric matrix, the negative gradient is the linear-system residual . Thus gradient descent turns the linear system into repeated residual corrections; a positive-definite matrix makes its solution the unique global minimum. This is useful when applying the linear map is affordable but directly solving the linear system is costly.
The attraction is that a gradient evaluation gives an entire update without solving a new linear system. The difficulty is choosing a step size that progresses along gently curved directions without overshooting steep ones. Fixed-step gradient descent on a positive-definite quadratic makes this tension exact: every eigenvector direction has its own multiplier, determined by its eigenvalue. The resulting condition number dependence explains why a narrow valley can slow even an inexpensive iterative method.
The simplicity of the gradient update and its sensitivity to the condition number of the Hessian matrix are central practical features.[ref]
Convex Optimization by Stephen Boyd and Lieven Vandenberghe. §9.3.1, pp. 466–468, and §9.3.2, p. 475, Conclusions: convergence and conditioning
Iterative method 2026-10-14
An iterative method approximates a solution by repeatedly updating an initial guess. In numerical linear algebra, a stationary iterative method for a linear system uses a fixed iteration map; other iterations can change their update rule or search space at each step.
Jacobi preconditioner 2026-10-18
The Jacobi preconditioner keeps only the diagonal entries of the matrix . For a symmetric positive-definite matrix, these entries are positive, so its auxiliary solve is . It rescales coordinates with very different diagonal sizes, but cannot remove arbitrary off-diagonal coupling.[ref]
This shares a diagonal matrix with the Jacobi method, but the roles differ. The Jacobi method specifies a whole stationary iterative method for a linear system; a Jacobi preconditioner supplies an auxiliary solve to another iterative method, including the Preconditioned conjugate gradient method.
Linear solver Created 2026-10-25 Updated 2026-11-05
A linear solver is an algorithm that computes a solution or controlled approximation to a linear system . For an invertible matrix, the mathematical solution is unique. A direct linear solver usually computes a matrix factorization, such as Pivoted LU decomposition, followed by triangular solves. An iterative method instead updates an approximate vector, often using matrix-vector products and a matrix preconditioner.
A stopping rule should reflect the required accuracy. The linear-system residual can be scaled aswhen the denominator is positive, using compatible vector norms and an induced matrix norm. This compares equation error with the input scale; a condition number is still needed to interpret it as a forward error guarantee. In a differential equation computation, the linear solver tolerance must be small enough relative to the intended discretization accuracy. A stable time step alone does not control errors left by an inaccurate inner solve.
Numerical linear algebra Created 2026-09-24 Updated 2026-11-05
Numerical linear algebra develops algorithms for linear systems, least squares, eigenvalue problems and other matrix computations, with attention to roundoff error, cost and storage. A mathematically equivalent formula can behave very differently in floating-point arithmetic: solving through an LU decomposition avoids forming an explicit matrix inverse, while a QR decomposition gives an orthogonal route to least squares.
The central distinction is between accuracy of the computed answer and accuracy of the problem it solves. For , an approximate vector has linear-system residual . A small linear-system residual need not imply a small forward error when the condition number is large. For the exact examplethe solution is , whereas has Euclidean norm residual but Euclidean norm error . Here the condition number in the spectral norm is . The lost component barely changes the equations because its coefficient is tiny.
Direct linear solvers such as Gaussian elimination factor a matrix; iterative methods such as conjugate gradient successively improve a vector. For a large sparse matrix, fill-in and matrix preconditioning can matter as much as arithmetic count. The task is to preserve the structure that makes a computation accurate and affordable.
Optimization epoch 2026-10-25
A unit of work corresponding to one full pass through the components used to measure an iterative method. For coordinate descent in coordinates, count coordinate partial derivative evaluations as an optimization epoch: updates on blocks of size require updates per optimization epoch. For stochastic gradient descent on a finite sum of losses, a common different convention counts one evaluation of every loss component. The convention must be specified. Random sampling with replacement need not visit every component during one such unit of work.
Target: gradient-descent.bigb, under Gradient descent.