Sorted L1 solver

Share:

Description

Solves the sorted L1 penalized regression problem: given a matrix A, a vector b, and a decreasing vector λ, find the vector x minimizing

\frac{1}{2}\Vert Ax - b \Vert_2^2 + ∑_{i=1}^p λ_i |x|_{(i)}.

Usage

1
2
3
SLOPE_solver(A, b, lambda, initial = NULL, prox = prox_sorted_L1,
  max_iter = 10000, grad_iter = 20, opt_iter = 1, tol_infeas = 1e-06,
  tol_rel_gap = 1e-06)

Arguments

A

an n-by-p matrix

b

vector of length n

lambda

vector of length p, sorted in decreasing order

initial

initial guess for x

prox

function that computes the sorted L1 prox

max_iter

maximum number of iterations in the gradient descent

grad_iter

number of iterations between gradient updates

opt_iter

number of iterations between checks for optimality

tol_infeas

tolerance for infeasibility

tol_rel_gap

tolerance for relative gap between primal and dual problems

Details

This optimization problem is convex and is solved using an accelerated proximal gradient descent method.

Value

An object of class SLOPE_solver.result. This object is a list containing at least the following components:

x

solution vector x

optimal

logical: whether the solution is optimal

iter

number of iterations