jolars / slopecd

4 stars 2 forks source link

feat: add ADMM solver #32

Closed jolars closed 2 years ago

jolars commented 2 years ago

This PR adds support for an ADMM solver for SLOPE. The implementation for sparse designs is currently performing badly. Also, fitting intercepts is done very crudely by adding a column of ones to X, which is fine for dense X but not really for sparse X.

I'm using the variable step size rule from Boyd's paper, but it is often not optimal.

Adaptive step size:

image

rho = 100

image

I'm sure there are other ways to handle step sizes better. Maybe someone else knows: @Klopfe, @mathurinm ?

Some other simulations:

image