Andreas
d4056af0f6
Add resilient market feed-in tariff providers
2026-07-15 16:10:34 +02:00
Andreas and Claude Opus 4.8
67cf6f7d8a
feat(optimization): schedule any number of flexible consumers
...
Replace the single hourly "dishwasher" home appliance with a list of
flexible consumers (home_appliances). Each consumer defines its load
either as an explicit power profile (energy-preservingly resampled onto
the optimization slot grid, incl. 15-min and non-integer interval ratios)
or the flat consumption_wh/duration_h fallback, and runs ONCE or DAILY
within its time windows and the optimization horizon.
- ConsumerScheduleMode + shared load-definition validation (XOR of
profile/fallback, reject negative/NaN/inf, unique device_id)
- ApplianceGeneLayout: variable appliance gene block (index into
allowed_start_slots), ONCE/DAILY calendar-day based, no snapping
- per-device output: result.home_appliance_energy_wh, appliance_starts
(absolute local times), per-device solution columns and DDBC RUN/OFF
instructions on state transitions only
- deprecate dishwasher/washingstart/Home_appliance_wh_per_hour with
backward-compatible mapping and explicit conflict rejection
- max_home_appliances is now an upper bound only; no demo appliance and
no on/off behaviour
- docs, openapi.json, CHANGELOG and optimize_result_2* fixtures updated;
new tests/test_homeappliance.py covers the mandatory test matrix
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-15 14:19:46 +02:00
Andreas
c59bf1b486
docs: describe feed-in tariff forecast
2026-07-15 09:23:29 +02:00
Andreas
bed1f0f275
feat(optimization): model battery LCOS and probabilistic bypass
2026-07-15 09:23:29 +02:00
Andreas
a1b469fa38
perf: cache AC charge break-even prices
2026-07-14 17:54:15 +02:00
Andreas
92a8a093e8
feat: complete 15-minute optimization support
2026-07-14 17:00:07 +02:00
Andreas and Claude Fable 5
7f2ac9098c
feat: Direktvermarktung mit Batterie-Netzeinspeisung
...
Fügt einen Direktvermarktungs-Modus (feedintariff.direct_marketing_enabled)
hinzu, der den Börsenpreis als Einspeisevergütung nutzt und aktive
Batterie-Entladung ins Netz (battery_grid_export_allowed) sowie
DC-Charge-Bypass optimiert.
- FeedInTariffEnergyCharts-Provider (Börsen-Einspeisetarif inkl. Prognose)
- Inverter: DC/AC-Wirkungsgrade und Batterie-Grid-Export in process_energy
- Genetik: Export-/DC-Charge-Zustände, Restwert-Bewertung des Akkus
- Solution-Result: neues Feld Feed_in_tariff (verwendeter Tarif je Stunde)
- Tests für neue Provider, Solution und Simulation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-12 09:01:33 +02:00
Andreas
cc583600d8
fix: use stored history for Tibber price forecast
2026-07-09 11:20:46 +02:00
Andreas
15ba84b39c
fix: add Tibber electricity price extrapolation
2026-07-09 10:38:21 +02:00
Andreas
e381cbf542
feat: add Tibber price provider and PV forecast providers
2026-07-08 16:36:59 +02:00
Andreas and Andreas
1b597d1e0f
Test update
2025-01-02 15:29:01 +01:00
Andreas and Andreas
1ccedea984
Fix URL in elecprice
2025-01-02 15:29:01 +01:00
Andreas and Dominique Lasserre
86d2173a4d
Awattar Price changed to more precise value; if SoC=0 discharge =1 forced. Exp Avg for siple Price Forecast
...
* Discharge Mask Bug, Tests updated, simple Price Forecast with linear weighting
* Price Forecast with linear weighting, last value = highest weighting Discharge enforce when soc = 0 -> mask bug
2024-12-30 13:07:08 +01:00
Andreas and Dominique Lasserre
54eae5a871
Soc 1 hour shift fixed + some german -> english translations in ems
2024-12-30 13:07:08 +01:00
Andreas and Dominique Lasserre
410a23e375
Self consumption predictor
...
* Inverter: Self consumption interpolator for better discharge_hour results
* Small penalty when EV 100% and charge >0
* Price Forceast (use mean of last 7 days instead of repeat)
* Price Prediction as JSON simulation output, config fixed electricty fees configurable + MyPy & Ruff
2024-12-30 13:07:08 +01:00
Andreas
c791ecb683
Merge
2024-12-26 08:12:56 +01:00
Andreas
ef4b07610f
Merge branch 'soc_zero_price_precision' of https://github.com/Akkudoktor-EOS/EOS into soc_zero_price_precision
2024-12-26 08:11:06 +01:00
Andreas
072413f1a4
Ruff
2024-12-26 08:10:02 +01:00
Andreas
f89889410d
Awattar Price changed to more precise value; if SoC=0 discharge =1 forced. Exp Avg for siple Price Forecast
2024-12-26 08:10:02 +01:00
Andreas
d348be8025
Merge branch 'soc_zero_price_precision' of https://github.com/Akkudoktor-EOS/EOS into soc_zero_price_precision
2024-12-26 08:01:11 +01:00
Andreas
546400aea6
Ruff
2024-12-26 08:00:52 +01:00
Andreas
83a048fb83
Ruff
2024-12-26 07:55:29 +01:00
Andreas
a126d89362
Price Forecast with linear weighting, last value = highest weighting
...
Discharge enforce when soc = 0 -> mask bug
2024-12-26 07:50:30 +01:00
Andreas
8b9ad60759
Discharge Mask Bug, Tests updated, simple Price Forecast with linear weighting
2024-12-26 07:50:25 +01:00
Andreas and Andreas
af49072a2e
Awattar Price changed to more precise value; if SoC=0 discharge =1 forced. Exp Avg for siple Price Forecast
2024-12-25 19:17:08 +01:00
Andreas
56aa0ac2f5
Awattar Price changed to more precise value; if SoC=0 discharge =1 forced. Exp Avg for siple Price Forecast
2024-12-25 19:12:38 +01:00
Andreas and Andreas
2a526aa228
English translation EMS
2024-12-22 12:22:27 +01:00
Andreas and Andreas
82b9216be5
Soc 1 hour shift fixed + some german -> english translations in ems
2024-12-22 12:22:27 +01:00
Andreas and Andreas
75ee2408c4
Standard Optimization time 48h -> Tests updated
2024-12-22 10:36:36 +01:00
Andreas and Andreas
9dcb88881b
Test Update with new algorithm
2024-12-21 14:57:11 +01:00
Andreas and Andreas
117a8852ee
Tests fixed
2024-12-21 14:57:11 +01:00
Andreas and Andreas
471788f11d
Path
2024-12-21 14:57:11 +01:00
Andreas and Andreas
d2a83f6ea4
Price Prediction as JSON simulation output, config fixed electricty fees configurable + MyPy & Ruff
2024-12-21 14:57:11 +01:00
Andreas and Andreas
6aa8838e5b
Price Forceast (use mean of last 7 days instead of repeat)
2024-12-21 14:57:11 +01:00
Andreas and Andreas
155c116819
EV Charge Bug fixed
2024-12-21 14:57:11 +01:00
Andreas and Andreas
b0cd910403
Start solution Bug
2024-12-21 14:57:11 +01:00
Andreas and Andreas
85395076be
Small penalty when EV 100% and charge >0
2024-12-21 14:57:11 +01:00
Andreas and Andreas
83bfb1878b
Time stop in verbose + LRU Cache / Vectoriz.
2024-12-21 14:57:11 +01:00
Andreas and Andreas
9214d190e8
Bug
2024-12-21 14:57:11 +01:00
Andreas and Andreas
4e8e9bd0c0
First self consumption predictor only PV > load
2024-12-21 14:57:11 +01:00
Andreas and Andreas
c56d29f63d
Interpolator Self Consumption
2024-12-21 14:57:11 +01:00
Andreas and Andreas
1e6d11ba17
Penalty not neccessary anymore.
...
Self Consumption rate is FIXED!!! TODO!
2024-12-21 14:57:11 +01:00
Andreas and Andreas
653f4f8d9f
- discharge hour penalty from start_hour
...
- Inverter: Frist try of small self consumption rate (fixed) for better discharge_hour results
2024-12-21 14:57:11 +01:00
Andreas and Andreas
9620efccf1
openAPI Template
2024-12-11 10:31:50 +01:00
Andreas and Andreas
ac90abd621
mypy
2024-12-11 10:31:50 +01:00
Andreas and Andreas
598221d6e3
Swagger Fix (Pydantic) Gesamtlast
2024-12-11 10:31:50 +01:00
Andreas and Andreas
8baa3ae81a
OpenAPI Gesamtlast changed
2024-12-11 10:14:30 +01:00
Andreas and Andreas
8f341ab6c6
pre commit
2024-12-11 10:14:30 +01:00
Andreas and Andreas
1c485091e4
Gesamtlast does not work anymore. Wrong FastAPI Header. Swagger also wrong
2024-12-11 10:14:30 +01:00
Andreas and Andreas
f74f895550
Bugfixes
2024-12-11 07:44:28 +01:00
Andreas and Andreas
d63601d742
Price Prediction failed, used Normanns fixes for the new code
2024-12-11 07:44:28 +01:00
Andreas and Andreas
2e54775efe
Hopefully the last precommit fix
2024-10-22 10:39:10 +02:00
Andreas and Andreas
3f064ba5ef
PreCommit Fixed
2024-10-22 10:39:10 +02:00
Andreas and Andreas
cfbe7130e7
PreCommit Fixed
2024-10-22 10:39:10 +02:00
Andreas and Andreas
c47f071f55
PreCommit Fixed
2024-10-22 10:39:10 +02:00
Andreas and Andreas
45a3bcdb09
Tests fixed
2024-10-22 10:39:10 +02:00
Andreas and Andreas
24c7593056
Time problems in EMS / Optimization
2024-10-22 10:39:10 +02:00
Andreas and Andreas
ad550c874b
AC Charge Bug, Price Cache On/Off
2024-10-22 10:39:10 +02:00
Andreas and Andreas
7adf3d336a
AC /DC / Discharge optimzation - First try (not finished yet)
2024-10-22 10:39:10 +02:00
Andreas and Andreas
87ec02a90e
class_ems: AC / DC Charging
...
class_optimize: Timing Bugs fixed
class_numpy_encoder: JSON Encoder with Numpy support
visualize: AC / DC / Discharge
test_class_ems_2: New Test for AC / DC charging decision
2024-10-22 10:39:10 +02:00
Andreas and Andreas
cafed7eaca
EV Bugs
2024-10-22 10:39:10 +02:00
Andreas and Andreas
2b5f0ee53c
EV Charge Parameters optional + AC Charge first try (Parameter Reduction)
2024-10-22 10:39:10 +02:00
Andreas and Andreas
6881710295
EV possible currents -> Work now (new Mutate Function)
...
-> Some Penalties are removed (deprecated)
AC Charge -> Parameter in Optimization -1,0,1
-> Missing integration in class_ems
2024-10-22 10:39:10 +02:00
Andreas and Andreas
38a457a3dc
Ruff
2024-10-09 16:59:50 +02:00
Andreas and Andreas
004e1f3dc7
[BUG]: class_ems nd_array not JSON serializable
...
Big Bugfix - not sure if everything works
2024-10-09 16:59:50 +02:00
Andreas and Andreas
e72008471f
JSON Response fixed
2024-10-09 16:59:50 +02:00
Andreas and Andreas
05c0f74b09
min_soc (was killed by someone else, pls dont force push!)
2024-10-06 16:00:07 +02:00
Andreas and Andreas
738a4da455
MariaDB removed
2024-10-06 15:20:10 +02:00
Andreas and Andreas
e61a89cff6
Pre Commit
2024-10-06 14:35:11 +02:00
Andreas and Andreas
9b7817e3dc
- Home Appliances fixed
...
- Unittest with Home Appliances
2024-10-06 14:35:11 +02:00
Andreas and Andreas
0a0c3eed87
Unittest includes Home Appliances
2024-10-06 14:35:11 +02:00
Andreas and Andreas
9471ad7abc
Pre Commit Fixes
2024-10-05 09:22:10 +02:00
Andreas and Andreas
ee3f94a3e2
deleted dead File server_load_profile.py now in flask_server
...
test.py -> single_test_optimization.py
2024-10-05 09:22:10 +02:00
Andreas and Andreas
cd0d134408
Moved load_profile db to data
...
removed comments
fixed Bug in visualize.py (extra data empty)
removed dead cp
2024-10-05 09:22:10 +02:00
Andreas and Andreas
c047b0c7dc
Moves Load_Profiles
...
deleted comments
flask_server path with os lib
2024-10-05 09:22:10 +02:00
Andreas and Andreas
7f97bbb7bc
Pre Commit Fix
2024-10-05 08:50:23 +02:00
Andreas and Andreas
c7140f6da5
datetime bug
2024-10-05 08:50:23 +02:00
Andreas and Andreas
4458b9f841
English + Ruff
2024-10-04 11:04:50 +02:00
Andreas and Andreas
3e3d06272b
Unittest EMS
2024-10-04 11:04:50 +02:00
Andreas
d8c894ad5c
Merge branch 'main' of https://github.com/Akkudoktor-EOS/EOS
2024-10-04 09:05:08 +02:00
Andreas
240eeb0266
Removed comments
2024-10-03 17:32:00 +02:00
Andreas and Andreas
e31178569f
unittest -> pytest
2024-10-03 09:57:36 +02:00
Andreas
22c6a38513
Unittest Akku
...
class_akku: min_soc & max_soc now supported
2024-10-03 09:20:15 +02:00
Andreas
2260b5831d
Bugfix: Simulation Load Data missed
2024-10-01 06:51:06 +02:00
Andreas
ffdd76e140
Merge branch 'main' of https://github.com/Akkudoktor-EOS/EOS
2024-10-01 06:47:25 +02:00
Andreas
042c74ce99
Bugfix: Load Simulation did not return Data
2024-10-01 06:41:45 +02:00
Andreas and Andreas
e0463a36e0
Performance
...
Fixes #56
2024-09-30 10:32:54 +02:00
Bla Bla
acd04c8628
Bugfix: datetime.datetime -> datetime
...
Code nicht mehr lauffähig
2024-09-30 08:37:48 +02:00
Bla Bla
fb9b75183c
Optimierungsparameter eingestellt
...
Choice für die E-Auto LAdeströme entfernt, scheint in DEAP buggy zu sein
Initiale Lösung 3x eingefügt, damit diese bestehen bleibt
2024-09-15 11:08:00 +02:00
Bla Bla
35fa4666e1
Lastprediction als Service verfügbar und ohne DB Abfrage.
...
y
2024-09-08 10:28:54 +02:00
Bla Bla
004b16c2fd
Gesamtlast_simple
2024-09-05 14:26:26 +02:00
Bla Bla
c16faec6fe
Gesamtlast Bug
2024-09-05 14:20:25 +02:00
Bla Bla
992d1b085e
gesamtlast_simple
2024-09-05 14:16:43 +02:00
Bla Bla
93d30ffc29
optimzation_hours
2024-09-05 13:56:46 +02:00
Bla Bla
bc48f6113b
Tote Module entfernt
2024-09-05 13:51:34 +02:00
Bla Bla
58973514c1
Vergessen
2024-09-05 13:33:56 +02:00
Bla Bla
ca9fcc300a
config Example hochgeladen.
2024-09-04 08:41:18 +02:00
Bla Bla
792c95cea8
Config
2024-09-04 08:38:29 +02:00
Bla Bla
f5c75289c2
Merge branch 'main' of https://github.com/Akkudoktor-EOS/EOS
2024-09-04 08:37:02 +02:00
Bla Bla
5469b4d79e
Config.py lokal
2024-09-04 08:34:19 +02:00