prox_dca¶
- odl.solvers.nonsmooth.difference_convex.prox_dca(x, f, g, niter, gamma, callback=None)[source]¶
Proximal DCA of Sun, Sampaio and Candido.
This algorithm solves a problem of the form
min_x f(x) - g(x)
where
fandgare two proper, convex and lower semicontinuous functions.- Parameters:
- x
LinearSpaceElement Initial point, updated in-place.
- f
Functional Convex functional. Needs to implement
f.proximal.- g
Functional Convex functional. Needs to implement
g.gradient.- niterint
Number of iterations.
- gammapositive float
Stepsize in the primal updates.
- callbackcallable, optional
Function called with the current iterate after each iteration.
- x
See also
dcaSolver with subgradinet steps for all the functionals.
doubleprox_dcSolver with proximal steps for all the nonsmooth convex functionals and a gradient step for a smooth functional.
Notes
The algorithm was proposed as Algorithm 2.3 in [SSC2003]. It solves the problem

by using subgradients of
and proximal points of
.
The iteration is given by
In contrast to
dca,prox_dcauses proximal steps with respect to the convex partf. Both algorithms use subgradients of the concave partg.References
[SSC2003] Sun, W, Sampaio R J B, and Candido M A B. Proximal point algorithm for minimization of DC function. Journal of Computational Mathematics, 21.4 (2003), pp 451--462.