JuliaCon 2026

Automated Algorithm Analysis in Julia with AlgorithmAnalysis.jl
2026-08-13 , Room 1

This talk introduces AlgorithmAnalysis.jl, a Julia package that automates the worst-case analysis of black-box algorithms. Analyzing the performance of an algorithm by hand is both tedious and error prone. This package enables users to express algorithms in a natural way using a high-level domain-specific language. This symbolic description is then transformed behind the scenes into a semidefinite program that is solved numerically to construct tight numerical bounds on the worst-case performance. The package implements the performance estimation problem (PEP) and control theoretic frameworks, both of which have been used to analyze a wide variety of first-order methods in optimization.


Algorithms are numerical recipes to solve problems. In some applications, such as large-scale or safety-critical scenarios, it is imperative that algorithms have both rigorous convergence guarantees and strong performance on practical problems of interest.

The conventional approach to analyzing algorithm performance relies on deep insights by experts in the field along with tedious and error-prone calculations. Recent work from both the optimization and controls communities, however, has established a systematic methodology to analyze the worst-case performance of an algorithm over a broad class of problems. The systematic analysis methodology has been applied to various types of algorithms, from first-order accelerated methods to stochastic algorithms and operator splitting methods. Beyond analysis, the systematic methodology has also been used to design novel algorithms.

This talk introduces AlgorithmAnalysis.jl, a Julia package that implements the automated approach to algorithm analysis. The talk will cover the basic use cases and structure of the package, including:

  • Modeling black-box algorithms using a high-level domain-specific language.

  • An overview of the analysis frameworks implemented:

  • The performance estimation problem (PEP) finds the worst-case performance of a black-box algorithm over a given finite number of iterations.
  • The control methodology interprets the algorithm as a dynamical system and searches for a Lyapunov function whose existence certifies convergence with a particular rate.
  • Results of the analysis applied to various first-order methods in optimization.

Assistant Professor in the Department of Electrical and Computer Engineering at Miami University

Lead developer of AlgorithmAnalysis.jl, a Julia package for the automated analysis of algorithms