Convergence Speed of a Dynamical System for Sparse Recovery - implementation -

This paper studies the convergence rate of a continuous-time dynamical system for `1-minimization, known as the Locally Competitive Algorithm (LCA). Solving `1-minimization problems efﬁciently and rapidly is of great interest to the signal processing community, as these programs have been shown to recover sparse solutions to underdetermined systems of linear equations and come with strong performance guarantees. The LCA under study differs from the typical `1 solver in that it operates in continuous time: instead of being speciﬁed by discrete iterations, it evolves according to a system of nonlinear ordinary differential equations. The LCA is constructed from simple components, giving it the potential to be implemented as a large-scale analog circuit. The goal of this paper is to give guarantees on the convergence time of the LCA system. To do so, we analyze how the LCA evolves as it is recovering a sparse signal from underdetermined measurements. We show that under appropriate conditions on the measurement matrix and the problem parameters, the path the LCA follows can be described as a sequence of linear differential equations, each with a small number of active variables. This allows us to relate the convergence time of the system to the restricted isometry constant of the matrix. Interesting parallels to sparse-recovery digital solvers emerge from this study. Our analysis covers both the noisy and noiseless settings and is supported by simulation results.

The Matlab code that I wrote to generate the figures in the paper "Convergence Speed of a Dynamical System for Sparse Recovery," currently under preparation, is made available for people to reproduce the experiments.

The .zip file containing all the necessary Matlab functions can be downloaded here. The file containing the code that generated the figures is titled LCA_CS_experiments.m