gurobi-modelanalyzer


Namegurobi-modelanalyzer JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummaryModel analysis tools; v1.0 is an ill conditioning explainer.
upload_time2024-04-16 10:09:09
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords optimization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!---

**⚠ Warning**

```This code is in a pre-release state. It may not be fully functional and breaking changes can occur without notice.```

--->

# Gurobi Model Analyzer

Gurobi Model Analyzer is an
[open-source](https://gurobi-modelanalyzer.readthedocs.io/en/stable/license.html) python package that provides
detailed analysis of model solutions and model characteristics.
Version 1.0 consists of a results_analyzer module that calculates
explanations of ill-conditioned basis matrices.

Note: At the moment this repository is public, but final docs configuration
and packages is not yet finished.   We recommend that you hold off on using it
until version 1.0 is announced as available.

# Documentation

The latest user manual is available on
[readthedocs](https://gurobi-optimization-gurobi-modelanalyzer.readthedocs-hosted.com/en/latest/).


# Contact us

For questions related to using Gurobi Model Analyzer, please use
[Gurobi's Forum](https://support.gurobi.com/hc/en-us/community/topics/10373864542609-GitHub-Projects).

For reporting bugs, issues, and feature requests please open an issue.

If you encounter issues with Gurobi or gurobipy please contact
[Gurobi Support](https://support.gurobi.com/hc/en-us).


# Installation

## Dependencies

- Python >= 3.9
- [`numpy`](https://pypi.org/project/numpy/)  >= 1.21.5    (although earlier
  versions compatible with python 3.7 will probably work).


## Pip installation

The easiest way to install gurobi-modelanalyzer is using pip in a
virtual environment:

```
(.venv) pip install gurobi-modelanalyzer
```

This will also install the numpy and gurobipy dependencies.  One of the
advanced functions makes use of matplotlib; if you haven't already installed
that and plan to use this function (matrix_bitmap), you can either install
the matplotlib package directly, or install it with the gurobi-modelanalyzer
package via "pip install gurobi-modelanalyzer matplotlib".

Please note that gurobipy is commercial software and requires a
license. When installed via pip or conda, gurobipy ships with a free
license for testing and can only solve models of limited size.


Then use the explainer functions.   Example usage

```
import gurobipy as gp
import gurobi_modelanalyzer as gma
model=gp.read("myillconditionedmodel.mps")
model.optimize()
gma.kappa_explain(model)

# row-based explanation (default)
gma.kappa_explain(model, expltype="ROWS")

# column-based explanation
gma.kappa_explain(model, expltype="COLS")

# angle-based explanation (only looks for pairs of rows or columns
# that cause ill-conditioning.
gma.angle_explain(model)
```

Use `help(gma.kappa_explain)` or `help(gma.angle_explain)` for information
on more advanced usage.


# Getting a Gurobi License
Alternatively to the bundled limited license, there are licenses that can handle models of all sizes.

As a student or staff member of an academic institution you qualify for a free, full product license.
For more information, see:

* https://www.gurobi.com/academia/academic-program-and-licenses/

For a commercial evaluation, you can
[request an evaluation license](https://www.gurobi.com/free-trial/?utm_source=internal&utm_medium=documentation&utm_campaign=fy21_pipinstall_eval_pypipointer&utm_content=c_na&utm_term=pypi).

Other useful resources to get started:
* https://www.gurobi.com/documentation/
* https://support.gurobi.com/hc/en-us/community/topics/


# Development
We value any level of experience in using Gurobi Model Analyzer and would like to encourage you to
contribute directly to this project. Please see the [Contributing Guide](CONTRIBUTING.md) for more information.

## Source code
You can clone the latest sources with the command:

```
git clone git@github.com:Gurobi/gurobi-modelanalyzer.git
```


## Testing


## Submitting a Pull Request
Before opening a Pull Request, have a look at the full
[Contributing page](CONTRIBUTING.md) to make sure your code complies with
our guidelines.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "gurobi-modelanalyzer",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "optimization",
    "author": null,
    "author_email": "Ed Klotz <klotz@gurobi.com>",
    "download_url": "https://files.pythonhosted.org/packages/81/4e/7b366194b01712466f8b0db67a3bce47e6f9248915631e767fdc6eaf987a/gurobi_modelanalyzer-1.0.1.tar.gz",
    "platform": null,
    "description": "<!---\n\n**\u26a0 Warning**\n\n```This code is in a pre-release state. It may not be fully functional and breaking changes can occur without notice.```\n\n--->\n\n# Gurobi Model Analyzer\n\nGurobi Model Analyzer is an\n[open-source](https://gurobi-modelanalyzer.readthedocs.io/en/stable/license.html) python package that provides\ndetailed analysis of model solutions and model characteristics.\nVersion 1.0 consists of a results_analyzer module that calculates\nexplanations of ill-conditioned basis matrices.\n\nNote: At the moment this repository is public, but final docs configuration\nand packages is not yet finished.   We recommend that you hold off on using it\nuntil version 1.0 is announced as available.\n\n# Documentation\n\nThe latest user manual is available on\n[readthedocs](https://gurobi-optimization-gurobi-modelanalyzer.readthedocs-hosted.com/en/latest/).\n\n\n# Contact us\n\nFor questions related to using Gurobi Model Analyzer, please use\n[Gurobi's Forum](https://support.gurobi.com/hc/en-us/community/topics/10373864542609-GitHub-Projects).\n\nFor reporting bugs, issues, and feature requests please open an issue.\n\nIf you encounter issues with Gurobi or gurobipy please contact\n[Gurobi Support](https://support.gurobi.com/hc/en-us).\n\n\n# Installation\n\n## Dependencies\n\n- Python >= 3.9\n- [`numpy`](https://pypi.org/project/numpy/)  >= 1.21.5    (although earlier\n  versions compatible with python 3.7 will probably work).\n\n\n## Pip installation\n\nThe easiest way to install gurobi-modelanalyzer is using pip in a\nvirtual environment:\n\n```\n(.venv) pip install gurobi-modelanalyzer\n```\n\nThis will also install the numpy and gurobipy dependencies.  One of the\nadvanced functions makes use of matplotlib; if you haven't already installed\nthat and plan to use this function (matrix_bitmap), you can either install\nthe matplotlib package directly, or install it with the gurobi-modelanalyzer\npackage via \"pip install gurobi-modelanalyzer matplotlib\".\n\nPlease note that gurobipy is commercial software and requires a\nlicense. When installed via pip or conda, gurobipy ships with a free\nlicense for testing and can only solve models of limited size.\n\n\nThen use the explainer functions.   Example usage\n\n```\nimport gurobipy as gp\nimport gurobi_modelanalyzer as gma\nmodel=gp.read(\"myillconditionedmodel.mps\")\nmodel.optimize()\ngma.kappa_explain(model)\n\n# row-based explanation (default)\ngma.kappa_explain(model, expltype=\"ROWS\")\n\n# column-based explanation\ngma.kappa_explain(model, expltype=\"COLS\")\n\n# angle-based explanation (only looks for pairs of rows or columns\n# that cause ill-conditioning.\ngma.angle_explain(model)\n```\n\nUse `help(gma.kappa_explain)` or `help(gma.angle_explain)` for information\non more advanced usage.\n\n\n# Getting a Gurobi License\nAlternatively to the bundled limited license, there are licenses that can handle models of all sizes.\n\nAs a student or staff member of an academic institution you qualify for a free, full product license.\nFor more information, see:\n\n* https://www.gurobi.com/academia/academic-program-and-licenses/\n\nFor a commercial evaluation, you can\n[request an evaluation license](https://www.gurobi.com/free-trial/?utm_source=internal&utm_medium=documentation&utm_campaign=fy21_pipinstall_eval_pypipointer&utm_content=c_na&utm_term=pypi).\n\nOther useful resources to get started:\n* https://www.gurobi.com/documentation/\n* https://support.gurobi.com/hc/en-us/community/topics/\n\n\n# Development\nWe value any level of experience in using Gurobi Model Analyzer and would like to encourage you to\ncontribute directly to this project. Please see the [Contributing Guide](CONTRIBUTING.md) for more information.\n\n## Source code\nYou can clone the latest sources with the command:\n\n```\ngit clone git@github.com:Gurobi/gurobi-modelanalyzer.git\n```\n\n\n## Testing\n\n\n## Submitting a Pull Request\nBefore opening a Pull Request, have a look at the full\n[Contributing page](CONTRIBUTING.md) to make sure your code complies with\nour guidelines.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Model analysis tools; v1.0 is an ill conditioning explainer.",
    "version": "1.0.1",
    "project_urls": {
        "Documentation": "https://gurobi-optimization-gurobi-modelanalyzer.readthedocs-hosted.com/en/latest",
        "Issues": "https://github.com/Gurobi/gurobi-modelanalyzer/issues",
        "Source": "https://github.com/Gurobi/gurobi-modelanalyzer"
    },
    "split_keywords": [
        "optimization"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aba21d5920a0708b1ddd900eaa3a7c034c64df1c6ccf40ccadff679b09dc79ec",
                "md5": "c36718de5caa978c27730a7b471e7a43",
                "sha256": "778fa5f4b91d3b9740f4c29a2b09a4e3a9434388b40017f13a461b3f16bd7716"
            },
            "downloads": -1,
            "filename": "gurobi_modelanalyzer-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c36718de5caa978c27730a7b471e7a43",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 40636,
            "upload_time": "2024-04-16T10:09:07",
            "upload_time_iso_8601": "2024-04-16T10:09:07.625998Z",
            "url": "https://files.pythonhosted.org/packages/ab/a2/1d5920a0708b1ddd900eaa3a7c034c64df1c6ccf40ccadff679b09dc79ec/gurobi_modelanalyzer-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "814e7b366194b01712466f8b0db67a3bce47e6f9248915631e767fdc6eaf987a",
                "md5": "01981f1d2e12f5aad56a82d131802be6",
                "sha256": "e14e930efd7b21b2e1d5bbeb9044f2602ec639836e3583527a01380fbb949ab0"
            },
            "downloads": -1,
            "filename": "gurobi_modelanalyzer-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "01981f1d2e12f5aad56a82d131802be6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 2799494,
            "upload_time": "2024-04-16T10:09:09",
            "upload_time_iso_8601": "2024-04-16T10:09:09.151160Z",
            "url": "https://files.pythonhosted.org/packages/81/4e/7b366194b01712466f8b0db67a3bce47e6f9248915631e767fdc6eaf987a/gurobi_modelanalyzer-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-16 10:09:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Gurobi",
    "github_project": "gurobi-modelanalyzer",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "gurobi-modelanalyzer"
}
        
Elapsed time: 0.25649s