Recursive Least Squares (RLS) is an adaptive filtering algorithm that recursively finds the coefficient vector minimizing a weighted linear least squares cost function. Unlike gradient-descent methods such as Least Mean Squares (LMS), RLS achieves an order-of-magnitude faster convergence rate by explicitly computing and updating the inverse of the deterministic autocorrelation matrix of the input signal at each iteration.
Glossary
Recursive Least Squares (RLS)

What is Recursive Least Squares (RLS)?
An adaptive algorithm that recursively updates the inverse of the input correlation matrix to achieve faster convergence than gradient-based methods at the cost of higher computational complexity.
The core mechanism relies on the matrix inversion lemma (Woodbury identity) to update the inverse correlation matrix P(n) recursively, avoiding costly full matrix inversions. A forgetting factor λ exponentially weights past data, enabling tracking of time-varying systems. This O(N²) computational complexity per iteration makes RLS ideal for applications like digital predistortion coefficient estimation where rapid adaptation to power amplifier nonlinearity changes is critical.
RLS vs. LMS: Key Differences
A technical comparison of Recursive Least Squares (RLS) and Least Mean Squares (LMS) for adaptive coefficient estimation in digital predistortion systems.
| Feature | Recursive Least Squares (RLS) | Least Mean Squares (LMS) | Normalized LMS (NLMS) |
|---|---|---|---|
Convergence Rate | Fast (typically < 10x input dimension) | Slow (signal-dependent) | Moderate (improved over LMS) |
Computational Complexity per Iteration | O(N²) to O(N³) | O(N) | O(N) |
Memory Requirement | O(N²) for correlation matrix | O(N) for weight vector | O(N) for weight vector |
Sensitivity to Eigenvalue Spread | Insensitive (whitens input) | Highly sensitive | Reduced sensitivity |
Steady-State Misadjustment | Lower | Higher | Moderate |
Tracking of Time-Varying Systems | Excellent with forgetting factor | Limited by fixed step size | Improved with adaptive step size |
Numerical Stability | Can be poor (fixed-point) | Excellent | Excellent |
Typical Use Case | Fast-changing PA characteristics, wideband signals | Resource-constrained embedded systems | Systems with fluctuating input power |
Key Characteristics of RLS
Recursive Least Squares (RLS) is defined by its unique approach to adaptive filtering, trading computational complexity for superior convergence speed. The following cards break down its core operational characteristics.
Exponential Forgetting Mechanism
RLS employs a forgetting factor (λ, typically 0.95 < λ < 1) that applies exponential weighting to historical data. This mechanism ensures the algorithm can track time-varying systems by progressively discarding stale observations.
- Recent samples dominate the cost function
- Older data decays geometrically in influence
- Enables tracking of thermal memory effects in power amplifiers
- A λ of 1.0 disables forgetting for stationary systems
Correlation Matrix Inversion
The core computational engine of RLS is the recursive update of the inverse autocorrelation matrix (P). Using the matrix inversion lemma (Woodbury identity), RLS avoids explicit matrix inversion at each step.
- Updates P(n) from P(n-1) in O(N²) operations
- Maintains full statistical information of the input signal
- Directly computes the Kalman gain vector
- Susceptible to numerical instability without proper regularization
Kalman Gain Vector
The Kalman gain vector (k) determines how prediction errors are distributed across filter coefficients. It represents the optimal weighting of new information based on the current uncertainty in the parameter estimates.
- Computed as k(n) = P(n-1)u(n) / (λ + uᵀ(n)P(n-1)u(n))
- Large gain → high uncertainty → aggressive updates
- Small gain → high confidence → conservative updates
- Directly analogous to the Kalman filter gain
Convergence Rate Superiority
RLS converges in approximately 2N iterations where N is the filter order, compared to 10N–20N iterations for LMS-based algorithms. This quadratic convergence property makes RLS ideal for applications requiring rapid adaptation.
- Independent of input signal eigenvalue spread
- No step-size tuning required
- Achieves the theoretical Wiener solution asymptotically
- Particularly effective for highly correlated input signals
Computational Complexity Trade-off
Standard RLS requires O(N²) operations per iteration due to the matrix update, compared to O(N) for LMS. This quadratic complexity limits its use in resource-constrained embedded systems.
- Standard RLS: ~4N² + 4N multiplications per sample
- Fast RLS variants reduce to O(N) using lattice structures
- QR-RLS offers numerical stability at similar complexity
- FPGA implementations often use systolic array architectures
Numerical Stability Considerations
The recursive update of the inverse correlation matrix can suffer from loss of symmetry and loss of positive definiteness due to finite-precision arithmetic. This can cause catastrophic divergence in fixed-point implementations.
- Regularization parameter (δ) stabilizes initial conditions
- QR-RLS uses Givens rotations for guaranteed stability
- Square-root RLS propagates matrix square-roots
- Double-precision floating-point recommended for standard RLS
Frequently Asked Questions
Concise answers to common technical questions about the Recursive Least Squares algorithm, its implementation, and its role in adaptive digital predistortion systems.
The Recursive Least Squares (RLS) algorithm is an adaptive filter that recursively finds the coefficients minimizing a weighted linear least squares cost function relating to the input signals. Unlike gradient-descent methods like Least Mean Squares (LMS), RLS achieves extremely fast convergence by explicitly computing and updating the inverse of the input signal's autocorrelation matrix. At each time step n, the algorithm computes the Kalman gain vector, updates the coefficient vector based on the a priori estimation error, and recursively updates the inverse correlation matrix using the matrix inversion lemma (Woodbury matrix identity). This deterministic, data-domain approach makes RLS insensitive to the eigenvalue spread of the input signal, ensuring uniform convergence rates regardless of signal conditioning.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Understanding RLS requires context within the broader landscape of adaptive filtering, matrix factorization, and estimation theory. These related concepts define the performance trade-offs and implementation strategies for recursive coefficient estimation.
Least Mean Squares (LMS)
A foundational stochastic gradient descent algorithm that updates filter coefficients iteratively based on the instantaneous estimate of the mean squared error gradient.
- Computational Cost: O(N) per iteration, significantly lower than RLS
- Convergence: Slow, highly dependent on eigenvalue spread of input correlation matrix
- Trade-off: Sacrifices convergence speed for extreme computational simplicity
- Use Case: Ideal for resource-constrained embedded systems where RLS is too expensive
QR-RLS
A numerically robust implementation of the Recursive Least Squares algorithm that uses Givens rotations to directly update the square-root of the inverse correlation matrix.
- Stability: Avoids the numerical instability of standard RLS by propagating matrix square-roots
- Mechanism: Operates on the Cholesky factor rather than the full correlation matrix
- Precision: Maintains positive-definiteness even with finite-precision arithmetic
- Application: Preferred for fixed-point FPGA implementations of DPD coefficient estimation
Kalman Filter
An optimal recursive state estimator for linear dynamic systems, interpretable as a generalization of RLS for time-varying parameter estimation.
- State-Space Model: Explicitly models parameter evolution as a dynamic process
- Process Noise: The covariance matrix Q captures expected parameter drift over time
- Relationship: RLS is a special case of the Kalman filter with identity state transition and zero process noise
- Advantage: Superior tracking of time-varying PA characteristics due to thermal memory effects
Forgetting Factor
A scalar parameter λ (0 < λ ≤ 1) that exponentially weights recent data more heavily than past data, enabling RLS to track time-varying systems.
- Effective Memory: The asymptotic sample window is approximately 1/(1-λ)
- Typical Range: 0.95 to 0.999 for DPD applications
- Trade-off: Smaller λ provides faster tracking but increases steady-state misadjustment
- Critical Role: Determines the algorithm's ability to follow PA characteristic changes due to temperature, aging, and bias drift
Condition Number
The ratio of the largest to smallest singular value of the input correlation matrix, quantifying the sensitivity of the RLS solution to numerical perturbations.
- Ill-Conditioning: High condition numbers amplify round-off errors in matrix inversion
- Causes: Highly correlated input signals or insufficient spectral excitation
- Mitigation: Regularization via diagonal loading adds a small constant δ to the correlation matrix diagonal
- Impact: Directly affects the numerical stability of standard RLS implementations in fixed-point hardware
Wiener-Hopf Equation
The fundamental linear equation Rw = p that defines the optimal weight vector for a Wiener filter, where R is the autocorrelation matrix and p is the cross-correlation vector.
- Theoretical Foundation: RLS recursively solves this equation without explicit matrix inversion
- Optimal Solution: Represents the theoretical minimum mean squared error achievable
- Steady-State: RLS converges to the Wiener solution as the number of samples approaches infinity
- Benchmark: The Wiener solution serves as the reference for evaluating RLS convergence and misadjustment performance

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us