You are on page 1of 34

APPROVAL SHEET

This Project entitled


“ HYBRID MULTIPLE ACCESS SCHEME (HMAS)
VIA DEEP LEARNING BASED DETECTION”

Done by
Kaiwalya Mutyalwar (194232),
Sarang Nagpal (194249),
Neharika Rao (194257)

is approved for the degree of


(Bachelor of Technology)

Examiners
Prof. L Anjaneyulu
Sri MV Raguhnadh
Sri K Ravi Kishore Kodali
Dr. A Prakasa Rao
Prof. V V Mani
Dr. Himanshu Shekhar Pradhan
Dr. Gopi Ram
Dr. Amarjit Kumar

Supervisor
Dr. Amarjit Kumar
(Assistant Professor, Department of Electronics and Communication Engineering)

HOD
Prof. P Sreehari Rao
(Head, Department of Electronics and Communication Engineering)
Date: 14-12-2022

Place: Warangal

1
DECLARATION

I declare that this written submission represents our ideas in my own words and
where other ideas or words have been included, I have adequately cited and
referenced the original sources. I also declare that I have adhered to all
principles of academic honesty and integrity and have not misrepresented or
fabricated or falsified any idea/data/fact source in my submission. I understand
that any violation of the above will be cause for disciplinary action by the
Institute and can also evoke penal action from the sources which have thus not
been properly cited or from whom proper permission has not been taken when
needed.

Kaiwalya Mutyalwar (194232)

Sarang Nagpal (194249)

Neharika Rao (194257)

2
CERTIFICATE
This is to certify that the dissertation Work entitled “HYBRID MULTIPLE
ACCESS SCHEME (HMAS) VIA DEEP LEARNING BASED
DETECTION” is a bonafide record of work carried out by

Kaiwalya Mutyalwar (194232),


Sarang Nagpal (194249),
Neharika Rao (194257)

submitted to the faculty of “Department of Electronics and Communication


Engineering” in partial fulfilment of the requirements for the award of the
degree of Bachelor of Technology in “Electronics and Communication
Engineering” at National Institute of Technology, Warangal during the
academic year 2022-2023.

Prof. P Sreehari Rao Dr. Amarjit Kumar


Head of the Department Assistant Professor
Department of Electronics Department of Electronics and
Communication Engineering Communication Engineering
NIT Warangal NIT Warangal

3
TABLE OF CONTENTS
1. Approval Sheet…………………………………..………..1
2. Declaration…………………………..………..………..….2
3. Certificate…………………………..………..…….……....3
4. Table of Contents.……………… …..………..……...……4
5. Acronyms…………………………..………..………..…...5
6. ABSTRACT …………………………..………..…….…..6
7. Introduction……………………………..………...………7
8. Codebook Design Methods……………..………...………8
9. Deep Learning in SCMA………………..………..….….14
10. Proposed System………………………..………..…….15
11. Our NN Methodology………………..………..….……17
12. Work Done……………………………..………....……19
13. Work Flow………………………...…..………..…..….24
14. Future Work………………………..…..………...…….26
15. Simulation………………………….…..………...…….27
16. Result………………………………..…..………..……28
17. References……………...………….……..………..…...32
18. Acknowledgements………………………………….…34

4
ACRONYMS
SCMA Sparse Code Multiple Access

NOMA Non Orthogonal Multiple Access

OFDM Orthogonal Frequency Division Multiple Access

PD Power Division

NU Near Users

FU Far Users

PDMA Power Division Multiple Access

MPA Message Passing Algorithm

AWGN Additive White Gaussian Noise

HMAS Hybrid Multiple Access Scheme

BER Bit Error Rate

5
ABSTRACT
In this article, we discuss a paper on uplink hybrid multiple access scheme (HMAS) in
order to support a highly overloaded multiuser system. In HMAS, for a fixed K-
orthogonal resources, there are K-near users (NUs) adopting orthogonal frequency
division multiple access (OFDMA) and J > K far users (FUs) adopting sparse code
multiple access for uplink transmission. To improve the performance of HMAS, we
discuss two deep learning-based detectors via deep neural network (DNN) models, one
for NUs symbol detection, and the other for FUs symbol detection. Both DNN models
are trained offline via simulated data and-then-applied for online symbol detection.
Simulation results demonstrate the effectiveness of HMAS in terms of symbol error
rate performance over Rayleigh fading channels. In particular, it shows that the
HMAS with DNN-based detections outperforms significantly the one using
conventional message passing algorithm and successive interference cancellation-
based detection [1].

