nullspace-optimizer


Namenullspace-optimizer JSON
Version 1.2.5 PyPI version JSON
download
home_pagehttps://null-space-optimizer.readthedocs.io/en/latest/
SummaryNull space algorithm for nonlinear constrained optimization
upload_time2024-04-24 06:05:03
maintainerNone
docs_urlNone
authorFlorian Feppon
requires_python>=3.9
licenseGNU GPL version 3
keywords nonlinear constrained optimization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Null Space Optimizer

`nullspace_optimizer` is a Python package implementing the null space
algorithm for nonlinear constrained optimization. It has been developped
in the context of topology optimization problems with the level-set and
the density method, but it can in principle be used for solving
arbitrary smooth nonlinear equality and inequality constrained
optimization problems of the form

```math 
\begin{aligned}
\begin{aligned}
    \min_{x\in \mathcal{X}}&  \quad J(x)\\
    \textrm{s.t.} & \left\{\begin{aligned}
 g_i(x)&=0, \text{ for all } 1\leqslant i\leqslant p,\\
 h_j(x)  &\leqslant  0, \text{ for all }1\leqslant j \leqslant q,\\ 
        \end{aligned}\right.
\end{aligned}
\end{aligned}   
```

![Optimization trajectories produced by the Null Space Optimizer for an
inequality constrained optimization problem with different
initialization.](docs/source/img/nullspace.png){.align-center width="400px"}
    
## Official documentation   
    
[Official documentation](https://null-space-optimizer.readthedocs.io/en/latest/index.html)

## Contribute and support

-   Issue tracker:
    <https://gitlab.com/florian.feppon/null-space-optimizer/-/issues>
-   Source code:
    <https://gitlab.com/florian.feppon/null-space-optimizer>

If I am not responding on the issue tracker, feel free to send me an
email to florian.feppon\[at\]kuleuven.be

## Citation

Please cite either of the following references when using this source:

> Feppon F., Allaire G. and Dapogny C. *Null space gradient flows for
> constrained optimization with applications to shape optimization.*
> 2020. ESAIM: COCV, 26 90
> [doi:10.1051/cocv/2020015](https://doi.org/10.1051/cocv/2020015)

> Feppon F. *Density based topology optimization with the Null Space Optimizer: a
> tutorial and a comparison* (2024).   
> [Structural and Multidisciplinary Optimization, 67(4), 1-34](https://link.springer.com/article/10.1007/s00158-023-03710-w).

``` bibtex
@article{feppon2020optim,
   author = {{Feppon, F.} and {Allaire, G.} and {Dapogny, C.}},
   doi = {10.1051/cocv/2020015},
   journal = {ESAIM: COCV},
   pages = {90},
   title = {Null space gradient flows for constrained optimization with applications to shape optimization},
   url = {https://doi.org/10.1051/cocv/2020015},
   volume = 26,
   year = 2020
}
```

``` bibtex
@article{Feppon2024density,
  title     = "Density-based topology optimization with the Null Space Optimizer: a tutorial and a comparison",
  author    = "Feppon, Florian",
  journal   = "Structural and Multidisciplinary Optimization",
  publisher = "Springer",
  volume    =  67,
  number    =  1,
  pages     = "1--34",
  month     =  jan,
  year      =  2024
}
```

## Licence

The Null Space Optimizer is a free software distributed under the terms
of the GNU General Public Licence
[GPL3](https://www.gnu.org/licenses/gpl-3.0.html).

            

Raw data

            {
    "_id": null,
    "home_page": "https://null-space-optimizer.readthedocs.io/en/latest/",
    "name": "nullspace-optimizer",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "nonlinear constrained optimization",
    "author": "Florian Feppon",
    "author_email": "florian.feppon@kuleuven.be",
    "download_url": null,
    "platform": null,
    "description": "# Null Space Optimizer\n\n`nullspace_optimizer` is a Python package implementing the null space\nalgorithm for nonlinear constrained optimization. It has been developped\nin the context of topology optimization problems with the level-set and\nthe density method, but it can in principle be used for solving\narbitrary smooth nonlinear equality and inequality constrained\noptimization problems of the form\n\n```math \n\\begin{aligned}\n\\begin{aligned}\n    \\min_{x\\in \\mathcal{X}}&  \\quad J(x)\\\\\n    \\textrm{s.t.} & \\left\\{\\begin{aligned}\n g_i(x)&=0, \\text{ for all } 1\\leqslant i\\leqslant p,\\\\\n h_j(x)  &\\leqslant  0, \\text{ for all }1\\leqslant j \\leqslant q,\\\\ \n        \\end{aligned}\\right.\n\\end{aligned}\n\\end{aligned}   \n```\n\n![Optimization trajectories produced by the Null Space Optimizer for an\ninequality constrained optimization problem with different\ninitialization.](docs/source/img/nullspace.png){.align-center width=\"400px\"}\n    \n## Official documentation   \n    \n[Official documentation](https://null-space-optimizer.readthedocs.io/en/latest/index.html)\n\n## Contribute and support\n\n-   Issue tracker:\n    <https://gitlab.com/florian.feppon/null-space-optimizer/-/issues>\n-   Source code:\n    <https://gitlab.com/florian.feppon/null-space-optimizer>\n\nIf I am not responding on the issue tracker, feel free to send me an\nemail to florian.feppon\\[at\\]kuleuven.be\n\n## Citation\n\nPlease cite either of the following references when using this source:\n\n> Feppon F., Allaire G. and Dapogny C. *Null space gradient flows for\n> constrained optimization with applications to shape optimization.*\n> 2020. ESAIM: COCV, 26 90\n> [doi:10.1051/cocv/2020015](https://doi.org/10.1051/cocv/2020015)\n\n> Feppon F. *Density based topology optimization with the Null Space Optimizer: a\n> tutorial and a comparison* (2024).   \n> [Structural and Multidisciplinary Optimization, 67(4), 1-34](https://link.springer.com/article/10.1007/s00158-023-03710-w).\n\n``` bibtex\n@article{feppon2020optim,\n   author = {{Feppon, F.} and {Allaire, G.} and {Dapogny, C.}},\n   doi = {10.1051/cocv/2020015},\n   journal = {ESAIM: COCV},\n   pages = {90},\n   title = {Null space gradient flows for constrained optimization with applications to shape optimization},\n   url = {https://doi.org/10.1051/cocv/2020015},\n   volume = 26,\n   year = 2020\n}\n```\n\n``` bibtex\n@article{Feppon2024density,\n  title     = \"Density-based topology optimization with the Null Space Optimizer: a tutorial and a comparison\",\n  author    = \"Feppon, Florian\",\n  journal   = \"Structural and Multidisciplinary Optimization\",\n  publisher = \"Springer\",\n  volume    =  67,\n  number    =  1,\n  pages     = \"1--34\",\n  month     =  jan,\n  year      =  2024\n}\n```\n\n## Licence\n\nThe Null Space Optimizer is a free software distributed under the terms\nof the GNU General Public Licence\n[GPL3](https://www.gnu.org/licenses/gpl-3.0.html).\n",
    "bugtrack_url": null,
    "license": "GNU GPL version 3",
    "summary": "Null space algorithm for nonlinear constrained optimization",
    "version": "1.2.5",
    "project_urls": {
        "Homepage": "https://null-space-optimizer.readthedocs.io/en/latest/"
    },
    "split_keywords": [
        "nonlinear",
        "constrained",
        "optimization"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f83ec08db950faf236c0d4e21b72bd7cfb93b567356e36c63c47dd4c46799b8d",
                "md5": "fff8a15d6d9fcee803eb68559b003df8",
                "sha256": "0df860c0f819e7eefa0434f4f1a458b2a536e141d9aaa74f3eaa3a8313a59fbb"
            },
            "downloads": -1,
            "filename": "nullspace_optimizer-1.2.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fff8a15d6d9fcee803eb68559b003df8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 104536,
            "upload_time": "2024-04-24T06:05:03",
            "upload_time_iso_8601": "2024-04-24T06:05:03.442229Z",
            "url": "https://files.pythonhosted.org/packages/f8/3e/c08db950faf236c0d4e21b72bd7cfb93b567356e36c63c47dd4c46799b8d/nullspace_optimizer-1.2.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-24 06:05:03",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "nullspace-optimizer"
}
        
Elapsed time: 4.89226s