1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.
Dynamic programming optimisation tool
This project implements the dynamic programming tool proposed in this paper and available in the R Software in the ConConPiWiFun package
Table of Contents
1. Installation
If you want to install the package from source, you can do
pip install git+https://github.com/robingirard/dynprogstorage#egg=dynprogstorage
Documentation
optimisation problem
This tool allows you to solve problems with the form
## min_x sum_i phi_i(x_i) phi_i : convex piecewise linear function
## P_i^-<= x_i <=P_i^+
## C_i^-<= x_0 + sum_j=0^i x_j <= C_i^+
Examples
Let us give a few examples of use
storage operation example
While participating in the market with a 100% efficiency storage you want to maximize the profit
## min_x sum_i Pi_i x_i ( phi_i linear function)
## -p_max <= x_i <=p_max
## 0<= x_0 + sum_j=0^i x_j <= c_max
## x_i>0 : consumption from the network
## x_i<0 : producing (injection to network)
### --> phi_i(x_i) is a buying cost we want to minimize
The code you need to use is :
## Definition of values
x_0=0
nbTime=250
Prices=random.uniform(1, 1000, nbTime)
p_max=1.
c_max=10.*p_max
## Generation of a vector of cost functions
cpl_func = GenCostFunctionFromMarketPrices(Prices.tolist())
cpl_func.vec_get(0).getBreakPoints() ## what does the first cost function look like
## now solve the optimisation problem
res = cpl_func.OptimMargInt([-p_max]*nbTime,[p_max]*nbTime,[-x_0]*nbTime,[c_max-x_0]*nbTime)
print(res)
## Visualisation of results (power) with prices
period=100
plt.plot(res[:100])
plt.plot(-(Prices[:100]-Prices.mean())/Prices.max())
plt.ylabel("Puissance (MW)")
plt.xlabel("Index")
plt.show()
## Visualisation of Energy evolution
energie=np.cumsum(res)
plt.plot(energie[:100], color='g')
plt.plot([0]*100, color='b')
plt.plot([c_max]*100, color='b')
plt.ylabel("Energie (MWh)")
plt.xlabel("Index")
plt.show()
Metadata
Release files for dynprogstorage 0.1.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
File added late
1 file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release files before installing.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dynprogstorage-0.1.10.tar.gz | 66.4 kB | Without provenance | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dynprogstorage-0.1.10-cp38-cp38-win_amd64.whl | CPython 3.8 | CPython 3.8 | Windows x86-64 | Details |
| dynprogstorage-0.1.10-cp38-cp38-macosx_10_9_x86_64.whl | CPython 3.8 | CPython 3.8 | macOS 10.9+ x86-64 | Details |
Total release size: 209.6 kB
Release files / dynprogstorage-0.1.10.tar.gz
| Download URL | dynprogstorage-0.1.10.tar.gz |
|---|---|
| Size | 66.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6f943e1644e89e38b59c7b69e12175bd0eef376d9e64a4cd7336287b6a0bd59f
|
|
BLAKE2b-256 checksum How to use checksums |
887ffdbcaea94af3501607f67a9243afc4bcad446bc5a1aa6889db71ee087893
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.3
|
Release files / dynprogstorage-0.1.10-cp38-cp38-win_amd64.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | dynprogstorage-0.1.10-cp38-cp38-win_amd64.whl |
|---|---|
| Size | 62.5 kB |
| Tags | CPython 3.8 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ff55c80c74423a0f58164fda20637c7a70438c982f987650bc2787402a60114b
|
|
BLAKE2b-256 checksum How to use checksums |
1da823030b0ab01c297ccfb02e9759990ab26ff357a8ac33f38c1ac7000487cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.3
|
Release files / dynprogstorage-0.1.10-cp38-cp38-macosx_10_9_x86_64.whl
| Download URL | dynprogstorage-0.1.10-cp38-cp38-macosx_10_9_x86_64.whl |
|---|---|
| Size | 80.7 kB |
| Tags | CPython 3.8 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
0c0d6fe867ce2a30f917e7acbb12b0616aa3d1dad3f9e82961fce309c3ebb225
|
|
BLAKE2b-256 checksum How to use checksums |
7cef9df90e698208643f6663b7984ca753aa619573a9a75b9b3223d477bbfbd3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.3
|
Security for dynprogstorage 0.1.10
Upload timing
File added late
1 file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.