0% found this document useful (0 votes)
77 views

Final Report Inter Mob Comm

This document presents a project report on interference mitigation in cellular networks using a hybrid channel allocation technique with genetic algorithms. It discusses the issues of limited spectrum and increasing interference with more users. It describes different types of interference and channel allocation techniques including fixed, dynamic and hybrid. It proposes using a genetic algorithm to optimize channel assignment and minimize interference while meeting demand, with the genetic algorithm using a cost function that considers interference constraints.

Uploaded by

Mounesh Panchal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views

Final Report Inter Mob Comm

This document presents a project report on interference mitigation in cellular networks using a hybrid channel allocation technique with genetic algorithms. It discusses the issues of limited spectrum and increasing interference with more users. It describes different types of interference and channel allocation techniques including fixed, dynamic and hybrid. It proposes using a genetic algorithm to optimize channel assignment and minimize interference while meeting demand, with the genetic algorithm using a cost function that considers interference constraints.

Uploaded by

Mounesh Panchal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 37

A Project Report

On

Interference Mitigation by Hybrid


Channel Allocation using Genetic
Algorithm

by
Md Saif H2016124031
Mounesh H2016124024

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, PILANI (RAJASTHAN)


Hyderabad Campus
(Mar 2017)
ABSTRACT
In Cellular Communication Network the number of users is tremendously
increasing with limited spectrum utilization. So, the spectrum has to be
efficiently utilized for the increasing numbers of users in the presence of
interferences namely co-channel, adjacent channel and co-site. Fixed,
Dynamic and Hybrid are the three channel allocation techniques in use for
allocating the channels considering different constraints. How do we
assign the calls to the available channels so that the interference is
minimized while the demand is met? An optimized Hybrid channel
allocation technique with co-channel and co-site constraints is proposed
by using Genetic Algorithm. GA optim tool box if MATLAB is used to
run GA by giving COST function [which is a equation designed taking
care of all three interference constraints].as its input parameter.
CONTENTS
Introduction

Implementation of Modified RSA


Flow chart showing Modified RSA Encryption
Flow chart showing Modified RSA Decryption
Simulation Results
Discussion on Results
References
Appendix
Introduction:
The wireless user population is tremendously increasing day by day with
limited spectrum utilization. The cost of service, the bandwidth requirement
and interference reduction are important challenges that can be achieved by
efficient reuse of scarce radio spectrum allocated to wireless mobile
communication. The basic prohibiting factor in reuse of radio spectrum is
the interference caused by other mobiles or environmental changes.
Interference reduction can be achieved by using channel allocation
techniques and employing efficient radio subsystems.

Interferences in cellular system

In tremendous growth of the wireless/mobile user population, number of


base station required to serve geographical area is an important factor. From
the cost-of service point of view efficient use of radio spectrum is also
important. A reduction in the number of base stations, and hence in the cost
of service, can be achieved by more efficient reuse of the radio spectrum.
Same channel from one cell is reused in other cell, which is at reuse distance
from itself. Reused distance D

Where R is cell radius and N is the reuse pattern (the cluster size or the
number of cells per cluster). Reusing channels fallout in different types of
interferences like co channel, adjacent channel and co site.

1) Co channel Interference:

Co channel interference is the radio interference between channels using


the same frequency. The total suppression of the co channel interference is
not possible in frequency reuse concept. To obtain a tolerable value of co
channel interference the system designer has to maintain a minimum
separation distance to the co channel site. Cells may only use the same
channels providing that the distance of their centers is equal or multiple of
this minimum distance (reuse distance).
2) Adjacent Channel Interference:

Adjacent channel interference is the radio interference between channels


which are using adjacent frequencies in the adjacent cells. The suppression
of this kind of interference depends on the proper design of the cellular
system by not permitting adjacent channels to be used.

3) Co site Interference:

Co site channel interference is the radio interference between channels


which are using adjacent frequencies in the same cell. The suppression of
this kind of interference is done by maintaining proper separation between
the channel frequencies.

Reuse of channel by maintaining reuse distance and proper frequency


separation can suppress these interferences & this can be achieved by an
efficient algorithm for Channel allocation.

Cellular mobile communication systems are expected to have a high degree


of capacity, i.e., they have to serve the maximum number of calls even
though the number of channels per cell is limited. Moreover, cells in the
same cluster cannot use the same channel because of an increased
possibility of cochannel interference that occurs mainly during the busy
hours of the system. Hence the process of channel assignment, that
determines the channels that are to be used in each cell, is very important
for the operation and reliability of cellular systems. There are mainly three
channel assignment strategies:

1) Fixed Channel Allocation/assignment,


