Damped Least Squares
Definition
Damped least squares (DLS), a.k.a. the Levenberg–Marquardt or singularity-robust inverse, replaces the exact Jacobian inverse with the solution of a Tikhonov-regularized least-squares problem, trading exact task-velocity reconstruction for bounded joint velocities near a singularity. For a map with SVD singular values , the damped inverse weights each direction by instead of , so the gain stays finite (peaking at ) as . In this project DLS appears twice in the singularity stack: as Tikhonov regularization of the coordinate transform (damping , notation.md) and as the damped circumcentroidal-Jacobian inverse (damping ), with the damping switched on variably (Chiaverini) only inside a singular region.
Key Equations
Tikhonov regularization of (Layer 1). The generalized velocity is recovered from the regularized normal equations, with a constant isotropic floor and variable damping that switches on once :
\dot{\boldsymbol{q}}=\big(\boldsymbol{\Gamma}^\top\boldsymbol{\Gamma}+\lambda_\Gamma\boldsymbol{I}\big)^{-1}\boldsymbol{\Gamma}^\top\boldsymbol{y}, \qquad \lambda_\Gamma=\max\!\big(\beta^2,\ \sigma_{\mathrm{crit},1}^2-\sigma_G^2\big). \tag{current_sota eq 6.3}The damping here is squared: it is added to , whose eigenvalues are the squared singular values, so acts in -units against .
Damped circumcentroidal-Jacobian inverse (Layer 3, middle tier). With the SVD , the damped pseudoinverse used in the singular band is
(\boldsymbol{J}^\oplus)^+=\boldsymbol{V}\operatorname{diag}\!\Big(\frac{s_i}{s_i^2+\lambda_J^2}\Big)\boldsymbol{U}^\top. \tag{current_sota eq 6.5}Each per-direction gain peaks at exactly when — this peak fixes the third threshold in the singularity threshold cascade, below which damping would actively drive the dying direction toward zero and freezing (hold-last) is the honest move.
Fixed-base ancestor (Chiaverini). Both project forms specialize Chiaverini’s singularity-robust inverse and its variable damping, for a fixed-base end-effector Jacobian with minimum singular value and activation threshold :
Confining to the region keeps the inverse as accurate as the pseudoinverse away from singularities while staying continuous and well-conditioned through the transition; multiple simultaneous singularities add an isotropic floor (Chiaverini eq 20) — the same role plays in eq 6.3 above.
Regime
Chiaverini (fixed-base, redundant arm) and Ott (fixed-base rigid manipulator) are neither free-flying nor free-floating. The transferable content is the SVD/variable-damping machinery; this project applies it to the free-flying circumcentroidal transform and its block .
Source Support
- chiaverini1997singularity — origin of the DLS inverse , the damped-gain form, variable damping in a singular region, and the isotropic floor . Fixed-base, redundant; neither flying nor floating.
- ott2008cartesian — operational-space inertia and the manipulability-potential singularity treatment; the damped/regularized inverse is the kinematic counterpart of its impedance-distortion-near-singularity analysis. Fixed-base rigid manipulator.
- holt1992inertial — (carried from the original stub) inertial-frame singularity-robust inverse usage.
- Code provenance (ours). The project implements this as
gamma_regularization(g_reg) — the source never says “Tikhonov”; the shape is what identifies it (a structural, not lexical, join —ast-grepmatches it,grep tikhonovdoes not).sims_gnc/breve_controller.py:484–490is eq 6.3 verbatim: onset =g_reg.floor(the role; in the rejectedmission_tikhonov_020_jun19A/B), constant floor =g_reg.damping(). Source-verified 2026-06-23.
Related Topics
- singularity_robust_inverse — DLS is the canonical realization of the singularity-robust (Levenberg–Marquardt) inverse.
- singularity_threshold_cascade — schedules where DLS damping switches on () and where it yields to hold-last ().
- pseudoinverse_jacobian — DLS reduces to the Moore–Penrose pseudoinverse as (the undamped tier).
- kinematic_singularity — the rank-loss condition DLS is built to ride through.
- circumcentroidal_motion — supplies and , the objects this project damps.
Open Questions
- The activation threshold (Chiaverini) and the project floors are tuned, not derived from a tracking-accuracy bound; what is the optimal that minimizes reconstruction error for a given singularity proximity?
- Damping the squared transform () vs. damping the Jacobian SVD directly () are reconciled only empirically via the Spearman link between and ; an analytic equivalence is open.
- Subsystem reach (
[base, ee]). This regularization damps the coupled circumcentroidal block (, ), not the decoupled CoM loop. Whether near-singular spikes in the CoM channel are this block’s forward-Euler artifact (cured in code by implicit base-damping integration) or a separate CoM-loop effect is unresolved — decide via the -independent lag-1 autocorrelation test on the logged (subsystem_decomposition, evidence_map).