# YALL1-Group: A solver for group/joint sparse reconstruction

(Difference between revisions)
 Revision as of 15:44, 12 June 2011 (edit) (→Input Arguments)← Previous diff Revision as of 15:49, 12 June 2011 (edit) (undo) (→Input Arguments)Next diff → Line 23: Line 23: :[x,Out] = YALL1_group(A,b,groups,'param1',value1,'param2',value2,...); :[x,Out] = YALL1_group(A,b,groups,'param1',value1,'param2',value2,...); - == Input Arguments == + == Required Input Arguments == *'''A''': an m-by-n matrix with m < n, or a structure with the following fields: *'''A''': an m-by-n matrix with m < n, or a structure with the following fields: Line 37: Line 37: *'''groups''': an n-vector containing the group number of the corresponding component of $x$ for the group-sparse model, or [] for the joint-sparse model. *'''groups''': an n-vector containing the group number of the corresponding component of $x$ for the group-sparse model, or [] for the joint-sparse model. + + == Required Input Arguments == + + ''''StopTolerance'''': stopping tolerance value.

## Revision as of 15:49, 12 June 2011

YALL1-Group is a MATLAB software package for group/joint sparse reconstruction, written by Wei Deng, Wotao Yin and Yin Zhang at Rice University.

## Model

(1) Group-sparse basis pursuit model:

                  Minimize     $LaTeX: \|x\|_{w,2,1}:=\sum_{i=1}^s w_i\|x_{g_i}\|_2,$

subject to   $LaTeX: Ax=b,$


where $LaTeX: A\in \mathbb{R}^{m\times n}\,(m, $LaTeX: b\in \mathbb{R}^m$, $LaTeX: g_i$ denotes the index set of the $LaTeX: i$-th group, and $LaTeX: w_i\geq0$ is the weight for the $LaTeX: i$-th group.

(2) Jointly-sparse basis pursuit model:

                  Minimize     $LaTeX: \|X\|_{w,2,1}:=\sum_{i=1}^n w_i\|x^i\|_2,$
subject to   $LaTeX: AX=B,$


where $LaTeX: A\in \mathbb{R}^{m\times n}\,(m, $LaTeX: x^i$ denotes the $LaTeX: i$-th row of matrix $LaTeX: X$, and $LaTeX: w_i\geq0$ is the weight for the $LaTeX: i$-th row.

## Syntax

[x,Out] = YALL1_group(A,b,groups,'param1',value1,'param2',value2,...);

## Required Input Arguments

• A: an m-by-n matrix with m < n, or a structure with the following fields:
1) A.times(required): a function handle for $LaTeX: A*x$;
2) A.trans(required): a function handle for $LaTeX: A^T*x$;
3) A.invIpAAt: a function handle for $LaTeX: (\beta_1I_m+\beta_2AA^T)^{-1}*x$;
4) A.invAAt: a function handle for $LaTeX: (AA^T)^{-1}*x$.

Note: A.invIpAAt is only required when (a) primal solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.

     A.invAAt is only required when (a) dual solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.

• b: an m-vector for the group-sparse model or an m-by-l matrix for the joint-sparse model.
• groups: an n-vector containing the group number of the corresponding component of $LaTeX: x$ for the group-sparse model, or [] for the joint-sparse model.

## Required Input Arguments

'StopTolerance': stopping tolerance value.