xflash96 / epsilon

A general convex solver based on functions with efficient proximal operators.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Epsilon Circle CI

Epsilon is a system for general convex programming using fast linear and proximal operators.

As with existing convex programming frameworks (e.g. CVX, CVXPY, Convex.jl, etc.), users specify convex optimization problems using a natural grammar for mathematical expressions, composing functions in a way that is guaranteed to be convex by the rules of disciplined convex programming. Given such an input, the Epsilon compiler transforms the optimization problem into a mathematically equivalent form consisting only of functions with efficient proximal operators---an intermediate representation we refer to as prox-affine form. By reducing problems to this form, Epsilon enables solving general convex problems using a large library of fast proximal and linear operators and is often faster than existing approaches by an order of magnitude or more.

For more information, refer to the Epsilon documentation.

About

A general convex solver based on functions with efficient proximal operators.


Languages

Language:Jupyter Notebook 47.8%Language:C++ 27.4%Language:Python 22.8%Language:Protocol Buffer 1.3%Language:Makefile 0.7%Language:C 0.1%