Skip to main content

PV Performance Loss Rate Estimation using Spatio-temporal Graph Neural Networks

Project description

PVplr-stGNN is a Python3 package developed by the SDLE Research Center at Case Western Reserve University in Cleveland OH. This repository contains the full source PVplr-stGNN package. The package contains the PV-stGAE for missingness data detection and imputation and PV-DynGNN for Photovolatics (PV) PLR estimation.

Features

  • Data Preparation for stGNN Training.
    • Transform raw data files into the current formats used for stGNN training and inference
  • stGNN for missing data imputation
    • Based on input adjancecy matrix (A) and node features (X)
  • stGNN for long-term PV degradation (PLR) Estimation

Setup

  1. Install it at bash
$ pip install PVplr-stGNN
  1. Import it in python
from PVplr_stGNN.DataPreprocessing import *
from PVplr_stGNN.DataAugmentation import *
from PVplr_stGNN.Layers import *

Two examples

Create the adjacency matrix based on the location file

location = pd.read_csv('.../location.csv',index_col=0)
A = adjacency_matrix(location, epsilon = 0.5)

Output will be the adjacency matrix using epsilon = 0.5

Model Training

model = STConvAE(device, num_nodes, channels, num_layers, kernel_size, K, n_his, kernel_size_de, stride, padding, normalization = 'sym', bias = True)

Output will be initialized stGAE model for imputation

A demo of training and testing st-GAE imputation model

Google colab link: https://colab.research.google.com/drive/1tQkbJRXEEQJFE0z3HhHlyJ9LK6jtLmqp#scrollTo=hy0rm7D1tCyw

Prerequisites

Our code is based on Python3 (>= 3.8). The major libraries are listed as follows:

  • NumPy (>= 1.22.3)
  • Pandas (>= 1.4.2)
  • Torch (>= 1.10.0)
  • PyG (PyTorch Geometric) (>= 2.0.4)
  • Scikit-learn (>= 1.0.2)

Photovoltaic (PV) power stations have become an integral component to a sustainable energy pro- duction landscape. Accurately estimating and predicting performance of PV systems is critical to their feasibility as a power generation technology and as a financial asset. Among the major domain problems is to understand the PV Performance Loss Rate (PLR) for large fleets of PV systems. The integration of the global PV market with real time data-loggers has enabled large scale PV data analytical pipelines for power forecasting and long-term reliability assessment of PV fleets. Nevertheless, such analysis heavily depends on the quality of PV data. One of the most challenging problem in PV data quality is about how to impute missing data. We have developed two spatio-temporal graph-based deep learning techniques that address two major PV challenges: (1) missing PV data imputation, and (2) diversity of degradation patterns from PV data to support “end-to-end” long-term PV performance degradation analysis. Specifically, for (1) We propose a Spatio-Temporal Denoising Graph Autoencoder (STD-GAE) to impute missing PV Power Data. STD-GAE exploits temporal correlation, spatial coherence, and value dependencies from domain knowledge to recover missing data. For (2), we outline a novel Spatio-temporal Dynamic Graph Neural Network (st-DynGNN) that adopts a paralleled graph autoencoder architecture to extract different aging and fluctuation terms simultaneously.

Yangxin Fan, Xuanji Yu, Raymond Wieser, David Meakin, Avishai Shaton, Jean-Nicolas Jaubert, Robert Flottemesch, Michael Howell, Jennifer Braid, et al. Spatio-temporal denoising graph autoencoders with data augmentation for photovoltaic data imputation. Proceedings of the ACM on Management of Data, 1(1):1–19, 2023.

William C Oltjen, Fan, Yangxin, Jiqi Liu, Liangyi Huang, Xuanji Yu, Mengjie Li, Hubert Seigneur, Xusheng Xiao, Kristopher O Davis, Laura S Bruckman, et al. Fairification, quality assessment, and missingness pattern discovery for spatiotemporal photovoltaic data. In 2022. IEEE 49th Photovoltaics Specialists Conference (PVSC), pages 0796–0801. IEEE, 2022.

License:

This work is legally bound by the following software license: BSD-3-Clause 1 Please see the LICENSE.txt file, in the root of this repository, for further details.

Funding Acknowledgements:

This work is supported by the U.S. Department of Energy’s Office of Energy Efficiency and Renewable Energy (EERE) under Solar Energy Technologies Office (SETO) Agreement Number DE-EE0009353.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PVplr_stGNN-0.1.33.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

PVplr_stGNN-0.1.33-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file PVplr_stGNN-0.1.33.tar.gz.

File metadata

  • Download URL: PVplr_stGNN-0.1.33.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for PVplr_stGNN-0.1.33.tar.gz
Algorithm Hash digest
SHA256 0aa823ca6142f562daef695c9bb463dbe2c52198c12bd22cac098f370e0829b4
MD5 1b97eb3b305b10f6550f9a5e52759cd3
BLAKE2b-256 b229d6d9a2f174e9ef1315a71f4db85f0cf75b1b93b4794cced843cd0d91bfc5

See more details on using hashes here.

File details

Details for the file PVplr_stGNN-0.1.33-py3-none-any.whl.

File metadata

  • Download URL: PVplr_stGNN-0.1.33-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for PVplr_stGNN-0.1.33-py3-none-any.whl
Algorithm Hash digest
SHA256 b694808609c87f46a42c21b2cf333ee16d204379c53ae4f076ece59676ce0c65
MD5 97b478974c1293a0b46fee652e9370a3
BLAKE2b-256 4cf19ab4f54657cd84fc3a3bd6883c325dcf8be31f74a3c1e67bd46acd0ba2d2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page