Name | gpcg JSON |
Version |
0.0.1
JSON |
| download |
home_page | |
Summary | An implementation of a conjugate gradient algorithm (GPCG) for solving bound-constrained quadratic programs. |
upload_time | 2023-07-12 05:17:52 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.7 |
license | |
keywords |
quadratic programming
conjugate gradient
bound constraints
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# gradient-projected-conjugate-gradient
This repository provides a Python implementation of the gradient projected conjugate gradient algorithm (GPCG) presented in [[1]](#1) for solving bound-constrained quadratic programs of the form
```math
\text{argmin}_{ x_i \in [l_i, u_i] \text{ for } i = 1, \ldots, n } \,\, \frac{1}{2} x^T A x - b^T x
```
where $b \in \mathbb{R}^n$ and $A \in \mathbb{R}^{n \times n}$ is a SPD matrix. Here the $l_i$ and/or $u_i$ may be infinite, e.g., we can solve quadratic programs with nonnegativity constraints.
This implementation is still experimental. Install with ``pip install -e .`` or ``python setup.py``.
## References
<a id="1">[1]</a>
Moré, J., & Toraldo, G. (1991). On the Solution of Large Quadratic Programming Problems with Bound Constraints. SIAM Journal on Optimization, 1(1), 93-113.
Raw data
{
"_id": null,
"home_page": "",
"name": "gpcg",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "quadratic programming,conjugate gradient,bound constraints",
"author": "",
"author_email": "Jonathan Lindbloom <jonathan@lindbloom.com>",
"download_url": "https://files.pythonhosted.org/packages/5e/22/138648423d7449819395934f76f42bc23b8810b5a4774b6adafdd1e2dedb/gpcg-0.0.1.tar.gz",
"platform": null,
"description": "# gradient-projected-conjugate-gradient\n\nThis repository provides a Python implementation of the gradient projected conjugate gradient algorithm (GPCG) presented in [[1]](#1) for solving bound-constrained quadratic programs of the form\n```math\n\\text{argmin}_{ x_i \\in [l_i, u_i] \\text{ for } i = 1, \\ldots, n } \\,\\, \\frac{1}{2} x^T A x - b^T x\n```\nwhere $b \\in \\mathbb{R}^n$ and $A \\in \\mathbb{R}^{n \\times n}$ is a SPD matrix. Here the $l_i$ and/or $u_i$ may be infinite, e.g., we can solve quadratic programs with nonnegativity constraints.\n\nThis implementation is still experimental. Install with ``pip install -e .`` or ``python setup.py``.\n\n## References\n<a id=\"1\">[1]</a> \nMor\u00e9, J., & Toraldo, G. (1991). On the Solution of Large Quadratic Programming Problems with Bound Constraints. SIAM Journal on Optimization, 1(1), 93-113.\n\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "An implementation of a conjugate gradient algorithm (GPCG) for solving bound-constrained quadratic programs.",
"version": "0.0.1",
"project_urls": {
"Bug Tracker": "https://github.com/jlindbloom/gradient-projected-conjugate-gradient/issues",
"Homepage": "https://github.com/jlindbloom/gradient-projected-conjugate-gradient"
},
"split_keywords": [
"quadratic programming",
"conjugate gradient",
"bound constraints"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5fec2dd01bf9be503e67ba640877c9a5f936910fe351e2ff7cd5a939a534d7b1",
"md5": "0bad5cb05d3d82a538238a7efb7272ec",
"sha256": "4c55648dc0c631000e2dd0a733f74c929dbd3d67dcd4a1210113b818725bc768"
},
"downloads": -1,
"filename": "gpcg-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0bad5cb05d3d82a538238a7efb7272ec",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 9308,
"upload_time": "2023-07-12T05:17:51",
"upload_time_iso_8601": "2023-07-12T05:17:51.006626Z",
"url": "https://files.pythonhosted.org/packages/5f/ec/2dd01bf9be503e67ba640877c9a5f936910fe351e2ff7cd5a939a534d7b1/gpcg-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5e22138648423d7449819395934f76f42bc23b8810b5a4774b6adafdd1e2dedb",
"md5": "5d78e2716d5da5988d66791d57d55bd0",
"sha256": "d4c0717cc4aa4f0060569f5f62532098434210af857497a99b213deb4892ae7c"
},
"downloads": -1,
"filename": "gpcg-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "5d78e2716d5da5988d66791d57d55bd0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 9238,
"upload_time": "2023-07-12T05:17:52",
"upload_time_iso_8601": "2023-07-12T05:17:52.431622Z",
"url": "https://files.pythonhosted.org/packages/5e/22/138648423d7449819395934f76f42bc23b8810b5a4774b6adafdd1e2dedb/gpcg-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-12 05:17:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "jlindbloom",
"github_project": "gradient-projected-conjugate-gradient",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "gpcg"
}