mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2025-09-13 07:21:16 +00:00
Fix config and prediction revamp. (#259)
Extend single_test_optimization.py to be able to use real world data from new prediction classes. - .venv/bin/python single_test_optimization.py --real_world --verbose Can also be run with profiling "--profile". Add single_test_prediction.py to fetch predictions from remote prediction providers - .venv/bin/python single_test_prediction.py --verbose --provider-id PVForecastAkkudoktor | more - .venv/bin/python single_test_prediction.py --verbose --provider-id LoadAkkudoktor | more - .venv/bin/python single_test_prediction.py --verbose --provider-id ElecPriceAkkudoktor | more - .venv/bin/python single_test_prediction.py --verbose --provider-id BrightSky | more - .venv/bin/python single_test_prediction.py --verbose --provider-id ClearOutside | more Can also be run with profiling "--profile". single_test_optimization.py is an example on how to retrieve prediction data for optimization and use it to set up the optimization parameters. Changes: - load: Only one load provider at a time (vs. 5 before) Bug fixes: - prediction: only use providers that are enabled to retrieve or set data. - prediction: fix pre pendulum format strings - dataabc: Prevent error when resampling data with no datasets. Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
This commit is contained in:
@@ -605,8 +605,7 @@
|
||||
}
|
||||
],
|
||||
"title": "Weather Provider",
|
||||
"description": "Weather provider id of provider to be used.",
|
||||
"default": "ClearOutside"
|
||||
"description": "Weather provider id of provider to be used."
|
||||
},
|
||||
"pvforecastimport_file_path": {
|
||||
"anyOf": [
|
||||
@@ -1865,7 +1864,7 @@
|
||||
"title": "Pvforecast5 Strings Per Inverter",
|
||||
"description": "Number of the strings of the inverter of this plane."
|
||||
},
|
||||
"load0_import_file_path": {
|
||||
"load_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -1878,10 +1877,10 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Import File Path",
|
||||
"title": "Load Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load0_import_json": {
|
||||
"load_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -1890,119 +1889,7 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load1_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load1_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load2_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load2_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load3_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load3_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load4_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load4_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Import Json",
|
||||
"title": "Load Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"loadakkudoktor_year_energy": {
|
||||
@@ -2017,7 +1904,7 @@
|
||||
"title": "Loadakkudoktor Year Energy",
|
||||
"description": "Yearly energy consumption (kWh)."
|
||||
},
|
||||
"load0_provider": {
|
||||
"load_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -2026,10 +1913,10 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Provider",
|
||||
"title": "Load Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load0_name": {
|
||||
"load_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -2038,103 +1925,7 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load1_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load1_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load2_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load2_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load3_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load3_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load4_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load4_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Name",
|
||||
"title": "Load Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"elecpriceimport_file_path": {
|
||||
@@ -2175,8 +1966,7 @@
|
||||
}
|
||||
],
|
||||
"title": "Elecprice Provider",
|
||||
"description": "Electicity price provider id of provider to be used.",
|
||||
"default": "ElecPriceAkkudoktor"
|
||||
"description": "Electicity price provider id of provider to be used."
|
||||
},
|
||||
"prediction_hours": {
|
||||
"anyOf": [
|
||||
@@ -2630,22 +2420,6 @@
|
||||
"description": "Compute a list of the maximum power rating of the inverter per active planes.",
|
||||
"readOnly": true
|
||||
},
|
||||
"load_count": {
|
||||
"type": "integer",
|
||||
"title": "Load Count",
|
||||
"description": "Maximum number of loads.",
|
||||
"readOnly": true
|
||||
},
|
||||
"load_providers": {
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array",
|
||||
"uniqueItems": true,
|
||||
"title": "Load Providers",
|
||||
"description": "Load providers.",
|
||||
"readOnly": true
|
||||
},
|
||||
"timezone": {
|
||||
"anyOf": [
|
||||
{
|
||||
@@ -2703,8 +2477,6 @@
|
||||
"pvforecast_planes_tilt",
|
||||
"pvforecast_planes_userhorizon",
|
||||
"pvforecast_planes_inverter_paco",
|
||||
"load_count",
|
||||
"load_providers",
|
||||
"timezone",
|
||||
"data_output_path",
|
||||
"data_cache_path",
|
||||
@@ -3310,8 +3082,7 @@
|
||||
}
|
||||
],
|
||||
"title": "Weather Provider",
|
||||
"description": "Weather provider id of provider to be used.",
|
||||
"default": "ClearOutside"
|
||||
"description": "Weather provider id of provider to be used."
|
||||
},
|
||||
"pvforecastimport_file_path": {
|
||||
"anyOf": [
|
||||
@@ -4570,7 +4341,7 @@
|
||||
"title": "Pvforecast5 Strings Per Inverter",
|
||||
"description": "Number of the strings of the inverter of this plane."
|
||||
},
|
||||
"load0_import_file_path": {
|
||||
"load_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -4583,10 +4354,10 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Import File Path",
|
||||
"title": "Load Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load0_import_json": {
|
||||
"load_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -4595,119 +4366,7 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load1_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load1_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load2_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load2_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load3_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load3_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"load4_import_file_path": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"format": "path"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Import File Path",
|
||||
"description": "Path to the file to import load data from."
|
||||
},
|
||||
"load4_import_json": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Import Json",
|
||||
"title": "Load Import Json",
|
||||
"description": "JSON string, dictionary of load forecast value lists."
|
||||
},
|
||||
"loadakkudoktor_year_energy": {
|
||||
@@ -4722,7 +4381,7 @@
|
||||
"title": "Loadakkudoktor Year Energy",
|
||||
"description": "Yearly energy consumption (kWh)."
|
||||
},
|
||||
"load0_provider": {
|
||||
"load_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -4731,10 +4390,10 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Provider",
|
||||
"title": "Load Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load0_name": {
|
||||
"load_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
@@ -4743,103 +4402,7 @@
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load0 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load1_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load1_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load1 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load2_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load2_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load2 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load3_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load3_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load3 Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"load4_provider": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Provider",
|
||||
"description": "Load provider id of provider to be used."
|
||||
},
|
||||
"load4_name": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Load4 Name",
|
||||
"title": "Load Name",
|
||||
"description": "Name of the load source."
|
||||
},
|
||||
"elecpriceimport_file_path": {
|
||||
@@ -4880,8 +4443,7 @@
|
||||
}
|
||||
],
|
||||
"title": "Elecprice Provider",
|
||||
"description": "Electicity price provider id of provider to be used.",
|
||||
"default": "ElecPriceAkkudoktor"
|
||||
"description": "Electicity price provider id of provider to be used."
|
||||
},
|
||||
"prediction_hours": {
|
||||
"anyOf": [
|
||||
|
Reference in New Issue
Block a user