Scenarios / Power generation

AI for Real-Time Distributed Power Generation Control

Real-time economic dispatch with frequency regulation

Shared objective

Keep the frequency at 50 Hz and minimize the total generation cost

Each generator observes

Grid frequency, load and generator outputs

Each generator decides

The change of its own output, every 2 seconds

How the grid responds to changing wind

00:00

Without control

Governors only

With AI control

Adaptive

Load and generation without control

Load and generation with AI control

Extra cost: generation cost above the cheapest way to produce the same total output.

How to train such an AI efficiently?

Why conventional multi-agent training struggles at scale

One agent's share of the shared reward

Illustration with equal contributions: the blue slice is what agent i's own action causes.

Noise in each agent's learning signal

With conventional multi-agent reinforcement learning, every agent learns from the same reward, in which its own effect shrinks as the system grows.

How our algorithm trains the generators, step by step

With global information about the whole system, a centralized solver can compute the optimal load, one that keeps generation and demand balanced at the lowest cost. Could such knowledge be internalized into how the agents are trained?

1
Referenceoffline, centralized
p~(t)=argminp∑iCi(pi)s.t.∑ipi=PL(t),pimin≤pi≤pimax

Least-cost output of every generator for the current net load PL.

2
Guidanceper generator
gi(t)=12(ui(t+1)−p~i(t)pimax)2−12(ui(t)−p~i(t)pimax)2

Change in the distance between generator i's command ui and its reference output; negative when it moves closer.

3
Learning signalper generator
A^i(t)=(1−α)A(t)−αg^i(t)

Shared advantage A of the reward r = −[(Δf / 0.05 Hz)² + extra cost], combined with the normalized guidance; α = 0.9.

4
Policy updateinternalizes the reference
∇θJ≈∑t∑iA^i(t)∇θlog⁡πθ(ai(t)|oi(t))

Each generator acts on its own observation oi; the reference and the guidance are not needed at run time.

At its core, our algorithm uses prior knowledge of the system, in the form of a reference state, to guide the training of decentralized policies and give every agent a clear optimization signal. Through training, each agent will internalize in its policy how to adjust its power output to what it observes.

The charts below show A(t) and −ĝi(t) during one training run.

One generator during training

Time

All generators at the selected time

One training run after 5 episodes. Separate vertical scales. Click a bar to select a generator.

Learning progress

Extra cost on the replayed disturbance

Episode