6
INTRODUCTION
OVERVIEW:
Nonorthogonal multiple access (NOMA) scheme is a promising method that
supports more multiple users than the orthogonal multiple access (OMA)
scheme at the same time and frequency resource, thereby achieving superior
spectral efficiency in the next-generation wireless networks. NOMA can be
classified into two categories: power domain (PD) and code domain NOMAs
[1].
Here, we consider uplink scenarios. In uplink PD-NOMA, different power
levels are allocated to different users in terms of the channel state information to
achieve maximum performance gain. The uplink code domain NOMA is
realized by multiplexing different user information via user-specific
nonorthogonal spreading sequences, each of which has a sparse, low-density,
and low intercorrelation properties [1].
We focus on a type of NOMA known as Sparse code multiple access (SCMA).
The encoders in SCMA map the data symbols of various users to distinct
multidimensional codebooks. The below figure demonstrates the high level
design of SCMA encoder[5].

7
Codebook Design Methods:
An SCMA encoder is defined as a map from log2(M) bits to a K-dimensional
complex codebook of size M. The K-dimensional complex codewords of the
codebook are sparse vectors with N<K non-zero entries. All the codewords in
the codebook contain 0 in the same K−N dimensions. A mapping
matrix V maps the N non-zero dimensions to the K-dimensional complex
domain. this can be also represented by a binary vector f of length K indicating
the positions of nonzero entries of the codebook.

An SCMA encoder contains J separate layers. The constellation function


Gj generates the constellation set Cj with Mj alphabets of length Nj. The
mapping matrix Vj maps the Nj-dimensional constellation points to SCMA
codewords to form the codeword set Xj. Without loss of generality, here we
assume that all layers have the same constellation size and length, i.e.

Mj=M,Nj=N,∀j
SCMA codewords are multiplexed over K shared orthogonal resources, e.g.
OFDMA tones. The received signal after the synchronous layer multiplexing
can be expressed as
𝐽

𝑦 = ∑ 𝑑𝑖𝑎𝑔(ℎ𝑗 )𝑥𝑗 + 𝑛
𝑗=1

8
where xj=Vjgj(bj) is the vector of SCMA codeword of layer j, hj is the
channel vector of layer j and n is the ambient noise.
In the case that all layers are transmitted from the same transmit point, all the
channels to a target receiver are identical, i.e. hj=h,∀j. By multiplexing J layers
over K resources, the overloading factor of the code is defined as λ:=J/K.
Design Methods:
A. Mapping Matrix
As described before, the set of mapping matrices V determines the number of
layers interfering at each resource node which in turn defines the complexity of
the MPA detection. The sparser the codewords the less complex is the MPA
detection. When the maximum overloading is desired, the unique solution
of V is simply determined by inserting K−N all-zero row vectors within the
rows of IN. The solution holds the following properties:

𝐾 𝐾−1 𝐽𝑁 𝐽 𝑑𝑓
𝐽 = (𝑁 ), 𝑑𝑓 = (𝑁−1 )= , ∀𝐽, 𝜆 = = , and
𝐾 𝐾 𝑁

Max (0r2N−K) ≤ l ≤ N−1, where l is the number of the overlapping elements of


any two distinct fj vectors.

9
B. Constellation Points and Multi-dimensional Mother Constellation
Having the mapping set V+, the optimization problem of an SCMA is reduced
to
G+=arg maxG m(S(V+, G; JrM, N, K)).[7]
The problem is to define J different N-dimensional constellations each
containing M points. To simplify the optimization problem, the constellation
points of the layers are modeled based on a mother constellation and layer-
specific operators, i.e. gj≡(Δj)g,∀j, where Δj denotes a constellation operator.
According to the model, the code optimization problem turns into

Arg maxg,[Δj]Jj =1mg+,[Δ+j]Jj=1=(S(V+,G=[(Δj)g]Jj=1,J,M,N,K)).[8]

As a sub-optimal approach to the above problem, the mother constellation and


the operators are determined separately.
1) Design Metrics and Rotated Contellations
Large minimum Euclidean distance of a multi-dimensional constellation ensures
a good performance of the SCMA system with a small number of layers where
there are no collisions between the layers over a tone. Once the number of layers
grows, two or more layers may collide over a tone. Under this condition, it is
important to induce dependency among the nonzero elements of codewords to
be able to recover colliding codewords from the other tones. In addition, power
imbalance across the dimensions of codewords introduces near-far effect among
colliding layers. It helps MPA detector to operate more effectively to remove
interferences among co-paired layers.

Having a constellation with a desirable Euclidian distance profile, a unitary


rotation can be applied on the base constellation to control dimensional
dependency and power variation of the constellation while maintaining the
Euclidian distance profile unchanged. Inspiring from code design for
communications over fast fading channel [9], [10], a unitary rotation might be
designed to maximize the minimum product distance of the constellation.
Therefore, the design objective encapsulates both the sum distance and the
product distance between the points in the mother constellation. Similar to
communication over fading channel, product distance becomes the dominant
performance indicator for high SNR ranges.

