TL;DR
tvopt is a Python framework designed for prototyping and benchmarking algorithms for time-varying optimization, supporting centralized and distributed problems with various algorithms and prediction strategies.
Contribution
The paper presents tvopt, a comprehensive Python framework that simplifies development and benchmarking of time-varying optimization algorithms, including new functionalities for prediction and distributed problems.
Findings
Demonstrated effectiveness on benchmark problems
Supported multiple algorithms including gradient and ADMM
Enabled improved online solution accuracy with prediction strategies
Abstract
This paper introduces tvopt, a Python framework for prototyping and benchmarking time-varying (or online) optimization algorithms. The paper first describes the theoretical approach that informed the development of tvopt. Then it discusses the different components of the framework and their use for modeling and solving time-varying optimization problems. In particular, tvopt provides functionalities for defining both centralized and distributed online problems, and a collection of built-in algorithms to solve them, for example gradient-based methods, ADMM and other splitting methods. Moreover, the framework implements prediction strategies to improve the accuracy of the online solvers. The paper then proposes some numerical results on a benchmark problem and discusses their implementation using tvopt. The code for tvopt is available at https://github.com/nicola-bastianello/tvopt.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
MethodsAlternating Direction Method of Multipliers
