batteryopt is a battery operation optimization tool developed by Jakub Szcześniak and implemented by Samuel Letellier-Duchesne. The objective is to minimize the annual electricity costs of a battery-integrated PV system using a Mixed-Integer Linear Program (MILP). The algorithm is implemented using the pyomo library opening up the model to a large array of solvers (e.g.: Gurobi, GLPK, etc.).
Installation
conda create --name batteryopt python=3.7 # tested with 3.7, 3.8 and 3.9
conda activate batteryopt
git clone https://github.com/MITSustainableDesignLab/batteryopt.git
cd batteryopt
python setup.py install
Usage
Type batteryopt --help to access the command line options
Output
batteryopt outputs an Excel file with the model Variables for each time step of the year:
| t | tf | M | P_dmd | P_elec | P_pv | Buying | Charging | Discharging | E_s | P_charge | P_discharge | P_dmd_unmet | P_grid | P_pv_excess | P_pv_export | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 1 | nan | nan | 60536.5 | 0.0002624 | 0 | 1 | 0 | 0 | 20000 | -0 | -0 | 60536.5 | 60536.5 | 0 | 0 |
| 1 | 1 | 1 | nan | 60536.5 | 0.0002624 | 0 | 1 | 0 | 0 | 20000 | -0 | 0 | 60536.5 | 60536.5 | 0 | 0 |
| 2 | 1 | 1 | nan | 60536.5 | 0.0002624 | 0 | 1 | 0 | 0 | 20000 | -0 | 0 | 60536.5 | 60536.5 | 0 | 0 |
| 3 | 1 | 1 | nan | 60536.5 | 0.0002624 | 0 | 1 | 0 | 0 | 20000 | -0 | 0 | 60536.5 | 60536.5 | 0 | 0 |
| 4 | 1 | 1 | nan | 60536.5 | 0.0002624 | 0 | 1 | 0 | 0 | 20000 | -0 | 0 | 60536.5 | 60536.5 | 0 | 0 |
The column names are:
Metadata
Release files for batteryopt 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| batteryopt-0.1.0.tar.gz | 9.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| batteryopt-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.0 kB
Release files / batteryopt-0.1.0.tar.gz
| Download URL | batteryopt-0.1.0.tar.gz |
|---|---|
| Size | 9.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d70ae8c0c8523be6549b40ef2215318ac4751c1c0b18afb58b8d437cf4679e15
|
|
BLAKE2b-256 checksum How to use checksums |
70c6526d2c7cbfde965c66c6fa767049adcf56f68b376c32342552850e9b1de1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1
|
Release files / batteryopt-0.1.0-py3-none-any.whl
| Download URL | batteryopt-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b0e25e846dcd7f95d3203092f87e22e7681ef7574631a6ce0b8d6297e25e3e22
|
|
BLAKE2b-256 checksum How to use checksums |
bfabe4580165a98450f16db3b06207720c86530f4bb363d443db85c0e1686173
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1
|