Tensorflow implementation of Unfolding WMMSE using Graph Neural Networks for Efficient Power Allocation (https://arxiv.org/abs/2009.10812)
This library contains a Tensorflow implementation of Unfolding WMMSE using Graph Neural Networks for Efficient Power Allocation as presented in [1](https://arxiv.org/abs/2009.10812).
- python>=3.6
- tensorflow>=1.14.0: https://tensorflow.org
- numpy
- matplotlib
- datagen: Code to generate dataset. Generates A.pkl ( Geometric graph ), H.pkl ( Dictionary containing train_H and test_H ) and coordinates.pkl ( node position coordinates ). Run as python3 datagen.py [dataset ID]. User chosen [dataset ID] will be used as the foldername to store dataset. Eg., to generate dataset with ID set3, run python3 datagen.py set3.
- data: should contain your dataset in folder [dataset ID].
- main: Main code for running the experiments in the paper. Run as python3 main.py [dataset ID] [exp ID] [mode]. Eg., to train UWMMSE on dataset with ID set3, run python3 main.py set3 uwmmse train.
- model: Defines the UWMMSE model.
- models: Stores trained models in a folder with same name as [dataset ID].
Please cite [1] in your work when using this library in your experiments.
For questions and comments, feel free to contact Arindam Chowdhury.
[1] Chowdhury A, Verma G, Rao C, Swami A, Segarra S. Unfolding WMMSE using Graph Neural Networks
for Efficient Power Allocation. arXiv preprint arXiv:2009.10812. 2020 Sep 22.
BibTeX format:
@article{chowdhury2020unfolding,
title={Unfolding WMMSE using Graph Neural Networks for Efficient Power Allocation},
author={Chowdhury, Arindam and Verma, Gunjan and Rao, Chirag and Swami, Ananthram and Segarra, Santiago},
journal={arXiv preprint arXiv:2009.10812},
year={2020}
}