10
2) Rotated Lattice Constellations
In general, the base constellation can be any multidimensional constellation with
a maximized minimum Euclidean distance. For low rates, constellation design
can be done by heuristic optimization, but for higher rates a structured
construction approach is required. Lattice constellation is a structural approach
of the base constellation design. As a special case of lattice constellations, we
can consider the base constellation to be formed by orthogonal QAMs on
different complex planes. It is equivalent to a constellation from the lattice Z2N.
Gray labeling is an advantage of this type of lattice constellations. Unitary
rotations of QAM lattice constellations are optimized in [9] for dimensions 2 to
4 in order to maximize the minimum product distance of rotated lattices.

3) Shuffling Multi-Dimensional Constellations in Real and Imaginary Axes


If a complex constellation is built such that its real part is independent of its
imaginary part, it can help to reduce the decoding complexity while yet
maintaining dependency among the complex dimensions of the resulted multi-
dimensional constellation. Using this technique, the complexity order of MPA
reduces from Mdf to Mdf/2 which is a high complexity saving especially for
large constellation sizes.
A shuffling method is proposed in this section as illustrated in Fig. 2 to separate
real and imaginary parts. The idea is to construct an N-dimensional complex
mother constellation from Cartesian product of two N-dimensional real
constellations, where each of them is constructed by the same method described
in the previous section. One of these two N-dimensional real constellations
corresponds to the real part of the points of the complex mother constellation
and the other one corresponds to the imaginary part.

11
4) Rotation to Minimize Number of Projection Points
For the sake of simplicity of the MPA decoding, it is more desirable to use
mother constellations that have a smaller number of projections per tone (or
complex dimension). Let m denote the number of projects per complex
dimensions of an M-point constellation. It is obvious that m≤M.
As m decreases, the complexity of the corresponding MPA detector is also
reduced by mdf. During the process of mother constellation design, the rotation
matrix can be set in a way that it leads to the lower number of projected points.
It makes the minimum product distance equal to zero and degrades the high
SNR performance of the SCMA system. Consequently, there is a trade-off
between the high SNR performance and complexity in this case. As an
example, Fig. 4 shows a solution with 9 projections per complex dimension of a
16-point constellation. According to simulations result, it performs close to
T16QAM for mid-SNR range while it reduces complexity order from 163 to 93.

12
C. Constellation Function Operators
By having a solution for the mother constellation (C+ or equivalently g+), the
original SCMA optimization problem is further reduced to optimization of layer
specific operators, i.e.
[Δ+j]Jj=1=argmax[Δj]Jj=1m(S(V+,G=[(Δj)g+]Jj=1;J,M,N,K))
The operators may include phase rotation, and layer power offset. The
codebooks of different SCMA layers are constructed based on the mother
constellation g and a layer-specific operator Δj for layer j. In uplink, as the
layers pass through different channels, layer specific phase rotation loses its
importance. However, in downlink for layers with same channel experience, the
destructive codeword collision can be avoided by earful design of phase
rotations and power levels of different layers. As a result, the points of the
overall super-constellation of the combined layers become distinct. In this paper,
LDS-like phase signatures are used to build multiple SCMA codebooks on top
of the mother constellation with no power offsets.

13
DEEP LEARNING IN SCMA:
Due to its potential to accommodate a large number of users with low latency
and high throughput, sparse code multiple access (SCMA), a promising multiple
access technology, has attracted a lot of interest recently. Nevertheless, deep
learning (DL) has been included into SCMA systems to further enhance the
performance of SCMA. Deep neural networks (DNNs) are specifically utilised
to enhance the system parameters using simulated data during the offline
training stage, enabling effective online implementation.
DNN was created in accordance with the MPA sparse graph for SCMA symbol
identification in [13]. The research demonstrated that, when applied to an
additive white Gaussian noise (AWGN) channel, the suggested DNN-based
technique outperforms MPA in high SNR regimes. In comparison to the MPA-
based system, the suggested DNN-based SCMA system also had reduced
computing complexity, making it more applicable for use in real-world
applications.
DNN was created in [14] to take the role of MPA for symbol detection in coded
SCMA. Particularly in low SNR regimes, the DNN-based system outperformed
the MPA-based system in terms of performance. The authors also demonstrated
that the DNN-based system is more appealing for practical implementation since
it has a lower computational complexity than the MPA-based system.
In order to enhance the bit error rate (BER) performance, DNNs were used in
[15] for the SCMA codebook generation and decoding method. Two DNN-
based techniques were suggested by the study: one for codebook production and
the other for decoding. Comparing the suggested DNN-based approaches to
traditional SCMA systems, improved BER performance was obtained.
Overall, these studies show the promise of employing DNNs for SCMA, and
more investigation in this field may result in even more effective systems. A
more appealing multiple access strategy for use in real-world wireless
communication networks may result from the incorporation of DL techniques
into SCMA.

14
PROPOSED SYSTEM:

We present an uplink HMAS, as shown in Fig. 1. In particular, illustrates the


system diagram and illustrates uplink in a cellular cell with NUs and FUs. We
assume K-orthogonal resources, one BS and J+K users, where K-users that
form Group 1 are NUs, denoted by S with |S|=K, and J users that form Group
2 are FUs, denoted by W with |W|=J. The overloading factor of HMAS is
𝜆𝐻 = 1 + 𝐽/𝐾.

In the proposed scheme, all K-NUs map M-ary modulated symbols


dS={dSk}Kk=1 into {aSk}Kk=1, where
T
aSk = S
⏟… ,0 , dk , 0, … ,0)
(0, ∈ C Kx1 ; k = 1, … , K (1)
k−1
and transmit them via OFDMA. The J FUs maps M-ary modulated
symbols dW={dWj}Jj=1 into {xWj}Jj=1, where the column
vector xWj={xWj,k}K×1k=1∈CK∈Xj is the K-dimensional sparse codeword
with K−N zeros, and transmit them over K resources. Then the received signal
vector is given by
J K

y= ∑ √P W 𝑑𝑖𝑎𝑔(hW W
j )xj + ∑ √P S 𝑑𝑖𝑎𝑔(hSk )aSk + n (2)
J=1 k=1

where PW and PS denote the powers at FUs and NUs in support of data
transmissions, hSk denotes the channel vector of the kth NU to the receiver,
given by

and hWj={hWj,k}Kk=1∈C1×K denotes the channel vector from the jth FU to


the receiver, and we assume ||hWj||≪||hSk||,∀j,k.

15
DNN-Based Signal Detections
We proposed two DNN-based detections [see Fig. 1(a)] for NUs and FUs
symbol detections, respectively. In the following, we first review the standard
DNN structure and its offline training, and then present DNN-based detections
for HMAS.

1) DNN and Offline Training


A standard DNN consists of multiple layers (i.e., an input layer, multiple hidden
layers, and an output layer), where each layer has multiple neurons. Neurons in
the input layer take input data. Then, each neuron in the hidden and output
layers generates an output that is a nonlinear function of a weighted sum of
neuron outputs of previous layer. The nonlinear functions can be sigmoid,
hyperbolic tangent (tanh), and relu functions, which are defined as [16]

1 𝑒 𝑧 − 𝑒 −𝑧
𝑓𝑠𝑖𝑔 (𝑧) = ,𝑓 (𝑧) = 𝑧
1 + 𝑒 −𝑧 𝑡𝑎𝑛ℎ 𝑒 + 𝑒 −𝑧

𝑎𝑛𝑑 𝑓𝑟𝑒𝑙𝑢 (𝑧) = max (0, 𝑧)

2) DNN-Based Detections for HMAS


Two DNN-based detections are present, one for NUs symbol detection and the
other for FUs symbol detection. Each DNN model has similar offline training
procedure. Specifically, we generate two sequences of random M-ary modulated
symbols dW and dS and map them to {aSk}Kk=1 for NUs and {xWj}Jj=1 for
FUs, respectively. First, they are transmitted over the system, described
in Section III-A. Second, the corresponding received signal vector y in (2) is
considered as the training input vector to DNN [i.e., replacing U(1) by y in (5)].
Then, DNNs for NUs and FUs generate the output symbol
𝑑̂S = f(y,\ThetaS ) 𝑑̂ W = f(y, Θ𝑊 )
where ΘS and ΘW denote the parameter sets in
Θ = {𝑊(1) , … , 𝑊(𝐿) , 𝑏(1) , … , 𝑏(𝐿) }
for NUs and FUs, respectively. Then, we repeat the offline training until

16
𝛳𝑜𝑝𝑡 = 𝑚𝑖𝑛𝛳 ||𝑑 − 𝑑̂|| 2

is satisfied, i.e., ΘSopt for NUs and ΘWopt for FUs associated
with dS=f(r,ΘSopt) and dW =f(r,ΘWopt). After both DNNs are trained, we use them
for online detections.

OUR NEURAL NETWORK METHODOLOGY


A machine learning model called a neural network is modelled after the
structure and operation of biological brain networks. It is made up of several
linked nodes (neurons) stacked one on top of the other. The input layer receives
the data, which is then analysed mathematically by hidden layers before being
produced by the output layer as a prediction or classification.

Neural networks are used for a variety of activities, including pattern


recognition and categorization. In these tasks, the neural network learns to
generalise the mapping between the inputs and outputs after being trained on a
series of input-output samples. The neural network may be used to categorise
incoming input data into one of the established categories after it has been
trained.
We may employ a neural network to train a mapping between the input code
characteristics and the appropriate region labels in the context of segmenting the

