spgl1-1.8
所属分类:数值算法/人工智能
开发工具:matlab
文件大小:60KB
下载次数:92
上传日期:2013-10-29 10:46:03
上 传 者:
sjwlovekaka
说明: 该算法可以有效解决BPDN,BP以及Lasso问题
( SPGL1 is a Matlab solver
for large-scale one-norm regularized least squares. It is designed to
solve any of the following three problems:
1. Basis pursuit denoise (BPDN):
minimize ||x||_1 subject to ||Ax- b||_2 <= sigma,
2. Basis pursuit (BP):
minimize ||x||_1 subject to Ax = b
3. Lasso:
minimize ||Ax- b||_2 subject to ||x||_1 <= tau,)
文件列表:
spgl1-1.8\ChangeLog (4119, 2013-03-25)
spgl1-1.8\Contents.m (697, 2013-03-25)
spgl1-1.8\COPYING (26436, 2013-03-25)
spgl1-1.8\NormGroupL2_dual.m (184, 2013-03-25)
spgl1-1.8\NormGroupL2_primal.m (176, 2013-03-25)
spgl1-1.8\NormGroupL2_project.m (375, 2013-03-25)
spgl1-1.8\NormL12_dual.m (221, 2013-03-25)
spgl1-1.8\NormL12_primal.m (209, 2013-03-25)
spgl1-1.8\NormL12_project.m (463, 2013-03-25)
spgl1-1.8\NormL1NN_dual.m (120, 2013-03-25)
spgl1-1.8\NormL1NN_primal.m (127, 2013-03-25)
spgl1-1.8\NormL1NN_project.m (217, 2013-03-25)
spgl1-1.8\NormL1_dual.m (63, 2013-03-25)
spgl1-1.8\NormL1_primal.m (63, 2013-03-25)
spgl1-1.8\NormL1_project.m (227, 2013-03-25)
spgl1-1.8\private\ensure.m (1561, 2013-03-25)
spgl1-1.8\private\heap.c (6398, 2013-03-25)
spgl1-1.8\private\heap.h (3660, 2013-03-25)
spgl1-1.8\private\lsqr.m (11849, 2013-03-25)
spgl1-1.8\private\oneProjector.m (2838, 2013-03-25)
spgl1-1.8\private\oneProjectorCore.c (5704, 2013-03-25)
spgl1-1.8\private\oneProjectorCore.h (1485, 2013-03-25)
spgl1-1.8\private\oneProjectorMex.c (4423, 2013-03-25)
spgl1-1.8\private\oneProjectorMex.m (3797, 2013-03-25)
spgl1-1.8\private\oneProjectorMex.mexglx (10390, 2013-03-25)
spgl1-1.8\private\oneProjectorMex.mexmaci (17664, 2013-03-25)
spgl1-1.8\private\oneProjectorMex.mexw32 (20480, 2013-10-28)
spgl1-1.8\spgdemo.m (16195, 2013-03-25)
spgl1-1.8\spgl1.m (31061, 2013-03-25)
spgl1-1.8\spgSetParms.m (4817, 2013-03-25)
spgl1-1.8\spgsetup.m (1608, 2013-03-25)
spgl1-1.8\spg_bp.m (1594, 2013-03-25)
spgl1-1.8\spg_bpdn.m (1809, 2013-03-25)
spgl1-1.8\spg_group.m (2625, 2013-03-25)
spgl1-1.8\spg_lasso.m (1626, 2013-03-25)
spgl1-1.8\spg_mmv.m (2853, 2013-03-25)
spgl1-1.8\private (0, 2013-10-28)
spgl1-1.8 (0, 2013-10-29)
SPGL1: Spectral Projected Gradient for L1 minimization
------------------------------------------------------
1. Introduction
===============
Thank you for downloading the SPGL1 solver! SPGL1 is a Matlab solver
for large-scale one-norm regularized least squares. It is designed to
solve any of the following three problems:
1. Basis pursuit denoise (BPDN):
minimize ||x||_1 subject to ||Ax - b||_2 <= sigma,
2. Basis pursuit (BP):
minimize ||x||_1 subject to Ax = b
3. Lasso:
minimize ||Ax - b||_2 subject to ||x||_1 <= tau,
The matrix A can be defined explicily, or as an operator (i.e., a
function) that return both both Ax and A'y. SPGL1 can solve these
three problems in both the real and complex domains.
Home page: http://www.cs.ubc.ca/labs/scl/spgl1/
2. Quick start
==============
Start Matlab and make sure the working directory is set to the
directory containing the SPGL1 source files. When this is done, run
>> spgdemo
at the Matlab prompt. This script illustrates various uses of SPGL1:
- Solve (BPDN) for some sigma > 0
- Solve (Lasso)
- Solve (BP)
- Solve a (BP) problem in complex variables
- Sample the entire Pareto frontier (i.e., ||Ax-b||_2 vs ||x||_1)
for a small test problem.
3. Installation
===============
3.1 MEX interface
------------------
A vital component of SPGL1 is a routine (oneProjector.m) for
projecting vectors onto the one-norm ball. The default distribution
includes a pure Matlab version of oneProjector which should work on
all platforms, and also a C-version of this routine that is more
efficient on large problems. Precompiled MEX interfaces to the C
implementation of oneProjector are included for Windows
(oneProjector.dll), Linux/x86 (oneProjector.mexglx) and MacOSX/Intel
(oneProjector.mexmaci). If you need to compile the MEX interface on
your own machine, run the following command at the Matlab prompt:
>> spgsetup
or, equivalently, change to the "private" directory and issue the
command
>> mex oneProjector.c oneProjector_core.c -output oneProjector -DNDEBUG
If the MEX interface cannot be found, SPGL1 falls back to the slower
Matlab implementation of oneProjector.
3.2 Path
---------
In order to use SPGL1 from any directory other than the one
containing the main spgl1 routine, add the SPGL1 package to your
default path:
>> addpath
where is the location of spgl1.m. You can also add this
command to your startup.m file.
4. References
=============
The algorithm implemented by SPGL1 is described in the paper
- E. van den Berg and M. P. Friedlander, "Probing the Pareto frontier
for basis pursuit solutions", SIAM J. on Scientific Computing,
31(2):890-912, November 2008
- Sparse optimization with least-squares constraints E. van den Berg
and M. P. Friedlander, Tech. Rep. TR-2010-02, Dept of Computer
Science, Univ of British Columbia, January 2010
近期下载者:
相关文件:
收藏者: