sparse.relaxation.basis_pursuit.basis_pursuit_admm

sparse.relaxation.basis_pursuit.basis_pursuit_admm(A, b, lambd, tol=0.0001, max_iters=100, cholesky=False)[source]

Basis Pursuit solver for the \(Q_1^\epsilon\) problem

\[\min_x \frac{1}{2} \left|\left| \boldsymbol{A}\vec{x} - \vec{b} \right|\right|_2^2 + \lambda \|x\|_1\]

via the alternating direction method of multipliers (ADMM).

Parameters
A(N, M) np.ndarray

The input weight matrix \(\boldsymbol{A}\).

b(N,) np.ndarray

The right side of the equation \(\boldsymbol{A}\vec{x} = \vec{b}\).

lambdfloat

The soft-shrinkage threshold \(\lambda\), controls the sparsity of \(\vec{x}\).

tolfloat

The accuracy tolerance of ADMM.

max_itersint

Run for at most max_iters iterations.

choleskybool

Whether to use the Cholesky factorization (slow, but stable) or the inverse (fast, but might be unstable) of a matrix.

Returns
v(M,) np.ndarray

The solution vector \(\vec{x}\).