17
code subspace into J areas. Each code file, for instance, may be represented as a
vector of characteristics, such as the quantity of functions, the size of each
function, the quantity of variables, and so on. Depending on the intricacy of the
code or security flaws, we may also specify the areas into which we wish to
divide the code subspace, such as "low-risk," "medium-risk," and "high-risk"
regions.
Using a labelled dataset of code files, where each file is represented by its
characteristics and tagged with its appropriate region label, we may train a
neural network. In order to forecast the area label for new, undiscovered code
files, the neural network will learn to generalise the mapping between the
characteristics and labels.
The degree of the code subdivision's granularity may be altered by varying the
number of regions J. The neural network will learn to divide code files into two
categories, such as "low-risk" and "high-risk," for instance, if J is set to 2. The
neural network will learn to divide code files into three categories, such as "low-
risk," "medium-risk," and "high-risk," if J is set to 3. For a more precise
partition of the code subspace, we can raise J.
Overall, dividing the code subspace into J areas using a neural network can offer
a systematic and automated method for classifying codes, which can be helpful
for a number of applications including code analysis, code optimization, and
security evaluation.
Overall, there are a wide range of possible uses for this system, including
satellite communication, radar technology, and other wireless communication
systems where it is necessary to evaluate and assign unique users to signals from
space.

18
WORK DONE
ENCODER DESIGN USING MATLAB
An encoder is a digital circuit that converts an input signal into an output signal
that has been similarly encoded. The process of building an encoder entails
selecting the best encoding scheme, figuring out how many inputs and outputs
are needed, and constructing the circuit to carry out the encoding method.
In this instance, the encoder was designed using MATLAB as a simulation tool.
A strong tool for building and simulating digital circuits is MATLAB. It
contains a variety of features and capabilities that make it the best option for this
type of work.
Choose an encoding scheme: Picking an encoding strategy is the first step in
developing an encoder. This might be a straightforward binary encoding system
or a more complicated system like Gray code or BCD (Binary Coded Decimal).
Establish the encoder's input and output capacities: The next stage is to establish
the encoder's input and output capacities. This will rely on the input signal's
characteristics and the encoding strategy. Design the circuit that will implement
the encoding scheme: When the encoding strategy and the number of inputs and
outputs have been decided, the next step is to implement the encoding method.
The built-in MATLAB tools for designing digital circuits may be used for this,
or you can create your own MATLAB code. When the circuit has been
developed, it is crucial to simulate it in order to make sure it is operating
properly. The circuit may be simulated under various input circumstances and
its behaviour can be examined using MATLAB's simulation tools. Test and
improve the design: To make sure the encoder design is working properly,
genuine input signals may be used to test it. Once the design satisfies the
necessary requirements, any faults or issues can be resolved by improving the
design and repeating the testing procedure.

19
DECODER DESIGN
1. Basic Decoder using log-MPA method.
The decoding algorithm employed in communication systems is called the
log-MPA (log-Maximum a posteriori) approach. Low-density parity-check
(LDPC) codes and turbo codes are frequently decoded using it.
Initialization: Set the received signal to r and set the starting value of each
bit's log-likelihood ratio (LLR) to that of the received signal.
Message passing: In this stage, the code graph's variable nodes (VN) and
check nodes (CN) communicate with one another. The parity check equations
are represented by the CN messages, whereas the LLRs for each bit are
represented by the VN messages. Iterative message passing continues until
convergence.
VN-to-CN message: All incoming CN messages, with the exception of the
message from the present CN, are combined to create the VN-to-CN
message. The VN-to-CN message for a VN linked to n CNs may be
computed as:
𝑛

𝑚𝑗𝑖𝑣2𝑐 = 𝑐2𝑣
∏ 𝑚𝑘𝑗𝑖
𝑘=𝑖,𝑘≠𝑗
where k is the index of the other CNs connected to the current VN, I is the
index of the current CN, and j is the index of the current CN.

20
CN-to-VN message: The parity check equation and the VN-to-CN message
are used to compute the CN-to-VN message.
Decision: The decision is determined by comparing the final LLR values with
a threshold value. The bit is decoded as 1 if the LLR is larger than the
threshold; otherwise, it is encoded as 0.
Till the LLR values converge or a maximum number of iterations is reached,
repeat steps 2 and 3 as necessary.

2. Deep learning based decoder for faster decoding of non-orthogonal signals.


