Multi-zone HVAC control is a shared-resource problem: zones on a floor share one fan and cooling coil, so each zone's demand affects its neighbours and the building's peak power. One controller per zone scales well and isolates faults, but each controller then observes only its own zone, not the shared air loop. In this work, we present a decentralised controller that assigns each zone an independent active-inference agent, which plans by minimising expected free energy and learns its zone dynamics online. The agents exchange no messages, so none depends on peers or a coordinator; each accounts for the unobserved coupling through a latent disturbance and a congestion signal derived from the metered power of the other floors. Fifteen agents are evaluated in EnergyPlus on a Sinergym office building against three rule-based controllers and three MADDPG fleets, one given the same floor meters. On five noisy weather years unseen during training, the fleet attains the lowest mean building peak (88.3 kW, 3 to 17 % below the baselines) and staggers the floor peaks better than any baseline, with a coincidence factor (building peak over the sum of the floor peaks) of 0.929 versus 0.936 to 0.994. Compared with a reactive rule at similar comfort (0.912 versus 0.916), it lowers the sum of monthly peaks, on which demand charges are billed, by 33 kW (4 %) in every year, at the cost of about 10 % more energy. It costs 9% less per year than the proactive rule (at lower comfort) and 1% less than the MADDPG fleet given the same floor meters, in every test year. The whole fleet runs on a single low-cost Raspberry Pi 5, closing the observation-to-action loop over MQTT in 442 ms at p95, far below the 15-minute control step.
Figures & tables
Controller
Peak
Σ monthly
CF
CS occ
ZCR
Energy
Cost
(kW)
peaks (kW)
(%)
(MWh)
(k$)
AIF (fixed reference)
88.3 ± 2.8
765 ± 14
0.929 ± 0.030
0.912 ± 0.003
83.6 ± 0.4
117.4 ± 2.7
55.4 ± 1.1
AIF (running reference)
88.5 ± 3.6
763 ± 14
0.927 ± 0.028
0.908 ± 0.003
82.9 ± 0.5
116.7 ± 2.6
55.0 ± 1.1
AIF, no congestion signal
94.1 ± 2.3
784 ± 16
0.967 ± 0.015
0.938 ± 0.001
88.7 ± 0.2
121.2 ± 2.8
57.8 ± 1.2
RBC reactive
93.8 ± 0.5
799 ± 14
0.974 ± 0.005
0.916 ± 0.003
85.6 ± 0.5
106.2 ± 2.9
53.7 ± 1.2
RBC proactive
90.9 ± 3.4
767 ± 17
0.958 ± 0.014
0.946 ± 0.001
90.6 ± 0.1
139.2 ± 2.8
61.1 ± 1.3
TABLE I: Results on the five noisy test years (W1), mean ± std. Learned controllers were trained or adapted on the deterministic year only and are tested with learning switched off. Lower is better for demand, energy and cost. Higher is better for comfort.
RBC
RBC
MADDPG
reactive
proactive
+ meters
Annual peak (kW)
−5.5 (5/5)
−2.6 (3/5)
−8.7 (5/5)
Σ monthly peaks
−33 (5/5)
−2 (3/5)
−9 (3/5)
CF
−0.045 (4/5)
−0.029 (4/5)
−0.007 (4/5)
CS occ
−0.004 (0/5)
−0.034 (0/5)
−0.015 (0/5)
Energy (MWh)
+11.2 (0/5)
−21.8 (5/5)
−2.1 (5/5)
TABLE II: Paired differences, AIF (fixed reference) minus the other controller, mean over the five W1 years. The count shows in how many years the AIF fleet was better.
Fig. 1: Comfort against total cost (left) and against the sum of monthly peaks (right) on the five noisy test years (mean ± std over years). Blue: AIF with adaptive energy weights and congestion weights of 0, 3, 4, 5 and 8 (numbers next to the points); the filled point is AIF (fixed reference) with weight 5, while the other points use the running reference. Red: the proactive RBC with summer cooling margins from 0.5 to 2.5\SIUnitSymbolCelsius , together with the reactive and demand-limiting RBCs (filled squares). Green triangles: MADDPG fleets.
Fig. 2: HVAC power per floor on 5 August of the deterministic year. Left: AIF fleet (last adaptation year). Right: proactive RBC.
Controller
Peak
CF
CS occ
DB
MWh
k$
RBC reactive
93.2
0.987
0.918
0.0
103.8
52.2
RBC proactive
92.4
0.980
0.947
10.5
137.2
60.2
RBC demand-limiting
92.4
0.979
0.947
9.7
136.0
60.1
MADDPG cold
104.7
0.997
0.928
1.6
118.6
55.3
MADDPG warm (reactive)
99.0
0.958
0.934
1.6
119.1
55.8
MADDPG + floor meters
91.9
0.913
0.930
1.9
117.4
54.6
TABLE III: Deterministic mixed year (W0). AIF: mean of the last three of five adaptation years. DB: deadband violations (% of zone steps).
Hot
Cool
Controller
kW
CS occ
k$
kW
CS occ
k$
AIF (fixed reference)
102.0
0.798
80.1
48.5
0.928
27.9
AIF, no congestion
103.8
0.874
83.1
55.2
0.935
28.9
RBC reactive
99.9
0.840
78.7
50.5
0.921
25.6
RBC proactive
95.2
0.884
80.6
48.5
0.947
32.5
RBC demand-limiting
110.0
0.884
81.9
48.5
0.947
32.2
TABLE IV: Unseen climates (W2), one year each.
Configuration
Peak (kW)
CF
CS occ
no congestion, fixed weights
92.9
0.974
0.939
adaptive weights only
92.9
0.976
0.939
congestion 5 only
92.3
0.934
0.930
congestion 4 + adaptive weights
92.0
0.923
0.924
congestion 5 + adaptive weights
84.8
0.880
0.917
fixed reference
84.7
0.876
0.923
TABLE V: AIF ablations and mechanism controls on the deterministic year (mean of the last three adaptation years). All rows use the running reference unless stated otherwise.
Fig. 3: Mean yearly cost on the noisy test years as a function of the demand charge. The dotted line marks the evaluated tariff ($26/kW-month).
Heating, ventilation, and air conditioning control optimizes building energy use while maintaining thermal comfort, indoor air quality, and equipment safety.