The goal of this page is to create a standardized dataset for testing new methods. Problems should be high dimensional (100-10000 parameters) and reflective of important applications.

Here, I will include an optimized (to the best of my ability) implementation of basic functions common to many methods (gradients, stochastic gradients, prox operators, projections, ...) and you can use them to build into more complex methods.

That way, when we compare methods, we are comparing the method, not the implementation of basic calls. Additionally, by standardizing the dataset (however naively), we can hopefully avoid cherry picking and other ambiguities in results.

Community support: The hope is that this database can grow and improve with community support. If you have nice problems in your application that you would like tested on "new" fast methods, please submit them with:

  • a problem description, and how it fits into your application

  • a function call to evaluate the objective value (can be noisy if needed)

  • a function call to evaluate the objective function's gradient or other elementary functions (e.g. Hessian, prox operator)

  • if a constraint is involved, a function call to evaluate either the projection on the constraint set or a linear maximization oracle (G(z,D) = argmin{<z,s> : s in D})

Feedback is appreciated as to how to make this page more useful for optimization research.