Code covered by the BSD License  

Highlights from
Greedy Algorithms promoting Group Sparsity V3

from Greedy Algorithms promoting Group Sparsity V3 by Angshul Majumdar
Approximate Greedy Solutions to the problem min||x(k)||_2,0 such that Ax = b

demo.m
% DEMO

% Copyright (c) Angshul Majumdar 2009

[A, y, group, x0] = GenGroupSparseProblem(100, 150, 25, 3);
[sGOMP, residual] = GOMP(A, y, group, 3);
stem(x0), hold on, stem(sGOMP,'r+')
close
[sBOMP, residual] = BOMP(A, y, group, 3);
stem(x0), hold on, stem(sBOMP,'r+')
close
[sStGOMP, residual] = StGOMP(A, y, group, 5);
stem(x0), hold on, stem(sStGOMP,'r+')
close
[sReGOMP, residual] = ReGOMP(A, y, group, 3);
stem(x0), hold on, stem(sReGOMP,'r+')
close
[sGMP, residual] = GMP(A, y, group);
stem(x0), hold on, stem(sGMP,'r+')
close
[sBMP, residual] = BMP(A, y, group);
stem(x0), hold on, stem(sBMP,'r+')
close
[sBGP, err_mse, iter_time] = block_gp(y,A,group);
stem(x0), hold on, stem(sBGP,'r+')
close
[sGGP, err_mse, iter_time] = group_gp(y,A,group);
stem(x0), hold on, stem(sGGP,'r+')
close
[sBNOMP, err_mse, iter_time] = block_nomp(y,A,group);
stem(x0), hold on, stem(sBNOMP,'r+')
close
[sGNOMP, err_mse, iter_time] = group_nomp(y,A,group);
stem(x0), hold on, stem(sGNOMP,'r+')
close
[sBPCGP, err_mse, iter_time] = block_pcgp(y,A,group);
stem(x0), hold on, stem(sBPCGP,'r+')
close
[sPCGP, err_mse, iter_time] = group_pcgp(y,A,group);
stem(x0), hold on, stem(sPCGP,'r+')
close
[sBOLS, residual] = BOLS(A, y, group);
stem(x0), hold on, stem(sBOLS,'r+')
close
[sGOLS, residual] = GOLS(A, y, group);
stem(x0), hold on, stem(sGOLS,'r+')
close

Contact us at files@mathworks.com