Skip to main content

Tool for designing and optimizing the electrical cable network of offshore wind farms

Project description

pipeline status PyPi License coverage report

OptiWindNet

OptiWindNet

Tool for designing and optimizing the electrical cable network of offshore wind farms.

Documentation:
optiwindnet.readthedocs.io
FancyWindFarm

Installation

pip install optiwindnet

or

conda install --channel conda-forge optiwindnet

Detailed instructions in Installation.

Requirements

Python version 3.11 or 3.12 is recommended to run OptiWindNet. Python 3.13+ may cause issues with the optiwindnet.db module, but all other features work fine. The last version to support Python 3.10 was v0.1.0.

The use of a Python virtual environment is recommended. OptiWindNet's dependencies (except for MILP solvers, see docs) will be installed automatically when using pip install optiwindnet or conda install optiwindnet.

One may optionally pre-install the dependencies in a python environment by using either:

Paper

The methodology implemented in OptiWindNet is described in the peer-reviewed scientific article:

  • Mauricio Souza de Alencar, Tuhfe Göçmen, Nicolaos A. Cutululis, Flexible cable routing framework for wind farm collection system optimization, European Journal of Operational Research, 2025, ISSN 0377-2217, https://doi.org/10.1016/j.ejor.2025.07.069.
@article{SOUZADEALENCAR20261037,
  title = {Flexible cable routing framework for wind farm collection system optimization},
  journal = {European Journal of Operational Research},
  volume = {329},
  number = {3},
  pages = {1037-1051},
  year = {2026},
  issn = {0377-2217},
  doi = {https://doi.org/10.1016/j.ejor.2025.07.069},
  url = {https://www.sciencedirect.com/science/article/pii/S0377221725005946},
  author = {Mauricio {Souza de Alencar} and Tuhfe Göçmen and Nicolaos A. Cutululis},
  keywords = {Combinatorial optimization, Network design, Collection system, Wind farm},
}

Acknowledgements

The heuristics implemented in this repository (release 0.0.1) are presented and analyzed in the MSc thesis Optimization heuristics for offshore wind power plant collection systems design (DTU Wind - Technical University of Denmark, July 4, 2022)

The meta-heuristic used is vidalt/HGS-CVRP: Modern implementation of the hybrid genetic search (HGS) algorithm specialized to the capacitated vehicle routing problem (CVRP). This code also includes an additional neighborhood called SWAP*. via its Python bindings chkwon/PyHygese: A Python wrapper for the Hybrid Genetic Search algorithm for Capacitated Vehicle Routing Problems (HGS-CVRP).

The cable routing relies on a navigation mesh generated by the library artem-ogre/CDT: Constrained Delaunay Triangulation (C++) via its Python bindings - artem-ogre/PythonCDT: Constrained Delaunay Triangulation (Python).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optiwindnet-0.1.6.tar.gz (543.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

optiwindnet-0.1.6-py3-none-any.whl (439.8 kB view details)

Uploaded Python 3

File details

Details for the file optiwindnet-0.1.6.tar.gz.

File metadata

  • Download URL: optiwindnet-0.1.6.tar.gz
  • Upload date:
  • Size: 543.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for optiwindnet-0.1.6.tar.gz
Algorithm Hash digest
SHA256 6964334ced400dbd9863cb6b4fdc3e0f60cbe0077dda7ceb58ca92c39fe408e0
MD5 60c02d9b33c7e14c2b0a431e1ddea49f
BLAKE2b-256 a8c1ca114cb1485e6646330f8c11b10ca1bc42c1fb3043b452806b6de2811d48

See more details on using hashes here.

File details

Details for the file optiwindnet-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: optiwindnet-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 439.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for optiwindnet-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 515fa86d0895276e665f44cbf50d8faba94162f1e633894cbe7b4bd33323028d
MD5 7b90172ab0cdb36d41364f50e246abcf
BLAKE2b-256 98a326d3b21ccdb2b2626441b754f922b4ee74a5dbc20387e1bb87a7ca6addc0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page