Development of an AI system for optimizing building energy consumption
Commercial real estate consumes 40% of the world's electricity. An average-sized building (10,000 m²) consumes 500–2000 MWh/year. Intelligent building management (Building Energy Management System) reduces consumption by 20–35% without sacrificing comfort.
Building models
Physics-informed building model:
The building is described by a thermal RC scheme: - R (thermal resistance): thermal insulation of walls, windows - C (thermal capacity): thermal mass of structures - Q_internal: heat emission of people, lighting, equipment - Q_solar: solar influx through windows
ML-parameter identification: based on historical temperature and consumption data → LightGBM identifies the thermal inertia of a specific building (1–4 hours typical).
import numpy as np
from scipy.integrate import odeint
from scipy.optimize import minimize
import pandas as pd
class BuildingThermalModel:
"""Упрощённая RC-модель теплодинамики здания"""
def __init__(self, thermal_resistance=0.5, thermal_capacity=3e7):
self.R = thermal_resistance # °C/Вт
self.C = thermal_capacity # Дж/°C
def simulate(self, T_init, t_hours, T_outdoor, Q_hvac, Q_internal, Q_solar):
"""
Симуляция температуры в здании.
Q_hvac: мощность HVAC [Вт], положительное = нагрев
Q_internal: внутренние тепловыделения [Вт]
Q_solar: солнечный приток [Вт]
"""
def dT_dt(T, t):
t_idx = min(int(t * 60), len(T_outdoor)-1) # индекс по минутам
Q_loss = (T_outdoor[t_idx] - T[0]) / self.R
return [(Q_hvac[t_idx] + Q_internal[t_idx] + Q_solar[t_idx] + Q_loss) / self.C]
t_sec = np.arange(0, t_hours * 3600, 60) # каждую минуту
T_sim = odeint(dT_dt, [T_init], t_sec)
return T_sim.flatten()
def calibrate(self, historical_temps, historical_inputs):
"""Подбор R и C по историческим данным (inverse problem)"""
def residuals(params):
self.R, self.C = params
T_sim = self.simulate(**historical_inputs)
return np.mean((T_sim - historical_temps)**2)
result = minimize(residuals, x0=[0.5, 3e7], method='Nelder-Mead')
self.R, self.C = result.x
Model Predictive Control for HVAC
A building's thermal inertia is an opportunity for optimization. If pre-cooling is implemented during low-cost hours, the HVAC will operate less during peak (high-cost) hours:
from scipy.optimize import minimize
def mpc_hvac_controller(
building_model,
current_temp,
setpoint, # целевая температура [°C]
outdoor_forecast, # прогноз уличной температуры на 24ч
electricity_tariff, # тариф электроэнергии по часам [руб/кВтч]
comfort_band=1.5 # допустимое отклонение от уставки [°C]
):
N = 24 # горизонт 24 часа
max_power = 500000 # Вт максимальная мощность HVAC
def cost_function(Q_hvac_schedule):
# Симулировать температуру при данном расписании мощностей
T_sim = building_model.simulate(
T_init=current_temp,
t_hours=N,
T_outdoor=outdoor_forecast,
Q_hvac=Q_hvac_schedule,
Q_internal=np.full(N*60, 50000), # типичное тепловыделение
Q_solar=np.zeros(N*60) # ночью
)
# Энергетическая стоимость
energy_cost = sum(
Q_hvac_schedule[h] / 1000 * electricity_tariff[h] # кВтч × тариф
for h in range(N)
)
# Штраф за выход из зоны комфорта
T_hourly = T_sim[::60][:N]
comfort_violation = sum(max(0, abs(T_hourly[h] - setpoint) - comfort_band)**2
for h in range(N))
return energy_cost + 10000 * comfort_violation # взвешенная сумма
Q0 = np.full(N, max_power * 0.3) # начальное приближение
bounds = [(0, max_power)] * N
result = minimize(cost_function, Q0, method='SLSQP', bounds=bounds)
return result.x[0] # мощность на следующий час
Building subsystems
Lighting:
A combination of motion sensors + lux meters + ML-schedule: - Presence in the room (PIR sensors) → automatic switch-off after 10 minutes - Daylight harvesting: measure natural light → add exactly the required amount - ML predicts the occupancy of meeting rooms according to the calendar → pre-heat + pre-light before the start
Lighting savings: 40–60% of base consumption in office buildings.
Elevators:
Elevator Group Control algorithm: - Prediction of traffic patterns (down in the morning, up in the evening, chaotic lunchtime) - Predetermined positioning of cabins in anticipation of the peak - Reduction of average waiting time by 20–35%
Integration and monitoring
BAS (Building Automation System) integration:
- BACnet/IP, Modbus, KNX — standard building system protocols - Digital twin of the building: visualization in BIM (Autodesk Revit, Bentley Buildings) - Carbon footprint: automatic generation of Energy Performance Certificate
Consumption anomalies:
Isolation Forest monitors hourly consumption by system → alerts for abnormal consumption. Typical causes: an air conditioner left behind on a weekend, a coolant leak, or a faulty heating element.
Development time: 3-5 months for BMS AI extension with HVAC MPC optimization and consumption analytics.