The decoding of non-orthogonal signals, such as those used in wireless
communication systems, can be sped up using a deep learning-based decoder.
Signals that cross over in frequency, time, or coding domain are said to be
non-orthogonal, which makes it more challenging to distinguish and decode
them.
Typically, complicated mathematical procedures that might be
computationally expensive and time-consuming are needed to decode non-
orthogonal signals. But, with to recent developments in deep learning, neural
networks may now be used to learn the decoding process and carry it out
much more quickly than before.
Train a neural network to map the received signal to the original message as
one method of employing deep learning to decode non-orthogonal signals.
This may be accomplished by training the neural network on a sizable dataset
of well-known signal/message pairings. The neural network may be used to
swiftly decipher brand-new non-orthogonal signals once it has been trained.
The channel coefficients, which characterise the distortion brought on by the
wireless channel, may also be estimated using a neural network, and the
estimated values can then be used to decode the signal. A neural network may
be trained to map the received signal and a known pilot signal to the
predicted channel coefficients to do this. The channel coefficients can be used
to decode the signal once they have been calculated.
The neural network may be taught in both methods utilising a number of
methods, such as reinforcement learning, unsupervised learning, or
supervised learning. The exact problem being tackled and the information at
hand will determine the strategy to use.

21
An effective method for enhancing wireless communication networks, a deep
learning-based decoder may greatly speed up the decoding of non-orthogonal
signals.

22
CODEBOOK GENERATION
Codebook for the Sparse codes (Non Orthogonal Codes) has been generated
using MATLAB and various reference papers [3]-[7],[10],[12].
In the realm of wireless communication, creating a codebook for non-orthogonal
or sparse codes using MATLAB and reference materials is a typical technique.
An established list of codes known as a codebook can be used to encrypt and
transmit communications across wireless channels.
A method known as compressed sensing, which entails locating a sparse
representation of the message signal in a higher-dimensional space, can be used
to produce a codebook for sparse codes. Then, using the codebook, this sparse
representation may be encoded and transferred over the wireless channel.
Many tools and functions in MATLAB may be used to create and modify sparse
codes. For instance, the "sparse" function may be used to build a sparse matrix,
and the "l1qclogbarrier" function can be used to obtain the sparsest
representation of the signal by solving an optimization problem.
Reference papers may offer knowledge on the best code design for a certain
application or channel, which may be used to direct the codebook development
process. The codebook design and optimization methods that may be used in
MATLAB may also be demonstrated in these articles.
In general, creating a codebook for sparse codes utilising MATLAB and
reference materials might be a useful method to boost the efficiency of wireless
communication systems. The performance of the system will be greatly
influenced by the calibre of the codes employed, hence it is crucial to carefully
examine the unique needs of the application and channel while building the
codebook.
Codebook used for the encoding of 1 of 6 users’ signal using 4 resources.

23
WORK FLOW
IMPLEMENTATION
• In order for numerous users to share the same frequency band, codebook
development for SCMA entails developing sets of distinctive code words
that represent messages or signals. You can employ a variety of
techniques, including learning-based codebook creation, combinatorial
codebook generation, optimization-based codebook generation, and
random codebook generation.
• Decoding techniques are ways to reconstruct broadcast messages or
signals from received signals in wireless communication networks. There
are several decoding methods, including Maximum Likelihood (ML),
Maximum A Posteriori (MAP), Belief Propagation (BP), Successive
Cancellation (SC), and Soft-Decision Decoding. Each approach has
advantages and challenges, and how it is implemented relies on the kind of
code that is used and the resources that are available for computing.
• Analyzing the advantages and disadvantages of each decoding strategy is
necessary for comparison of different decoding strategies. For instance,
ML decoding delivers the highest performance but is costly in terms of
computation, whereas BP decoding, which is used in graphical models and
is simpler than ML decoding but still offers good performance, is more
common. In contrast to SC decoding, which is used in polar codes and
low-density parity-check (LDPC) codes and employs probability
information to make judgements, soft-decision decoding deliberately
discards the least dependable bits. The choice of decoding method
ultimately depends on the particular needs and limitations of the
communication system.

24
METHODOLOGY
➢ Generation of codebooks for SCMA using MATLAB and C
SCMA (Sparse Code Multiple Access) is a non-orthogonal multiple access
(NOMA) technology that employs codebooks to allow numerous users to
share the same frequency and time resources.
o Count the users and the quantity of resources that are available (e.g.,
subcarriers, time slots).
o Choose an appropriate codebook design algorithm, such as the
Grassmannian line packing technique or the sphere packing
algorithm.
o Use MATLAB or C to carry out the selected algorithm.
o Run the developed algorithm for various combinations of the user
base and the available resources to generate the codebooks.
o Analyze the resulting codebooks' performance using metrics like the
minimal Euclidean distance and error rate.
➢ Design of encoder and decoder for SCMA in MATLAB and C
o Describe the SCMA codebook and modulation technique.
o By mapping the information bits to the codebook symbols,
implement the encoder in MATLAB or C.
o Use methods like maximum likelihood (ML) or belief propagation to
implement the decoder in MATLAB or C. (BP).
o Use measurements like the bit error rate (BER) and block error rate
to evaluate the encoder and decoder's performance (BLER).
➢ Generating a Deep Learning model and training it offline in Python
o Specify the model's input and output. The received signal, for
instance, may be the input, and the predicted user symbols, the
output.
o Choose an appropriate Deep Learning architecture, such as a
recurrent neural network or a convolutional neural network (CNN)
(RNN).
o Use a deep learning framework like TensorFlow or PyTorch to
implement the selected architecture in Python.
o Create a dataset by simulating the SCMA system and producing the
training data. This dataset will be used to train the model.
o Use the provided dataset to train the model.

