Skip to content

dwave-examples/coordinated-multipoint-notebook

Repository files navigation

Open in GitHub Codespaces

Decoding Cellphone Signals

In wireless networks, such as cellular and Wi-Fi networks, MIMO is an essential method of increasing transmission capacity: it uses multiple antennas to exploit multipath propagation. In one variation, coordinated multipoint (CoMP), neighboring cellular base stations jointly process received signals to reduce transmission-decoding errors.

Figure 1

High-quality decoding techniques are computationally expensive, especially in dense urban areas, characterized by high noise (low signal-to-noise ratios, SNR) and load (large numbers of cellphones per base station). Consequently, network providers are in need of ways to reduce high operational cost and power demand.

This notebook demonstrates the use of a quantum computer in decoding transmissions in CoMP problems and compares performance to decoding methods currently in use in cellular networks.

Installation

You can run this example without installation in cloud-based IDEs that support the Development Containers specification (aka "devcontainers").

For development environments that do not support devcontainers, install requirements:

pip install -r requirements.txt

If you are cloning the repo to your local system, working in a virtual environment is recommended.

Usage

Your development environment should be configured to access Leap’s Solvers. You can see information about supported IDEs and authorizing access to your Leap account here.

The notebook can be opened by clicking on the 01-coordinated-multipoint.ipynb file in VS Code-based IDEs.

To run a locally installed notebook:

jupyter notebook

Problem Formulation

MIMO requires effective and efficient demultiplexing of mutually-interfering transmissions. Contemporary base stations use linear filters such as Matched filter and minimum mean squared error (MMSE). However, these methods perform poorly in dense urban environments as the ratio of cellphones to base stations and noise increase[1]. Additionally, complete (or verifiable) decoding techniques, such as sphere decoding, improve throughput but demand computational resources that grow exponentially with network size. Power consumption, therefore, is a problem. A quantum computer, in contrast, can provide powerful computational abilities with low power needs. To solve the decoding problem with a quantum computer, you formulate it as a binary quadratic model.

The decoding problem is to find a sequence of symbols, with the length of the number of transmitters, that minimizes the difference between the received signal and the sequence of symbols acted upon by the problem Hamiltonian, which represents the wireless channels of transmission. That is,

eq1

and the objective function is given by:

eq2

with the external summation on the receivers (e.g., base stations), the internal summations on the transmitters (e.g., cellphones), and the Hermitian transpose denoted with the dagger symbol.

Reference [2] below formulates the transmission-decoding problem as an Ising model and you can see Ocean software's implementation in dimod.

In brief, in the case of BPSK handled by this example, symbols are 1 or -1, and you can reduce the objective to,

eq3

The Ising model's coefficients are then given by,

eq4

where superscript Q and I denote imaginary and real parts, respectively.

References

[1] Toshiyuki Tanaka. A Statistical-Mechanics Approach to Large-System Analysis of CDMA Multiuser Detectors. IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 48, NO. 11, NOVEMBER 2002

[2] Minsung Kim, Davide Venturelli, and Kyle Jamieson. Leveraging quantum annealing for large MIMO processing in centralized radio access networks. SIGCOMM '19: Proceedings of the ACM Special Interest Group on Data Communication, August 2019, Pages 241–255 https://dl.acm.org/doi/10.1145/3341302.3342072

License

See LICENSE file.