Developing an AI system for the energy sector
The energy sector is undergoing a fundamental transformation: the growth of renewable energy sources (wind and solar), battery energy storage, and electric vehicles are creating new patterns of generation and consumption. AI is managing this complex system in real time.
Forecasting renewable energy generation
Solar Generation Forecast:
Key factor: solar radiation on the surface of the panels depends on: - Global Horizontal Irradiance (GHI) from the weather forecast - Direct Normal Irradiance vs. Diffuse - Panel temperature (at >25°C - efficiency decrease ~0.4%/°C) - Panel contamination (gradual drift)
import pandas as pd
import numpy as np
from sklearn.ensemble import GradientBoostingRegressor
class SolarPowerPredictor:
"""Прогноз выработки солнечной электростанции"""
def build_features(self, weather_forecast, panel_specs, timestamp):
"""Преобразование прогноза погоды в признаки для ML"""
features = {
'ghi': weather_forecast['global_horizontal_irradiance'],
'dni': weather_forecast['direct_normal_irradiance'],
'dhi': weather_forecast['diffuse_horizontal_irradiance'],
'temp_air': weather_forecast['temperature'],
'wind_speed': weather_forecast['wind_speed'],
'cloud_cover': weather_forecast['cloud_cover_pct'],
# Временны́е признаки (влияние угла солнца)
'hour_sin': np.sin(2 * np.pi * timestamp.hour / 24),
'hour_cos': np.cos(2 * np.pi * timestamp.hour / 24),
'day_of_year_sin': np.sin(2 * np.pi * timestamp.dayofyear / 365),
'day_of_year_cos': np.cos(2 * np.pi * timestamp.dayofyear / 365),
# Панельные характеристики
'panel_azimuth': panel_specs['azimuth'],
'panel_tilt': panel_specs['tilt'],
'installed_capacity_kw': panel_specs['capacity_kw'],
# Лаговые признаки из актуальных измерений
'actual_power_lag_1h': weather_forecast.get('actual_power_1h_ago', np.nan),
}
return features
def predict_day_ahead(self, location, date, panel_specs):
"""Почасовой прогноз выработки на завтра"""
forecast_hours = pd.date_range(date, periods=24, freq='H')
weather = self._get_weather_forecast(location, forecast_hours)
features = [self.build_features(weather.iloc[i], panel_specs, h)
for i, h in enumerate(forecast_hours)]
X = pd.DataFrame(features).fillna(0)
return self.model.predict(X) # кВт/ч по часам
Wind Generation Forecast:
LSTM on NWP (Numerical Weather Prediction) data: wind speed and direction at hub height. Feature: the wind turbine power curve is nonlinear (cut-in ~3 m/s, rated ~12–15 m/s, cut-out ~25 m/s).
Balancing the power system
Load Forecasting:
System-level consumption forecasting is the basis for balancing. Indicators: - Air temperature (nonlinear relationship: both hot and cold → peaks) - Day of the week, holidays - Economic activity (industrial consumption) - Circular patterns: morning/evening peaks
Transformer-based models (Informer, Autoformer) are the new standard for long-term load forecasting. MAPE for short-term forecasting (1–6 hours): 1–3%.
Real-time balancing:
Dispatch optimization: with a predicted deficit/surplus - how to distribute the load between: - Thermal power plants (flexible generation) - BESS (Battery Energy Storage Systems) - Demand Response (controlled loads) - Intersystem flows
Stochastic MPC: optimization taking into account renewable energy forecast uncertainty.
Predictive Maintenance of Energy
Predictive turbine maintenance:
A gas turbine unit (GTU) is high-temperature equipment with expensive maintenance: - Vibration diagnostics: accelerometers on bearings → FFT analysis → bearing degradation/imbalance - Thermodynamic parameters: turbine efficiency by measurements → gradual contamination of the compressor - Erosion/corrosion prediction: by the chemical composition of the fuel and history
High voltage transformers:
Monitoring of dissolved gases in oil (DGA — Dissolved Gas Analysis): - H₂, CH₄, C₂H₂, CO — indicators of different types of defects - Duval triangle + ML for classifying the type of malfunction - Online DGA sensors → continuous monitoring without sampling
Smart Grid and Distributed Resource Management
Virtual Power Plant (VPP):
Consolidation of distributed resources (BESS, diesel generators, controlled loads) into a single dispatch resource: - Aggregation ≥1 MW → participation in the balancing market - ML-management: when to charge/discharge BESS for maximum income - Price forecast on the Wholesale Electricity and Capacity Market (WECM) → optimal bid
EV Smart Charging:
Tens of thousands of electric vehicles = manageable load: - Forecast of connection and departure times (based on user history and profile) - V2G (Vehicle-to-Grid): EV discharge during peak hours → income for the owner - Charging at night (cheap tariff) without exceeding transformer capacities
Development time: 6–12 months for a comprehensive Energy AI platform with forecasting, balancing, and predictive maintenance.







