pareto optimal solution for multi-objective optimization
TRANSCRIPT
DSpace Institution
DSpace Repository http://dspace.org
Information Technology thesis
2020-02-25
Pareto Optimal Solution for
Multi-Objective Optimization in
Designing Wireless Sensor Networks
Bitew, Haimanot
http://hdl.handle.net/123456789/10888
Downloaded from DSpace Repository, DSpace Institution's institutional repository
BAHIR DAR UNIVERSITY
BAHIR DAR INSTITUTE OF TECHNOLOGY
SCHOOL OF RESEARCH AND POSTGRADUATE STUDIES
FACULTY OF COMPUTING
PARETO OPTIMAL SOLUTION FOR MULTI-OBJECTIVE OPTIMIZATION
IN DESIGNING WIRELESS SENSOR NETWORKS
By
HAIMANOT BITEW
BAHIR DAR, ETHIOPIA
February 25, 2020
I
PARETO OPTIMAL SOLUTION FOR MULTI-OBJECTIVE OPTIMIZATION
IN DESIGNING WIRELESS SENSOR NETWORKS
By
Haimanot Bitew Alemayehu
A thesis submitted to the school of Research and Graduate Studies of Bahir Dar Institute of
Technology, BDU in partial fulfillment of the requirements for the degree of Master of
Science in the Information Technology in the faculty of Computing.
Advisor Name: Mekuanint Agegnehu (PhD)
Bahir Dar, Ethiopia
January 2020
II
III
Haimanot Bitew Alemayehu
© 2020
ALL RIGHTS RESERVED
IV
V
DEDICATION
This thesis is dedicated to my mother and my father he passed away during my
childhood.
VI
ACKNOWLEDGEMENT
I have extraordinary thanks for my Almighty God and His Mother Saint-Merry. It is with
immense gratitude that I acknowledge the support and help of my advisor Dr.Mekuanint
Agegnehu. I have been amazingly fortunate to have an advisor who gave me the freedom to
explore on my own and at the same time the guidance to recover when my steps faltered. He
taught me how to question thoughts and express ideas. His patience, advises and support helped
me overcome challenging situations and finish this thesis, plus his comments added great value
for my future career.
Many friends have been helped me stay rational throughout the years. I greatly value their
Friendship and deeply appreciate their belief in me. I have to give a special mention for my
friend Mohammed Ali who helped me more in this thesis. And also, I would like to thank my
friends: Birhanu G., Gubala G. Their support and care helped me to overcome setbacks and stay
focused on my postgraduate study. Most importantly, have special thanks to my mother, to
whom this thesis is dedicated to, have been constant sources of love, concern, support, and
strength all the past years. Besides, I would like to express my heartfelt gratitude to my sisters:
Ayinadis B., Tsehaynesh B., Esaynesh D. and to my girlfriend Kalkidan A., and to my brothers:
Aschale M., Degu D., Abebaw T., Addisu L. who have aided and encouraged me throughout
my life. Finally, I share the credit of my work for the rest of all my brothers, sisters, friends and
IT staff members of Mizan-tepi University that I have not mentioned their name here.
VII
Table of Contents
DECLARATION ........................................................................................... Error! Bookmark not defined.
ACKNOWLEDGEMENT ............................................................................................................................ VI
LIST OF ABBREVIATIONS ...................................................................................................................... X
LIST OF FIGURES .................................................................................................................................... XI
LIST OF TABLE ................................................................................................................................... XII
ABSTRACT .............................................................................................................................................. XIII
CHAPTER ONE ...................................................................................................................................... 1
INTRODUCTION ................................................................................................................................... 1
1.1. Background ....................................................................................................................................... 1
1.2. Statement of the Problem .................................................................................................................. 3
1.3. Objectives of the study ...................................................................................................................... 4
1.3.1. General objective ........................................................................................................................... 4
1.3.2. Specific objectives ..................................................................................................................... 4
1.5. Scope of study ................................................................................................................................... 6
1.6. Significance of the Study .................................................................................................................. 6
1.7. Organization of the Study ................................................................................................................. 7
CHAPTER TWO ..................................................................................................................................... 8
LITERATURE REVIEW ........................................................................................................................ 8
2.1. Introduction ....................................................................................................................................... 8
2.2. Design wireless sensor Networks ..................................................................................................... 8
2.2.1. Coverage ........................................................................................................................................ 8
2.2.2. Network Lifetime ........................................................................................................................... 9
2.2.3. Energy Consumption .................................................................................................................... 10
2.3. Multi-objective optimization ...................................................................................................... 10
2.4. Multi-objective optimization Algorithms ....................................................................................... 11
VIII
2.4.1. Non-dominated sorting genetic algorithm-II ........................................................................... 11
2.5. Related Works ................................................................................................................................. 12
CHAPTER THREE ............................................................................................................................... 15
METHODOLOGY OF THE STUDY ................................................................................................... 15
3.1. Introduction ..................................................................................................................................... 15
3.2. Pareto-optimal based Approach ...................................................................................................... 16
3.3. Optimization parameters in WSN ............................................................................................... 17
3.3.1. Coverage area .......................................................................................................................... 17
3.3.2. Network Lifetime ..................................................................................................................... 18
3.3.3. Energy consumption ................................................................................................................ 19
3.4. Mathematical problem formulations ............................................................................................... 20
3.5. Algorithms ...................................................................................................................................... 22
3.5.1. Non-dominated Sorting Genetic Algorithm-II ............................................................................. 22
3.5.2. Pseudo code of NSGA-II Algorithm .......................................................................................... 23
3.5.3. NSGA-II Flowchart diagram .......................................................................................................... 24
3.5.4. NSGA-II Flowchart Description .................................................................................................. 24
3.5.5. NSGA-II implementation for Multi-objective optimization ........................................................ 26
3.6. Simulator ......................................................................................................................................... 34
3.7. Nodes connectivity’s on their Deployment ..................................................................................... 36
CHAPTER FOUR .................................................................................................................................. 38
RESULTS AND DISCUSSION ............................................................................................................ 38
4.1. Introduction ..................................................................................................................................... 38
4.2. Assure connectivity within RoI-I and RoI-II .................................................................................. 39
4.2.1. Coverage area ratio in RoIs ...................................................................................................... 39
4.2.2. Net residual energy in RoI-I and RoI-II ................................................................................... 40
4.2.3. Lifetime in RoI-I and RoI-II .................................................................................................... 40
IX
4.1.4. Packet Delivery ratio and throughput in RoI............................................................................ 41
4.3. Pareto optimal solutions with Objective functions ....................................................................... 42
CONCLUSION AND RECOMMENDATION ..................................................................................... 47
5.1. Conclusions ..................................................................................................................................... 47
5.1. Contributions................................................................................................................................... 48
5.2. Recommendations ........................................................................................................................... 48
REFERENCES ...................................................................................................................................... 49
APPENDIX ............................................................................................................................................ 53
Appendix I: TCL files to Design WSNs ............................................................................................ 53
Appendix II : AWK file for Trace-files ................................................................................................. 67
X
LIST OF ABBREVIATIONS
AODV: Ad-hoc on-Demand Distance Vector
AWK: Aho Weinberger keninghan
IoT: Internet of things
MOO: Multi-Objective Optimization
MOOP: Multi-objective optimization Problem
NAM: Network animator
NS2: Network Simulator 2
TCL: tool command language script
NSGA-II: Improve non-dominated Sorting Genetic Algorithm
PDR: packet delivery ratio
POS: Pareto optimal solutions
QoS: Quality of services
CPP: C-plus plus programming language
RSS: receiving signal strength
SPEA-II: Strength Pareto evolutionary Algorithm
RAM: random access memory
OTCL: object tool command language
OMNeT++: Objective modular network test-bed
WSN: Wireless Sensor Networks
TOSSIM: Tiny-OS simulator
XI
LIST OF FIGURES
Figure 1 : Taxonomy of WSN applications(Fei et al. 2017). ......................................................................... 1
Figure 2 : Genetic multi objectives optimization problem in a wireless sensor network(M. Iqbal et al.
2016) ............................................................................................................................................................ 3
Figure 4 : Pareto optimal concept of a lifetime- energy consumption relationship in WSN graph ............ 5
Figure 5 :Pareto optimal concept of a lifetime- coverage relationship in WSN graph ................................ 5
Figure 6 : Pareto optimal concept of energy consumption- coverage relationship in WSN graph ............. 5
Figure 7 : Function wireless sensor networks ............................................................................................ 7
Figure 8 : classification of coverage and scheme coverage area ................................................................ 9
Figure 9 : Process of optimization techniques ........................................................................................... 15
Figure 10 : trends of research community multi-objective optimization techniques(M. Iqbal et al. 2016) 16
Figure 11 : Non-Dominated Sorting Procedure ......................................................................................... 23
Figure 12 : NSGA-II Flowchart diagram .................................................................................................. 24
Figure 13 : Deployment of WSN Nodes distribution in the target region ............................................ 36
Figure 14 : The simulation snapshot for the design NS2 ....................................................................... 37
Figure 15 : coverage of ROI with 20 and 40 sensors ............................................................................. 39
Figure 16 : Residual energy on RoI ............................................................................................................. 40
Figure 17 : The Operating mean lifetime of two RoI ................................................................................. 41
Figure 18 : packet delivery and throughput graph .................................................................................... 41
Figure 19 Coverage area and Energy consumption Pareto graph initially ............................................... 42
Figure 20 : Set of all points of lifetime and Coverage area Pareto graph .................................................. 42
Figure 21 : Set of best points of Coverage area and Energy consumption Pareto graph .......................... 43
Figure 22 : Set of initial points of Lifetime vs Energy Consumption Pareto graph .................................... 45
Figure 23 : Set of all points of Lifetime VS Energy Consumption Pareto graph ......................................... 45
Figure 24 : Set of best points of Lifetime vs Energy Consumption Pareto graph ...................................... 46
XII
LIST OF TABLE
Table 1 : the initial coverage of each sensor ............................................................................................. 18
Table 2 : lifetime sensor nodes .................................................................................................................. 19
Table 3 : the residual energy consumption ............................................................................................... 20
Table 4 : Sensor nodes location in Region of interest (ROI) ................................................................. 25
Table 5 Simulation set-up and values of simulation parameters ........................................................ 35
XIII
ABSTRACT Energy consumption, network lifetime and coverage are the main issue when designing
wireless sensor networks (WSN). Since performances of WSNs are determined by multi-
objective that consists network connectivity, network lifetime, energy consumption, network
latency and throughput. The qualities of services (QoS) on WSN is determined by optimization
those parameters through finding trade-off points. However, these objectives are contradictory
and impossible to solve optimization problems with a single optimal decision. The study
concerns on multi-objective optimization to have balanced coverage area of sensor nodes,
minimize the energy consumption, and maximize the network lifetime and maintaining
connectivity between the currently deployed sensor nodes during the designing of WSN. The
Pareto optimal based approach is used to address conflicting objectives and made trade-offs
solutions concerning non-dominance using non-dominating sorting genetic algorithm 2
(NSGA-2). We have used network simulator 2(NS2) and check the coverage area, packet
delivery ratio, energy consumption and operating lifetime of sensor nodes to evaluate the
performance of the proposed scheme. To measure the connectivity between these nodes we had
used the metrics like packet delivery ratio, throughput, and the residual energy when the
optimization of the trade-off between energy consumption and coverage, energy consumption
and lifetime in wireless sensor networks. Packet delivery ratio and throughput are important to
give guarantee for the delivery of received informations in base station and nodes. We have
calculated them using AWK script from trace files. According to the simulation results, the
packet Delivery ratio (PDR) and throughput are 99.02%, 98.98% respectively in Nodes
Deployment region of interest I (RoI-I) which is the best from region of interest II (RoI-II).
Keywords:Pareto optimal solution,Multi-objective optimization, WSN, NSGA-II
1
CHAPTER ONE
INTRODUCTION
1.1. Background
Wireless sensor network (WSN) is an emerging and fast-growing technological platform in many
working environments. Nowadays, wireless sensor networks (WSNs) and the internet of things (IoT)
has attracted a lot of research attention in recent years. They are also types of networks that contain a
collection of sensors that can be deployed rapidly and cheaply; they can be used for different purposes
such as environment monitoring, object tracking, traffic, and crime surveillance and even in
groundwater monitoring (Sohraby, Minoli, and Znati n.d.).In general, the applications of WSNs can be
classified into two types (Muhammad Iqbal et al. 2015): monitoring and tracking. Monitoring is used
for analysing, supervising and carefully controlling the operation of a system in real-time. Tracking is
generally used for following the change of an event, a person, an animal, and so on.
Figure 1: Taxonomy of WSN applications(Fei et al. 2017).
Deployment problems in WSNs determine placing the sensors in the point which achieve the required
coverage, lifetime and communication using optimal energy with finite set of sensor nodes. The
optimal deployment of WSN ensures adequate service quality, minimizes energy consumption,
increases network life and minimizes the cost(Bojkovic, Z.; Bakmaz 2008). If WSNs have such
applications in our daily life, then deployment of a sensor in the target area is a crucial issue for any
WSN design especially with the limitations of sensor nodes. Those Sensor technologies have made the
development of small, low power, low-cost distributed devices, which can make local processing and
2
wireless communication, a reality. Sensor nodes failure may cause connectivity loss and in some cases
network partitioning, can cause serious damage in some environments that need critical monitoring
(Carlos-Mancilla, López-Mellado, and Siller 2016).
For the efficient Design of WSN, it is convincing that many objectives need to be optimized and in the
process cannot avoid conflicts and trade-offs occurring situations. So, the approach Multi-objective
optimization (MOO) will be needed, for the optimization of those conflicting objectives. This work
aims at multi-objective optimization (MOO) of WSN and we will propose to study the applicability of
Pareto-optimality in this domain; i.e. aims to produce non-dominated Pareto-optimal solutions with the
metric criteria of network's energy consumption, coverage area with sensor nodes, and network
lifetime and with a limited number of active sensor nodes. Optimization issues regarding wireless
sensor network planning, design, deployment, and operation often bring about to multi-objective
improvement formulations wherever multiple desirable objectives compete with each other and the
decision-maker has to select one of the trade-off solutions.
Thus introduces the trade-off between power and coverage in wireless sensor networks. A system of
wireless sensor nodes organized into a network could activate each node for optimum coverage,
typically introducing redundant coverage over an area, and also the lifetime of the system is
minimized. Maximum, redundant coverage is also applicable and desired in some applications, like the
exploitation of little sensor nodes to monitor a vital health situation in humans, and also in things
wherever replacement of the batteries is possible once power is totally depleted. Maximum, redundant
coverage may additionally be desirable in applications using rugged, environment sensor nodes for
monitoring a strategic military scenario for a familiar length of time. In these examples, the lifetime of
the system isn't maximized, and this can be a completely acceptable consequence. At the other end of
the spectrum, however, there are applications wherever most, redundant coverage isn't the paramount
thought. A reduced coverage scheme may be wholly acceptable, as a trade-off for vastly extending the
lifetime of the system. For example, any phenomenon that is not too divergent throughout an area;
events, a phenomenon that is somewhat continuous and one event at one point is not drastically
different than the same monitored event at an adjacent point. Put another way, in applications where
the trade-off of coverage to gain extended system lifetime does not have drastic negative
consequences. Some examples of these types of the phenomenon are temperature, light, sound,
atmospheric conditions. The advantages of maximizing coverage, under appropriate circumstances,
are the focus of this paper. For an area that's being monitored by a wireless sensor network, with nodes
3
having a finite, proverbial sensing range.
Many real-world problems have difficulties with conflicting objectives; so instead of a single optimal
solution competing goals give rise to a set of compromise solutions that will raise the Quality of
services in the WSNs application domain. Evolutionary algorithms possess several characteristics that
are desirable for this kind of problem and make them preferable to classical optimization methods
(Zitzler and Thiele 1999). The nature of the multi-objective optimization problem will change
following certain input parameters, required an objective function to optimize and the constraints
imposed by the specific area of sensor network deployment.
Figure 2: Genetic multi objectives optimization problem in a wireless sensor network(M. Iqbal et al. 2016)
To achieve the objectives multi-objective evolutionary algorithm i.e. non-dominated sorting genetic
algorithm (NSGA_II) would be used. And simulations would performing with TCL script,AWK
script and C language, NS-2.35 simulator, and those simulations conducting by using different
network sensor nodes at different simulation parameters'.
1.2. Statement of the Problem
Optimization of many objectives at once while maintaining connectivity between each sensor node
and sink leads multi-objective optimization problems (MOP); which shows the objectives in designing
of sensor networks have trade-off scenarios. This reason leads it is impossible to find a single global
solution due to this reason this study deals optimal solution within multi-objective. Through
optimization of one objective function from many another doesn’t make guarantee boost QoS in
sensor networks. The main target of the paper is for the optimization of Proper functioning Design to
WSN through many objectives. In the situation that:
Sensor nodes in WSN are equipped with non-rechargeable and irreplaceable batteries with
4
having a limited lifetime.
Sensor devices by nature having limited sensing range, processing and communication range
In the condition of, No individual objective can be made better off without at least one
individual objective worse off. The Pareto optimal based approach would be used in the situation
when objectives are conflicting and trade-offs have occurred at that condition we use non-dominated
sorting genetic algorithm (NSGA_II) algorithm to find the Pareto optimal solution. So to have
optimum area coverage, minimize the net energy consumption, maximize the network lifetime, and
with the existing number of deployed sensor nodes while maintaining connectivity between each
sensor node.
Hence in this study, we would address the following research questions:
How the proper design of WSN is determined with Pareto optimal approach with placing nodes
in appropriate area?
Which parameters are considered to be optimized in WSNs?
How to assure connectivity within the WSN design in target area?
1.3. Objectives of the study
1.3.1. General objective
The goal is to develop non-dominated Pareto-optimal solutions for multi-objective
optimization in designing wireless sensor networks.
1.3.2. Specific objectives
To achieve the objective of this paper list of activities those are performed.
To minimize energy consumption and prolong the lifetime in WSNs
To compare connectivity metrics within different field RoI’s in design of WSNs.
To search the best balanced decision points or the compromise solution sets within
objective functions by maintaining the sensor nodes coverage area (RoI).
1.4. Hypothesis
The trade-off association between those wireless sensor network parameters like network
lifetime and energy consumption, area coverage and node lifetime, and energy consumption and
coverage in the Pareto optimality conceptual graph.
5
Figure 3: Pareto optimal concept of a lifetime- energy consumption relationship in WSN graph
The above conceptual graph shows the relationship between lifetime and energy consumption by
nodes in which; as the energies in the nodes become consumed highly the operating lifetime of
the nodes becomes short.
Figure 4:Pareto optimal concept of a lifetime- coverage relationship in WSN graph
The above graph shows the relationship between lifetime and network coverage in the target area.
As the nodes far from the base station and the distance or area of the network coverage increases,
the more energy is consumed due to that the lifetime of the nodes becomes less.
Figure 5: Pareto optimal concept of energy consumption- coverage relationship in WSN graph
As described by many papers the relation of coverage and energy consumption has a trade-off
linkage. As the coverage area maximize the more energy can be consumed by the sensor nodes.
6
The Pareto graphs plotted above are the tentative conceptual ideas; they could become true or
false but used as a guideline for our work.
1.5. Scope of study
The main focus of the study is to find more optimal trade-off solutions (Pareto optimal solutions)
in WSN among the most determinant parameters of multiple objectives, which is energy efficient
and responsive to the network. Optimization problems in WSNs include the number of sensors
with their optimal location, energy consumption, lifetime and coverage. Thus maximization
problems change with changing inputs parameters the objective functions can be improved
during the design of WSNs. This research work adopts the design of a wireless sensor network
environment which is simulated with static nodes and AODV routing protocol and works on the
design stage of WSN. For our study, the metrics like a finite number of nodes, network coverage,
connectivity, energy consumption and network lifetime are considered. Knowing the best
optimal solutions between those parameters is well input for having efficient designing wireless
sensor networks. NS2.35 simulator, tool command language script (TCL) and c language and
Aho Weinberger keninghan script (AWK) are used. Those Multi-objective optimization
problems (MOOP) would be solved by using non-dominated sorting genetic algorithm (NSGA-
II).
1.6. Significance of the Study
The main contribution of this paper would to study the dynamic balancing decision points within
conflicting objectives on multi-objective optimizations for the proper design of WSN. Those
multi-objective optimization problems can be solved by searching Pareto optimal solutions for
the system, by optimizing conflicting objectives and quantifying trade-off. Used to minimize
energy consumption, prolong lifetime, and maintain connectivity within the deployed RoI. This
work is quite significant and uses as input for other researchers on a wireless sensor network to
solve multi-objective optimization problems. Multi-objective optimization problem solution
would be:
Used to get the optimal points for the proper design of sensor networks.
To preserve non dominated points in the objective space and associated solution points in the
decision space;
7
In addition, the deployment of sensor nodes in target areas are used for analysis the data, store,
mining and processing that information from sensors manager repository by taking data from
RoI.
Figure 6: Function wireless sensor networks
On the Pareto-optimal front, each solution represents an optimal balance between different
objectives in which no single objective can be improved without worsening another.
1.7. Organization of the Study
The paper is organized in five chapters. The first chapter discusses the background of the
study or introductory and statement of the problem. It also presents general and specific
objectives of the study, the methodology of the study, scope, and limitation of the research and
application of the investigated results. Chapter two presents a literature review on the history of
wireless sensor networks and the MOO on WSN of the designing of sensor nodes. Moreover, a
brief review of main WSN metrics:-Coverage area, energy consumption, network lifetime and
related work are discussed. Chapter three methodologies of the study which, describes the
proposed Pareto optimal solutions, MOO, and NSGA-II algorithms. Multi-objective
optimizations by Pareto optimality that are used for better performance of the designing of sensor
nodes in the target area are briefly introduced. Chapter four: emphasized experimental results
and discussion that are used to find Pareto optimal solutions for optimizing multi-objective in the
designing of wireless sensor networks. Finally, the conclusion and recommendation of the
research are jotting in chapter five.
8
CHAPTER TWO
LITERATURE REVIEW
2.1. Introduction
Sensor networks are self-configure and less infrastructure wireless networks to monitor and track
events by passing the data cooperatively through the network within sensor networks and sink
node. It has gained popularity due to their flexibility and maintainability in solving problems at
different application area to better our living standards(Akyildiz et al. 2002). These sensor
networks can be design, planning, deploy, operate and place nodes properly for the optimization
of QoS in the networks; since optimization problems can be occur in real life situation (M. Iqbal
et al. 2016). Improper designing of sensor networks leads to reduce QoS metrics like network
coverage, energy consumption, and lifetime by maintaining connectivity among sensor nodes.
Most optimization problems inherited from designing wireless sensor network
problems(Muhammad Iqbal et al. 2015).
2.2. Design wireless sensor Networks
Wireless sensor networks design are issued with unreliable communication, limited resources
like limited storage, processing capacity and communication capacity and limited battery
capacity(Jain 2018). Here deployment of sensor nodes is a measure issue in designing sensor
networks(Khalesian and Reza 2016); however, when sensor nodes positioning (deploy) on an
operational sensor network in real world environment or RoI have trade-off scenarios between
multi objectives which is a big issue. The following objectives are considered when sensor nodes
deploy in target area.
2.2.1. Coverage
Coverage area with sensor nodes in a wireless sensor network is one of the most important
performance metrics for a sensor networks(A. Singh and Sharma 2014) and it measures how
closely target area is observed by sensor nodes. To calculate the coverage region with sensor
nodes the position parameter is used. Since we have taken assumptions nodes have GPS installed
and determining their location properly gives the fitness function of coverage area good value(A.
Singh and Sharma 2014).
9
Figure 7: classification of coverage and scheme coverage area
Coverage is a mapping between set of sensors to set of area in the given field of interests and the
sum of sets of area determines how well is the given target area is sensed. There are three types
of coverage(A. Singh and Sharma 2014); area coverage, point coverage and barrier coverage.
Among them we focus set areas that needed to cover the target regions during the design of
WSN. The sensors Si is positioned at point of (xi, yi). Then any point p, at (x, y) in sensor set, the
Euclidean distance between si and p, i.e
The area A covered with cover with sensor node with the field of interest is calculated: in
(Chiandussi et al. 2012):
2.2.2. Network Lifetime
On (Roselin, Latha, and Benitta 2017)Lifetime of network is a very essential parameter to
optimize sensor networks at design, operation and deployment stages. It is the time span from the
deployment to the instant when the network is considered non-functional. The objective
function’s is calculation depends on channel state information and the residual energy(Ã et al.
2011).
)()(22
),( yyxxs iipd
i
areatotal
ii
er
psdA
_
0
2
cov
)]),([(
max...3,2,1)min(T
KTfailureLifetime
10
where min Tfailure i , 1= … k is the minimum value of sensor nodes failure time which is the
maximum number of sensing cycles before the energy supply of a sensor node is depleted, and
Tmax is the possible maximum number of sensing cycles.
2.2.3. Energy Consumption It is one of the main constraints to be optimized when sensor networks is design. Energy in the
sensor networks is consumed during sensor nodes when they sense, communicate, process, idle
and sleep state. The total amount of consumed energy can be estimated Mathematical
model(Baadache and Adouane 2015):
state sleepingin energy consumed +state receivingin
energy consumed +state sendingin energy consumed = Node energy consum
However, those objectives that describe above are competing each other and trade-off is
occurring during wireless sensor networks design. Due to, thus objectives needed to be
optimizing, with proper node positioning, prolong lifetime and minimum energy consumption.
2.3. Multi-objective optimization Optimization is a process of making soothing better and better. It plays a significant role in
wireless sensor systems to deal single or multi objective Optimization problems (MOP); and
solving an MOP means finding the Pareto solution (PS) of the MOP(Fei, Member, et al. 2016).
In single objective optimization, the fundamental point of the analyser is to minimize or
maximize one objective under different constraints and in multi-objective optimization multiple
objectives needed to be simultaneously optimized(Konak, Coit, and Smith 2006). In MOO In our
cases the objective functions that we consider are coverage function, energy consumption and
lifetime which have trade-off scenarios and these objectives are conflicting each other (Aitsaadi
et al. 2010). However, it is infeasible for multiple objectives to achieve their respective optima at
the same time; there is no single globally optimal solution, which is the best with respect to all
objectives. That is why we focused on set of solutions (Pareto optimal or non-dominated
solutions) which is the best mapped to Pareto front (PF) in the objective function space. To solve
thus issue, MOO algorithms have got attention to researchers for solving those multi-objective
problems(Fei, Member, et al. 2016).
11
2.4. Multi-objective optimization Algorithms
A lot of multi-objective algorithms are used when optimization could conduct on design,
deployment, and model for engineering, sciences, industrial and computing application
domains(Rajagopalan 2010). Because of, they are suitable for dealing set of solutions and
finding Pareto optimal solutions simultaneously in a single run of algorithms. Many approaches
are available to handle multi-objective optimization like Epsilon constrained, Lexicographic,
Weighted sum of square, Normal boundary intersection, Pareto archived evolution strategy,
weighted sum and Pareto optimal techniques would use. Pareto optimal approach is well suited
and it provides different trade-off scenarios where none is better than the other and the decision
maker chooses one according to the preferences requirements to solve multi-objective
optimization problems(M. Iqbal et al. 2016). There are many multi-objective optimization
algorithms among them; Multi-objective evolutionary algorithm (MOEA), strength Pareto
evolutionary algorithm-II (SPEA-II), Pareto envelop strategy algorithm (PESA) and non-
dominated sorting genetic algorithm-II (NSGA-II) This approach works based on non-
domination based solution, due to, non-dominated sorting genetic algorithm-II is proposed to use,
since this algorithms has better performance with less population.
2.4.1. Non-dominated sorting genetic algorithm-II
This algorithm is the most popular dominance based evolutionary algorithm and is first
developed by Deb(Zitzler and Thiele 1999) and further getting improved. This algorithm is
proposed to solve multi-objective optimization through local search strategy to search a better
solution around the optimized solution. The following steps shows how to find local search
strategy
Step 1: randomly initialize population and give value for each parameter’s then set the iteration
number as 1, and start the algorithms iteration calculation.
Step 2: determine if the iteration reaches the maximum criteria the iteration ends and produce
output the optimal sets. If the iteration is not reaching the maximum iteration it continues step 1.
Step 3: uses the fast non dominated sorting strategies to perform the evolutionary population. And
perform genetic operation like selection, crossover, and mutation to the evolutionary population
to form the new generation. These basic operators are performed to produce new. Each member
12
of the population is then evaluated; calculate a ‘fitness’ for that individual. The fitness value is
calculated by how well it fits with the desired requirements
Then apply selection which helps by discarding the bad designs and only keeping the best
individuals in the population. Then apply crossover by combing the selected individual create
new offspring’s. There is a little bit randomness into the populations’ genetics otherwise every
combination of solutions that can create would be in the initial population. It works by making
very small changes at random to an individual’s genome.
Step 4: Combine the population and the population as the new off-spring population, and perform
the fast non dominated sorting strategy to each individual in the population; then calculate the
crowding distance of each individual in the population and sort them.
Step 5: retains the elite individuals as the new generation of the evolutionary.
Steps 6: add 1 and increments the iteration, and one iteration calculation is done; then goes to
Step and continue the rest of the iteration calculation.
Many papers have done on multi-objective optimization in designing WSN by applying multi-
objective optimization algorithms that are listed in the following.
2.5. Related Works
In order to identify the gap, and to achieve the goal of study we have reviewed several articles of
literatures in the area of multi-objective optimization in WSN. In the past, a number of research
contributions have addressed to deal with multi-objective optimization in WSN. According to
(Prasad, Dafar, and Fentahun n.d.), the study is focused on developing algorithms for design
optimization of wireless sensor networks with evolutionary paradigm and fuzzy control. They
demonstrate the efficiency of genetic operators and get achievable result as a generation
increases the fitness value of energy efficiency increases. However, the study is concerning on
optimizing energy and lifetime, but optimizing energy has guarantee to maximum life span of the
network without compromising other parameters and they focused on optimization of single
objectives. They recommend to study on additional objectives by considering multi-objective to
find Pareto optimal solution for WSN design. Many works have been done on network coverage,
lifetime, and connectivity since they are important issues in WSN to be optimized. The authors
13
use coverage algorithms open geographic density control(Jia et al. 2009).In this approach, the
authors achieve their work by controlling the density of the active sensors, the energy
consumption can be reduced and in this algorithm deterministic placement of the nodes is
considered. However, this kind of placement is only possible for the small-scale networks.
Another coverage control protocol is proposed (Benatia et al. 2017). In this every node maintains
the information of its neighbours and periodically broadcasts a hello message which contains
current location of node and its status. The trade-off between the energy consumption and
network coverage is not considered in here. So, this is not energy efficient in the case of the
large-scale networks.
This (Mahdi Jameii and Jameii 2013) study focused energy efficient optimization of finding the
optimal balanced points among, coverage rate, energy consumption, with minimum number of
nodes while maintaining connectivity of the network. They contribute best trade-off solution
with coverage rate with number of deployed nodes, energy consumption with number of
deployed nodes through cluster based optimization scheme. However, as results shows the
compromising solution of coverage rate and working sensors less non-dominated solutions are
found. Therefore, it’s better to focus trade-off between energy-consumption with lifetime,
coverage rate with lifetime to deal with multi-objective optimization.
According to (Jameii, Faez, and Dehghan 2015) the authors proposed to maximize area coverage
and to prolong lifetime of networks in the design of WSN. Their proposed solutions compromise
on the target area with improving coverage of networks and lifetime. However connectivity is
not their concern. An improved NSGA-II is used to optimize coverage and nodes utilization
on(Jameii, Faez, and Dehghan 2015), this algorithm is proposed for multi-objective optimization
strategy for solving conflicting between coverage and energy consumption. Therefore, the
designing problems of WSN are occurring without considering the optimal position of the node
in the network. In order to have proper design of WSN considering the balanced optimal decision
point among the objective functions like energy consumption, network lifetime and network
coverage with maintaining connectivity within target area.
On(Alia and Al-Ajouri 2017) the authors investigate the deployment problem in WSN. The main
target is finding optimal position for maximizing coverage and placing sensor nodes rather than
selecting covering sensor nodes from a randomly deployed sensor network. Furthermore, they
14
didn’t consider connectivity within sensor networks. In(Fei et al. 2017) an overview of multi-
objective optimization problems in WSNs is discussed by the decision maker to finds a trade-off
between many competing objective to increase the overall performance of sensor networks in
designing stage. They discussed that the input parameters; optimal location of sensor nodes and
coverage determines deployment as well as designing problems of WSNs. As changing thus
input parameters and the objective functions finds the best trade-off solution the design of sensor
networks improves in performance.
According to (Khalesian and Reza 2016) these authors study is focused on sensor deployment
using constrained Pareto based multi-objective evolutionary approach to finding the optimal
layouts that maximize the coverage and minimize the sensors energy consumption for the sake of
prolonging the network lifetime, while maintaining the full connectivity between each sensor
node and the sink node. On their once the sensors deployed in the RoIs, they can communicate
with each other based on their locations where they found. They contribute the trade-off
solutions between lifetime and coverage area during the deployment of sensor nodes in Matlab
simulation environment. However, they didn’t consider energy consumption sensor nodes.
Although all of the above described research papers consider the lifetime maximization and
sensor coverage, some of them only coverage area and others consider research papers energy
consumption. Therefore, In order to have proper design of WSN considering the balanced
optimal decision point among the objective functions like energy consumption, network lifetime
and network coverage with maintaining connectivity within target area should be necessary.
15
CHAPTER THREE
METHODOLOGY OF THE STUDY
3.1. Introduction
This chapter describes the experimental study of the algorithms and procedures, simulations of
mathematical models of each metrics in designing WSN which are described in the optimization
strategy. Optimization covers almost all aspects of human life and work; due to the reason of the
limitation of resources. Most research activities in computing and engineering involve a certain
amount of modelling, data analysis, computer simulations, and mathematical optimization(Fei,
Yang, et al. 2016). To achieve the Pareto optimality of multi-objective optimization we had
proposed to use different WSN methods, tools, algorithms, approaches and experimental
investigations on the predefined parameters’.
Mathematical models
Population-Based
Experimental Simulator
Figure 8: Process of optimization techniques
The primary focus of this research is to solve multi-objective optimization problems to design
WSN with having optimum area coverage, minimize the energy consumption and maximizing
network lifetime maintaining connectivity within sensor nodes. However, the optimization of
those metrics simultaneously leads to conflicting objectives and trade-off but which is handled
by Pareto optimality. To overcome this competing and trade-off between those performance
metrics the research would use the following WSN approaches, algorithms, and design.
16
3.2. Pareto-optimal based Approach
Most real-world problems are multi-objective optimization problems that have many objectives
and that need to optimize simultaneously since the objectives are competing with one another.
To alleviate those problems and to have the optimized design, deployment, and model for
engineering, sciences, industrial and computing application domains various multi-objective
evolutionary algorithms used. Usually, in multi-objective optimization there is no single global
solution. Therefore, it is necessary to find a set of solutions which satisfying the optimality
conditions. Pareto optimal solutions consist of set of solutions that are not dominated by any
other solutions(Muhammad Iqbal et al. 2015).
Figure 9: trends of research community multi-objective optimization techniques(M. Iqbal et al. 2016)
Where, Epsilon constrained, Lexicographic, Weighted sum of square, Weighted chevyshev norm,
Normal boundary intersection, Pareto archived evolution strategy, Weighted average, Weighted
sum and Pareto optimal.
In solving multi-objective optimization problems Pareto optimal approach is used as
shown from article reviews in the past; in field of economics, engineering later get attention in
computing with approach. An evolutionary algorithm is used on (Fei, Member, et al. 2016) MOO
algorithm and metrics; because they are suitable for dealing with set of solutions and for finding
Pareto optimal solutions in a single run. Even if, the concept of Pareto Optimality is originated in
Economics but later found wide-ranging applications including engineering domains. The
general concept is no individual can be made better off without making at least one individual
worse off(Fei, Yang, et al. 2016). This aims to generate non-dominated Pareto Optimal solutions
17
that are acceptable and quantifying the trade-off which satisfying wireless sensor network design
objective optimization problems.
Several multi-objective evolutionary algorithms described in (Sharma 2014) multi-
objective genetic algorithms like non dominated sorting genetic algorithm (NSGA-II) and
strength Pareto evolutionary algorithm. Among these algorithms; non dominated sorting
algorithm works on dominance-based Ranking and diversity preservation mechanisms. Moreover,
as other authors suggested if number of objectives are more NSGA-II is preferred than others.
Due to this, in our thesis NSGA-II would be used. This work aims to consider the optimality of
trade-off between objective functions on parameters like energy consumption, coverage of sensor
networks and network lifetime in the decision space of designing WSN.
3.3. Optimization parameters in WSN
We assume sensor nodes are deployed in a Square region area, where all sensor nodes can sense
and communicate within the region. Set S and homogeneous sensor node N in a given area.
Every sensor nodes have a direct or indirect link to the sink node and the sensing range of a node
n is assumed to be circular with radius r. our thesis work concerned with optimizing the
performance metrics (parameters') of wireless sensor networks like area coverage, energy
consumption and network lifetime by maintaining connectivity within the network.
3.3.1. Coverage area
Coverage is the main performance metric that describes the sensing range in wireless sensor
networks. There are three types of coverage in WSN according to (Fei, Yang, et al. 2016): area
coverage, barrier coverage, and point coverage. In area coverage quality of two-dimensional
regions is considered since the points in the coverage can be observed by at least one node.
Barrier coverage concerns the detection of movement across the barrier sensor. The set of points
in the region are observed by sensor nodes in the case of point coverage. In this paper, we focus
on area coverage (Fan, Jin, and Processing 2010). The target area of interest covered with
wireless sensors and sensor nodes within areas.
Assume sensors Si is deployed at the point of (xi, yi). For any point p, at (x, y), the Euclidean
distance between si and p, i.e (1) )()(
22
),( yyxxs iipd
i
18
The area A covered in (Chiandussi et al. 2012): (1.1)
Defines on (Zhu et al. 2012) of connectivity and sensing issue the general sensibility S (si, P) of
Si at an arbitrary point P as
(2)
Where d(si, p) is the Euclidean distance between the sensor Si and the point P, and positive
constants c and k are sensor technology-dependent parameters, and >0. As the distance between
sensors and sensed point is less the better ability to sensing, because as near to the sensor the
sensing signal strength becomes strong. Since receiving signal strength depends on the
transmitter power from destination sensor and distance from receiver node. Then less d (si, p) is
the stronger sensing ability will be.
Among the sensing models, a binary disk sensing model describes a node whether it senses the
point on its sensing range or not. The sensing range of each node within the circular sensing
radius r
Cxy(si) = (3)
The fitness evaluation coverage to each sensor node at first generation is:
sensor N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 N15 N16 N17 N18 N19 N20
cover 91 187 178 121 184 94 120 203 221 129 173 188 350 231 133 86 109 183 86 160
Table 1: the initial coverage of each sensor
3.3.2. Network Lifetime
Network lifetime is the time at which the first node network runs out of energy to send the packet
because to lose the node mean networks could lose its functionalities (Zhaohua and Mingjun
n.d.), there authors in prolong lifetime between the failure of first node to the maximum lifetime
areatotal
ii
er
psdA
_
0
2
cov
)]),([(
kpd
cps
ss
i
i ]),([),(
19
of sensor networks. It is also defined as the ratio the time one of the sensor nodes stops its
function (time until the first node failure) to the maximum lifetime of a sensor network by
(Khalesian and Reza 2016) deployment optimization. The objective is expressed by:-
Network Lifetime (4)
where min Tfailure i , 1= … k is the minimum value of sensor nodes
failure time which is the maximum number of sensing cycles before the energy supply of a
sensor node is depleted, and Tmax is the possible maximum number of sensing cycles.
The fitness evaluation lifetime to each sensor node at first generation is:
sensor N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 N15 N16 N17 N18 N19 N20
Lifetime 0.94 0.83 0.09 0.63 0.77 0.49 0.90 0.22 0.99 0.52 0.32 0.80 0.46 0.05 0.54 0.39 0.39 0.35 0.69 0.49
Table 2: lifetime sensor nodes
3.3.3. Energy consumption
Energy consumption:-the energy resources that each sensor node contains are limited battery
power, so we should efficiently use this resource to increase the network lifetime. According to
(Marks n.d.) Survey on MOO in WSN deployment, there are two approaches to conserving
energy in the deployment of sensor networks, one approach is to plan a schedule of active
sensors that enables other sensors to go to sleep mode in the sensing range. The other approach
is adjusting the sensing range of sensors to conserve energy. Energy consumption can occur in
the active sensor network to sense the environment, processing and communicate with each other.
When sensor nodes communicate; they are at the state of receiving and transmitting packets.
Assumptions on (Ã et al. 2011) s(si) are the energy consumed at sensing; t(ti) is the energy
consumed at transmitting, r(ri) is the energy consumed at receiving, and I is the energies
consumed in idle state in given time t. Energy by sensor node is consumed when sensor they
sense, receive, transmit and even in idle. Even if sensors are in idle state they sense and consume
energy.
max
)min(,....1
T
Tfailureki
20
Then energy consumed by a sensor node i in time t is:-
Ei(si,ti,ri,I) = s(si) + t(ti) + r(ri) + I (5)
The following table shows fitness evaluation energy consumption to each sensor node at first
generation is:
sensor N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 N15 N16 N17 N18 N19 N20
Energy 5.65 9.55 2.93 4.91 4.36 2.13 3.40 8.88 8.69 2.55 2.64 7.74 3.28 2.27 0.07 8.96 5.59 4.67 8.26 5.13
Table 3: the residual energy consumption
3.4. Mathematical problem formulations
These mathematical problems are the base for optimizing objective functions and their
constraints on the paper focused. Based on the definition given on here the working parameters
are; to maximize lifetime, to minimize energy consumption and to maximize coverage area
containing its connectivity on the target area. Thus metrics quantified with fitness function to
achieve qualities of services for wireless sensor network design.
Maximize coverage area with connectivity: - reflects the association of sensors sensing area
concerning each sensor. One of the issues of sensor network coverage problem shows how well
the sensor network is monitored and tracked by sensors. An important principle to consider is
that if the communication range of the sensors is at least twice that of the sensing range then
coverage of an area implies connectivity (Mulligan 2010) in Wireless Sensor Networks: A
Survey depending on the coverage objective that the sensor network covers classified (Fan, Jin,
and Processing 2010) and our study concerns on area coverage.
Objective functions
Subject to: Cxy(si) =
And connectivity must exist within the area.
erMaxfxf xxfxf ncov))(....(),()(
2211
21
Minimizing energy consumption: -The energy consumption in sensor networks that we
consider can be consumed when the sensors sensing, transmitting and receiving. When the
sensor node is sleeping, the consumed energy is considered as zero. On (Prasad, Dafar, and
Fentahun n.d.)Energies are consumed during the operation sensor networks regarding the
operation modes that are having in energy models with each sensors energy level in the network.
The energy model has an initial value that is the level of energy the nodes has the start of the
simulation. This initial energy within the simulation is variable "energy" represents the energy
level in a node at any specified time and initial energy is passed as an input argument. Sensor
node loses a selected number of energy for every packet transmitted and each packet received.
As a result, the value of initial energy in a node gets decreased(R. Singh, Singh, and Singh 2017).
If the energy of a node reaches zero, it cannot receive or transmit any-more packets. The amount
of energy consumption in a node can be printed in the trace file. The energy of a network can be
determined by summing the complete node's energy within the network. In this paper, the energy
consumed by the target area's nodes can occur in the active sensor network to sense the
environment, processing and communicating with each other. So the energy consumed by the
sensor node is:-
Objective functions:
Min(Ei(si,ti,ri,I)) = s(si) + t(ti) + r(ri) + I
The total energy consumption on sensing radius si of node ni with factor is formulated (Jia et
al. 2009)
, ,
+ +
Maximizing network lifetime: -
for {set i 1} {$i < 20} {incr i} {
set rss($i) [expr $TransmitPower/$h(12-$i)]
Minfxf xxfxf n ))(....(),()(
2211
N
ii rsE1
2.)(
N
ii rtE1
2.)(
N
ii rrE1
2.)(
N
i rtotalE1
2.)(
N
i r1
2.
N
i r1
2.
LifetimeMaxfxf xxfxf n ))(....(),()(
2211
22
set pmin1 [expr ($path_los_expo*$trans_qual_par*$h(12-$i))]
set tmax [expr ($E($i)/$pmin1*100)]
3.5. Algorithms
An evolutionary algorithm is a computational intelligence that applies the principles of natural selection
and survival of the fittest to find near-optimal solutions in a search space. There are a lot of multi-
objective optimization algorithms among them: non-dominated sorting genetic algorithm (NSGA-II),
strength Pareto evolutionary algorithm (SPEA), Pareto envelope-based selection algorithm (PESA),
multi-objective evolutionary algorithm (MOEA) and particle swarm optimization (PSO). On
(Mahdi Jameii and Jameii 2013) NSGA-II has been established the most energy-efficient multi-
objective optimization algorithms. On (Ndam Njoya et al. 2016) a comparative experimental
study of the model with those well-known multi-objective algorithms indicates that NSGA-II
performs better than others on most of the test instances. For our study, we used the non-
dominated sorting genetic algorithm (NSGA-II) since:
The elitist population is store for next generation in it.
It emphasizes the non-dominated solutions.
Has the ability to present all the population. i.e diversity preservation by applying crowding distance.
3.5.1. Non-dominated Sorting Genetic Algorithm-II
The basic idea of NSGA-II is to divide the created population into several fronts corresponding
to different ranks. The ranks are assigned using non-domination [21], [22]. A crowding distance
(based on either fitness values or parameter values) is added to each individual and the
population is classified into fronts starting from the first front of solutions having a maximum
dummy fitness. Then, the classified group of solutions is ignored and another front of non-
dominated individuals is considered. The process continues until the last nth front containing an
inferior region of non-dominated solutions. During selection, the individuals in the first front will
always get more copies than the rest of the population. The concept of Pareto optimality is that no
metrics are made better-off without other metrics worse-off which leads to increasing one objective
function sacrifices another objective function. That is why Pareto optimal solutions are needed to solve
23
multi-objective optimization problems. To analysis non-dominance points and ranking population of
sensor node deployment works in the following logic.
Take all sets of solutions of node population P.
Any i-th solution (xi) which belongs to P
Set of solutions (si) which dominate the solution xi and number of solutions (ni) which dominates xi
Any non-domination front (pk) at k-th level
Figure 10: Non-Dominated Sorting Procedure
3.5.2. Pseudo code of NSGA-II Algorithm
Input: Population P; Maximum Generation GMax; Cross probability Pc; mutation probability Pm
Initial: compute objective values, fast non-dominated sort, selection, crossover and mutation.
Generation = 1; While Generation≤ GMax do
Combine parent and offspring population
Compute objective values and make non-dominated sort.
Make selection
If rand-num () ≤ Pc Crossover operation; End
If rand-num () ≤ Pm Make mutation; End
Generation = Generation + 1; End
Output: best individuals End
24
3.5.3. NSGA-II Flowchart diagram
Figure 11: NSGA-II Flowchart diagram
3.5.4. NSGA-II Flowchart Description
NSGA-II algorithm is working based on genetic operators such as selection, crossover, and
Mutation. These operations are functioning on the principle of Darwinian genetic evolution that
is on the survival of the fittest principle.
Initial Population
Initial population size 20 is used and each chromosome 2*X*Y binary bits string in a 2-dimensional
square grid of x and y Region. A chromosome is an individual’s population or a string of genes
25
that represents solutions(Bashir 2015). We define the number of chromosomes (individual nodes) in
population is 20, and then generate a random value for each sensor node si locations as decision
Variables (xi, yi) in Fig 12. Assume the GPS Location
N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 N15 N16 N17 N18 N19 N20
Xi 1 101 201 301 401 1 101 201 301 401 1 101 201 301 401 1 101 201 301 401
Yj 401 401 401 401 401 301 301 301 301 301 201 201 201 201 201 101 101 101 101 101
Table 4: Sensor nodes location in Region of interest (ROI)
Evaluation of fitness function
After the initialization step, we compute the objective function value for each sensor nodes based
on their location on the target area as decision space Si(xi,yi) and any points in P (x, y) within its
sensing ranges. Since the fitness function is the only guiding factor that influences the search
mechanism, it should be carefully chosen to meet the multiple objectives. The fitness of the
chromosome is defined as the degree of correctness of an expected solution(Prasad, Dafar, and
Fentahun n.d.).
The fitness function used for our Evolutionary algorithm is based on a performance measure of a
given chromosome. In this study, we use a similar performance measure that corresponds to the
optimal realization of the objectives. Fitness function used in this study contains all the three
parameters energy consumption, Network lifetime and coverage area of ROI (region of interest)
with suitable weights which are decided partly by observing the values during the simulation and
partly by intuition as the fitness function values are normally between 0 and 1.
Selection
The parents are chosen from the fitness evaluation to be parents for crossover. The best from
those having better fitness value selected to create new offspring. To select the best fit value a lot
of methods are used from these for instance, Boltzmann selection, roulette wheel section, and
tournament selection. In our study, we use binary tournament selection to select pair parents
from candidates.
26
Crossover
In this proposed NSGA-II, There are several techniques, but all involve swapping genes
sequences of bits in the strings between two individuals(Bashir 2015). The selection mechanism
is based on the binary Tournament selection. In Tournament selection, initially, a pair of
chromosomes was chosen randomly. Out of these two, the better fit one is selected. Later another
two chromosomes were chosen randomly and again better fit one out of these two is selected.
Now, these two selected chromosomes will participate in the crossover. One-point crossover is
used with a crossover probability P.
Mutation
Mutation the way of flipped bits with small probability and helps prevent premature
convergence(Bashir 2015). This genetic operator alters one single gene independently.
3.5.5. NSGA-II implementation for Multi-objective optimization
Step 1: Initialize the parameters problem definition of the NSGA-II:
Step 2: Set GN = 1, where GN denotes the current generation number.
Step 3: Generate the initial population by initializing the chromosomes for the population.
Step 4: Encode parameters of problem definition NSGA-II into chromosome.
Step 5: Evaluate the fitness value of each chromosome in the population by considering the fitness
function.
Step 6: rank all the population based on their fitness.
void assign_rank_and_crowding_distance (population *new_pop)
{
int flag; int i; int end; int front_size; int rank=1;
list *orig;
list *cur;
list *temp1, *temp2;
orig = (list *)malloc(sizeof(list));
cur = (list *)malloc(sizeof(list));
27
front_size = 0;
orig->index = -1;
orig->parent = NULL;
orig->child = NULL;
cur->index = -1;
cur->parent = NULL;
cur->child = NULL;
temp1 = orig;
for (i=0; i<popsize; i++){
insert (temp1,i);
temp1 = temp1->child; }
do{
if (orig->child->child == NULL)
{
new_pop->ind[orig->child->index].rank = rank;
new_pop->ind[orig->child->index].crowd_dist = INF;
break;
}
temp1 = orig->child;
insert (cur, temp1->index);
front_size = 1;
temp2 = cur->child;
temp1 = del (temp1);
temp1 = temp1->child;
do {
temp2 = cur->child;
do { end = 0;
flag = check_dominance (&(new_pop->ind[temp1->index]), &(new_pop->ind[temp2->index]));
if (flag == 1)
28
{
insert (orig, temp2->index);
temp2 = del (temp2);
front_size--;
temp2 = temp2->child;
}
if (flag == 0)
{
temp2 = temp2->child;
}
if (flag == -1)
{
end = 1;
} }
while (end!=1 && temp2!=NULL);
if (flag == 0 || flag == 1)
{
insert (cur, temp1->index);
front_size++;
temp1 = del (temp1);
}
temp1 = temp1->child;
}
while (temp1 != NULL);
temp2 = cur->child;
do{
new_pop->ind[temp2->index].rank = rank;
temp2 = temp2->child;
}
29
while (temp2 != NULL);
assign_crowding_distance_list (new_pop, cur->child, front_size);
temp2 = cur->child;
do
{
temp2 = del (temp2);
temp2 = temp2->child;
}
while (cur->child !=NULL);
rank+=1;
}
while (orig->child!=NULL);
free (orig);
free (cur);
return;}
Step 7: Select parent chromosomes from the population by tournament selection process
Step 8: Apply arithmetic crossover and mutation operations on the selected parent chromosomes
with the crossover rate and mutation rate, respectively; to produce offspring’s with higher fitness
value.
void mutation_pop (population *pop)
{ int i;
for (i=0; i<popsize; i++){
mutation_ind(&(pop->ind[i])); }
Return;}
/* Function to perform mutation of an individual */
void mutation_ind (individual *ind;{
if (nreal!=0)
{
30
real_mutate_ind(ind); }
if (nbin!=0){
bin_mutate_ind(ind); } return;}
/* Routine for binary mutation of an individual */
void bin_mutate_ind (individual *ind){
int j, k;
double prob;
for (j=0; j<nbin; j++)
{
for (k=0; k<nbits[j]; k++)
{
prob = randomperc();
if (prob <=pmut_bin)
{
if (ind->gene[j][k] == 0)
{
ind->gene[j][k] = 1; }
else{
ind->gene[j][k] = 0;
}
nbinmut+=1;
} }
} return;
}void assign_crowding_distance_list (population *pop, list *lst, int front_size)
{int **obj_array; int *dist; int i, j;
list *temp;
temp = lst;
if (front_size==1) {
pop->ind[lst->index].crowd_dist = INF;
31
return;
}
if (front_size==2){
pop->ind[lst->index].crowd_dist = INF;
pop->ind[lst->child->index].crowd_dist = INF;
return;
}
obj_array = (int **)malloc(nobj*sizeof(int*));
dist = (int *)malloc(front_size*sizeof(int));
for (i=0; i<nobj; i++)
{
obj_array[i] = (int *)malloc(front_size*sizeof(int));
}
for (j=0; j<front_size; j++)
{
dist[j] = temp->index;
temp = temp->child;
}
assign_crowding_distance (pop, dist, obj_array, front_size);
free (dist);
for (i=0; i<nobj; i++){
free (obj_array[i]);}
free (obj_array);
return;
}
/* Routine to compute crowding distance based on objective function values when the population in in the
form of an array */
void assign_crowding_distance_indices (population *pop, int c1, int c2)
{
32
int **obj_array;
int *dist;
int i, j;
int front_size;
front_size = c2-c1+1;
if (front_size==1){
pop->ind[c1].crowd_dist = INF;
return;
}
if (front_size==2) {
pop->ind[c1].crowd_dist = INF;
pop->ind[c2].crowd_dist = INF;
return;
}
obj_array = (int **)malloc(nobj*sizeof(int*));
dist = (int *)malloc(front_size*sizeof(int));
for (i=0; i<nobj; i++){
obj_array[i] = (int *)malloc(front_size*sizeof(int));
}
for (j=0; j<front_size; j++) {
dist[j] = c1++;
}
assign_crowding_distance (pop, dist, obj_array, front_size);
free (dist);
for (i=0; i<nobj; i++) {
free (obj_array[i]);
}
free (obj_array); return;
}
33
void assign_crowding_distance (population *pop, int *dist, int **obj_array, int front_size)
{
int i, j;
for (i=0; i<nobj; i++){
for (j=0; j<front_size; j++){
obj_array[i][j] = dist[j];
}
quicksort_front_obj (pop, i, obj_array[i], front_size);
}
for (j=0; j<front_size; j++){
pop->ind[dist[j]].crowd_dist = 0.0;
}
for (i=0; i<nobj; i++){
pop->ind[obj_array[i][0]].crowd_dist = INF;
}
for (i=0; i<nobj; i++)
{
for (j=1; j<front_size-1; j++) {
if (pop->ind[obj_array[i][j]].crowd_dist != INF {
if (pop->ind[obj_array[i][front_size-1]].obj[i] == pop->ind[obj_array[i][0]].obj[i])
{
pop->ind[obj_array[i][j]].crowd_dist += 0.0;
} else }
for (j=0; j<front_size; j++)
{
if (pop->ind[dist[j]].crowd_dist != INF)
{ pop->ind[dist[j]].crowd_dist = (pop->ind[dist[j]].crowd_dist)/nobj; } } return;}
Step 9: evaluate fitness.
34
Step 10: Combine both new population and old population then rank them.
Step 11: If the termination criteria is satisfied, go to step 15.
Step 12: Increase GN.
Step 13: Go to step 7.
Step 14: Evaluate the fitness value of each offspring in the population.
Step 15: Return the chromosome with best fitness value and report Pareto optimal front.
3.6. Simulator
There are many simulators for the simulation of wireless sensor networks: ns-2, OMNeT++
based Castalia, TOSSIM, and COOJA. The selection of simulator for this paper is by availability
free for use and whether the vendor actively develops and supports simulator or not. The logic
behind this choice is ns-2 is the most popular network simulator. It began as a general network
simulator, and support for mobile ad-hoc wireless networks was added later. It is a generic,
discrete event simulator. ns-2 is an object-oriented (OO) simulator, written in C++, with an Tcl
interpreter as a front-end (Jevti, Zogovi, and Dimi n.d.).
For this work NS-2.35 simulator is run on 8GB RAM of Ubuntu Linux operating system, to write a code
TCL script and C++ language used. To find a balanced trade-off between objective functions we have
to use simulation parameters; or to optimize WSN parameters like coverage, lifetime and energy
consumption without losing connectivity within the network sensing area are main considerations. To
validate the performance of the proposed approach simulations have to do based on the parameters.
Assumptions
The study makes on flowing assumption:
Each sensor nodes in grid deployed and has sensor id.
The base station and sensor nodes are stationary after the deployment.
Sensor nodes are location-aware.
Initially, all sensor nodes have initial energy and base station has unlimited energy
35
Parameters Value
Simulator Network NS-2.35
Propagation Model Two Ray Ground
Simulation Area 401m X 401m, 802m X 802m
Number of Nodes 20,40
MAC type 802.11
Antenna type Omni antenna
Interface Type Phy/WirelessPhy
Channel Type Channel/Wireless Channel
Agent Type File transfer Protocol (FTP)
Routing Protocol Ad-hoc on demand distance vector (AODV)
Packet Size 512 bytes
Transmission Range 250m
Queue Length 50
Simulation Time 20 s
Population 20
Maximum generation 400
Mutation probability 0.1
Cross-over probability 0.9
Sensing radius 10m
Communication radius 10m
Number of sensor nodes 20,40
Initial energy 10J
Sensing energy for node i 0.6Am
Transmission energy for node i 0.9Am
reception energy for node i 0.7Am
Idle 0.1 Am
Table 5 Simulation set-up and values of simulation parameters
In(Subashini et al. 2014) TCL scripts are used for simulator configuration, setting up network
topology, specifying scenarios, recording simulation results, etc. Typical ns-2 Tcl script for
wireless simulation begins with configuration command that is employed to specify PHY, MAC
and routing protocol, radio propagation and antenna model, topology, etc. The next step is the
36
creation of mobile nodes. Node movement and network traffic patterns are usually defined in
separate files(Varadhan n.d.). The tools for generating these files are provided and the very
simple energy consumption model is used. Each node starts with the initial amount of energy.
Amounts of energy spent for packet transmission and reception are also defined. After receiving
or transmitting the packet, the node's energy is decremented for a corresponding amount. When
the node's energy reaches zero, the node cannot send or receive packets any more (Varadhan
n.d.). A tool called Nam enables graphical visualization of simulation flow. During the
simulation, ns-2 generates a special nam trace file. Tcl script is used to select what information
should be recorded in this file. Nam uses the data stored in the trace file to visualize network
topology and animate packet flow.
3.7. Nodes connectivity’s on their Deployment
The coverage area, network Lifetime and energy consumption without losing connectivity within
the deployed system would take as design criteria. The main concern is how well the sensors
observe the physical space? We need to consider about k coverage (Given any integer k, a
monitored region of Interest (ROI) by WSN if and only if each point in ROI is covered by at
least k sensors).
Deployment Area
Figure 12: Deployment of WSN Nodes distribution in the target region
To maintain connectivity among the sensor nodes in WSN design; we use measuring criteria like
- receiving signal strength (RSS), packet delivery ratio (PDR), throughput and residual energy.
37
Receiving Signal Strength (RSS): We had been calculated received signal strength at the
receiver node based on the distance of the receiver from the sender and transmission power of
the signal at the sender node. The distance between nodes in a wireless network is also calculated
by using Euclidean distance. The simulation test on NAM snapshot shown in the figure below
Figure 13: The simulation snapshot for the design NS2
On the above graph shown we have seen the simulation of network animator within the nodes.
The sensor nodes exchange packets between them and send.
38
CHAPTER FOUR
RESULTS AND DISCUSSION
4.1. Introduction
In this chapter, we would discuss the results that are found in previous chapters at experimental
simulations. The problems that exist in real situations are mostly multi objectives that mean; if
one objective increases the other would be decreased. Likewise, there is a trade-off linkage
between WSN design objectives; to alleviate those problems and to have the optimized design,
deployment of sensor nodes multi-objective evolutionary algorithms used. The reason that the
evolutionary algorithm is used on (Fei, Member, et al. 2016) MOO algorithm and metrics for
finding Pareto optimal solutions simultaneously. It is used in the case no individual can be its
solutions have better value and not dominated by any objective function. This aims to generate
non-dominated Pareto Optimal solutions that are acceptable and quantifying the trade-off
solution which satisfying wireless sensor network design objective optimization problems.
This work aims to consider the optimality of trade-off between objective functions in WSN like
energy consumption, coverage of sensor networks and network lifetime with maintaining
connectivity within sensor nodes and sink node in the decision space. To assure the connectivity
between in Wireless sensor networks we had to evaluate the measuring constraints like packet
delivery ratio, receiving signal strength, throughput and residual energy in previous chapters.
Packet delivery ratio: it shows from the sending packets how much is received. In the designing
of wireless sensor networks, the PDR result shows that those sensor nodes have good
connectivity; since the delivery ratio is 99.02%.
As the simulation result, shows the design system had good throughput i.e. 98.93% within 16sec
simulation time
39
The total residual energy of the networks in the sensors deployment region is 70; which shows
sensor nodes have energy after receiving and sending the packets. But, the goal of this paper is to
develop non-dominated Pareto-optimal solutions for the optimal design of WSN through the
consideration of the designing objectives that our study paper focuses on.
4.2. Assure connectivity within RoI-I and RoI-II
The study focuses on performance analysis in RoI-I and RoI-II with respect to packet delivery
ratio, average throughput, residual energy and area coverage ratio; in addition to, finding non-
dominated decision point within objectives described.
4.2.1. Coverage area ratio in RoIs
The following figure describes the comparisons of RoIs in sensors sensing area concerning
number sensor nodes. The issues of sensor network coverage problem shows how well the sensor
network is monitored and tracked by sensors. An important principle to consider is that if the
communication range of the sensors is at least twice that of the sensing range then coverage of an
area implies connectivity (Mulligan 2010) in Wireless Sensor Networks: A Survey depending on
the coverage objective that the sensor network covers classified (Fan, Jin, and Processing 2010)
and our study concerns on area coverage.
Objective functions
Subject to: Cxy(si) = And connectivity must exist within the area.
Figure 14: coverage of ROI with 20 and 40 sensors
eragefxf xxfxf ncov))(....(),()(
2211
40
The above graph compares the area coverage ratio in the region of interest (RoI-I) and (RoI-II)
with 20 and 40 nodes respectively. RoI-I has better coverage of its target area than RoI-II with
keeping other constraints constant.
4.2.2. Net residual energy in RoI-I and RoI-II
The consumed energy in sensor networks that we consider can be consumed when the sensors
sensing, transmitting and receiving. The energy level of nodes in the network as initial energy in
a node is an assign for the simulation at the beginning. Each node has its own level of energy at
the beginning of the simulation at the time specified. The energy that is assign at very beginning
use as input argument. A node loses a particular amount of energy for every packet transmitted
and every packet received. Due to, the value of initial Energy in a node becomes decreased
(residual energy definition - Google Search n.d.) And the current value of energy in a node after
receiving or transmitting routing packets is the residual energy. In this paper, the energy
consumed by the target area's nodes can occur in the active sensor network to sense the
environment, processing and communicating with each other. So the energy consumed by the
sensor node is:- Objective functions
Min(Ei(si,ti,ri,I)) = s(si) + t(ti) + r(ri) + I
Figure 15: Residual energy on RoI
4.2.3. Lifetime in RoI-I and RoI-II
Network lifetime: -
umptionenergyconsfxf xxfxf n ))(....(),()(
2211
LifetimeMaxfxf xxfxf n ))(....(),()(
2211
41
Figure 16: The Operating mean lifetime of two RoI
On these two regions of node deployment RoI-I and RoI-II have almost near the same. But the
first region with 20 sensor nodes have 0.52 mean lifetimes and region with 40 sensor nodes have
0.51 mean life time.
4.1.4. Packet Delivery ratio and throughput in RoI
Figure 17: packet delivery and throughput graph
These shows compare the two main constraints for connectivity that are packet delivery ratio and
average throughput in our deployment region. As shown in the graph RoI-I has the best packet
delivery ratio and throughput. Because of, the first target area’s has better sensing coverage,
42
better lifetime and residual energy as shown in above graph, due to that PDR and throughput is
better than the second.
4.3. Pareto optimal solutions with Objective functions
Figure 18 Coverage area and Energy consumption Pareto graph initially
In this Pareto optimality graph the possible position of sensor nodes during designing of WSN
between lifetime of sensors and coverage area are shown. This result describes the initial
decision points after evaluating fitness function of first generation shown with trade-off between
lifetime and coverage.
Figure 19: Set of all points of lifetime and Coverage area Pareto graph
In this Pareto optimality graph the possible position of sensor nodes during designing of WSN
between lifetime of sensors and coverage area are shown. This result describes that all possible
43
decision points of the population till the maximum generation reach. Thus points are the location
of sensor nodes on all the generations of the population to balance lifetime and area coverage.
Figure 20: Set of best points of Coverage area and Energy consumption Pareto graph
This graph shows the Pareto fronts within lifetime and coverage area, which are the best
designing positions of sensor nodes. Since the best position of sensor nodes determines the
lifetime, consumed energy and the sensor node it covers. These non-dominated positions of
nodes which are best solutions are shown by finding their optimal points after calculating both
respective functions at each chromosome. Those functions focused on maximizing lifetime at the
node as maintaining the coverage area on the target area and concern how well those sensor
nodes sense points with its sensing range. As the consumption of energies decreases the operating
lifetime of the sensor nodes become increases which are the best Pareto sets.
As discussed above on mathematical problem formulations (section 3.4) of area coverage by
sensor and energy consumption those objective functions are:-
Objective functions
Function
erMaxfxf xxfxf ncov))(....(),()(
2211
areatotal
ii
er
psdA
_
0
2
covmax_
)]),([(
44
Subject to: Cxy(si) = connectivity must exist within the area.
Evaluations of coverage area fitness function are shown from the simulation.
The above coverage areas fitness function shows that the points that we choose at each sensor
can as well sensed as stated in the binary sensing model; since all the values are near to 1.
In function two we take the mathematical problem formulation which objectives n minimize total
energy consumption in the wireless sensor networks. Supposing that E0 is the initial energy
capacity for each sensor and Ei is the energy consumed by each node i, Ei can be formulated as
follows:
Ei= Si + TEi + REi +I; Si= sensing power *time, TEi= transmission power * time, REi= reception
power *time, Where Si is the sensing energy, TEi is the transmission energy, REi is the reception
energy and i represents the number of sensors in which node i receives data and transfers it to the
sink node in multi-hop communication and I sensor nods at Idle state. The network total energy
consumed is defined as the sum of the energy consumed by each node (Malekzadeh, Fereidooni,
and Abadi 2013). So, our first objective function is given as follows: f 1=Minimize )
With N the number of sensor nodes.
Energy consumption function
Fitness sensor node1
E1=S1 +TE1 +RE1 +I
45
Figure 21: Set of initial points of Lifetime vs Energy Consumption Pareto graph
In this Pareto optimality graph the possible position of sensor nodes during designing of WSN
between lifetime of sensors and energy consumption are shown. This result describes the initial
decision points after evaluating fitness function of first generation shown with trade-off between
lifetime and energy consumption.
Figure 22: Set of all points of Lifetime VS Energy Consumption Pareto graph
In this Pareto optimality graph the possible position of sensor nodes during designing of WSN
between lifetime of sensors and energy consumption are shown. This result describes that all
possible decision points of the population till the maximum generation reach. Thus points are the
46
location of sensor nodes on all the generations of the population to balance lifetime and energy
consumption.
Figure 23: Set of best points of Lifetime vs Energy Consumption Pareto graph
This graph shows the Pareto fronts within lifetime and energy consumption which are the best
designing positions of sensor nodes. Since the best position of sensor nodes determines the
lifetime, consumed energy and the sensor node it covers. These non-dominated positions of
nodes which are best solutions are shown by finding their optimal points after calculating both
respective functions at each chromosome. As the consumption of energies decreases the
operating lifetime of the sensor nodes become increases which are the best Pareto sets
47
CHAPTER FIVE
CONCLUSION AND RECOMMENDATION
5.1. Conclusions
Pareto optimal points are the most fundamental issues to get optimized sensor deployments in
wireless sensor network design. The main challenges to find Pareto optimal point is the trade-off
between conflicting objectives within energy consumption, coverage area and network lifetime
with maintaining connectivity in WSN. For the optimization of those conflicting objectives
Pareto based MOO approach had been used. The aim of multi-objective optimization in WSN is
to study the applicability of Pareto-optimality which targets to produce non-dominated Pareto
optimal solutions. Optimization problems are relating to wireless sensor network planning,
design, deployment, and operation often give rise to multi-objective optimization formulations
where multiple desirable objectives compete with each other and the decision-maker has to select
one of the trade-off solutions (Sharma 2014).In our study, both the deployment of 20 sensor
nodes and 40 sensor in the region of 401m by 401m and 802m by 802m is used respectively. The
coverage ratio of 20 sensor nodes in RoI-1 is 97% from the total ROI and 3% non-cover; this
implies that each point in the coverage is well sensed. The coverage ratio of 40 sensor nodes in
RoI-2 is 94% from the total ROI and 6% non-cover
To measure the connectivity between these nodes we had used the metrics like packet delivery
ratio, throughput, and the residual energy when the optimization of the trade-off between energy
consumption and coverage, energy consumption and lifetime in wireless sensor networks. The
simulation result shows PDR and throughput are 99.02%, 98.98% respectively; which
demonstrates the best connectivity within nodes. The paper investigates that the best Pareto
optimal solutions (Pareto optimal points) had got from the simulation result. Within the
objectives of the trade-off association, we get Pareto front from initial points and all points
throughout the total generation. By using the NSGA-II algorithm the best non-dominated points
in the above Pareto graph had got.
A system of wireless sensor nodes organized into a network can turn on every node for
maximum coverage, sometimes introducing redundant coverage over an area, and the lifetime of
the system will be minimized. Many real-world problems have difficulties with conflicting
objectives; so instead of a single optimal solution competing goals give rise to a set of
48
compromise solutions that will raise the Quality of services in the WSNs application
domain. Evolutionary algorithms possess several characteristics that are desirable for this kind of
problem and make them preferable to classical optimization methods (Zitzler and Thiele 1999).
The nature of the multi-objective optimization problem will change by certain input parameters,
required objective function to optimize and the constraints imposed by the specific area of sensor
network deployment.
5.1. Contributions
Applications of WSNs in our country is at infant stage that motivates us for proper design of
WSN in different application areas, which aids to monitoring manufacturing plants, to
monitoring environment and alike.
To get information from target areas for analysis, store, mining and processing data for
global information accessibility.
The study contributes for decision makers, for designers to compromise point positions of
sensor nodes in field of interest between multiple objective functions in designing of
wireless sensor networks.
It used as input for the research community in the area of multi-objective optimization for
wireless sensor networks in the dimension of multi-objective optimization algorithms, optimize
objectives and nature of optimization problems.
5.2.Recommendations
On this study, we had focused the applicability of Pareto optimality in homogeneous sensor
nodes, energy consumption of sensor nodes, the operating lifetime and coverage area of sensors
by maintaining connectivity with sensor networks through searching best designing points. The
paper also addresses the sensor nodes deployment performance analysis within RoI-I and RoI-II
regions with regarding to packet delivery ratio, average throughput, residual energy, lifetime and
area coverage ratio. The researcher recommends studying applicability of Pareto Optimal
solutions on wireless sensor networks with heterogeneous sensor nodes using NSGA-III with
more metrics of QoS for multi-objective optimization in WSN. And also recommend studying
Pareto optimal solutions of thus objectives to maximizing area coverage by considering
overlapping.
49
REFERENCES
Ã, Shafaq B Chaudhry, Victor C Hung, Ratan K Guha, and Kenneth O Stanley. 2011.
“Engineering Applications of Artificial Intelligence Pareto-Based Evolutionary
Computational Approach for Wireless Sensor Placement.” Engineering Applications of
Artificial Intelligence 24(3): 409–25. http://dx.doi.org/10.1016/j.engappai.2010.07.007.
Aitsaadi, N., N. Achir, K. Boussetta, and G. Pujolle. 2010. “Multi-Objective WSN Deployment:
Quality of Monitoring, Connectivity and Lifetime.” In 2010 IEEE International Conference
on Communications, IEEE, 1–6. http://ieeexplore.ieee.org/document/5502276/ (October 16,
2019).
Akyildiz, Ian F., Weilian Su, Yogesh Sankarasubramaniam, and Erdal Cayirci. 2002. “A Survey
on Sensor Networks.” IEEE Communications Magazine 40(8): 102–5.
http://ieeexplore.ieee.org/document/1024422/ (January 20, 2019).
Alia, Osama Moh D., and Alaa Al-Ajouri. 2017. “Maximizing Wireless Sensor Network
Coverage with Minimum Cost Using Harmony Search Algorithm.” IEEE Sensors Journal
17(3): 882–96.
Baadache, Abderrahmane, and Redha Adouane. 2015. “Minimizing the Energy Consumption in
Wireless Sensor Networks.” Ad-Hoc and Sensor Wireless Networks 27(3–4): 223–37.
Bashir, Lubna Zaghlul. 2015. “Solve Simple Linear Equation Using Evolutionary Algorithm.”
19: 148–67.
Benatia, Mohamed Amin et al. 2017. “Multi-Objective WSN Deployment Using Genetic
Algorithms Under Cost, Coverage, and Connectivity Constraints.” Wireless Personal
Communications 94(4): 2739–68.
Bojkovic, Z.; Bakmaz, B. 2008. “A Survey on Wireless Sensor Networks Deployment.” WSEAS
Trans. Commun 7: 1172–1181.
Carlos-Mancilla, Miriam, Ernesto López-Mellado, and Mario Siller. 2016. “Wireless Sensor
Networks Formation: Approaches and Techniques.” Journal of Sensors 2016: 1–18.
http://www.hindawi.com/journals/js/2016/2081902/ (January 26, 2019).
Chiandussi, G, M Codegone, S Ferrero, and F E Varesio. 2012. 63 Computers and Mathematics
with Applications Comparison of Multi-Objective Optimization Methodologies for
Engineering Applications. Elsevier Ltd. http://dx.doi.org/10.1016/j.camwa.2011.11.057.
50
Fan, Gaojun, Shiyao Jin, and Distributed Processing. 2010. “Coverage Problem in Wireless
Sensor Network : A Survey.” 5(9): 1033–40.
Fei, Zesong, Senior Member, et al. 2016. “A Survey of Multi-Objective Optimization in Wireless
Sensor Networks : Metrics , Algorithms And.” : 1–38.
Fei, Zesong et al. 2017. “A Survey of Multi-Objective Optimization in Wireless Sensor
Networks: Metrics, Algorithms, and Open Problems.” IEEE Communications Surveys and
Tutorials 19(1): 550–86.
Fei, Zesong, Shaoshi Yang, Chengwen Xing, and Hongbin Chen. 2016. “A Survey of Multi-
Objective Optimization in Wireless Sensor Networks: Metrics, Algorithms and Open
Problems.” IEEE.
Iqbal, M. et al. 2016. “Multi-Objective Optimization in Sensor Networks: Optimization
Classification, Applications and Solution Approaches.” Computer Networks 99: 134–61.
http://dx.doi.org/10.1016/j.comnet.2016.01.015.
Iqbal, Muhammad, Muhammad Naeem, Alagan Anpalagan, and Ashfaq Ahmed. 2015. “Wireless
Sensor Network Optimization: Multi-Objective Paradigm.” : 17572–620.
Jain, Khushboo. 2018. “Design Issues and Challenges in Wireless Sensor Networks.” (June): 25–
32.
Jameii, Seyed Mahdi, Karim Faez, and Mehdi Dehghan. 2015. “Multiobjective Optimization for
Topology and Coverage Control in Wireless Sensor Networks.” International Journal of
Distributed Sensor Networks 2015.
Jevti, Miloš, Nikola Zogovi, and Goran Dimi. “Evaluation of Wireless Sensor Network
Simulators.” : 1303–6.
Jia, Jie et al. 2009. “Multi-Objective Optimization for Coverage Control in Wireless Sensor
Network with Adjustable Sensing Radius $.” Computers and Mathematics with
Applications 57(11–12): 1767–75. http://dx.doi.org/10.1016/j.camwa.2008.10.037.
Khalesian, Mina, and Mahmoud Reza. 2016. “Engineering Applications of Arti Fi Cial
Intelligence Wireless Sensors Deployment Optimization Using a Constrained Pareto-Based
Multi-Objective Evolutionary Approach.” Engineering Applications of Artificial
Intelligence 53: 126–39. http://dx.doi.org/10.1016/j.engappai.2016.03.004.
Konak, Abdullah, David W Coit, and Alice E Smith. 2006. “Multi-Objective Optimization Using
Genetic Algorithms : A Tutorial.” 91: 992–1007.
51
Mahdi Jameii, Seyed, and Seyed Mohsen Jameii. 2013. “Multi-Objective Energy Efficient
Optimization Algorithm for Coverage Control in Wireless Sensor Networks.” International
Journal of Computer Science, Engineering and Information Technology 3(4): 25–33.
Malekzadeh, Mina, Zohre Fereidooni, and M H Shahrokh Abadi. 2013. “Effects of Sensor Nodes
Mobility on Routing Energy Consumption Level and Performance of Wireless Sensor
Networks.” International Journal of Computer Applications 79(11): 975–8887.
https://www.researchgate.net/profile/MH_Shahrokh_Abadi/publication/257945762_Effects
_of_Sensor_Nodes_Mobility_on_Routing_Energy_Consumption_Level_and_Performance_
of_Wireless_Sensor_Networks/links/54a5bda00cf257a63608d762/Effects-of-Sensor-
Nodes-Mobility-o.
Marks, Michał. “A Survey of Multi-Objective Deployment in Wireless Sensor Networks.”
Mulligan, Raymond. 2010. “Coverage in Wireless Sensor Networks : A Survey.” 2(2).
Ndam Njoya, Arouna, Wahabou Abdou, Albert Dipanda, and Emmanuel Tonye. 2016.
“Optimization of Sensor Deployment Using Multi-Objective Evolutionary Algorithms.”
Journal of Reliable Intelligent Environments 2(4): 209–20.
http://link.springer.com/10.1007/s40860-016-0030-x (February 10, 2019).
Prasad, Krishna, Abenezer Dafar, and Tadesse Fentahun. “Fuzzy-Evolutionary Algorithm for
Energy Efficient Design of Wireless Sensor Networks.” In , 1–7.
Rajagopalan, Ramesh. 2010. “Multi-Objective Optimization Algorithms for Sensor Network
Design.” 2010 IEEE 11th Annual Wireless and Microwave Technology Conference,
WAMICON 2010 (1): 1–4.
“Residual Energy Definition - Google Search.”
https://www.google.com/search?sxsrf=ACYBGNTETmJCA51fvEHsdIlJLjcfaSViqg:15776
19828165&q=residual+energy+definition&sa=X&ved=2ahUKEwi828rr49rmAhXBYlAKH
dQ6AjgQ1QIoAHoECAkQAQ&biw=1517&bih=640 (December 29, 2019).
Roselin, J., P. Latha, and S. Benitta. 2017. “Maximizing the Wireless Sensor Networks Lifetime
through Energy Efficient Connected Coverage.” Ad Hoc Networks 62: 1–10.
Sharma, Sunny. 2014. “A Review towards Evolutionary Multiobjective Optimization
Algorithms.” 3(December): 191–200.
Singh, Abhiram, and T. P. Sharma. 2014. “A Survey on Area Coverage in Wireless Sensor
Networks.” In 2014 International Conference on Control, Instrumentation, Communication
52
and Computational Technologies (ICCICCT), IEEE, 829–36.
http://ieeexplore.ieee.org/document/6993073/ (October 16, 2019).
Singh, Rupinder, Jatinder Singh, and Ravinder Singh. 2017. “Fuzzy Based Advanced Hybrid
Intrusion Detection System to Detect Malicious Nodes in Wireless Sensor Networks.”
Wireless Communications and Mobile Computing 2017.
Sohraby, Kazem, Daniel Minoli, and Taieb Znati. WIRELESS SENSOR NETWORKS
Technology, Protocols, and Applications. WILEY.
Subashini, S Jeneeth, D Guna Shekar, C Harinath Reddy, and M Manikanta. 2014.
“Implementation of Wired and Wireless Networks , Analysis Simulation and Result
Comparison Using Ns2.” 2(3): 209–25.
Varadhan, No TitleK. Fall and K. “"The Ns Manual”, User’s Manual, UC Berkeley, LBL,
USC/ISI, and Xerox PARC.”
Zhaohua, Long, and Gao Mingjun. “SURVEY ON NETWORK LIFETIME RESEARCH FOR.”
: 6–9.
Zhu, Chuan, Chunlin Zheng, Lei Shu, and Guangjie Han. 2012. “Journal of Network and
Computer Applications.” Journal of Network and Computer Applications 35(2): 619–32.
http://dx.doi.org/10.1016/j.jnca.2011.11.016.
Zitzler, Eckart, and Lothar Thiele. 1999. “Multiobjective Evolutionary Algorithms : A
Comparative Case Study and the Strength Pareto Approach.” 3(4): 257–71.
53
APPENDIX
Appendix I: TCL files to Design WSNs
# Simulation parameters setup
#===================================
set val(chan) Channel/WirelessChannel ;# channel type
set val(prop) Propagation/TwoRayGround ;# radio-propagation model
set val(netif) Phy/WirelessPhy ;# network interface type
set val(mac) Mac/802_11 ;# MAC type
set val(ifq) Queue/DropTail/PriQueue ;# interface queue type
set val(ll) LL ;# link layer type
set val(ant) Antenna/OmniAntenna ;# antenna model
set val(ifqlen) 50 ;# max packet in ifq
set val(nn) 20 ;# number of mobilenodes
set val(rp) AODV ;# routing protocol
set val(x) 401 ;# X dimension of topography
set val(y) 401 ;# Y dimension of topography
set val(stop) 20.0 ;# time of simulation end
#===================================
# Initialization
#===================================
#Create a ns simulator
set ns [new Simulator]
#Setup topography object
set topo [new Topography]
$topo load_flatgrid $val(x) $val(y)
create-god $val(nn)
#Open the NS trace file
set tracefile [open distance.tr w]
$ns trace-all $tracefile
54
#Open the NAM trace file
set namfile [open distance.nam w]
$ns namtrace-all $namfile
$ns namtrace-all-wireless $namfile $val(x) $val(y)
set chan [new $val(chan)];#Create wireless channel
#===================================
# Static node parameter setup
#===================================
$ns node-config -adhocRouting $val(rp) \
-llType $val(ll) \
-macType $val(mac) \
-ifqType $val(ifq) \
-ifqLen $val(ifqlen) \
-antType $val(ant) \
-propType $val(prop) \
-phyType $val(netif) \
-channel $chan \
-topoInstance $topo \
-energyModel "EnergyModel" \
-initialEnergy 10.0 \
-txpower 0.9 \
-rxpower 0.7 \
-sxpower 0.6 \
-idlepower 0.1 \
-transitionTime 0.005 \
-agentTrace ON \
-routerTrace ON \
-macTrace ON \
-movementTrace ON
#===================================
# Nodes Definition
55
#===================================
#Create 20 nodes
set node_(0) [$ns node]
$node_(0) set X_ 1
$node_(0) set Y_ 401
$ns initial_node_pos $node_(0) 20
set node_(1) [$ns node]
$node_(1) set X_ 101
$node_(1) set Y_ 401
$ns initial_node_pos $node_(1) 20
set node_(2) [$ns node]
$node_(2) set X_ 201
$node_(2) set Y_ 401
$ns initial_node_pos $node_(2) 20
set node_(3) [$ns node]
$node_(3) set X_ 301
$node_(3) set Y_ 401
$ns initial_node_pos $node_(3) 20
set node_(4) [$ns node]
$node_(4) set X_ 401
$node_(4) set Y_ 401
$ns initial_node_pos $node_(4) 20
set node_(5) [$ns node]
$node_(5) set X_ 1
$node_(5) set Y_ 301
$ns initial_node_pos $node_(5) 20
set node_(6) [$ns node]
$node_(6) set X_ 101
$node_(6) set Y_ 301
$ns initial_node_pos $node_(6) 20
set node_(7) [$ns node]
56
$node_(7) set X_ 201
$node_(7) set Y_ 301
$ns initial_node_pos $node_(7) 20
set node_(8) [$ns node]
$node_(8) set X_ 301
$node_(8) set Y_ 301
$ns initial_node_pos $node_(8) 20
set node_(9) [$ns node]
$node_(9) set X_ 401
$node_(9) set Y_ 301
$ns initial_node_pos $node_(9) 20
set node_(10) [$ns node]
$node_(10) set X_ 1
$node_(10) set Y_ 201
$ns initial_node_pos $node_(10) 20
set node_(11) [$ns node]
$node_(11) set X_ 101
$node_(11) set Y_ 201
$node_(11) set Z_ 0.0
$ns initial_node_pos $node_(11) 20
set node_(12) [$ns node]
$node_(12) set X_ 201
$node_(12) set Y_ 201
$ns initial_node_pos $node_(12) 20
set node_(13) [$ns node]
$node_(13) set X_ 301
$node_(13) set Y_ 201
$ns initial_node_pos $node_(13) 20
set node_(14) [$ns node]
$node_(14) set X_ 401
$node_(14) set Y_ 201
57
$ns initial_node_pos $node_(14) 20
set node_(15) [$ns node]
$node_(15) set X_ 1
$node_(15) set Y_ 101
$ns initial_node_pos $node_(15) 20
set node_(16) [$ns node]
$node_(16) set X_ 101
$node_(16) set Y_ 101
$ns initial_node_pos $node_(16) 20
set node_(17) [$ns node]
$node_(17) set X_ 201
$node_(17) set Y_ 101
$ns initial_node_pos $node_(17) 20
set node_(18) [$ns node]
$node_(18) set X_ 301
$node_(18) set Y_ 101
$ns initial_node_pos $node_(18) 20
set node_(19) [$ns node]
$node_(19) set X_ 401
$node_(19) set Y_ 101
$ns initial_node_pos $node_(19) 20
#===================================
# Generate movement
#===================================
# Agents Definition
#===================================
#Setup a TCP connection
set tcp0 [new Agent/TCP]
$ns attach-agent $node_(0) $tcp0
set sink2 [new Agent/TCPSink]
$ns attach-agent $node_(12) $sink2
58
$ns connect $tcp0 $sink2
$tcp0 set packetSize_ 1500
#Setup a TCP connection
set tcp1 [new Agent/TCP]
$ns attach-agent $node_(12) $tcp1
set sink3 [new Agent/TCPSink]
$ns attach-agent $node_(19) $sink3
$ns connect $tcp1 $sink3
$tcp1 set packetSize_ 1500
#===================================
# Applications Definition
#===================================
#Setup a FTP Application over TCP connection
set ftp0 [new Application/FTP]
$ftp0 attach-agent $tcp0
$ns at 0.1 "$ftp0 start"
$ns at 20.0 "$ftp0 stop"
#Setup a FTP Application over TCP connection
set ftp1 [new Application/FTP]
$ftp1 attach-agent $tcp1
$ns at 0.1 "$ftp1 start"
$ns at 20.0 "$ftp1 stop"
#Node0-x coordinates and y coordinates
set x1 [$node_(0) set X_]
set y1 [$node_(0) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n0 $distance
59
set x1 [$node_(1) set X_]
set y1 [$node_(1) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n1 $distance
set x1 [$node_(2) set X_]
set y1 [$node_(2) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n2 $distance
set x1 [$node_(3) set X_]
set y1 [$node_(3) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n3 $distance
set x1 [$node_(4) set X_]
set y1 [$node_(4) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n4 $distance
set x1 [$node_(5) set X_]
set y1 [$node_(5) set Y_]
#Node1-x coordinates and y coordinates
60
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n5 $distance
set x1 [$node_(6) set X_]
set y1 [$node_(6) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n6 $distance
set x1 [$node_(7) set X_]
set y1 [$node_(7) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n7 $distance
set x1 [$node_(8) set X_]
set y1 [$node_(8) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n8 $distance
set x1 [$node_(9) set X_]
set y1 [$node_(9) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
61
set n9 $distance
set x1 [$node_(10) set X_]
set y1 [$node_(10) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n10 $distance
set x1 [$node_(11) set X_]
set y1 [$node_(11) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n11 $distance
set x1 [$node_(12) set X_]
set y1 [$node_(12) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n12 $distance
set x1 [$node_(13) set X_]
set y1 [$node_(13) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n13 $distance
set x1 [$node_(14) set X_]
set y1 [$node_(14) set Y_]
62
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n14 $distance
set x1 [$node_(15) set X_]
set y1 [$node_(15) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n15 $distance
set x1 [$node_(16) set X_]
set y1 [$node_(16) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n16 $distance
set x1 [$node_(17) set X_]
set y1 [$node_(17) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n17 $distance
set x1 [$node_(18) set X_]
set y1 [$node_(18) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
63
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n18 $distance
set x1 [$node_(19) set X_]
set y1 [$node_(19) set Y_]
#Node1-x coordinates and y coordinates
set x2 [$node_(12) set X_]
set y2 [$node_(12) set Y_]
set distance [expr (sqrt(pow(($x2-$x1),2)+pow(($y2-$y1),2)))]
set n19 $distance
set sum [expr
($n1+$n2+$n3+$n4+$n5+$n6+$n7+$n8+$n9+$n10+$n11+$n12+$n13+$n14+$n15+$n16+$n17+$n1
8+$n19)]
puts "sum of =$sum"
puts "coverage of n19=$n19"
# Node Creation
for {set i 0} {$i < 20} {incr i} {
set energy($i) [expr rand()*15]
$ns node-config -initialEnergy $energy($i) \
-rxPower 0.7 \
-txPower 0.9 \
-idlePower 0.1 \
-sensePower 0.6
set E($i) $energy($i)
}
for {set i 0} {$i < $val(nn) } { incr i } {
set resenergy 7.40
puts "initial energy($i)=$E($i)"
set CE($i) [expr ($E($i)-$resenergy)]
#puts "Energy consumption($i) = $CE($i)"
}
set energyConsumption 0
64
for {set i 0} {$i < $val(nn) } { incr i } {
set energyConsumption [expr $CE($i) + $energyConsumption]
}
#puts "sumantion of intial enrgy is=$energyConsumption"
set r [open distance.tr w]
#Location fixing for a single node
for {set i 0} {$i < 20} {incr i} {
set xx($i) [expr rand()*$val(x)]
set yy($i) [expr rand()*$val(y)]
$node_($i) set X_ $xx($i)
$node_($i) set Y_ $yy($i)
$node_($i) set Z_ 0
}
#*****DISTANCE CALCULATION************#
for {set i 0} {$i < $val(nn) } { incr i } {
puts "\n"
puts $r "\n"
for {set j 0} {$j < $val(nn) } { incr j } {
set dx [expr $xx($i)-$xx($j)]
set dy [expr $yy($i)-$yy($j)]
set dx2 [expr $dx * $dx]
set dy2 [expr $dy * $dy]
set h2 [expr $dx2 + $dy2]
set h($i-$j) [expr sqrt($h2)]
#puts "distance of node($i) from node($j) = $h($i-$j)"
puts "distance of node($i) from node($j) h($i-$j) = $h($i-$j)"
#lifetime evaluation
set path_los_expo 2
set trans_qual_par 2
set amp 100pJ/m^2bit
65
#calculate the minimum transmit energy via pmin= B*d^a*min
set pmin [expr ($path_los_expo*$trans_qual_par*$h($i-$j))]
#puts "the Transmit energy at distances=$pmin"
#calculate the maximum number of sensing cycles
}
}
#****RSS CALCULATION FROM Node 12 ******************************************#
set TransmitPower 28.1838
for {set i 0} {$i < 12} {incr i} {
set rss($i) [expr $TransmitPower/$h(12-$i)]
set pmin1 [expr ($path_los_expo*$trans_qual_par*$h(12-$i))]
set tmax [expr ($E($i)/$pmin1*100)]
puts "RSS at Node $i =$rss($i)"
puts "sensing cycles=$tmax"
set int_energy 10
set xsum 0
set max_life [expr $int_energy/$pmin1*100]
puts "result is =$max_life"
set lifetime [expr $tmax/$max_life]
puts "life time of each node=$lifetime"
}
for {set i 13} {$i < 20} {incr i} {
set rss($i) [expr $TransmitPower/$h(12-$i)]
set pmin1 [expr ($path_los_expo*$trans_qual_par*$h(12-$i))]
set tmax [expr ($E($i)/$pmin1*100)]
puts "RSS at Node $i =$rss($i)"
puts "sensing cycles=$tmax"
set int_energy 10
set max_life [expr $int_energy/$pmin1*100]
puts "result is =$max_life"
set lifetime [expr $tmax/$max_life]
66
puts "life time of each node=$lifetime"
}
set covd [expr
((249.70+204.67+188.18+146.45+213.79+166+92.41+159.39+119.45+165.36+161.41+182.02+24.15+
209.82+67.96+93.78+127.10+248.47+147.88)/(401*401))*100]
puts "The covrage range is from AP =$covd"
#===================================
# Termination
#===================================
#Define a 'finish' procedure
proc finish {} {
global ns tracefile namfile
$ns flush-trace
close $tracefile
close $namfile
exec nam distance.nam &
exit 0
exec xgraph -bb -tk -x time -y &
exit 0
}
for {set i 0} {$i < $val(nn) } { incr i } {
$ns at $val(stop) "\$node_($i) reset"
}
$ns at $val(stop) "$ns nam-end-wireless $val(stop)"
$ns at $val(stop) "finish"
$ns at $val(stop) "puts \"done\" ; $ns halt"
$ns run
Receiving signal strength (RSS):
for {set j 0} {$j < $val(nn) } { incr j } {
67
set dx [expr $xx($i) – $xx($j)]
set dy [expr $yy($i) – $yy($j)]
set dx2 [expr $dx * $dx]
set dy2 [expr $dy * $dy]
set h2 [expr $dx2 + $dy2]
set h($i-$j) [expr pow($h2, 0.5)]
puts "distance of node($i) from node($j) = $h($i-$j)"
puts $r "distance of node($i) from node($j) h($i-$j) = $h($i-$j)"
}
}
#************ RSS CALCULATION FROM Node 12******* #
set TransmitPower 28.1838
for {set i 1} {$i < 10} {incr i} {
set rss($i) [expr $TransmitPower/$h(0-$i)]
puts $rs "RSS at Node $i =$rss($i)"
}
Appendix II : AWK file for Trace-files
BEGIN {
sendPkt =0
recvPkt=0
forwardPkt=0
}
{
packet=$4
event = $1
68
if(event =="s"&& packet == "AGT") {
sendPkt++;
}
if(event =="r"&& packet == "AGT") {
recvPkt++;
}
if(event =="f"&& packet == "RTR") {
forwardPkt++;}}END {
printf ("the sent packets are %d \n", sendPkt);
printf ("the received packets are %d \n", recvPkt);
printf ("the forwarded packets are %d \n", forwardPkt);
printf ("Packet Delivery Ratio is %f \n", (recvPkt/sendPkt));}