[petsc-users] L1 or projection type regularization with PETSc

Lingyun Qiu qiu.lingyun at gmail.com
Thu Apr 7 14:59:35 CDT 2016


On Thu, Apr 7, 2016 at 2:24 PM, Jed Brown <jed at jedbrown.org> wrote:

> Lingyun Qiu <qiu.lingyun at gmail.com> writes:
>
> > Dear all,
> >
> > I am working an optimization problem as
> > min_x  ||Ax - b||_2^2 + alpha ||x||_1
> >
> > For the fidelity term, we use L2 norm.  We use L1 norm for the
> > regularization term. Without regularization term, i.e., alpha=0, we
> > iteratively solve the problem as
> > x_k+1 = KSP(x_k).
>
> I.e., a single KSPSolve because the optimization problem is quadratic?

Yes. A single KSPSolve because of the quadratic form. k stands for the
iteration index inside KSPSolve.

>
> > I plan to use the split Bregman method to solve the regularized problem.
> It
> > reads as,
> > y_k+1 = KSP(x_k)
> > x_k+1 = B(y_k+1)
> > Here B() is the function related to the Bregman method. It works as a
> > post-processing of the iterates.
>
> But outside the KSPSolve, not at each iteration of the KSPSolve...
>
I need to modify the iterate after each iteration inside the KSPSolve. Yes,
B is a nonlinear operation.

>
> B is a nonlinear operation, so you can't put it inside KSP.  You could
> put it inside SNES (perhaps with nonlinear preconditioning, NGMRES or
> QN), but I don't think that's what you're asking for here.
>
I will check these functions. Thanks for the quick reply.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160407/ce661020/attachment-0001.html>


More information about the petsc-users mailing list