https://github.com/cvxgrp/cvxr
An R modeling language for convex optimization problems.
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
1 of 9 committers (11.1%) from academic institutions -
✓Institutional organization owner
Organization cvxgrp has institutional domain (www.stanford.edu) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (18.3%) to scientific vocabulary
Keywords from Contributors
automl
distributed
ensemble-learning
gbm
h2o
h2o-automl
hadoop
naive-bayes
pca
Last synced: 7 months ago
·
JSON representation
Repository
An R modeling language for convex optimization problems.
Basic Info
- Host: GitHub
- Owner: cvxgrp
- License: apache-2.0
- Language: R
- Default Branch: master
- Homepage: https://cvxr.rbind.io/
- Size: 23.6 MB
Statistics
- Stars: 209
- Watchers: 21
- Forks: 32
- Open Issues: 24
- Releases: 10
Created over 10 years ago
· Last pushed over 1 year ago
Metadata Files
Readme
Changelog
License
README.Rmd
# CVXR[](https://github.com/cvxgrp/CVXR/actions/workflows/R-CMD-check.yaml) [](https://cran.r-project.org/package=CVXR) [](https://CRAN.R-project.org/package=CVXR) CVXR provides an object-oriented modeling language for convex optimization, similar to `CVX`, `CVXPY`, `YALMIP`, and `Convex.jl`. It allows the user to formulate convex optimization problems in a natural mathematical syntax rather than the restrictive standard form required by most solvers. The user specifies an objective and set of constraints by combining constants, variables, and parameters using a library of functions with known mathematical properties. `CVXR` then applies signed [disciplined convex programming (DCP)](https://web.stanford.edu/~boyd/papers/pdf/disc_cvx_prog.pdf) to verify the problem’s convexity. Once verified, the problem is converted into standard conic form using graph implementations and passed to a cone solver such as [ECOS](https://github.com/embotech/ecos) or [SCS](https://github.com/cvxgrp/scs). CVXR includes several open source solvers in addition to the default OSQP, ECOS and SCS. Recent (1.x+) versions also include support for commercial solvers such as [MOSEK](https://www.mosek.com), [GUROBI](https://www.gurobi.com) and [CPLEX](https://www.ibm.com/products/ilog-cplex-optimization-studio/cplex-optimizer). For details and examples, we refer you to [Fu, Narasimhan, Boyd](https://dx.doi.org/10.18637/jss.v094.i14) (2020). If you use CVXR in your work, please cite this reference. (The R command `citation("CVXR", bibtex = TRUE)` will also give you a bibtex-formatted entry.) ## Installation This package is now released on CRAN, so you can install the current released version as you would any other package for R, version 3.4 and higher. (`CVXR` is known to work with earlier versions of R too, but we don't check our releases against older versions of R.) ```{r, eval = FALSE} install.packages('CVXR', repos = "https://CRAN.R-project.org") ``` Development versions can be installed from the Github repository assuming you have the development tools for R available, including the C compilers etc. Execute: ```{r, eval = FALSE} library(devtools) install_github("cvxgrp/CVXR") ``` ## Tutorial A number of tutorial examples are available on the [CVXR website](https://cvxr.rbind.io) along with links to our useR! 2019 short-course.
Owner
- Name: Stanford University Convex Optimization Group
- Login: cvxgrp
- Kind: organization
- Location: Stanford, CA
- Website: www.stanford.edu/~boyd
- Repositories: 102
- Profile: https://github.com/cvxgrp
GitHub Events
Total
- Create event: 2
- Release event: 1
- Issues event: 9
- Watch event: 6
- Delete event: 1
- Issue comment event: 9
- Push event: 13
- Pull request event: 1
Last Year
- Create event: 2
- Release event: 1
- Issues event: 9
- Watch event: 6
- Delete event: 1
- Issue comment event: 9
- Push event: 13
- Pull request event: 1
Committers
Last synced: 11 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| anqif | a****f@s****u | 230 |
| Balasubramanian Narasimhan | b****s@g****m | 228 |
| Anqi Fu | a****7@g****m | 190 |
| dwkang@stanford.edu | d****3@g****m | 84 |
| anqif | a****i@0****m | 33 |
| anqi | a****i@h****i | 25 |
| PaulRosenfield | P****d | 12 |
| Angela Fu | A****u | 2 |
| Torben Tvedebrink | t****k | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 74
- Total pull requests: 41
- Average time to close issues: 6 months
- Average time to close pull requests: 4 days
- Total issue authors: 57
- Total pull request authors: 5
- Average comments per issue: 1.78
- Average comments per pull request: 0.1
- Merged pull requests: 37
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 6
- Pull requests: 0
- Average time to close issues: 2 days
- Average time to close pull requests: N/A
- Issue authors: 5
- Pull request authors: 0
- Average comments per issue: 1.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- hwborchers (4)
- flodel (4)
- ghost (3)
- btaute (3)
- karldw (3)
- harryprince (2)
- benubah (2)
- ahsen1402 (2)
- EMTRANSLATEUR355 (2)
- alexrwatson (2)
- denizalp (1)
- mmorinosd (1)
- aszekMosek (1)
- C4lv1n5 (1)
- georgios-vassos1 (1)
Pull Request Authors
- bnaras (47)
- aszekMosek (1)
- tvedebrink (1)
- klin333 (1)
- dkang9503 (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 2
- Total dependent repositories: 0
- Total versions: 2
conda-forge.org: r-cvxr
- Homepage: https://cvxr.rbind.io, https://www.cvxgrp.org/CVXR/
- License: Apache-2.0
-
Latest release: 1.0_11
published over 3 years ago
Rankings
Dependent packages count: 19.5%
Average: 26.8%
Dependent repos count: 34.0%
Last synced:
8 months ago
Dependencies
DESCRIPTION
cran
- R >= 3.4.0 depends
- Rcplex * enhances
- Rglpk * enhances
- Rmosek * enhances
- cccp * enhances
- gurobi * enhances
- rcbc * enhances
- ECOSolveR >= 0.5.4 imports
- Matrix * imports
- R6 * imports
- Rcpp >= 0.12.12 imports
- Rmpfr * imports
- bit64 * imports
- gmp * imports
- methods * imports
- osqp * imports
- scs >= 3.0 imports
- stats * imports
- covr * suggests
- knitr * suggests
- nnls * suggests
- rmarkdown * suggests
- slam * suggests
- testthat * suggests
.github/workflows/R-CMD-check.yaml
actions
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/upload-artifact main composite
- r-lib/actions/setup-pandoc v1 composite
- r-lib/actions/setup-r v1 composite
[](https://github.com/cvxgrp/CVXR/actions/workflows/R-CMD-check.yaml)
[](https://cran.r-project.org/package=CVXR)
[](https://CRAN.R-project.org/package=CVXR)
CVXR provides an object-oriented modeling language for convex
optimization, similar to `CVX`, `CVXPY`, `YALMIP`, and `Convex.jl`. It
allows the user to formulate convex optimization problems in a natural
mathematical syntax rather than the restrictive standard form required
by most solvers. The user specifies an objective and set of
constraints by combining constants, variables, and parameters using a
library of functions with known mathematical properties. `CVXR` then
applies signed [disciplined convex programming
(DCP)](https://web.stanford.edu/~boyd/papers/pdf/disc_cvx_prog.pdf) to
verify the problem’s convexity. Once verified, the problem is
converted into standard conic form using graph implementations and
passed to a cone solver such as
[ECOS](https://github.com/embotech/ecos) or
[SCS](https://github.com/cvxgrp/scs).
CVXR includes several open source solvers in addition to the default
OSQP, ECOS and SCS. Recent (1.x+) versions also include support for
commercial solvers such as [MOSEK](https://www.mosek.com),
[GUROBI](https://www.gurobi.com) and
[CPLEX](https://www.ibm.com/products/ilog-cplex-optimization-studio/cplex-optimizer).
For details and examples, we refer you to [Fu, Narasimhan,
Boyd](https://dx.doi.org/10.18637/jss.v094.i14) (2020). If you use
CVXR in your work, please cite this reference. (The R command
`citation("CVXR", bibtex = TRUE)` will also give you a
bibtex-formatted entry.)
## Installation
This package is now released on CRAN, so you can install the current
released version as you would any other package for R, version 3.4
and higher. (`CVXR` is known to work with earlier versions of R too,
but we don't check our releases against older versions of R.)
```{r, eval = FALSE}
install.packages('CVXR', repos = "https://CRAN.R-project.org")
```
Development versions can be installed from the Github repository
assuming you have the development tools
for R available, including the C compilers etc. Execute:
```{r, eval = FALSE}
library(devtools)
install_github("cvxgrp/CVXR")
```
## Tutorial
A number of tutorial examples are available on the [CVXR
website](https://cvxr.rbind.io) along with links to our useR! 2019
short-course.