package

r-ECOSolveR

Description

Embedded Conic Solver in R.

Description
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

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.

Version

0.5.5

Unknown

Platforms75 (75)

Darwin
FreeBSD
Genode
GHCJS
Linux
MMIXware
NetBSD
none
OpenBSD
Redox
Solaris
WASI
Windows
Show all
• aarch64-darwin
• aarch64-genode
• aarch64-linux
• aarch64-netbsd
• aarch64-none
• aarch64_be-none
• arm-none
• armv5tel-linux
• armv6l-linux
• armv6l-netbsd
• armv6l-none
• armv7a-darwin
• armv7a-linux
• armv7a-netbsd
• armv7l-linux
• armv7l-netbsd
• avr-none
• i686-cygwin
• i686-darwin
• i686-freebsd
• i686-genode
• i686-linux
• i686-netbsd
• i686-none
• i686-openbsd
• i686-windows
• javascript-ghcjs
• loongarch64-linux
• m68k-linux
• m68k-netbsd
• m68k-none
• microblaze-linux
• microblaze-none
• microblazeel-linux
• microblazeel-none
• mips-linux
• mips-none
• mips64-linux
• mips64-none
• mips64el-linux
• mipsel-linux
• mipsel-netbsd
• mmix-mmixware
• msp430-none
• or1k-none
• powerpc-netbsd
• powerpc-none
• powerpc64-linux
• powerpc64le-linux
• powerpcle-none
• riscv32-linux
• riscv32-netbsd
• riscv32-none
• riscv64-linux
• riscv64-netbsd
• riscv64-none
• rx-none
• s390-linux
• s390-none
• s390x-linux
• s390x-none
• vc4-none
• wasm32-wasi
• wasm64-wasi
• x86_64-cygwin
• x86_64-darwin
• x86_64-freebsd
• x86_64-genode
• x86_64-linux
• x86_64-netbsd
• x86_64-none
• x86_64-openbsd
• x86_64-redox
• x86_64-solaris
• x86_64-windows
mnos-build-web-prod-20240529T095255Z-bd2c3c99