Skip to main content

SHIPP: Sizing optimization for HybrId Power Plants

CI/CD test suite DOI PyPi License

SHIPP logo

Description

SHIPP is used for studying the design and operation of hybrid power plants, i.e. power plants combining one or more renewable energy production with energy storage systems.

Documentation is available at https://jennaiori.github.io/shipp/

Installation

The package can be installed using pip.

pip install shipp

Usage

Examples are given in the folder examples/.

The folder experiments/ contains scripts to reproduce the results presented in the following publications:

  • hyb24_bl_hpp/: Iori, J., Zaaijer, M., von Terzi, D., & Watson, S. (2024). Design drivers for the storage system of baseload hybrid power plants. In 8th International Hybrid Power Plants and Systems Workshop, HYB 2024 (2 ed., Vol. 2024, pp. 245-250) https://doi.org/10.1049/icp.2024.1844
  • we25_robust_dispatch/: Iori, J., Zaaijer, M., Kreeft, J., von Terzi, D., Watson, S. (2025) Reliable operation of wind-storage systems for baseload power production, WindEurope Annual Event 2025 Copenhagen, Denmark. https://doi.org/10.1088/1742-6596/3025/1/012023

Dependencies

A valid access or license to a solver compatible with pyomo (MOSEK, CPLEX, Gurobi, etc.) is recommended to solve large problems (see more information here: https://www.pyomo.org/).

[1.2.2]

  • Changed class Storage: the depth-of-charge parameter dod is replaced by a minimum and maximum state-of-charge soc_min and soc_max.
  • Changed functions solve_lp_pyomo, solve_lp_sparse and solve_dispatch_pyomo: the input p_min is now optional and default to 0.
  • Changed function solve_dispatch_pyomo to take a single dictionary argument options for optional arguments like fixed_cap and the penalty factors (similar to solve_lp_pyomo and solve_lp_sparse).
  • Changed optimization problem implemented in solve_dispatch_pyomo
    • The ramp-limit is now characterized by separate up- and down- bounds dp_min and dp_max, with dp_min $\leq 0$.
    • Addition and renaming of tuning parameters beta_obj and gamma_obj in alignment with the optimization problems implemented in solve_lp_sparse and solve_lp_pyomo.
    • Addition of a slack variable to reduce deviations to the baseload constraint, similar to what was implemented for the ramp constraint.
    • Reformulation of the ramp-limit and baseload constraint at the first time step to combine a binary variable and a slack variable.
    • Addition of tuning parameters mu1_obj, mu2_obj and mu3_obj for the total reliability and the slack variables of the baseload and ramp penalties, respectively.

Authors and acknowledgment

This project is developed by Jenna Iori at Delft University of Technology and was initially part of the Hollandse Kust Noord wind farm innovation program, with funding from CrossWind C.V.

The code is release under the Apache 2.0 License (see License.md).

Technische Universiteit Delft hereby disclaims all copyright interest in the program “SHIPP” (a design optimization software for hybrid power plants) written by the Author(s).

Henri Werij, Faculty of Aerospace Engineering, Technische Universiteit Delft.

© 2024-2026, Jenna Iori

Metadata

Release files for shipp 1.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for shipp 1.2.2
File Size Uploaded
shipp-1.2.2.tar.gz 44.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for shipp 1.2.2
File Interpreter ABI Platform
shipp-1.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 79.9 kB

Release files / shipp-1.2.2.tar.gz

Download URL shipp-1.2.2.tar.gz
Size 44.6 kB
Tags Source
SHA-256 checksum
How to use checksums
4f6a733a9b572bef55b69b888da46eea074bedaf13875fccba84217af8dac968
BLAKE2b-256 checksum
How to use checksums
04e942b863ca73d7b8e303ca123dcbcc3016f7ea628817a81ceb97d583f95e08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / shipp-1.2.2-py3-none-any.whl

Download URL shipp-1.2.2-py3-none-any.whl
Size 35.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
491e2d722c7ae926c88231463f1fc356ece9910b5bb2e813b1a666fa2959f677
BLAKE2b-256 checksum
How to use checksums
5cac7b42e8eb02271e086ce0d8bee4dc67b8fed5157b163277c942b043aa486a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release history Release notifications | RSS feed

This release

1.2.2 This release

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1

1 release file

1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page