# CVXPY Risk Optimization
A package for risk-based optimization using CVXPY and CVXPYgen.
## Installation
### Installing from PyPI
The package can be installed using pip:
```bash
pip install cvxRiskOpt
```
Notes:
- The installation will also include cvxpy and cvxpygen.
- Please refer to cvxpy's documentation for [installing additional solvers](https://www.cvxpy.org/install/).
- Compiling code with Clarabel requires `Rust`, `Eigen`, and `cbindgen`. (e.g. These can be installed with `homebrew` on MacOS)
- Compiled code using the ECOS solver is licensed under the GNU General Public License v3.0.
- Please refer to the [cvxpygen](https://github.com/cvxgrp/cvxpygen) documentation for more details about compiled code.
### Installing from source
- Clone/Download the package
- Create and activate conda env
```bash
conda create --name cvxRiskOpt python=3.10 pip -y
conda activate cvxRiskOpt
```
- Install dependencies (see `setup.py`)
- Install the package
```bash
python3 -m pip install -e .
```
## Tests
To run tests, execute the following from the root of the package.
```bash
pytest
```
## Examples
There are several examples in `examples` demonstrating the usage of the package.
Raw data
{
"_id": null,
"home_page": "https://github.com/TSummersLab/cvxRiskOpt",
"name": "cvxRiskOpt",
"maintainer": "Sleiman Safaoui",
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "snsafaoui@gmail.com",
"keywords": "dro, risk, optimization, robust, code generation, mpc",
"author": "Sleiman Safaoui, Tyler Summers",
"author_email": "snsafaoui@gmail.com, tyler.summers@utdallas.edu",
"download_url": "https://files.pythonhosted.org/packages/a0/02/58a53aa5a1e8194dbe8ad64911e5f8bef5772cc42d6abfedd19fa3510b99/cvxriskopt-0.2.0.tar.gz",
"platform": null,
"description": "# CVXPY Risk Optimization\n\nA package for risk-based optimization using CVXPY and CVXPYgen.\n\n## Installation\n\n### Installing from PyPI\n\nThe package can be installed using pip:\n\n```bash\npip install cvxRiskOpt\n```\n\nNotes:\n\n- The installation will also include cvxpy and cvxpygen.\n- Please refer to cvxpy's documentation for [installing additional solvers](https://www.cvxpy.org/install/).\n- Compiling code with Clarabel requires `Rust`, `Eigen`, and `cbindgen`. (e.g. These can be installed with `homebrew` on MacOS)\n- Compiled code using the ECOS solver is licensed under the GNU General Public License v3.0.\n- Please refer to the [cvxpygen](https://github.com/cvxgrp/cvxpygen) documentation for more details about compiled code.\n\n### Installing from source\n\n- Clone/Download the package\n- Create and activate conda env\n\n```bash\nconda create --name cvxRiskOpt python=3.10 pip -y\nconda activate cvxRiskOpt\n```\n\n- Install dependencies (see `setup.py`)\n- Install the package\n\n```bash\npython3 -m pip install -e .\n```\n\n## Tests\n\nTo run tests, execute the following from the root of the package.\n\n```bash\npytest\n```\n\n## Examples\n\nThere are several examples in `examples` demonstrating the usage of the package.\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Risk-Based Optimization tool using CVXPY and CVXPYgen",
"version": "0.2.0",
"project_urls": {
"Homepage": "https://github.com/TSummersLab/cvxRiskOpt"
},
"split_keywords": [
"dro",
" risk",
" optimization",
" robust",
" code generation",
" mpc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ec975bdcc38df0413c548592b11069561739dde043de2eaf367d55b4fa7c6613",
"md5": "fcc3644dc67e4ae8a422bc5dce2f36db",
"sha256": "f91b04e8a3770076f75e5ac11b6bdd4e97d4940599d9526f7c10e56987223183"
},
"downloads": -1,
"filename": "cvxRiskOpt-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fcc3644dc67e4ae8a422bc5dce2f36db",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 18754,
"upload_time": "2024-08-24T21:52:48",
"upload_time_iso_8601": "2024-08-24T21:52:48.482583Z",
"url": "https://files.pythonhosted.org/packages/ec/97/5bdcc38df0413c548592b11069561739dde043de2eaf367d55b4fa7c6613/cvxRiskOpt-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a00258a53aa5a1e8194dbe8ad64911e5f8bef5772cc42d6abfedd19fa3510b99",
"md5": "636ceb9cd22ca82d3b7425b25c9777c5",
"sha256": "b21e1b6421ba7c0d41ccfee1e44ecdd99b8b8b5ab46dc3cc409a57171020ae41"
},
"downloads": -1,
"filename": "cvxriskopt-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "636ceb9cd22ca82d3b7425b25c9777c5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 22199,
"upload_time": "2024-08-24T21:52:49",
"upload_time_iso_8601": "2024-08-24T21:52:49.864932Z",
"url": "https://files.pythonhosted.org/packages/a0/02/58a53aa5a1e8194dbe8ad64911e5f8bef5772cc42d6abfedd19fa3510b99/cvxriskopt-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-24 21:52:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "TSummersLab",
"github_project": "cvxRiskOpt",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "cvxriskopt"
}