This repository contains an implementation of the graph neural network (GNN)-enhanced expectation propagation (EP) for MIMO turbo receivers [1], [2], which extends the GNN-enhanced EP detector (GEPNet) [3] into iterative detection and decoding (IDD).
- Python (>= 3.6)
- Tensorflow (>=2.3.0)
- numpy (>=1.18.5)
- scipy (>=1.4.1)
- Python folder: for training network models, which are saved in the 'model' subdirectory
- Matlab folder (preparing): for performing inference, i.e., iterative turbo receiving
- Training and testing the uncoded GEPNet [3] may be helpful for getting started.
- Run Python codes to train network models, including training APP-based GEPNet, generating extrinsic training LLR datasets (saved in the 'dataset' subdirectory), and training EXT-GEPNet (see [1] and main.py to learn the three-step training in detail).
- Saved the models in the 'model' subdirectory.
- Run Matlab codes to perform EXT-GEPNet-based iterative turbo receiving with the pre-trained weights in the 'model' subdirectory.
- Matlab folder to be added.
- More detailed comments in the source code and steps to carry out the simulations.
[1] X. Zhou, J. Zhang, C.-K. Wen, S. Jin, and S. Han, “Graph neural network-enhanced expectation propagation algorithm for MIMO turbo receivers,” to appear in IEEE Transactions on Signal Processing ([Online] Available: https://arxiv.org/abs/2308.11335).
[2] X. Zhou, J. Zhang, C.-K. Wen, and S. Jin, “Extrinsic graph neural network-aided expectation propagation for Turbo-MIMO receiver,” in Proc. 18th Int. Symp. Wireless Commun. Syst. (ISWCS), Hangzhou, China, Oct. 2022, pp. 1–6.
[3] A. Kosasih, V. Onasis, V. Miloslavskaya, W. Hardjawana, V. Andrean, and B. Vucetic, “Graph neural network aided MU-MIMO detectors,” IEEE J. Sel. Areas Commun., vol. 40, no. 9, pp. 2540–2555, Sep. 2022.
If you have any questions or comments about this work, please feel free to contact [email protected]