Skip to content

MPF-Optimization-Laboratory/ProximalAlgorithms.jl

 
 

Repository files navigation

ProximalAlgorithms.jl

Build status codecov.io

A Julia package for non-smooth optimization algorithms.

This package provides algorithms for the minimization of objective functions that include non-smooth terms, such as constraints or non-differentiable penalties. Implemented algorithms include:

  • (Fast) Proximal gradient methods
  • Douglas-Rachford splitting
  • Three-term splitting
  • Primal-dual splitting algorithms
  • Newton-type methods

Documentation

Development version (master branch)

Citing

If you use any of the algorithms from ProximalAlgorithms in your research, you are kindly asked to cite the relevant bibliography. Please check this section of the manual for algorithm-specific references.

Contributing

Contributions are welcome in the form of issues notification or pull requests. We recommend looking at already implemented algorithms to get inspiration on how to structure new ones.

Related packages

This package can be used in combination with ProximalOperators.jl (providing first-order primitives, i.e. gradient and proximal mapping, for numerous cost functions) and AbstractOperators.jl (providing several linear and nonlinear operators) to formulate and solve a wide spectrum of nonsmooth optimization problems. StructuredOptimization.jl provides a higher-level interface to formulate and solve problems using (some of) the algorithms here included.

About

Proximal algorithms for nonsmooth optimization in Julia

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 100.0%