hardcore-magnet-challenge

Winning solution to the IEEE PELS MagNet challenge 2023 (1st Place Model Performance Category)

https://github.com/upb-lea/hardcore-magnet-challenge

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org, ieee.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.0%) to scientific vocabulary

Keywords

convolutional-neural-networks ieee magnet-challenge magnetics paderborn-university power-losses
Last synced: 9 months ago · JSON representation

Repository

Winning solution to the IEEE PELS MagNet challenge 2023 (1st Place Model Performance Category)

Basic Info
Statistics
  • Stars: 11
  • Watchers: 3
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Topics
convolutional-neural-networks ieee magnet-challenge magnetics paderborn-university power-losses
Created over 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Code of conduct Citation

README.md

MagNet Challenge 2023 Winning Solution

(1st Place Model Performance)

HARDCORE: H-field and power loss estimation for arbitrary waveforms with residual, dilated convolutional neural networks in ferrite cores

[Wilhelm Kirchgssner](https://github.com/wkirgsn), [Nikolas Frster](https://github.com/gituser789), [Till Piepenbrock](https://github.com/tillpiepenbrock), [Oliver Schweins](https://github.com/OliverSchw), [Oliver Wallscheid](https://github.com/wallscheid) [Paderborn University](https://www.uni-paderborn.de/en/), [Dept. of Power Electronics and Electrical Drives](https://ei.uni-paderborn.de/en/lea) Paper: [IEEE Transactions on Power Electronics](https://ieeexplore.ieee.org/document/10738458) Paper (Preprint): [arXiv 2401.11488](https://arxiv.org/abs/2401.11488)

Updates

  • Nov. 4th, 2024: IEEE Transactions on Power Electronics paper available
  • Mar. 16th, 2024: Among others, the winning models are officially available in the MagNet Toolkit now
  • Jan. 27th, 2024: Publish the submission on GitHub

Abstract

The MagNet Challenge 2023 calls upon competitors to develop data-driven models for the material-specific, waveform-agnostic estimation of steady-state power losses in toroidal ferrite cores. The following HARDCORE (H-field and power loss estimation for Arbitrary waveforms with Residual, Dilated convolutional neural networks in ferrite COREs) approach shows that a residual convolutional neural network with physics-informed extensions can serve this task efficiently when trained on observational data beforehand. One key solution element is an intermediate model layer which first reconstructs the bh curve and then estimates the power losses based on the curve's area rendering the proposed topology physically interpretable. In addition, emphasis was placed on expert-based feature engineering and information-rich inputs in order to enable a lean model architecture. A model is trained from scratch for each material, while the topology remains the same. A Pareto-style trade-off between model size and estimation accuracy is demonstrated, which yields an optimum at as low as 1755 parameters and down to below 8\,\% for the 95-th percentile of the relative error for the worst-case material with sufficient samples.

Overview

Folder structure:

``` . Model data bmaxdict.json hmaxdict.json input test placeTestinghere.txt Testing Material A BField.csv Frequency.csv Temperature.csv Material B BField.csv Frequency.csv Temperature.csv Material C BField.csv Frequency.csv Temperature.csv Material D BField.csv Frequency.csv Temperature.csv Material E BField.csv Frequency.csv Temperature.csv models cnnAexperimentc9cfemodeld893c778seed0fold0.pt cnnBexperimentc9cfemodelb6a920ccseed0fold0.pt cnnCexperimentc9cfemodelc1ced7b6seed0fold0.pt cnnDexperimentc9cfemodel11672810seed0fold0.pt cnnEexperimentc9cfemodel5ae50f9eseed0fold0.pt output experimentsmeta.csv trialsmeta.csv src ModelInference.py runcnninference.py runcnntraining.py utils data.py experiments.py metrics.py topology.py visualization.py PaderbornUniversityReport.pdf README.md requirements.txt Result VolumetricLossMaterial A.csv VolumetricLossMaterial B.csv VolumetricLossMaterial C.csv VolumetricLossMaterial D.csv VolumetricLossMaterial E.csv

```

Note that the folder Testing/, which contains all the final test data of the new 5 materials, has to be moved into the designated folder, as shown above.

How to set up the Python environment

We highly recommend using a Python virtual environment, such as venv or Anaconda. We recommend Python 3.10 for this project. When the virtual environment shell is active and the current working directory is the project root, install the dependencies with

```

pip install -r requirements.txt ```

How to execute the model inference

The main inference script is Model/src/Model_Inference.py which was provided as template by the competition hosts. Execute it while the current working directory is `Model/src/' like below

```py

cd Model/src/ python Model_Inference.py

```

The current working directory is important for all relative paths to work flawlessly. Note that only one material is estimated per call. In order to estimate another material, edit the file Model_Inference.py as intended by the template. All estimates are stored under Result/. For reference, the inference result as obtained on our computing machines is provided in this submission as well.

The inference script will load up the corresponding model under Model/data/models, which are all saved through PyTorch jit functionality. Next to the requested estimation csv under Result/, there is also a slightly different format for the loss estimates stored under Model/data/output/ together with a corresponding H-field estimation. Feel free to analyze, skim through, or just double-check the H-field and p loss estimates there.

Owner

  • Name: Paderborn University - LEA
  • Login: upb-lea
  • Kind: organization
  • Location: Paderborn, Germany

Department of power electronics and electrical drives

GitHub Events

Total
  • Watch event: 3
  • Push event: 1
Last Year
  • Watch event: 3
  • Push event: 1

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • joblib ==1.3.2
  • pandas ==2.0.3
  • torch ==2.0.1
  • torchinfo ==1.8.0
  • tqdm *