RLR - Regularized Linear Regression

Usage

sol = rlr(x_0,f,A,At, param)
sol = rlr(x_0,f,A,At)
[sol, info] = rlr(..,)

Input parameters

x_0 Starting point of the algorithm
f Function to minimize
A Operator
At Adjoint operator
param Optional parameter

Output parameters

sol Solution
info Structure summarizing informations at convergence

Description

This function solve minimization problem using forward-backward splitting

sol = rlr(x_0,f,A,At, param) solves:

\begin{equation*} sol = arg \min_x \|x_0-Ax\|_2^2 + f(x) \hspace{1cm} for \hspace{1cm} x\in R^N \end{equation*}

where x is the variable.

  • x_0 is the starting point.

  • f is a structure representing a convex function. Inside the structure, there have to be the prox of the function that can be called by f.prox and the function itself that can be called by f.eval.

  • A is the operator

  • At is the adjoint operator of A

  • param a Matlab structure containing solver paremeters. See the function solvep for more information. Additionally it contains those aditional fields:

    • param.nu : bound on the norm of the operator A (default: 1), i.e.
    \begin{equation*} \|A x\|^2 \leq \nu \|x\|^2 \end{equation*}
    • param.method : is the method used to solve the problem. It can be 'FISTA' or 'ISTA'. By default, it's 'FISTA'.

References:

P. Combettes and J. Pesquet. A douglas--rachford splitting approach to nonsmooth convex variational signal recovery. Selected Topics in Signal Processing, IEEE Journal of, 1(4):564--574, 2007.