Skip to content

FilippoMB/Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning

Repository files navigation

DETECTING-AND-INTERPRETING-FAULTS-IN-VULNERABLE-POWER-GRIDS-WITH-MACHINE-LEARNING

arXiv license last-commit repo-top-language repo-language-count

Built with the tools and technologies:

Python


Table of Contents


Overview

Software implementation of the methodologies presented in the paper Detecting and interpreting faults in vulnerable power grids with machine learning by O. F. Eikeland, I. S. Holmstrand, S. Bakkejord, M. Chiesa, and F. M. Bianchi.


Features

The study employs machine learning techniques to predict power disturbances by analyzing high-resolution power-quality and meteorological data. Additionally, it utilizes interpretability methods to identify factors contributing to individual faults, aiding in the development of targeted strategies for enhancing grid reliability.


Project Structure

└── Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning/
    ├── Classification-for-imbalanced-data-with-MLP.ipynb
    ├── Integrated_gradients.py
    ├── Linear_models.py
    ├── MLP.py
    ├── MLP_tuner.py
    ├── MLP_tuner_kfold.py
    ├── Nonlinear_models.py
    ├── README.md
    ├── kfold_MLP.py
    └── kfold_linear_models_and SVM.py

Project Index

DETECTING-AND-INTERPRETING-FAULTS-IN-VULNERABLE-POWER-GRIDS-WITH-MACHINE-LEARNING/
__root__
Classification for imbalanced data with MLP.ipynb ❯ Example notebook
Linear_models.py ❯ Implementation of different linear models
kfold_MLP.py ❯ Implementation of the k-fold for model selection in the MLP
MLP.py ❯ Implementation of the MLP model
Nonlinear_models.py ❯ Implementation of nonlinear models
kfold_linear_models_and SVM.py ❯ Implementation of the k-fold for model selection for linear models and SVM
MLP_tuner_kfold.py ❯ Implementation of the k-fold for model selection for the MLP tuner
MLP_tuner.py ❯ Implementation of the MLP tuner
Integrated_gradients.py ❯ Implementation of the Integrated gradients

Getting Started

Prerequisites

Before getting started with Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning, ensure your runtime environment meets the following requirements:

  • Programming Language: Python

Installation

Install Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning using one of the following methods:

Build from source:

  1. Clone the Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning repository:
❯ git clone https://github.com/FilippoMB/Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning
  1. Navigate to the project directory:
cd Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning
  1. Install the project dependencies:

Contributing

  • 💬 Join the Discussions: Share your insights, provide feedback, or ask questions.
  • 🐛 Report Issues: Submit bugs found or log feature requests for the Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning project.
  • 💡 Submit Pull Requests: Review open PRs, and submit your own PRs.
Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your github account.
  2. Clone Locally: Clone the forked repository to your local machine using a git client.
    git clone https://github.com/FilippoMB/Detecting-and-interpreting-faults-in-vulnerable-power-grids-with-machine-learning
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.
    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message describing your updates.
    git commit -m 'Implemented new feature x.'
  6. Push to github: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
  8. Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Contributor Graph


Citation

@article{eikeland2021detecting,
  title={Detecting and Interpreting Faults in Vulnerable Power Grids With Machine Learning},
  author={Eikeland, Odin Foldvik and Holmstrand, Inga Sets{\aa} and Bakkejord, Sigurd and Chiesa, Matteo and Bianchi, Filippo Maria},
  journal={IEEE Access},
  volume={9},
  pages={150686--150699},
  year={2021},
  publisher={IEEE}
}

About

Repository of the paper "Detecting and interpreting faults in vulnerable power grids with machine learning".

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published