1. 1 | P a g e D I L S H A D A H M A D
Assignment
On
Wireless Signal Propagation and Fading
Topic:
Link Adaptation and Adaptive Modulation and Coding
Submitted by:
Dilshad Ahmad (MT/EC/10007/19)
Under:
Prof.Dr.SanjeetKumar
ECE Dept.BIT Mesra, Ranchi
2. 2 | P a g e D I L S H A D A H M A D
Content
______________________________________________
Chapters------------------------------------------------------------------- Pages
1.Introduction--------------------------------------------------------------------------- 4
2.Motivation---------------------------------------------------------------------------- 3
3.Coding Gain and BER--------------------------------------------------------------- 6
4.Modulation Gain and BER---------------------------------------------------------- 7
5.Adapting Energy per bit------------------------------------------------------------- 8
5.1. Algorithm ----------------------------------------------------------------------- 8
5.2. Flow Chart --------------------------------------------------------------------- 9
5.Adapting Coding Technique-------------------------------------------------------- 10
5.1. Algorithm ----------------------------------------------------------------------- 10
5.2. Flow Chart ---------------------------------------------------------------------- 11
5.Adapting Modulation Technique--------------------------------------------------- 12
5.1. Algorithm ----------------------------------------------------------------------- 12
5.2. Flow Chart ---------------------------------------------------------------------- 13
10.Challenges---------------------------------------------------------------------------- 14
12.MATLAB Implementation--------------------------------------------------------- 15
13.Conclusion---------------------------------------------------------------------------- 27
***
3. 3 | P a g e D I L S H A D A H M A D
INTRODUCTION
Link adaptation is a key enabling technology for broadband mobile
internet, and has been part of the fifth generation (5G) new radio (NR)
access technology. In this context, adaptive modulation and coding
(AMC) refers to the selection of the appropriate modulation and coding
scheme (MCS) as a function of the channel quality, in order to keep the
block error rate (BLER) below a predefined threshold. In 4G long term
evolution (LTE), the BLER target is fixed at 10%. However, 5G systems
will cover a wider spectrum of services, requiring potentially different
BLER targets .AMC is a good solution to match the link throughput to the
time-varying nature of the wireless channel under mobility. Periodically,
the user equipment (UE) measures the channel quality and maps this
information into a channel quality indicator (CQI). The base station (BS)
uses the CQI reported by the UE to define the MCS. Typically, each CQI
is associated with a given signal-to-noise ratio (SNR) interval [4].
Considering long term evolution (LTE) as an example, the BS uses
downlink control information (DCI) embedded into the physical downlink
control channel (PDCCH) to inform the UE about each new MCS
selection [5]. Conventional solutions to the AMC problem include the
fixed look-up table ,also called inner loop link adaptation
(ILLA), and the outer loop link adaptation (OLLA) technique, which
further improves the look-up table by adapting the SNR thresholds.
Machine learning (ML) has become an attractive tool to devise novel
AMC solutions in the context of complex emerging 5G systems and
services. In particular the drive towards self-organizing networks is
potentially addressed by machine learning. While in LTE, a look-up table
provides fixed AMC rules for all the users, the emerging systems need a
more flexible approach that can automatically adjust physical layer
parameters (such as the modulation and coding scheme) according to the
user channel state and service type. Reinforcement learning (RL) refers to
4. 4 | P a g e D I L S H A D A H M A D
a category of ML techniques that has been applied to problems such as
backhaul optimization coverage and capacity optimization and resource
optimization. There are few works that use RL to solve the AMC problem.
In the selection of the MCS is based on the received signal-to-
interference-plus-noise ratio (SINR). In this case, the state space is
continuous, and the learning algorithm must handle a large state space. In
Q-learning algorithm is proposed to solve the AMC problem in the
context of a 4G LTE network. A deep reinforcement learning approach
is adopted in in the context of a cognitive heterogeneous network. This
work proposes a novel 5G AMC solution based on a RL framework. The
proposed solution consists of collecting channel measurements at specific
time instants to train an agent using the Q-learning algorithm. The trained
agent selects a MCS according to SNR measurements to maximize the
current spectral efficiency. We assume a beam-based 5G-NR as access
technology, where the transmit and receive beams are selected using the
beam sweeping procedure from. The proposed AMC acts between any
two consecutive points of sweeping. We consider that the SNR between
two consecutive points of sweeping tends to decrease due to the UE
mobility since it causes a mismatch among beams and the channel paths.
The agent uses the trained Q-table and the current measured SNR to
properly select a MCS. To the best of authors’ knowledge, previous works
in AMC do not address the mismatch among beams and channel paths,
while our solution works within the 5G-NR framework.
5. 5 | P a g e D I L S H A D A H M A D
Motivation
o There is Continuously Variation in channel condition that is time
varying behavior nature of channel so here nothing is static like
requirement of user, channel nose condition and also fading
behavior of environment so all parameters are varying continuously
o There is also limitation of Transmission power available (Energy
per bit), Bandwidth Limitation, Coding Limitations and many like
things
o Wireless spectrum is a scarce resource, and how to use this resource
efficiently has been the main driving requirement for all past,
current, and future standards
o So as continuously variation in behavior of channel there should not
a fixed Techniques
6. 6 | P a g e D I L S H A D A H M A D
Coding Gain
As in Figure of Coding gain it shows that from uncoded to coded, the gain
we achieved again in coding there is Soft and Hard Decoding also Soft
decoding has significantly higher than Hard decoding
Fig. Coding Gain
And we achieved both Soft and Hard Decoding in our Implementation
and errors we calculated as our worst case Hard Decoded so Handle the
worst situation of channel because it is un predicted dynamically
changing
7. 7 | P a g e D I L S H A D A H M A D
Modulation Gain
As in shown plot of Modulation gain for three different modulation
schemes BPSK, QPSK and 16-QAM, in plot clearly shown that if we go
from BPSK to QPSK or above to that the error chances increases and BER
goes to high so according to BER toleration and Bit rate we choose the
Modulation Scheme.
In this system I used BPSK modulation scheme that is Bipolar phases 1
bit and only 2 symbols as 0 -> +1 and 1 -> -1 symbol in phase 0->0 degree
and 1-> 180 degree phase and this modulation gives minimum BER if any
error comes that have potential to change phase by 180 then only errors
comes so that is very less and this Modulation is very less prone to noise
but yes bit rate decreases significantly.
8. 8 | P a g e D I L S H A D A H M A D
Adaptive Power (Energy Per Bit) Algorithm:
1. Start
2. Deciding Channel Type
3. Deciding Encoding and Decoding Scheme (Hamming codes)
4. Now Decide BER Tolerable
5. Now Modulation BPSK Chosen
6. Now Initialize EbNo Random or As Minimum as possible
7. Passing codes to channel
8. Decoding Using Hard Decoding
9. At receiver verify the Errors and BER
10.According to condition of 6000 errors tolerable if exceed or less
Update to Transmitter to update the initial EbNo
11.And Continue Transmission with verify every time at Receiver
9. 9 | P a g e D I L S H A D A H M A D
Adaptive Power (Energy Per Bit) Flow Chart
---------------------------------------------------------------------
Transmitter Side
------------------------------------------------------------------
Channel
------------------------------------------------------------------
Yes No Receiver
START
Choose A
coding Tech.
Now Decide
BER
Tolerable
Choose A
Modulation
Tech.
Initial EbNo
AWGN
Channel
No of Error
and BER >
Tolerable
Increase
EbNo
Decrease
EbNo
Here We known the Error
Correcting Capability
BPSK, QPSK, QAM
Hamming Codes
Adaptive
Continue
Transmission
10. 10 | P a g e D I L S H A D A H M A D
Adaptive Coding Technique Algorithm:
1. Start
2. Deciding Channel Type
3. Initial Adaptive Encoding and Decoding Scheme
4. Now Decide BER Tolerable and QoS fixed
5. Now Modulation BPSK Chosen fix
6. Now initialize EbNo fixed we can’t increase it
7. Passing codes to channel
8. Decoding Using Hard Decoding
9. At receiver verify the Errors and BER
10.According to condition of 6000 errors tolerable if exceed or less
Update to Transmitter to update the initial Encoding Scheme
11.And Continue Transmission with verify every time at Receiver
11. 11 | P a g e D I L S H A D A H M A D
Adaptive Coding Technique Flow Chart:
-----------------------------------------------------------------
Transmitter Part
------------------------------------------------------------------
Channel
-------------------------------------------------------------------
Yes Receiver
No
START
Choose A
coding Tech.
Now Decide
BER
Tolerable
Choose A
Modulation
Tech.
Initial EbNo
AWGN
Channel
No of Error
and BER >
Tolerable
Updating
Coding
Tech.
Continue
Transmission
Here We known the Error
Correcting Capability
BPSK, QPSK, QAM
Hamming Codes, Cyclic, BCH, Convolutional
Adaptive
12. 12 | P a g e D I L S H A D A H M A D
Adaptive Modulation Technique Algorithm:
1. Start
2. Deciding Channel Type
3. Initial Encoding and Decoding Scheme fixed
4. Now Decide BER Tolerable and QoS fixed
5. Now Adaptive Modulation initial QPSK Chosen
6. Now initialize EbNo fixed we can’t increase it
7. Passing codes to channel
8. Decoding Using Hard Decoding
9. At receiver verify the Errors and BER
10.According to condition of 6000 errors tolerable if exceed or less
Update to Transmitter to update the initial Modulation Scheme
11.And Continue Transmission with verify every time at Receiver
13. 13 | P a g e D I L S H A D A H M A D
Adaptive Coding Technique Flow Chart:
-----------------------------------------------------------------
Transmitter Part
------------------------------------------------------------------
Channel
-------------------------------------------------------------------
Yes Receiver
No
START
Choose A
coding Tech.
Now Decide
BER
Tolerable
Choose A
Modulation
Tech.
Initial EbNo
AWGN
Channel
No of Error
and BER >
Tolerable
Updating
Coding
Tech.
Continue
Transmission
Here We known the Error
Correcting Capability
BPSK, QPSK, QAM
Hamming Codes, Cyclic, BCH, Convolutional
Adaptive
14. 14 | P a g e D I L S H A D A H M A D
Challenges:
1. Complexity is very High
2. Continuously Update of Lookup Table as for Requirement
3. A Dedicated Unit is required to handle all of that
4. Implementation of Learning Algorithms
5. Required to Maintain very low Latency
15. 15 | P a g e D I L S H A D A H M A D
Source Code
% *********** Assignment WSPF*****************
% Name: Dilshad Ahmad
% Roll No-MT/EC/10007/19;
% Subject: -WSPF(EC560)
%Course: -MTech (wireless Communication)
% Dept: - ECE, BIT Mesra, Ranchi
% AS THIS SYSTEM IS DESIGNED FOR MAINTAING BER =0.084
TO 0.125 AND ERRORS
% BELOW 5000 ACCEPTABLE BUT WE CAN CORRECT 10000 ERRORS
IN WORST CASEWITH
% BER =0.25 IN WORST CASE
fprintf ('n******* Welcome to Adaptive Communication
System ******** nn');
EbN0dB=input("PLZ ENTER Initial Eb/No (dB) = ");
t=1;
for i=1:1:50
R=4/7; %K=4 and n=3 using Hamming as encoding codes
and decoding to overcome errors;
EbN0=10^(EbN0dB/10);
sigma=sqrt(1/(2*R*EbN0)); % EbNo=1/2R(sigma)^2
k=4; % Message Bits
n=7; % Total Number of Bits
16. 16 | P a g e D I L S H A D A H M A D
cwords=[0 0 0 0 0 0 0;
0 0 0 1 0 1 1;
0 0 1 0 1 1 0;
0 0 1 1 1 0 1;
0 1 0 0 1 1 1;
0 1 0 1 1 0 0;
0 1 1 0 0 0 1;
0 1 1 1 0 1 0;
1 0 0 0 1 0 1;
1 0 0 1 1 1 0;
1 0 1 0 0 1 1;
1 0 1 1 0 0 0;
1 1 0 0 0 1 0;
1 1 0 1 0 0 1;
1 1 1 0 1 0 0;
1 1 1 1 1 1 1];
Nerrs=0; Nblocks=10000;
for i = 1:Nblocks
msg=randi([0,1],1,k);
%**************Encoding*******************************
cword=[msg mod(msg(1)+msg(2)+msg(3),2)...
mod(msg(2)+msg(3)+msg(4),2)...
mod(msg(1)+msg(2)+msg(4),2)];
s=1-2*cword; % BPSK bit to symbol conversion mapping
r= s+sigma*randn(1,n); % AWGN CHANNEL rand(1,n) a
dding guassian noise of variance 1
% ************Hard Decoding*****************
b=(r<0); % Thresholg at Zero best for bpsk demod
dist= mod(repmat(b,16,1)+cwords,2)*ones(7,1);
17. 17 | P a g e D I L S H A D A H M A D
[mind1,pos]=min(dist);
msg_cap1=cwords(pos,1:4);
%***************Soft Decoding******************
corr=(1-2*cwords).*r;
[mind2,pos]=max(corr);
msg_cap2=cwords(pos,1:4);
Nerrs=Nerrs+sum(msg~=msg_cap1); % Total Errors
end
BER_sim(t)=Nerrs/k/Nblocks; %Bit Error Rate Calculation
%**** QoS Varifying and Updating to Transmitter *******
if(Nerrs>4000)
disp('Increasing SNR ');
EbN0dB=EbN0dB+1;
else
EbN0dB=EbN0dB-1;
disp('Decreasing SNR ');
end
disp([EbN0dB R BER_sim(t) Nerrs k*Nblocks]);
y(t)=10*log(BER_sim(t)); %log BER
t=t+1;
end
x=1:1:50;
plot(x,BER_sim,'ro');
title(' BER PLOT');
xlabel('Iterations Adapting EbNo');
ylabel('BER(dB)');
legend('Adaptive EbNo');
grid on;
18. 18 | P a g e D I L S H A D A H M A D
output:
******* Welcome to Adaptive Communication System********
disp ([EbN0dB R BER_sim(t) Nerrs k*Nblocks]);
PLZ ENTER Initial Eb/No (dB) = -20
Increasing SNR
-19 0.57143 0.46935 18774 40000
Increasing SNR
-18 0.57143 0.46172 18469 40000
Increasing SNR
-17 0.57143 0.45663 18265 40000
Increasing SNR
-16 0.57143 0.44832 17933 40000
Increasing SNR
-15 0.57143 0.44812 17925 40000
Increasing SNR
-14 0.57143 0.4444 17776 40000
19. 19 | P a g e D I L S H A D A H M A D
Increasing SNR
-13 0.57143 0.4347 17388 40000
Increasing SNR
-12 0.57143 0.4271 17084 40000
Increasing SNR
-11 0.57143 0.4157 16628 40000
Increasing SNR
-10 0.57143 0.4028 16112 40000
Increasing SNR
-9 0.57143 0.39153 15661 40000
Increasing SNR
-8 0.57143 0.37733 15093 40000
Increasing SNR
-7 0.57143 0.3573 14292 40000
20. 20 | P a g e D I L S H A D A H M A D
Increasing SNR
-6 0.57143 0.3358 13432 40000
Increasing SNR
-5 0.57143 0.32098 12839 40000
Increasing SNR
-4 0.57143 0.28858 11543 40000
Increasing SNR
-3 0.57143 0.26203 10481 40000
Increasing SNR
-2 0.57143 0.2297 9188 40000
Increasing SNR
-1 0.57143 0.1914 7656 40000
Increasing SNR
0 0.57143 0.1536 6144 40000
21. 21 | P a g e D I L S H A D A H M A D
Increasing SNR
1 0.57143 0.11718 4687 40000
Decreasing SNR
0 0.57143 0.08515 3406 40000
Increasing SNR
1 0.57143 0.11653 4661 40000
Decreasing SNR
0 0.57143 0.0861 3444 40000
Increasing SNR
1 0.57143 0.11653 4661 40000
Decreasing SNR
0 0.57143 0.086575 3463 40000
Increasing SNR
1 0.57143 0.12162 4865 40000
22. 22 | P a g e D I L S H A D A H M A D
Decreasing SNR
0 0.57143 0.085575 3423 40000
Increasing SNR
1 0.57143 0.1181 4724 40000
Decreasing SNR
0 0.57143 0.082725 3309 40000
Increasing SNR
1 0.57143 0.11762 4705 40000
Decreasing SNR
0 0.57143 0.085025 3401 40000
Increasing SNR
1 0.57143 0.12043 4817 40000
Decreasing SNR
0 0.57143 0.085875 3435 40000
23. 23 | P a g e D I L S H A D A H M A D
Increasing SNR
1 0.57143 0.124 4960 40000
Decreasing SNR
0 0.57143 0.081625 3265 40000
Increasing SNR
1 0.57143 0.1182 4728 40000
Decreasing SNR
0 0.57143 0.083775 3351 40000
Increasing SNR
1 0.57143 0.12427 4971 40000
Decreasing SNR
0 0.57143 0.082825 3313 40000
Increasing SNR
1 0.57143 0.1219 4876 40000
24. 24 | P a g e D I L S H A D A H M A D
Decreasing SNR
0 0.57143 0.087 3480 40000
Increasing SNR
1 0.57143 0.1219 4876 40000
Decreasing SNR
0 0.57143 0.08515 3406 40000
Increasing SNR
1 0.57143 0.12052 4821 40000
Decreasing SNR
0 0.57143 0.086 3440 40000
Increasing SNR
1 0.57143 0.12065 4826 40000
Decreasing SNR
0 0.57143 0.084175 3367 40000
25. 25 | P a g e D I L S H A D A H M A D
Increasing SNR
1 0.57143 0.11872 4749 40000
Decreasing SNR
0 0.57143 0.083725 3349 40000
>>
26. 26 | P a g e D I L S H A D A H M A D
BER PLOT
As in plot it is clearly shown that As Adaptive EbNo iteration going on the
BER is reaching to its specify value and that was the target to maintain a
specified range of BER
27. 27 | P a g e D I L S H A D A H M A D
Conclusion:
Today’s Device is integrated with many features in one unit and at any time it
changes so this is Most important for todays to adapt the Modulation, Coding and
sometime power level for utilize resources Efficiently, and lots of research is going
on to do this efficiently.