2) Dynamic Channel Allocation and
3) Hybrid Channel Allocation.

These techniques are based on the way how channels are utilized.
Fixed Channel Allocation (FCA) :
Fixed channel allocation, in which channels are assigned in cells at the
beginning of system design. Total channels of cellular system are
available to every cluster. In a cluster channel destruction/division is
uniform among cells so every cell uses the same predetermined channels.
Fixed channel allocation has very simple design and work efficiently for
uniform traffic demand. However, FCA do not adapt to changing traffic
conditions and user distribution therefore FCA is not suitable for non-
uniform traffic.

Dynamic Channel Allocation (DCA):


FCA is not able to give high channel efficiency for the short-term temporal
and spatial variations of traffic in cellular systems. A DCA scheme has been
studied to overcome the drawback of FCA. In DCA all the channels are
available with the central pool and allocated dynamically to the cells as new
call arrives to the cell. DCA schemes can be also divided into centralized and
distributed schemes with respect to the type of control they employ. DCA
requires more computational efforts for heavy traffic. The performance of
DCA degrades for heavy traffic than FCA. This can be overcome by hybrid
channel allocation (HCA).

Hybrid Channel Allocation (HCA):

In HCA, set of channels is divided into fixed and dynamic set. Fixed set
contains several nominal channels and these channels allocated like FCA &
prefer to be used in respective cell. Channels/frequency from dynamic set
are shared by users. When all nominal channels are busy then channel from
dynamic set is allocated. In this, dynamic to fixed channel ratio can be
changed as per the non-uniform traffic and geographical area.
One of the earlier aims of the channel assignment problem (CAP) is to
assign the required number of channels to each region in such a way that
interference is precluded and the frequency spectrum is used efficiently This
problem can be shown to be equivalent to a graph coloring problem.

As demand for mobile communications grows further, interference-free


channel assignments often do not exist for a given set of available
frequencies. Minimizing interference while satisfying demand within a
given frequency spectrum is another type of channel assignment problem

Over the recent years, several approaches have been used to solve various
channel assignment problems, including

Simulated annealing
Neural networks and
Genetic algorithms

Among them Hybrid Channel allocation with Genetic algorithm is the most
widely used one. Ngo and Li developed an effective GA-based approach
that obtains interference-free channel assignment by minimizing
interference in a mobile network. They demonstrated that their approach
efficiently converges to conflict-free solutions in several benchmarking
problems of channel assignment.

Genetic Algorithm:

GA is a search algorithm that is based on the mechanics of natural selection,


genetics and evolution. GAs have been used in a variety of applications.
Channel allocation using hybrid channel assignment utilizes GA to assign
best channel to incoming call in cell.
GA work with a large population of solutions. Each solution is represented
as a chromosome. A collection of chromosomes forms a population. Just as
in genetics, a chromosome contains several genes.
A chromosome is usually represented in binary numbers. Each binary bit
corresponds to a gene. Chromosomes are also known as individuals or
strings. From the population of solutions, GA selects the best possible
solution on the basis of a threshold or fitness function. This fitness function
is unique for every optimization problem. The fitness of each chromosome
in the population is measured, and the best chromosome is selected. GA
ensures a quicker convergence to the near-optimal solution. Any problem
that can be represented as an optimization problem can be solved using GA.
The process keeps repeating in an iterative manner till a particular
termination criterion has reached.

FLOW CHART FOR GA


Initialization:

As it can be seen from the figure, an initial population is randomly


generated. The population size can be designed by the user. This population
contains many chromosomes, and should be present in a binary form. The
number of chromosomes in a population forms the population size. This
parameter plays an important role in the performance of GA.

Evaluation:
Before starting with the GA, a fitness function has to be formulated first.
This fitness function is the most crucial part of the algorithm, and varies
depending upon the application GA is used in. The fitness function must be
designed such that the best chromosome corresponds to the one with the
least fitness value. In the evaluation phase, the fitness functions of all the
chromosomes present in the initial population are calculated. The fitness
function should be formulated such that the individual chromosome be its
variable input parameter.

Selection :

Once the fitness values have been calculated, the chromosomes that
correspond to the lesser fitness values can be selected. Usually, selection
probability is 0.5, i.e., half of the initial population is selected based on their
fitness values. For this purpose, the chromosomes can be arranged in their
increasing order of fitness values and the first half can be selected.

Crossover:

Once a portion of the population has been selected, the number of


