Embedded Conic Solver in R

R interface to the Embedded COnic Solver (ECOS), an efficient and robust C library for convex problems. Conic and equality constraints can be specified in addition to integer and boolean variable constraints for mixed-integer problems. This R interface is inspired by the python interface and has similar calling conventions.


ECOSolveR

R-CMD-check CRAN_Status_Badge CoverageStatus

Embedded Conic Solver in R. This is an R wrapper around the ecos project on GitHub which describes ECOS as below.

ECOS is a numerical software for solving convex second-order cone programs (SOCPs) of type

$$ \mbox{Minimize } c'x \mbox{ such that } {\mathbf Ax} = {\mathbf b} \mbox{ and } {\mathbf G \mathbf x},, \leq_{\mathbf K},, {\mathbf h} $$ where the last inequality is generalized, that is, ${\mathbf h}-\mathbf{Gx}$ belongs to the cone ${\mathbf K}$.

ECOS supports the positive orthant ${\mathbf R}_+$, second-order cones ${\mathbf Q}_n$ defined as

$$ {\mathbf Q}_n = \bigl{ (t,{\mathbf x}) | t >= \lVert{\mathbf x}\rVert_2 \bigr} $$

with $t$ a scalar and ${\mathbf x} \in {\mathbf R}_{n-1}$, and the exponential cone ${\mathbf K}_e$ defined as

$$ \mathbf{K}_e = \mbox{closure} \bigl{ (x,y,z) | exp(x/z) <= y/z, z>0 \bigr}, $$

where $(x,y,z) \in {\mathbf R}^3$.

The cone ${\mathbf K}$ is therefore a direct product of the positive orthant, second-order, and exponential cones:

$$ {\mathbf K} = {\mathbf R}+ \times {\mathbf Q}{n_1} \times \cdots \times {\mathbf Q}_{n_N} \times {\mathbf K}_e \times \cdots \times {\mathbf K}_e. $$

Further Details

Note that the ECOS C language sources are included here. Changes to the original source are clearly delineated for easy reference.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("ECOSolveR")

0.6.1 by Balasubramanian Narasimhan, 8 months ago


https://bnaras.github.io/ECOSolveR/


Report a bug at https://github.com/bnaras/ECOSolveR/issues


Browse source code at https://github.com/cran/ECOSolveR


Authors: Anqi Fu [aut] , Balasubramanian Narasimhan [aut, cre] , Florian Schwendinger [ctb] , Martin Maechler [ctb]


Documentation:   PDF Manual  


GPL (>= 3) license


Imports cli, methods

Suggests knitr, rmarkdown, testthat, Matrix, covr, slam

System requirements: GNU make


Imported by BsplineQuantReg, BsplineQuantRegGui, HonestDiD, MOSAlloc, ROI.plugin.ecos, highOrderPortfolios, scpi.

Suggested by EmpiricalDynamics, VIM, WpProj, rdborrow, spBPS.

Enhanced by CVXR.


See at CRAN