25
o Use measures like the BER and BLER to assess the trained model's
performance.

FUTURE WORK
1) The suggested system can support a greater number of users by leveraging
more orthogonal resources. Different user signals can be separated and
their interfering effects can be minimised in wireless communication
networks by using orthogonal resources such distinct frequency bands,
time slots, or coding techniques. The suggested system may accommodate
a larger number of users without impacting system performance by
expanding the number of orthogonal resources and allocating a different
resource to each user.
2) Several neural network topologies can be used to create the suggested
system. As they can recognise intricate patterns in data, neural networks—
which include convolutional neural networks, recurrent neural networks,
and deep neural networks among others—have gained popularity. The
system's unique needs, such as the kind of data being processed, the size of
the dataset, and the required performance metrics, will determine which
neural network design is best.
3) The possibility for investigating other use cases for the proposed HMAS
(Hybrid Multiple Access System) system beyond the initial use is
highlighted in the third statement. The neural network technology is
employed in the proposed system to evaluate signals in space and link
them to particular users, but it may also be applied in other contexts
including speech recognition, picture classification, and natural language
processing. The HMAS system is adaptable and may be used in a variety
of domains and use cases thanks to its flexibility and the strength of neural
networks.

26
SIMULATION
The signal-to-noise ratio (SNR) necessary for a specific modulation scheme to
achieve a specific bit error rate (BER) performance is determined using the
equation. There are three components to the equation:
• EbN0: This ratio measures the intensity of the signal in comparison to the
noise and is calculated as energy per bit (Eb) divided by noise power
spectral density (N0).
• The modulation scheme is considered by the expression
10*log10(log2(M)*V/K) where M is the number of symbols in the
modulation scheme, V is the energy of each symbol, and K is the number
of bits per symbol.
• N0: This is the noise power spectral density and represents the power of
the noise in the channel.
After calculating the necessary SNR, the noise power (N0) may be computed
using the formula N0 = 1/(10(SNR/10)). This number reflects how much noise
must be included into the signal in order to get the specified SNR.
The AWGN (Additive White Gaussian Noise) function, which adds random
noise with a Gaussian distribution to the signal and is a popular assumption for
noise in communication channels, is used to add noise to the signal as a last
step. The strength of the noise that is added to the signal depends on the value of
N0, which defines the amount of noise that is added to the signal.
In frequency-division multiplexing (FDM) transmissions, the impact of a fading
channel is simulated by this process of introducing noise to the signal. FDM
divides the channel into many sub-channels, each carrying a different signal,
allowing numerous signals to be sent concurrently over the same channel.
Nevertheless, owing to numerous variables including multipath propagation and
interference, these sub-channels may undergo fading, which can cause the signal
intensity to change over time. We may mimic the effect of fading and assess the
effectiveness of the communication system under actual channel circumstances
by introducing noise to the signal with an intensity set by the N0 value.

Input (X) Encoder Channel Decoder

27
RESULT
We have obtained Bit Error Rates for users for each successive signal
using SCMA and decoded using MPA decoding method.

28
29
30
The BER approaches 0 with each successive signal.