chromosomes in the initial population decrements. But the population size
must be maintained throughout. For this purpose, new chromosomes have
to be generated from the existing ones. This is done with the help of two
functions: crossover and mutation. Crossover is the process where two
chromosomes are combined to form two new chromosomes. The strings
that are selected from the selected population for this purpose are called
parent chromosomes. The offspring produced are called child
chromosomes.
Mutation:
Mutation is the process where only one parent is involved to form a new
chromosome. Some random genes are selected for mutation or change.
Usually the probability of mutation is chosen to be less than the probability
of crossover. A mutation point, or mpoint, is selected as the point where
mutation occurs. At that point, 0 changes to 1 and vice versa. The fitness
value has to be calculated for the new individuals. Thus, a new population
will be formed, by maintaining the population size.

Termination:

These processes take place in an iterative manner. But certain terminating


criterions are provided. It could either be the number of iterations, or a
particular threshold value that has to be attained, or else the time taken for
implementation. When any of these criterion reaches, the iteration
automatically stops, and the first chromosome in the current population is
selected as the best individual, or as the optimum solution to the problem.

DCA USING GA

For performing dynamic channel assignment using genetic algorithm, the


DCA problem has to be formulated as an optimization problem first. A
cellular network is assumed to consist of N arbitrary cells and the number
of channels available is given by M. The channel requirements (expected
traffic) for cell j are given by Dj. Assume that the radio frequency (RF)
propagation and the spatial density of the expected traffic have already been
calculated. The 3 types of constraints can be determined. The
electromagnetic compatibility (EMC) constraints, specified by the
minimum distance by which two channels must be separated in order that
an acceptably strong S/I ratio can be guaranteed within the regions to which
the channels have been assigned, can be represented by an N N matrix
called the compatibility matrix C.
In this matrix, C:

Each diagonal element Cii represents the co-site constraint (CSC), which
is the minimum separation distance between any two channels at cell i.
Each non-diagonal element Cij represents the minimum separation
distance in frequency between any two frequencies assigned to cells i and
j, respectively.
Co-site constraint (CSC) is represented by Cij = 1.
Adjacent channel constraint (ACC) is represented by Cij = 2.
Cells that are free to use the same channels are represented by Cij = 0.

For example, suppose the number of cells in the network is N = 4, there are
M = 11 channels available and the demand for the channels for each of these
cells is given by D = (1,1,1,3).

The diagonal terms Cii = 5 indicate that any two channels assigned to cell i
must be at least 5 frequencies apart in order that no co-site interference
exists. Channels assigned to cells 1 and 2 must be at least C12 = 4
frequencies apart. Off diagonal terms of Cij = 1 and Cij = 2 correspond to
co-channel and adjacent channels constraints, respectively.
The solution space is represented by F as an N M binary matrix, where N
is the total number of radio cells and M is the total number of available
channels. Each element fjk in the matrix is either one or zero such that

This matrix F can be represented by the figure below

The fitness function has to be evaluated first before performing the genetic
algorithm.
The Cost Function for the present problem given by

Each channel assignment in the network, represented by either a 1 or 0 in


the F solution matrix, represents the genes in each chromosome. These
genes encode information about which channels have been assigned and
vice versa, forming the chromosomes, and thus the F solution matrix. After
randomly generating a population of chromosomes, the fitness of each
chromosome should be evaluated. Therefore, all F solution arrays in the
population are evaluated for their fitness values, by using the final cost
function. The lower the cost function value, the fitter the chromosome.

The next step in the genetic algorithm is to generate a new population, using
genetic algorithm operators, such as selection, crossover and mutation. The
selection process consists of selecting 2 parent chromosomes from a
population according to their fitness, i.e., individuals with better fitness
have higher chances to be selected. Each F solution array in the population
stands a chance to be selected for crossover and mutation, as a parent
chromosome.

The selection, crossover and mutation processes will be repeated until the
new population, which has the same size as the old population, is formed.
After this procedure, all new rows in the F solution matrix, or
chromosomes, will be used for a further run of the entire genetic algorithm
until an optimized solution is found.
Proposed HCA GA Algorithm Block Diagram

System parameters like number of cells in the network and total


number of channels must be given as input to the genetic algorithm.
The fitness function, which determines the quality of each possible
solution, must also be designed and given as input to the algorithm.
At the output, the best solution corresponding to the channels that
must be assigned to each cell is obtained.
HCA USING GA FLOWCHART
Results from the Paper:

Graphs showing interference free assignment

D1= {1,1,1,3}. D2= {2,2,2,4,3}.

Graph Showing reduction in no of calls blocked with HCA-GA


)=
(
2) Key Distribution:
Prior to the encryption and decryption, user needs generate public and
private key as mentioned above.
Public key is known to everyone. Anybody who wants to send the
message uses the public key for encryption.
Private key is unique and is known only to intended receiver. Private key
is used to decrypt the cipher and therefore should not be shared with
anyone.
3)Encryption:
To encrypt the message public key is required. The length of message
signal that can be encrypted is bounded by the constraint
< <
In order to increase the length of message to be encrypted large values of
prime number p and q should be chosen.
The encryption of message is
=
^( )
4)Decryption: To decrypt the message private key is required.
The decryption of cipher will be

=
()
RSA explained with Example:
Key generation:
Choose two prime numbers
=

=
Compute the product
= = =


Compute totient function
(
) = ( ) ( ) =
=


Choosing Public key
Choose a number e such that
< < (
)





.
=
Compute a value for private key such that it satisfies
(
) % (
) =
.
[( ) % =
]
One of the solutions satisfying above condition is
=

Key Distribution:
, ) => (
Public key is ( , ) known to everyone
Private key is (, ) => (

, ) intended receiver
Encryption:
=
^()

If we want encrypt letter h. ASCII value of h is 104. It is encrypted as


follows

=

()
comes out as =

Decryption:

=
()

=
( )
=
Advantages and Disadvantages of RSA
Advantages:
RSA relies on the fact that it is easy to multiply two large prime numbers
together but extremely hard [time consuming] to factor them back to
result.
for ex: the product of 3391 and 23279 can be calculated easily its
78939089 but its extremely difficult to factorize the same number to get
back factors 3391 23279

Disadvantages:
1. If factorization of n [p*q] is possible then whole RSA algorithm is
compromised.
2. Encryption and Decryption takes a long time for large p and q.
Hence we have to bring some modifications which increases the security
of existing algorithm but not at the cost of time

POSSIBLE SOLUTIONS
For Enhancing the security
1. Use of fake modulus i.e. instead of sending n , Fake modulus Fn is
sent over the channel.
2. Instead of using Two prime to calculate n, we can use three prime
there by making factorization more complex.
For Enhancing the Speed
1. Offline key generation
2. Montgomery Multiplication
3. Improving Modular Exponentiation
4. Many more mathematical improvements using concepts of number
theory.
PROPOSED DESIGN
RSA algorithm can be improved in two areas as mentioned
1)Security
2)Time

We aim to increase the security of Basic RSA algorithm by introducing


randomness in encryption process
In proposed scheme we will be sending two ciphers
One cipher is calculated using random number
The other cipher will contain the information about the message text
1 : from random number selected
2 : from the message text
Attacker has to break two ciphers to retrieve the message
IMPLIMENATAION
Generation of keys

As compared to basic RSA where 2 keys are generated we will generating


three keys thus increasing the security
Generation of public key e
Choose two large prime numbers p and q find n and totient function (n)
=
(
) = ( ) (
)

Next we compute "e " as



, (
[ ) ] =
< < (
)
Generation of Private key d
Private key d is calculated using
(
) % (
) =

Generation of random key k [ Modified part]


we compute k " as

[, ] =
< < <
Encryption:
In our modified RSA Encryption is two step process
1) In first step we calculate first cipher
using and public key


=

2) In second step we encrypt our message using and public key


)

= (.
Final cipher that will sent to receiver is
= [
]

Decryption:
In our modified RSA decryption is three step process
1) First cipher
is decrypted to get random number using private key


=
()
2) In second step we calculate unique integer using random number
(
. ) = such that < <
3) In third step we decrypt cipher
using

= (
.
)
Flow Chart Modified RSA Encryption

Input any two large prime


numbers

Whether Input any number Input any number


