Semi-Deterministic Subspace Selection for Sparse Recursive Projection-Aggregation Decoding of Reed-Muller Codes
This Python package implements semideterministic subspace selection (SDSS) to improve sparse recursive projection-aggregation decoding (SRPA) of Reed-Muller (RM) codes, as proposed in the article "Semi-Deterministic Subspace Selection for Sparse Recursive Projection-Aggregation Decoding of Reed-Muller Codes" [1]. By using a reliability metric to deterministically select subspaces and randomly sample from this set, decoding performance is improved. An additional hard decision decoding for invalid decoding results guarantees that the final result is a codeword and further improves performance. Furthermore, by limiting the number of iterations and an early stop criterion, complexity is significantly reduced.
To install the package, navigate to the root directory of the project and run:
pip install .
For development purposes, you can install it in editable mode:
pip install -e .
This package provides a set of tools for decoding Reed-Muller codes using the recursive projection-aggregation algorithm and extensions of it like the sparse RPA (SRPA), and the proposed semi-deterministic subspace selection SRPA method. To access the implemented decoders, import sdss_rpa
and then access the simulation or decoder module.
import sdss_rpa
from sdss_rpa.config import SimulationConfig
config = SimulationConfig(**vars(args))
sim = sdss_rpa.Simulation(config)
sim.simulate()
You can configure decoding parameters such as RM code parameters, subspace ratio, and channel SNR through the config files.
If you use sdss-rpa
in your work, please cite our paper (full-text on IEEE Xplore):
@INPROCEEDINGS{Voigt23WSASCC,
author={Voigt, Johannes and Jaekel, Holger and Schmalen, Laurent},
booktitle={WSA & SCC 2023; 26th International ITG Workshop on Smart Antennas and 13th Conference on Systems, Communications, and Coding},
title={{Semi-Deterministic} {Subspace} {Selection} for {Sparse} {Recursive} {Projection-Aggregation} {Decoding} of {Reed-Muller} {Codes}},
address = {Braunschweig, Germany},
month = Feb,
year={2023},
}
This work has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No. 101001899).