Paper · 2021-01-25 · cs.LG, cs.AI, eess.SY
A Review of Graph Neural Networks and Their Applications in Power Systems
A review of graph neural networks (GCN, GRNN, GAT, generative and spatio-temporal GNNs, hybrids) and their uses in power systems: fault diagnosis, time-series forecasting, power flow and data generation. It runs no experiments of its own; quoted numbers come from cited works.
Graph neural networkTime series forecastingGenerative adversarial network (GAN)surveygraph-neural-networkspower-systems
AI-compiled by claude-haiku-5-5 on 2026-11-01, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.
In plain words
Power grids produce data that does not sit on a neat grid or in a neat sequence. Sensors sit on buses and lines that connect in irregular patterns, and ordinary neural networks such as image-style convolutional networks expect data laid out on a regular grid, so they fit this kind of data poorly. Graph neural networks handle data shaped like a network: each node builds its description from the nodes it is connected to.
This review first explains the main kinds of graph neural network, then surveys how they have been applied to power systems: spotting faults in equipment, forecasting renewable output and load, approximating power flow, and generating synthetic grid data. It closes with open problems. Many of these networks were designed for computer vision, and they may not suit one-dimensional power measurements. Networks whose structure changes over time are also hard for most current models.
TL;DR
A 2021 review of graph neural networks (GNNs) and their use in power systems. It covers six families of GNN and then surveys applications in fault diagnosis, time-series forecasting, power flow and data generation. The review runs no experiments of its own: every number it quotes comes from another paper, on a different setup. Use it as a map of methods and open issues, not as a benchmark.
Problem
Many power-system data sets are graph-structured: they have nodes, edges and features on the nodes, and the number of neighbours of each node varies. Standard deep networks built for Euclidean data, such as CNNs and RNNs, do not apply directly to such data §I-A. The review states that these models have to be generalised to graph domains §I-A. It also notes that power-system applications of GNNs are relatively limited compared with computer science and biology §III. Figure 2 shows the yearly number of published papers on GNNs from 2010 to 2020, taken from a Google Scholar search: 23, 31, 25, 35, 18, 37, 52, 95, 374, 1500 and 4680 papers in that order fig. 2. The search query and date are not stated fig. 2.
The review argues that traditional model-based methods are hard to fit to the control and analysis needs of power systems because of uncertainty and complexity, for example when generating renewable-energy scenarios §I-A.
Method
This is a survey. It has no method of its own to implement. The steps below are the review's descriptions of each GNN family, with the paper's equations. Each graph is G = (V, E) with node features and an adjacency matrix A §II-A.
-
Graph data and spectral basis. The normalised Laplacian is L = I_n − D^(−1/2) A D^(−1/2), where D is the diagonal degree matrix eq. 1. It is real, symmetric and positive semi-definite, so it factors as L = U Λ Uᵀ, with U the eigenvectors and Λ the eigenvalues eq. 2 §II-A.
PseudocodeL = I_n − D^(−1/2) A D^(−1/2) [eq. 1] -
Spectral GCNs. A filter in the Fourier domain acts on a signal as g * x = U g_w Uᵀ x, where g_w is the diagonal filter eq. 3 §II-B. ChebNet approximates g_w with a truncated Chebyshev expansion of order K, scaled by the largest eigenvalue λ_max eq. 4 eq. 5 §II-B. A simplified first-order form assumes λ_max = 2 and K = 1 eq. 6. It then sets W = W_0 = −W_1 to reduce the parameters eq. 7. The renormalisation trick adds self-loops, Â = A + I_n, and gives the multi-channel layer Z_out = D̂^(−1/2) Â D̂^(−1/2) X W* eq. 8 eq. 9. Here X is n × c, W* is c × f and Z_out is n × f eq. 9.
-
Spatial GCNs. These aggregate features over neighbours directly. Neural fingerprints use a weight matrix per node degree eq. 10. The diffusion-convolutional network mixes powers of the transition matrix P_DC = D^(−1) A eq. 11 §II-B. The dual-graph GCN runs two convolutional layers in parallel, the second on a positive pointwise mutual information matrix X_P eq. 12 §II-B.
-
Graph recurrent networks (GRNNs). Gated units, GRU-style, update each node's hidden state from its neighbours' states eq. 13 §II-C. The child-sum tree-LSTM aggregates children's hidden states with one forget gate per child eq. 14 §II-C.
-
Graph attention networks (GATs). Each node's output is an attention- weighted sum of its neighbours' transformed features eq. 15 §II-D. The attention weights are a softmax over the neighbourhood eq. 16:
\alpha_{ij} = \frac{\exp(e_{ij})}{\sum_{k \in N(i)} \exp(e_{ik})} eq. 16
The score e_ij is a LeakyReLU of a learned function F of the concatenated transformed features of i and j eq. 17. With K heads, the outputs are concatenated eq. 18 or averaged eq. 19. GaAN uses dot-product attention over the neighbours instead §II-D.
-
Graph generative networks (GGNs). A graph autoencoder encodes Z = GCN(X, A) eq. 20 and decodes the reconstructed adjacency  = σ(Z Zᵀ) eq. 21 §II-E. The variational version maximises a lower bound on the likelihood eq. 22:
\mathcal{L} = \mathbb{E}_{q}[\log p(A \mid Z)] - \mathrm{KL}[q(Z \mid X, A) \,\|\, p(Z)] eq. 22
GGANs train a generator and a discriminator with a min-max loss over node pairs eq. 23 §II-E.
-
Spatio-temporal GNNs (STGNNs). RNN-based models insert a graph convolution inside the recurrent update eq. 24 eq. 25 §II-F. CNN-based models use one-dimensional convolutions over time with graph convolution layers, with no equation given §II-F.
-
Hybrid forms. Graph reinforcement learning (GRL) combines GNNs with reinforcement learning for decision-making §II-G. Graph transfer learning (GTL) reuses knowledge from one graph in another §II-G.
-
Applications. Section III surveys five areas: fault scenario application, time-series prediction, power flow calculation, data generation and others §III-A to §III-E. Table II lists them by GNN type.
Table I summarises the paradigms tab. I:
| Paradigm | Variant | Main function | Ref. |
|---|---|---|---|
| GCNs | Spectral-based nets | Extracting latent representation of graph-structured data | [20], [24]–[27] |
| GCNs | Spatial-based nets | Extracting latent representation of graph-structured data | [29]–[32] |
| GRNNs | Graph GRUs | Solving long-term dependencies of graph-structured data | [39] |
| GRNNs | Tree LSTM | Solving long-term dependencies of graph-structured data | [40] |
| GATs | GAT | Incorporating attention into the propagation step of GNNs | [43] |
| GATs | GaAN | Incorporating attention into the propagation step of GNNs | [44] |
| GGNs | GAEs | Generating new graph-structured data | [46] |
| GGNs | GVAEs | Generating new graph-structured data | [47] |
| GGNs | GGANs | Generating new graph-structured data | [48] |
| STGNNs | RNN-based nets | Learning hidden patterns from spatial-temporal graphs | [49]–[53] |
| STGNNs | CNN-based nets | Learning hidden patterns from spatial-temporal graphs | [54]–[56] |
| Hybrid forms | GRL | Improving control and perception of graph-structured data | [59]–[61] |
| Hybrid forms | GTL | Transferring knowledge in graph domains | [62]–[64] |
Table II maps the power-system applications to GNN types tab. II:
| Area | Category | Involved GNNs | Ref. |
|---|---|---|---|
| Fault scenario application | Transformer fault diagnosis | Spectral-based GCNs | [67] |
| Fault scenario application | Fault location | Spectral-based GCNs | [69], [70] |
| Fault scenario application | Fault detection and isolation | Spectral-based GCNs | [72], [76] |
| Fault scenario application | Power outages prediction | Spectral-based GCNs | [74] |
| Time series prediction | Solar power prediction | Spectral-based GCNs | [78]–[81] |
| Time series prediction | Wind power or wind speed prediction | Graph LSTMs and spectral-based GCNs | [82]–[84] |
| Time series prediction | Residual load prediction | Spectral-based GCNs | [85] |
| Power flow calculation | Power flow approximation | Spatial-based GCNs, GAEs | [86]–[88], [90] |
| Power flow calculation | Optimal power flow | Spectral-based GCNs | [6], [91] |
| Power flow calculation | Optimal load shedding | Spectral-based GCNs | [92] |
| Data generation | Scenario generation | Spectral-based GCNs and GAEs | [93], [94] |
| Data generation | Synthetic feeder generation | Spectral-based GCNs and GGANs | [95] |
| Others | Coupled power and transportation networks | Spectral-based GCNs and GRL | [96] |
| Others | Line flow control | Spectral-based GCNs and GRL | [97] |
| Others | Maintenance tasks | Hybrid forms of GNNs | [98] |
| Others | Operation of distributed energy resources | Spectral-based GCNs | [99], [100] |
| Others | Safe operation of power grids | Spectral and spatial-based GCNs | [101]–[103] |
| Others | Synchrophasors recovery | Graph LSTMs, spectral-based GCNs and GGANs | [104] |
| Others | Transient stability assessment | Graph LSTMs, spectral-based GCNs | [105] |
| Others | Wind power estimation | Physics-induced GNNs | [106] |
Pseudocode for the renormalised spectral layer eq. 8 eq. 9:
# Renormalised graph convolution [eq. 8] [eq. 9]
# Input: features (n, c); adjacency (n, n); weights (c, f)
# Output: outputs (n, f)
def graph_convolution(features, adjacency, weights):
# Add self-loops so each node keeps its own features [eq. 8]
looped = adjacency + identity(n)
# Degree matrix of the looped graph [eq. 8]
degrees = diagonal(row_sums(looped))
# Symmetric normalisation [eq. 9]
normaliser = inverse_sqrt(degrees)
propagation = normaliser @ looped @ normaliser
# Mix neighbours, then apply the learned weights [eq. 9]
return propagation @ features @ weightsPseudocode for a single attention head eq. 15 eq. 16 eq. 17:
# Single-head graph attention [eq. 15] [eq. 16] [eq. 17]
# Input: features (n, c); neighbours[i] lists the neighbours of node i
# Output: outputs (n, f)
def graph_attention(features, neighbours, weights):
# Transform every node with the shared weight matrix [eq. 15]
projected = features @ weights
for each node i:
# Score each neighbour j with a learned function F [eq. 17]
for each j in neighbours[i]:
scores[i][j] = leaky_relu(F(concat(projected[i], projected[j])))
# Normalise the scores over the neighbourhood [eq. 16]
alpha[i] = softmax(scores[i] over neighbours[i])
# Weighted sum of neighbour features, then nonlinearity [eq. 15]
outputs[i] = activation(sum over j of alpha[i][j] * projected[j])
return outputsHyperparameters
The review states few hyperparameters. The table lists what is stated and what is not. The power-system applications report no training settings of their own in the review.
| Name | Value | Where | Notes |
|---|---|---|---|
| Chebyshev order K | not stated in general; K = 1 in the simplified form | §II-B eq. 4 eq. 6 | the simplified form also assumes λ_max = 2 |
| Largest eigenvalue λ_max | 2 in the simplified form; general value not stated | eq. 4 eq. 6 | |
| Weight sharing | W = W_0 = −W_1 | eq. 7 | stated as a way to reduce parameters and over-fitting |
| Self-loops | Â = A + I_n | eq. 8 | renormalisation trick |
| GAT heads | K, number not stated | eq. 18 eq. 19 | symbol only |
| GAT scoring function F | not stated | eq. 17 | "e.g. a multi-layer perceptron", to be learned |
| Activation functions | not stated for σ_GAT, σ_GAE, σ_DGCN, σ_RNN | §II-B to §II-F | |
| Neural fingerprint weights | one matrix per node degree | eq. 10 | |
| Network depth | "no more than three layers" for most GNNs | §IV-B | general remark, no citation given |
| Learning rate, optimiser, epochs, batch size, dropout | not stated | all |
Results
The review runs no experiments of its own. The tables below are copied from it. Each row is a result from a cited work, as the text attributes it. These are author-reported numbers from other papers. Datasets, splits, seeds and hardware are not stated unless the table gives them.
Fault location accuracy in the IEEE 123-bus system tab. III. The text attributes the simulation to ref. [70] §III-A2. Accuracy and one-hop accuracy:
| Model | Accuracy | One-hop accuracy |
|---|---|---|
| PCAs + SVMs | 94.60% | 98.31% |
| PCAs + RFs | 94.96% | 99.28% |
| MLPs | 84.64% | 96.38% |
| GCNs | 99.26% | 99.93% |
Day-ahead forecasting tab. IV. The text attributes the hybrid LSTM + GCN model to ref. [81] §III-B1. The dataset and horizon are not stated. MAPE is in percent; RMSE and MAE have no unit given:
| Model | MAPE | RMSE | MAE |
|---|---|---|---|
| LSTMs + GCNs | 28.30% | 1.10 | 0.79 |
| LSTMs | 54.17% | 2.19 | 1.58 |
| MLPs | 43.35% | 1.78 | 1.31 |
Prediction on test systems tab. V. The text attributes this to ref. [92] §III-C3. RMSE on training and testing data:
| System | Model | RMSE (training) | RMSE (testing) |
|---|---|---|---|
| 9-bus | GCNs | 0.0282 | 0.0685 |
| 9-bus | MLPs | 0.0940 | 0.1209 |
| 9-bus | LRs | 0.0929 | 0.0980 |
| 30-bus | GCNs | 0.1330 | 0.1457 |
| 30-bus | MLPs | 0.1375 | 0.1582 |
| 30-bus | LRs | 0.1446 | 0.1734 |
| 57-bus | GCNs | 0.0744 | 0.1231 |
| 57-bus | MLPs | 0.1158 | 0.6394 |
| 57-bus | LRs | 0.1507 | 0.5251 |
| 118-bus | GCNs | 0.0086 | 0.0291 |
| 118-bus | MLPs | 0.1034 | 6.5755 |
| 118-bus | LRs | 0.2422 | 3.1741 |
Synthetic feeder generation tab. VI, attributed to ref. [95] in the text §III-D2. The dataset is not named. Rates as given in the table:
| Indicator | Random matrix-based method | GGANs |
|---|---|---|
| Connected rate | 8.3% | 27.2% |
| Success rate | 0 | 27.2% |
| Perfect rate | 0 | 27.2% |
The text reports the GGAN connected-rate gain as 18.9% and the success and perfect rates as 27.2% §III-D2.
Paper vs code
No official code. The paper and the arXiv metadata link no code repository, and there is no project page. A GitHub repository search for "graph neural networks power systems review" returned two unrelated repositories (a fake-review detector and a network-intrusion tool), neither by the authors. The paper is a review with no method of its own, so there is nothing to compare against code.
Pitfalls
- Numbers are not comparable. Each table comes from a different cited work, and the review states no common datasets, metrics or splits across them. Do not rank rows across tables.
- Attribution is partly inferred. Table III, Table IV and Table V carry no source line. The sources above come from the text next to each table, and Table III's link to ref. [70] is an inference from that text.
- No variance or seeds. Each cell is a single reported number, with no confidence interval or repeat runs given.
- Equation 6 and 7 are a simplification. Setting λ_max = 2, K = 1 and W = W_0 = −W_1 gives the simplified layer. A ChebNet with K > 1, or unshared weights, is a different model.
- Notation in eq. 9. The text describes X "with f filters and c input channels". The shapes in eq. 9 are X (n × c), W* (c × f), Z_out (n × f); treat f as output width.
- Likelihood and decoder not fully specified. For the graph autoencoder eq. 21 and VGAE eq. 22, the decoder activation σ_GAE and the exact form of p(A | Z) are not given beyond "the inner product between latent variables" §II-E.
- GGAN architectures unstated. The generator and discriminator networks of eq. 23 are not described.
- Spectral GCNs need the whole graph. The eigen-decomposition eq. 2 requires the full graph at once, and the paper says the basis changes when the graph changes §II-B3. The paper says spatial GCNs scale better to large graphs §II-B3. Neural fingerprints are not suited to large graphs with large node degrees §II-B2.
- Fault diagnosis needs retraining. In the transformer fault example, the adjacency matrix depends on the number of samples, so new samples need retraining unless new samples are wired to existing ones §III-A1.
- Fig. 2 is not reproducible from the text. The query, its date and the counting rule are not stated fig. 2.
- Depth claim is unsupported. "Most GNNs are no more than three layers" is stated without a citation §IV-B.
- Open issues the review flags. GNNs designed for images may not suit one-dimensional power time series §IV-A. Dynamic graphs with changing topology need models that adapt to it §IV-B. Power-flow GNNs do not handle constraints such as voltage and current limits §III-C2. Most power-flow models assume a fixed topology §III-C2.
Lineage
- Builds on: none stated. The review draws on general GNN and deep-learning surveys, refs. [10]–[17] §I-B.
- Compared against: the review positions itself against those surveys, several of which cover power systems §I-B.
- Superseded by: not known from content in this wiki.
Source and license
Adapted from “A Review of Graph Neural Networks and Their Applications in Power Systems” by Wenlong Liao, Birgitte Bak-Jensen, Jayakrishnan Radhakrishna Pillai, Yuelong Wang, Yusen Wang (arXiv:2101.10025), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors.