mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2026-08-31 12:46:38 +00:00
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>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
c59bf1b486
commit
67cf6f7d8a
@@ -257,13 +257,14 @@ The GENETIC algorithm supports 4 devices:
|
||||
- **electric_vehicle**: An electric vehicle, basically the battery of an electric vehicle. The
|
||||
The electrical vehicle is optional.
|
||||
- **battery**: A battery that can be charged by the inverter. The battery is mandatory.
|
||||
- **home_appliance**: A home appliance, like a washing machine or a dish washer. The home
|
||||
appliance is optional.
|
||||
- **home_appliance**: A flexible consumer, like a washing machine or a dish washer. Any number of
|
||||
home appliances can be configured; each is scheduled independently. Home appliances are optional.
|
||||
|
||||
:::{admonition} Warning
|
||||
:class: warning
|
||||
The GENETIC algorithm can only use the first inverter, electrical vehicle, battery, home appliance
|
||||
that is configured, even if more devices are configured.
|
||||
The GENETIC algorithm can only use the first inverter, electrical vehicle and battery that is
|
||||
configured, even if more devices are configured. Home appliances are the exception: all configured
|
||||
home appliances are scheduled.
|
||||
:::
|
||||
|
||||
#### Inverter simulation configuration
|
||||
|
||||
Reference in New Issue
Block a user