Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.

Learning of physical-layer communication with quantized feedback.

This code demonstrates how to perform learning of a communication system over a binary feedback channel.


The code has comprises 6 python notebooks:

  • alternating training with quantized feedback
  • alternating training with perfect feedback
  • compute SER when feedback are preprocessed, while not quantized
  • compute SER when feedback are preprocessed, and quantized with 1 bit
  • compute SER when the quantization are flipped with probability p
  • Compute SER when n bits are used for quantization

We recommend to start with the first notebook, which will determine a transmitter and a receiver for a optical nonlinear communication channel. The code has the following parameters:

M = 16                # number of points in the constellation
P_in_dBm = -5         # transmit power in dBm
gamma = 1.27          # fiber non-linearity parameter (set to zero for an AWGN channel)
L = 2000              # total link length in km
K = 20                # number of segments
P_noise_dBm = -21.3   # noise power per segment in dBm
sigma_pi = np.sqrt(0.0005)  # Variance for Gaussian policy (before scaling with the transmit power)
num_bits = 1          # number of bits used for quantization


The code was developed by Jinxiang Song, Master Student at Chalmers University of Technology. This code is based on the paper

Jinxiang Song, Bile Peng, Christian Häger, Henk Wymeersch, Anant Sahai, "Learning Physical-Layer Communication with Quantized Feedback," in arXiv preprint arXiv:1904.09252, 2019.

If you plan to use or modify this code, we kindly ask you to cite this paper.


Learning of a communication system over a binary feedback channel






No releases published


No packages published