SkillAgentSearch skills...

PANOC.jl

Newton-type accelerated proximal gradient method in Julia

Install / Use

/learn @kul-optec/PANOC.jl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

PANOC.jl

Build Status Coverage Status codecov

PANOC is a Newton-type accelerated proximal gradient method for nonsmooth optimization: this repository contains its generic implementation in Julia.

Deprecated: an up-to-date implementation of the same algorithm is available as part of ProximalAlgorithms.jl.

Installation

From the Julia REPL, hit ] to enter the package manager, then

pkg> add https://github.com/kul-forbes/PANOC.jl

Quick guide

PANOC solves optimization problems of the form

minimize f(Ax) + g(x)

where x is the decision variable, while

The above problem is solved calling the panoc function:

julia> using PANOC
julia> x_opt, it = panoc(f, A, g, x0)

where x0 is the starting point of the iterations. This returns the optimal point found, and the number of iterations it took to find it. The full list of options is described in the docstring, accessible with

julia> ?panoc

Citing

If you use this package for your publications, please consider including the following BibTeX entries in the references

@inproceedings{stella2017simple,
  author    = {Stella, Lorenzo and Themelis, Andreas and Sopasakis, Pantelis and Patrinos, Panagiotis},
  title     = {A simple and efficient algorithm for nonlinear model predictive control},
  booktitle = {56th IEEE Conference on Decision and Control (CDC)},
  year      = {2017},
  pages     = {1939-1944},
  doi       = {10.1109/CDC.2017.8263933},
  url       = {https://doi.org/10.1109/CDC.2017.8263933}
}
@misc{stella2018panoc,
  author        = {Stella, Lorenzo},
  title         = {{PANOC}.jl: {N}ewton-type accelerated proximal gradient method in Julia},
  howpublished  = {\url{https://github.com/kul-forbes/PANOC.jl}},
  year          = {2018}
}

References

Stella, Themelis, Sopasakis, Patrinos, A simple and efficient algorithm for nonlinear model predictive control, 56th IEEE Conference on Decision and Control (2017).

Related Skills

View on GitHub
GitHub Stars12
CategoryDevelopment
Updated1y ago
Forks2

Languages

Julia

Security Score

65/100

Audited on Apr 6, 2025

No findings