31
REFERENCES
1. S. Sharma and Y. Hong, "A Hybrid Multiple Access Scheme via Deep Learning-Based Detection,"
in IEEE Systems Journal, vol. 15, no. 1, pp. 981-984, March 2021, doi:
10.1109/JSYST.2020.2975666.
2. F. Wei and W. Chen, "Low Complexity Iterative Receiver Design for Sparse Code Multiple
Access," in IEEE Transactions on Communications, vol. 65, no. 2, pp. 621-634, Feb. 2017, doi:
10.1109/TCOMM.2016.2631468.
3. S. Zhang et al., "A capacity-based codebook design method for sparse code multiple access
systems," 2016 8th International Conference on Wireless Communications & Signal Processing
(WCSP), 2016, pp. 1-5, doi: 10.1109/WCSP.2016.7752620.
4. S. Sharma, K. Deka, V. Bhatia and A. Gupta, "SCMA Codebook Based on Optimization of Mutual
Information and Shaping Gain," 2018 IEEE Globecom Workshops (GC Wkshps), 2018, pp. 1-6,
doi: 10.1109/GLOCOMW.2018.8644383.
5. Y. Wu, C. Wang, Y. Chen and A. Bayesteh, "Sparse Code Multiple Access for 5G Radio
Transmission," 2017 IEEE 86th Vehicular Technology Conference (VTC-Fall), 2017, pp. 1-6, doi:
10.1109/VTCFall.2017.8288106.
6. M. Taherzadeh, H. Nikopour, A. Bayesteh and H. Baligh, "SCMA Codebook Design," 2014 IEEE
80th Vehicular Technology Conference (VTC2014-Fall), 2014, pp. 1-5, doi:
10.1109/VTCFall.2014.6966170.
7. H. Nikopour and H. Baligh, "Sparse code multiple access," 2013 IEEE 24th Annual International
Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC), 2013, pp. 332-336,
doi: 10.1109/PIMRC.2013.6666156.
8. R. Hoshyar, R. Razavi and M. Al-Imari, "LDS-OFDM an Efficient Multiple Access Technique,"
2010 IEEE 71st Vehicular Technology Conference, 2010, pp. 1-5, doi:
10.1109/VETECS.2010.5493941.
9. J. Boutros and E. Viterbo, "Signal space diversity: a power- and bandwidth-efficient diversity
technique for the Rayleigh fading channel," in IEEE Transactions on Information Theory, vol. 44,
no. 4, pp. 1453-1467, July 1998, doi: 10.1109/18.681321.
10. F. Oggier and E. Viterbo (2004), "Algebraic Number Theory and Code Design for Rayleigh Fading
Channels", Foundations and Trends® in Communications and Information Theory: Vol. 1: No. 3,
pp 333-415. http://dx.doi.org/10.1561/0100000003
11. J. van de Beek and B. M. Popovic, "Multiple Access with Low-Density Signatures," GLOBECOM
2009 - 2009 IEEE Global Telecommunications Conference, 2009, pp. 1-6, doi:
10.1109/GLOCOM.2009.5425243.
12. G. D. Forney and L. . -F. Wei, "Multidimensional constellations. I. Introduction, figures of merit,
and generalized cross constellations," in IEEE Journal on Selected Areas in Communications, vol.
7, no. 6, pp. 877-892, Aug. 1989, doi: 10.1109/49.29611.
13. C. Lu, W. Xu, H. Shen, H. Zhang and X. You, "An Enhanced SCMA Detector Enabled by Deep
Neural Network," 2018 IEEE/CIC International Conference on Communications in China (ICCC),
2018, pp. 835-839, doi: 10.1109/ICCChina.2018.8641219.
14. F. Sun, K. Niu and C. Dong, "Deep Learning Based Joint Detection and Decoding of Non-
Orthogonal Multiple Access Systems," 2018 IEEE Globecom Workshops (GC Wkshps), 2018, pp.
1-5, doi: 10.1109/GLOCOMW.2018.8644090.
15. M. Kim, N. -I. Kim, W. Lee and D. -H. Cho, "Deep Learning-Aided SCMA," in IEEE
Communications Letters, vol. 22, no. 4, pp. 720-723, April 2018, doi:
10.1109/LCOMM.2018.2792019.

32
16. H. Ye, G. Y. Li and B. -H. Juang, "Power of Deep Learning for Channel Estimation and Signal
Detection in OFDM Systems," in IEEE Wireless Communications Letters, vol. 7, no. 1, pp. 114-
117, Feb. 2018, doi: 10.1109/LWC.2017.2757490.
17. F. Sun, K. Niu and C. Dong, "Deep Learning Based Joint Detection and Decoding of Non-
Orthogonal Multiple Access Systems," 2018 IEEE Globecom Workshops (GC Wkshps), 2018, pp.
1-5, doi: 10.1109/GLOCOMW.2018.8644090.
18. M. Kim, N. -I. Kim, W. Lee and D. -H. Cho, "Deep Learning-Aided SCMA," in IEEE
Communications Letters, vol. 22, no. 4, pp. 720-723, April 2018, doi:
10.1109/LCOMM.2018.2792019.

33
ACKNOWLEDGEMENTS
We consider it as a great privilege to express our deep gratitude to many
respected personalities who guided, inspired and helped us in the successful
completion of our project.
We would like to express our deepest gratitude to our guide
Dr. Amarjit Kumar, Assistant Professor
Department of Electronics and Communication Engineering
NIT Warangal
for his constant supervision, guidance, suggestions and invaluable
encouragement during this project.

We are grateful to
Dr. Sreehari Rao Patri, Head of the Department
Department of Electronics and Communication Engineering
NIT Warangal
for his moral support to carry out this project.

We are very thankful to


Dr. Prakash Kodali, Project Coordinator
Department of Electronics and Communication Engineering
NIT Warangal
for his continuous support and guidance during our project.

We are very thankful to the Project Evaluation Committee, for their strenuous
efforts to evaluate our projects.

34

You might also like