A Library of Examples for CVXPY
نویسنده
چکیده
CVXPY [DCB14] is a new modeling language for convex optimization that allows users to easily express and solve convex optimization problems using the Python programming language. The package is inspired by CVX [GB14, GB08], a similar project implemented for the MATLAB programming environment. The primary goal of this project was to create a library of example programs for CVXPY. The author aims to provide a useful, aesthetically pleasing collection of examples which demonstrates features of CVXPY and methods of problem translation in the context of a wide range of applications. Also, the process of creating examples was used to test both the general functionality and usability of CVXPY in these application areas. The example programs were developed in IPython Notebook [PG07], a web-based interactive interface to Python. This interface presents the user with an interactive document, composed of formatted text and mathematical expressions (in LTEXformat), mixed with blocks of code, output text, and output plots. The CVXPY project maintainers can export customized HTML and PDF versions of the example notebooks, formatted to match the project website and documentation. The examples were sourced from the CVX project website. They were originally written in the MATLAB language using comment blocks for documentation. The efforts of this project consisted of converting the code for use with CVXPY and reformatting the code and comment blocks using the added functionality of the IPython Notebook format.
منابع مشابه
CVXPY: A Python-Embedded Modeling Language for Convex Optimization
CVXPY is a domain-specific language for convex optimization embedded in Python. It allows the user to express convex optimization problems in a natural syntax that follows the math, rather than in the restrictive standard form required by solvers. CVXPY makes it easy to combine convex optimization with high-level features of Python such as parallelism and object-oriented design. CVXPY is availa...
متن کاملSnapVX: A Network-Based Convex Optimization Solver
SnapVX is a high-performance solver for convex optimization problems defined on networks. For problems of this form, SnapVX provides a fast and scalable solution with guaranteed global convergence. It combines the capabilities of two open source software packages: Snap.py and CVXPY. Snap.py is a large scale graph processing library, and CVXPY provides a general modeling framework for small-scal...
متن کاملStochastic Optimization with cvxpy EE364b Project Final Report
where x ∈ R is the optimization variable, ω ∈ R is a random variable, and the fi : R ×R → R, i = 0, . . . ,m are convex functions of x for each value of ω. In recent work, we implemented into cvxpy a (basic) framework for specifying and solving stochastic programs; we refer to this framework as cvxstoc. cvxstoc works by replacing the expectations in (1), which we assume are difficult to compute...
متن کاملA general system for heuristic minimization of convex functions over non-convex sets
We describe general heuristics to approximately solve a wide variety of problems with convex objective and decision variables from a non-convex set. The heuristics, which employ convex relaxations, convex restrictions, local neighbour search methods, and the alternating direction method of multipliers, require the solution of a modest number of convex problems, and are meant to apply to general...
متن کاملCultural Development via Mediatheque Center Design
Mediatheque is an inclusive adaptation of library in which public could exchange information in practical way by applying contemporary technology. It is exerting a new method of bilateral exchange information between clients and sources through various media, which not only serve a faster data transmission than books and libraries but also are more efficient than the other services. This compre...
متن کامل