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.
翻译:本文介绍原型和基准时间(或在线)分配优化算法的Python框架,介绍原型和基准时间变换(或在线)优化算法;首先介绍为开发原型提供参考的理论方法;然后讨论框架的不同组成部分及其用于建模和解决时间变换优化问题;特别是,原型提供界定集中和分布在线问题的功能,并收集解决这些问题的内在算法,例如基于梯度的方法、ADMM和其他分解方法;此外,该框架还实施预测战略,以提高在线解答者的准确性;然后就基准问题提出一些数字结果,并用tvopt讨论其实施情况;tvopt的代码见https://github.com/nikola-bastianello/tvopt。