Prime
)
e in the range 1<e<( )
K in the range 1<e<(

n=p*q Whether e Whether k


and () are and () are
() = (p-1)*(q-1) coprime coprime

Plain text

Calculate private key d

Cipher 2 Cipher
1
Flow Chart Modified RSA Decryption

Receive
1,
2


Input number s

No
Calculate from
1 ( )
= 1

yes

From s and 2 decrypt message

Plain Text
SIMULATED RESULTS

Basic RSA results


Modified RSA results Example 1:
Modified RSA results Example 2:
Modified RSA results Example 3:
Modified RSA results Example 4:

Discussion on results

Basic version RSA lacks randomization component and if attacker


succeeds in factorizing prime numbers. Then whole system is
compromised.
As we have seen from the results we have increased security by
multilevel encryption and decryption. To decrypt the message attacker,
need, not only private key but also random numbers k and s
REFERENCES

[1]Ranjan Bose Information theory, coding and cryptography, 2014,


pp. 283-294.
[2]Xin Zhou , Xiaofei Tang, Research and Implementation of RSA
Algorithm for Encryption and Decryption , The 6th International Forum
on Strategic Technology, China,2011
[3]Alaa Hussein Al-Hamami, Ibrahem Abdallah Aldariseh , Enhanced
Method for RSA Cryptosystem Algorithm Advanced Computer Science
Applications and Technologies (ACSAT), 2012 International Conference,
Jordan, 2012
[4]Enhancing Security Features in RSA Cryptosystem, IEEE
Symposium on Computers & Informatics,2012
[5]M. Bahadori, M. R. Mali, O. Sarbishei, M. Atarodi and M. Sharifkhani
A novel approach for secure and fast generation of RSA public and
private keys on SmartCard NEWCAS Conference (NEWCAS), 2010 8th
IEEE International, 2010, pp. 265-268.
[6]H. Ge and S. R. Tate Efficient Authenticated Key-Exchange for
Devices with a Trusted Manager Information Technology: New
Generations, 2006 (ITNG2006). Third International Conference on, 2006,
pp.198-203
Appendix
MODIFIED RSA:
Main Program
clc;
clearvars;

p=input('enter the value of prime no p\n');


q=input('enter the value of prime no q\n');
[phi,n,d,e,k]=INIT_MOD(p,q);
disp( sprintf( 'The value of n is n= %d\n', n ) );
disp( sprintf( 'The value of Totient function is phi(n)= %d\n', phi ) );
disp ( sprintf( 'The value public key is e= %d\n', e ) );
disp( sprintf( 'The value private key is d= %d\n', d ) );
disp( sprintf( 'The value random number in range (i<k<n) satisfying GCD(n,k)
=1 is k=%d\n', k ) );

[c1]=encryption_MOD(k,e,n);
%m=input('enter the message to be encrypted');
m=input('enter the message to be encrypted\n','s');
x=length(m);
for i=1:x

[c(i)]=text2ascii_MOD(m(i));
[c2(i)]=encryption_MOD_1(k,c(i),e,n);
end
disp( sprintf( 'The value of first cipher is c1= %d\n', char(c1) ) );
disp( sprintf( 'The value cipher Corresponding to message is c2 = %s\n', c2 )
);
[k]=decryption_MOD(c1,d,n);
%disp(k);
[s]=random_MOD(k,n);
disp('the value of number S is');
disp(s);
for j=1:x Fn(j)=c2(j)*s;
[m(j)]=decryption_MOD(Fn(j),d,n);
end
disp ( sprintf( 'The encrypted message is = %s\n', char(c2) ) );
disp ( sprintf( 'The decrypted message is = %s\n', char(m)) );
Function for Calclation of phi,n,d,e,k
function[phi,n,d,e,k]=INIT(p,q)
n=p*q;
phi=(p-1)*(q-1);
e=1;
i=2;
while i>1

e=e+1;
i=gcd(phi,e);

end

d=1;
j=2;
while j>1

if rem(d*e,phi)~=1
d=d+1;
j=rem(d*e,phi);
end
end

k=5;
i=2;
while i>1

k=k+5;
i=gcd(n,k);

end

end

Function for Encryption


function[en]=encryption_MOD_1(z,c,e,n)
[e]=dtob(e);
k = 65535;
c = c;
cf = 1;
cf=mod(z*c*cf,n);
for i=k-1:-1:1
c = mod(c*c,n);
j=k-i+1;
if e(j)==1
cf=mod(c*cf,n);
end
end

en=cf;
Function for text to ASCII conversion
function[c]=text2ascii(m)
x=length(m);
c=0;
for j=1:x
for i=0:122
if strcmp(m(j),char(i))
c(j)=i;
end
end
end

Function for decimal to binary


function[a]=dtob(d)
i=1;

a=zeros(1,65535);

while d >= 2

r=rem(d,2);

if r==1

a(i)=1;

else

a(i)=0;

end i=i+1;

d=floor(d/2);

end

if d == 2

a(i) = 0;

else

a(i) = 1;

end
Function for Decryption
function[en]=decryption_MOD(c,e,n)
[e]=dtob(e);
k = 65535;
c = c; cf = 1;
cf=mod(c*cf,n);
for i=k-1:-1:1
c = mod(c*c,n);
j=k-i+1;
if e(j)==1
cf=mod(c*cf,n);
end
end

en=cf;

Function for generation of random number k

function[d]=random_MOD(e,n)
d=1;
j=2;
while j>1

if rem(d*e,n)~=1
d=d+1;
j=rem(d*e,n);
end
end

end

Function for calculation of s


function[s]=random_MOD(k,n)
s=1;
j=2;
while j>1

if rem(s*k,phi)~=1
d=d+1;
j=rem(s*k,phi);
end
end

You might also like