3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless
Sensor Networks based on Multi-agent Architecture under Energy
Harvesting Constraints
Hanene Rouainia
1 a
, Hanen Grichi
2,3 b
, Laid Kahloul
4 c
and Mohamed Khalgui
2,3 d
1
Faculty of Sciences, El-Manar University, Farhat Hached University Campus B.P. n
94 - ROMMANA,
Tunis, 1068, Tunisia
2
School of Electrical and Information Engineering, Jinan University, Zhuhai, 519070, China
3
INSAT Institute, University of Carthage, 1080, Tunisia
4
LINFI Laboratory, Computer Science Department, Biskra University, Biskra, Algeria
Keywords:
Reconfigurable Wireless Sensor Network, Reconfiguration, Multi-agent Architecture, 3D Mobility, Resizing,
Mobile Sink Node.
Abstract:
This paper deals with reconfigurable wireless sensor networks (RWSNs) to be composed of a set of sensor
nodes, which monitor the physical and chemical conditions of the environment. RWSNs adapt dynamically
their behaviors to their environment. The main challenge in RWSN is to keep the network alive as long as
possible. We apply a set of solutions for energy problems by using 3D mobility, resizing and mobile sink
nodes. These solutions are based on a multi-agent architecture employing a wireless communication protocol.
Moreover, we develop an application named RWSNSim that allows us to simulate an RWSN and apply the
proposed solutions. The performance of the proposed approach is demonstrated through a case study. The
case study consists of surveying of fire in a forest which is simulated with RWSNSim application.
1 INTRODUCTION
Wireless sensor networks (WSNs) are defined as
large networks to be composed of very small battery-
operated devices (sensor nodes). WSNs are usually
designed for specific systems to provide a solution to
a wide range of applications from small-size to large-
scale systems. These systems are implemented in
many areas such as medical, environmental and struc-
tural monitoring (Habibu et al., 2014), (Rault et al.,
2014).
Sensor nodes (SNs) are the principal entities in
WSN. SNs are connected with each other via a wire-
less communication. There are two types of sensor
nodes: mobiles and fixed ones. The specific feature
in mobile nodes is the ability to move to different po-
sitions in the network. SNs communicate with each
other wirelessly to execute a set of tasks and process
data using simple microprocessors with limited com-
a
https://orcid.org/0000-0001-7544-988X
b
https://orcid.org/0000-0002-4601-3574
c
https://orcid.org/0000-0002-9739-7715
d
https://orcid.org/0000-0001-6311-3588
puting resources (Habibu et al., 2014), (Garcia et al.,
2009).
In wireless sensor networks, all the data collected
by SNs are forwarded to a sink node. The sink node
plays the role of gateway between sensor nodes and
the data processing center. The placement of the sink
node has a great impact on energy consumption and
WSNs lifetime.
Wireless communication is an indispensable area
in scientific and industrial communities. This tech-
nology is the fastest-growing segment of the commu-
nications industry (Goldsmith, 2005). It can be used
with a minimum supervision, a reasonable cost as a
widely distributed and a high-resolution atmospheric
observation network (Messer et al., 2006).
The reconfiguration is defined in (Housseyni et al.,
2017) as any procedure that allows reconfiguring the
system to be feasible. It is usually performed to up-
date software and hardware components in response
to user requirements and dynamic changes in its en-
vironment such as hardware or software failures, ac-
tivation/deactivation of a sensor node and the addi-
tion of a new task (Ben Salem et al., 2016), (Grichi
394
Rouainia, H., Grichi, H., Kahloul, L. and Khalgui, M.
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under Energy Harvesting Constraints.
DOI: 10.5220/0009971503940406
In Proceedings of the 15th International Conference on Software Technologies (ICSOFT 2020), pages 394-406
ISBN: 978-989-758-443-5
Copyright
c
2020 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved
et al., 2014b), (Housseyni et al., 2017). There are sev-
eral implementations of reconfigurable systems such
as reconfigurable wireless sensor networks (Grichi
et al., 2016), software reconfiguration in Multi-Robot
systems (Fang Tang and Parker, 2005), (Chen et al.,
2016), manufacturing systems (Zhang et al., 2015)
and real-time embedded systems (Wang et al., 2011).
There are three reconfiguration levels. The first one
is the software reconfiguration which is applied to the
software architecture at run time by changing the be-
haviour of nodes (add, remove, modify the scheduling
of tasks or change the data used by the tasks). The
second one is the hardware reconfiguration that con-
sists of activation or deactivation of nodes or sensors.
The last one is the protocol reconfiguration (data-
routing reconfiguration) which permits the modifica-
tion of data routing. It allows us to optimize the pro-
tocol by the update, removal, and the addition of ex-
changing messages between sensor nodes and also
their routing paths (Grichi et al., 2016), (Grichi et al.,
2014a), (Gharsellaoui et al., 2012).
The mobility is defined as the movement of mo-
bile nodes to minimize the distance between sensor
nodes. It applies also to the mobile sink nodes to sup-
ply the minimization of the total distance between the
network entities which allows to reduce the energy
consumption in the network. The zones resizing is
defined as the variation of the number of zones us-
ing a modification of their size with their sets of local
nodes (Grichi et al., 2017). A multi-agent architec-
ture is a set of agents (servers, processes, robots or
humans), located in a certain environment and inter-
acting according to certain relationships. An agent is
an entity characterized by being at least partially au-
tonomous, and each agent has a specific management
and reconfiguration scenario roles in its environment.
The multi-agent architecture is used in RWSNs to al-
low us to execute the reconfiguration scenarios with
an orderly and an optimal manner.
Wireless sensor networks work under different
types of renewable energy resources (solar, vibration,
wind energy, etc.) which is not frequently available.
Thus, the main challenge in WSNs is to keep the net-
work alive for the longest time possible when energy
is missed without human intervention. Another chal-
lenge that appears when trying to solve the energy
problem is to find out solutions without expensive
costs and a long time.
Several related works, try to solve the energy
problem in WSNs such as in (Mahendrababu and
Joshitha, 2014) which proposed a solution to the en-
ergy hole problem in WSNs using Witricity (wire-
less electricity) to overcome the power constraints in
WSN by wirelessly charging the nodes and introduc-
ing the charging layer into the basic sensor network
protocol stack. The article (Anastasi et al., 2009)
deals with the energy consumption of a typical sen-
sor node and discusses the main directions to energy
conservation in WSNs. It presents a systematic and
comprehensive taxonomy of the energy conservation
schemes and techniques for energy-efficient data ac-
quisition.
The reconfiguration is proposed as a solution to
preserve the energy in WSNs such that in (Grichi
et al., 2014b) which considers that it makes the wire-
less sensor network satisfying the real-time and en-
ergy constraints considering the system performance
optimization. As well as in (Housseyni et al., 2017)
which proposes an intelligent multi-agent distributed
architecture, taking into consideration the three forms
of reconfiguration. It uses two communication pro-
tocols: intra-subsystem and inter-subsystem commu-
nication protocols to ensure the effectiveness of the
proposed reconfiguration strategy. The paper (Chniter
et al., 2018) considers that the reconfiguration sce-
narios can cause the violation of real-time or energy
constraints as a critical run-time problem. There-
fore, the authors propose a multi-agent adaptive ar-
chitecture to resolve this problem by handling the dy-
namic reconfigurations and ensure the proper execu-
tion of concurrent real-time distributed tasks under
energy constraints. While the paper (Gasmi et al.,
2016) proposes a new pipelined approach with five
steps to figure out the reconfiguration scenarios that
need to be applied without altering the performance
of the pipeline. Finally, the paper (Grichi et al., 2017)
proposes a new run-time power-oriented methodol-
ogy for dynamic resizing and 3D mobility to keep the
network alive as much as possible at any time before
the next recharging operation. The mobility and re-
sizing of zones are used also as solutions for the en-
ergy problem in WSNs. The papers in (Son and Ahn,
2014) and (Ahn, 2009) deal with mobility which per-
mits the minimizing of the total distance between sen-
sor nodes in order to decrease the energy consumed
by them. While the papers in (Ji et al., 2013) and (Er-
man et al., 2012) deal with the geographic resizing of
zones which allows the merging of zones to ensure
comprehensive coverage in the network with preserv-
ing the energy.
The mobile sink node is also used in several
related works to minimize energy consumption in
WSNs. The work in (Thomas and Mathew, 2018)
presents an intelligent method to discover the opti-
mal path for a mobile sink using a modified travelling
salesman problem (MTSP). The paper in (Chao et al.,
2019) proposes a mobile data collection scheme based
on the high manoeuvrability of unmanned aerial vehi-
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
395
cles (UAVs). UAVs are used as a mobile sink node in
WSN water monitoring and transmit data wirelessly
to collect monitoring node data efficiently and flex-
ibly. The study in (Kang et al., 2019) proposes a
new method to support an efficient location service
for a mobile sink using the surplus energy of a solar-
powered WSN. Moreover, the paper (Wang et al.,
2019) considers that energy-efficient routing is cru-
cial for applications that introduce WSNs. Therefore
the authors present an energy-efficient routing schema
combined with clustering and sink mobility technol-
ogy. Finally, the paper (Zhong and Ruan, 2018) stud-
ies the energy-efficient routing method with multiple
mobile sinks support to effectively alleviate the hot
spot problem since sink node can move along certain
trajectories, causing hot spot nodes more evenly dis-
tributed.
In the mentioned related works, the authors tried
to solve the energy problem in WSNs by applying
only one or two solutions together such as mobility
of nodes (2D/3D mobility), resizing of zones, multi-
agent architecture, mobile sink nodes or other solu-
tions. All of these proposed solutions by the related
works are not sufficient to provide a large amount of
energy and they increase the cost in WSNs. There-
fore, they do not extend the network lifetime for a
long time.
In this paper, we propose a new solution based on
a hierarchical multi-agent architecture to execute and
manage reconfiguration scenarios in the network. In-
deed, we apply the 3D mobility, resizing of zones and
using the mobile sink nodes in RWSNs to keep the
network alive the longest time possible. The 3D mo-
bility solution can decrease the energy consumption
by SNs in the network by minimizing the distance be-
tween nodes, so consequently decreasing the energy
consumption at the send task (considered as the most
task consumer of the energy).The resizing of zones
is an ambitious solution by the combination of zones
according to some conditions and consequently de-
creasing the number of zones, changing the size of the
zones and their number of local nodes at runtime. We
use also mobile sink nodes, which minimize energy
consumption by moving towards the lowest nodes in
terms of energy stored. Moreover, we propose an
energy model, construct a system equation, presents
some protocols and algorithms to apply and manage
the proposed solutions. Finally, we develop a Java ap-
plication called RWSNSim which permits to simulate
a RWSN and applying the different forms of recon-
figuration, 3D mobility, resizing of zones using mo-
bile sink nodes based on multi-agent architecture. It
allows also to display the difference between the net-
work lifetime with and without the proposed solutions
which enables us to establish the evaluation of perfor-
mance. These proposed solutions are applied to an
experimentation that consists of a case study on a re-
configurable wireless sensor network where the SNs
monitor the temperature and CO2 values in a forest to
avoid fire risks. The experimentation shows the per-
formance and the reliability of our contribution where
the earnings are estimated by a 248% increase in net-
work lifetime. The originality of this paper is the uni-
fication of a set of solutions in the same contribution
to increase the performance of these solutions.
This paper is structured as follows. After the in-
troduction section that presents the main challenges
in WSNs, the state of the art and the contribution of
this paper. The background is presented in section
2. Section 3 describes the contribution which is the
application of 3D mobility and resizing under energy
constraints using mobile sink nodes based on a multi-
agent architecture. An experimentation is presented
in section 4 showing a case study, an evaluation of
performance and a discussion. Finally, the conclusion
is drawn in section 5.
2 BACKGROUND:
FORMALIZATION OF WSNs
We define in this section the different components of
the RWSNs such as sensor nodes, mobile sink nodes
and agents. Moreover, we present the energy model
that consists of the formalization of energy production
and consumption in each sensor node. These formal-
izations is presented in formula (2) and (3). Finally,
we display the energy problem.
2.1 Reconfigurable WSNs
We consider that R is a reconfigurable wireless sensor
network composed of a set of zones S
Z
= {
Nb
Z
S
k=1
{Z
k
}}
where Z
k
is a zone in R and Nb
Z
is the total number
of zones in R. Each zone is composed of a set of
nodes S
N
(Z
k
) = {
Nb
k
N
S
i=1
{N
k
i
}} where N
k
i
is a node
in Z
k
and Nb
k
N
is the total number of nodes in
Z
k
. We have two types of nodes: i) mobile nodes
S
MN
= {N
k
i
| k [1..Nb
Z
], i [1..Nb
k
N
]} and ii)
fixed nodes S
FN
= {N
k
j
| k [1..Nb
Z
], j [1..Nb
k
N
],
S
MN
S
FN
= S
N
and S
MN
S
FN
= }, where S
N
is
the set of nodes in R.
Each node N
k
i
has a set of sensors S
N
k
i
Sens
that monitor the physical and chemical condi-
tions of the environment such as (temperature,
ICSOFT 2020 - 15th International Conference on Software Technologies
396
the density of CO2 gas in the air, the humid-
ity in the environment, etc.). Thus, S
N
k
i
Sens
=
{Sens
N
k
i
j
| i [1..Nb
k
N
], k [1..Nb
Z
] and
j [1..Nb
Sens
]} where Sens
N
k
i
j
is a sensor in N
k
i
and
Nb
Sens
is the total number of sensors in each node in
R. A sensor node has two batteries, the first one is
the principal battery B
pr
(N
k
i
) and the second one is
the additional battery B
add
(N
k
i
). The principal bat-
tery is rechargeable by the additional battery and this
last one is rechargeable from the harvesting energy.
Each node N
k
i
in the 3D WSN has three coordinates
(x
N
k
i
,y
N
k
i
,z
N
k
i
) representing its position in R, it has
also a capture field represented by a sphere with ra-
dius r.
In each zone Z
k
, we have
a set of mobile sink nodes
S
SN
(Z
k
) = {SN
k
m
| k [1..Nb
Z
] m [1..Nb
k
SN
]}
where Nb
k
SN
is the total number of mobile sink nodes
in Z
k
. The paper (Zhong and Ruan, 2018) proves
that three sink nodes in each zone are more suitable
because of its expensive cost, and their impact is
decreased when their number increases.
In RWSNs, a multi-agent architecture is used to
execute the reconfiguration scenarios. It composes of
three types of agents with various roles and respon-
sibilities. The first type is the controller agent Ag
Ctrl
that controls the whole network and makes the impor-
tant decisions in the network such as the application
of zones resizing or the processing of the captured
values. The second type of agents are deployed as
a set of zone agents {Ag
k
,k [1..Nb
Z
]}. The roles of
zone agents consist of a set of tasks such as the ap-
plication of 3D mobility and the demand of the con-
trolled values from the sink nodes in its zone. The last
type of agent is a set of node agents or slave agents
in each zone Z
k
{Ag
k
i
,i [1..Nb
k
N
] k [1..Nb
Z
]}.
Each node agent controls a node and makes a
set of decisions like the activation/deactivation of
the node. The controller agent and zone agents
are servers equipped with large charge batteries
and the node agent is installed on the node itself.
The zone agent equipped also by a set of sensors
S
Ag
k
Sens
= {Sens
Ag
k
j
| k [1..Nb
Z
] j [1..Nb
Ag
k
Sens
] where
Nb
Ag
k
Sens
is the total number of sensors in Ag
k
that mon-
itor the physical and chemical conditions of the envi-
ronment (Grichi et al., 2017).
2.2 Energy Model
We consider that each sensor node executes a set of
tasks T = {τ
1
,τ
2
,...,τ
Nb
N
k
i
τ
} where Nb
N
k
i
τ
is the total
number of tasks that can be executed by N
k
i
. We as-
sociate to each {τ
a
| a [1..Nb
N
k
i
τ
]} a trilogy formal-
ized by (t
exec
(τ
a
),e
c
(τ
a
),p
τ
a
(N
k
i
)) where t
exec
(τ
a
) is
the execution time of τ
a
, e
c
(τ
a
) is the energy con-
sumption by τ
a
and p
τ
a
(N
k
i
) is a boolean function for-
malized by:
(
p
τ
a
(N
k
i
) = n i f τ
a
is executed n times
p
τ
a
(N
k
i
) = 0 i f not
(1)
The Table 1 summarizes the most energy-
consuming tasks that can be executed by N
k
i
.
Table 1: Set of the most energy-consuming tasks.
τ
a
Description
τ
1
= Deactivate(N
k
i
) Deactivate node N
k
i
τ
2
= Activate(N
k
i
) Activate node N
k
i
τ
3
= Capture(Sens
N
k
i
j
) Capture the physical
and chemical conditions
of the environment
by sensor Sens
N
k
i
j
τ
4
= Send(N
k
i
) Send a captured values
from N
k
i
to its successor.
τ
5
= Recept(N
k
i
) Recept a message by
N
k
i
from its predecessor.
τ
6
= Move(N
k
i
) Moving to another
position where
N
k
i
S
MN
.
τ
7
= Resize(N
k
i
) if N
k
i
is in a zone included in
a resizing task which
is applied by Ag
Ctrl
.
We assume that we can predict the approximate
value of the instanteneous energy consumption by
N
k
i
for near future depending on the set of most-
consuming tasks which are mentioned in Table 1 and
its trilogy (t
exec
(τ
a
),e
c
(τ
a
),p
τ
a
(N
k
i
)). As a result, the
instanteneous energy consumption by each node N
k
i
in the time interval [t
1
,t
2
] is EC
dt
(N
k
i
) which is ex-
pressed in watt and formalized as:
EC
dt
(N
k
i
) =
Z
t
2
t
1
Nb
N
k
i
τ
a=1
(p
τ
a
(N
k
i
) × e
c
(τ
a
))dt + ε (2)
such that i [1..Nb
k
N
] and k [1..Nb
Z
]
We assume also that we can predict the approx-
imate value of the instanteneous energy production
E
prod
(t
1
,t
2
) by the additional battery in each node
B
pr
(N
k
i
) for a near future in the time interval [t
1
,t
2
]
depending on the following formula:
E
prod
(t
1
,t
2
) =
Z
t
2
t
1
t
j
t
i
[e
prod
× (t
j
t
i
)] (3)
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
397
where e
prod
is the produced energy in each time unit,
t
1
t
i
t
2
and t
1
t
j
t
2
.
2.3 Energy Problem
We assume that the energy consumption times can in-
terfere with energy production times. We assume also
that the harvesting energy can not be available many
times according to its special characteristics.
We consider that in the interval time [t
3
,t
4
] the har-
vesting energy is not available, while a set of nodes
execute the most energy-consuming tasks which are
mentioned in table 1. Therefore, the energy produced
by nodes is negligeable (4) and the frequency of en-
ergy consumption is rising.
E
prod
(t
3
,t
4
) 0 (4)
Then, the charge of nodes will reach the β thresh-
old (5).
C(N
k
i
) = β (5)
Thus, deactivating a number of nodes results in an
increase in energy consumption by the remaining ac-
tive nodes due to the increase in the distance between
them. Therefore, the number of active nodes in the
network will decrease in the event of a lack of har-
vesting energy. Indeed, with the absence of harvest-
ing energy, the network can stop working until har-
vesting energy returns or human intervention which
is unpleasant in RWSNs and should be avoided.
3 CONTRIBUTION: A NEW
PROTOCOL FOR MINIMIZING
ENERGY CONSUMPTION
We present in this section the paper’s contribution.
We start with a motivation that defines the RWSNs
challenges and cites the proposed solutions. Then,
we cite a set of 3D mobility and resizing rules. Fi-
nally, we describe the different algorithms used in the
paper’s contribution.
3.1 Motivation
The major challenge in RWSNs is to keep the net-
work alive as long as possible by the minimization of
energy consumption by sensor nodes until the execu-
tion of reconfiguration scenarios. In this paper, we try
to increase the execution time in RWSNs by using a
new methodology based on a multi-agent architecture
which allows decreasing the energy consumption in
the network using: i) 3D mobility which means the
change of position of a mobile node or a mobile sink
node to minimize the distance between nodes to profit
an amount of energy, ii) resizing of zones is the merge
of neighboring zones which have a reduced number of
active nodes, and iii) mobile sink nodes that consist
of specific mobile nodes equipped with high charge
level batteries. We present in this part the global equa-
tion system which permits to decrease the energy con-
sumption.
3.2 Formalization
We propose a set of rules to tune the application of
3D mobility of mobile entities and resizing of zones.
According to the 3D mobility rules (Rule 1 and Rule
2), we can minimize the energy consumption by sen-
sor nodes in the network by minimizing the total dis-
tance between the network entities. According to the
resizing rule (Rule 3), we can extend the life of the re-
maining active nodes and ensure comprehensive cov-
erage in the network. Table 2 resumes the definition
of thresholds and variables used in these rules. In-
deed, we have three rules:
Rule 1: if C(N
k
i
) α and C(N
k
i
) β and
Nb
Act
(Z
k
) > γ then zone agent Ag
k
applies 3D mobil-
ity of a mobile sink node SN
k
m
according to the fol-
lowing sub-rules:
Sub-rule 1.1: if SN
k
m
is free, i.e., it has not moved
recently as close to a node N
k
a
such that C(N
k
a
) α,
the following tasks will be applied in Z
k
:
τ
Ag
k
j
1
= Apply3DMobility()
τ
SN
k
m
j
2
= MovingTo(x
0
,y
0
,z
0
)
such that j
1
[1..Nb
Ag
k
τ
], j
2
[1..Nb
SN
k
m
τ
], k
[1..Nb
Z
] and m [1..Nb
k
SN
].
where τ
Ag
k
j
1
is the task number j
1
executed by the zone
agent Ag
k
. By executing this task, Ag
k
will be apply
the 3D mobility in Z
k
. τ
SN
k
m
j
2
is the task number j
2
exe-
cuted by sink node SN
k
m
. By executing this task, SN
k
m
will be moved to another position x
0
,y
0
,z
0
.
Sub-rule 1.2: if SN
k
m
is not free, i.e., it has moved
recently as close to a node N
k
a
such that C(N
k
i
) α,
zone agent Ag
k
has two cases:
Case 1: if C(N
k
a
) β then the following task
will be applied:
τ
Ag
k
a
j
= Deactivate(N
k
a
)
such that k [1..Nb
Z
], j [1..Nb
Ag
k
τ
] and a
[1..Nb
k
N
].
where τ
Ag
k
a
j
is the task number j executed by a node
agent Ag
k
a
. By executing this task, Ag
k
a
will deactivate
the node N
k
a
.
ICSOFT 2020 - 15th International Conference on Software Technologies
398
Table 2: Thresholds and variables definition.
Definition
α Node charge threshold. When C(N
k
i
) α zone agent Ag
k
decides to apply
3D mobility of mobile sink nodes or of mobile nodes in some cases.
β Node charge threshold. When C(N
k
i
) β, the node agent Ag
k
i
decides to deactivate
the node N
k
i
temporarily in some situations.
Nb
Act
(Z
k
) Number of active nodes in the zone Z
k
.
Number of active nodes in zone Z
k
threshold. When Nb
Act
(Z
k
) γ zone agent
γ Ag
k
decides to apply 3D mobility of mobile nodes or of mobile sink nodes
in some situations.
λ Number of active nodes in zone Z
k
threshold. When Nb
Act
(Z
k
) λ
controller agent Ag
Ctrl
decides to apply resizing of the zones.
Therefore, SN
k
m
will be free, zone agent Ag
k
will
be return to Sub-rule 1.1.
Case 2: if C(N
k
a
) β then zone agent Ag
k
will
not apply 3D mobility in this case, and node N
k
i
will
be complete his work at the same pace.
Rule 2: if C(N
k
i
) α and C(N
k
i
) β and Nb
Act
(Z
k
)
γ then the zone agent Ag
k
applies 3D mobility of a
mobile sink node SN
k
m
or of mobile node according
to the following sub rules:
Sub-rule 2.1: if |N
k
i
SN
k
m
| |N
k
i
E| where
E SN
k
m
,N
k
b
is the successor of N
k
i
, |N
k
i
SN
k
m
| is the
distance between node N
k
i
and sink node SN
k
m
and
|N
k
i
E| is the distance between node N
k
i
and entity E.
In this situation zone agent Ag
k
has two cases:
Case 1: if SN
k
m
is free, zone agent Ag
k
will be
return to Sub-rule 1.1 without considering the condi-
tions.
Case 2: if SN
k
m
is not free, zone agent Ag
k
will
be pass to Sub-rule 2.2 without considering the con-
ditions.
Sub-rule 2.2: if |N
k
i
SN
k
m
| |N
k
i
N
k
b
| where N
k
b
is
the successor of N
k
i
, |N
k
i
SN
k
m
| is the distance between
node N
k
i
and sink node SN
k
m
and |N
k
i
N
k
b
| is the distance
between node N
k
i
and node N
k
b
. In this situation the
zone agent Ag
k
has two cases:
Case 1: if N
k
b
S
MN
then zone agent Ag
k
sends
an order to node agent Ag
k
i
to ask N
k
b
to getting close
to N
k
i
as possible without consuming a large amount
of energy.
Therefore the following tasks will be executed:
τ
Ag
k
j
1
= Apply3DMobility()
τ
N
k
b
j
2
= MovingTo(x,y,z)
such that j
1
[1..Nb
Ag
k
τ
], j
2
[1..Nb
N
k
b
τ
], k [1..Nb
Z
]
and b [1..Nb
k
N
].
where τ
Ag
k
j
1
is the task number j
1
executed by the zone
agent Ag
k
. By executing this task, Ag
k
will be apply
the 3D mobility in Z
k
. τ
N
k
b
j
2
is the task number j
2
exe-
cuted by the mobile node N
k
b
. By executing this task,
N
k
b
will be moved to another position x,y,z”.
Case 2: if N
k
b
S
FN
then zone agent Ag
k
will be
return to Rule 1 without considering the conditions.
Rule 3: if Nb
Act
(Z
k
) λ the controller agent Ag
Ctrl
decides to apply the resizing of zones and it chooses
the neighbor zone of Z
k
with the minimum number of
active nodes. The following task will be executed:
τ
Ag
Ctrl
j
= ApplyResizing()
such that j [1..Nb
Ag
Ctrl
τ
].
where τ
Ag
Ctrl
j
is the task number j executed by the con-
troller agent Ag
Ctrl
. By executing this task, Ag
Ctrl
will
be apply the resizing of zones and some changes will
be carried out in R such as the number of active zones,
number of nodes and sink nodes in zones affected by
resizing.
Figure 1 presents the logic of the 3D mobility
rules which is defined previously (Rule 1 and Rule
2). These rules will be implemented in the Algorithm
1.
3.3 Modeling
In order to figure out the architecture of reconfig-
urable wireless sensor networks with their compo-
nents and relations between them, we construct a class
diagram which is shown in Figure 2. The proposed
class diagram is composed of 12 classes:
Entity: is the class model of all physical entities
in RWSN. It contains the common properties (Ex:
the entity state and coordinates properties) and
operations (Ex: activate() and deactivate() oper-
ations) between these entities.
AgCtrl: is a class which models the controller
agent Ag
Ctrl
. It extends from the entity class and
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
399
Figure 1: Logic of 3D mobility rules.
contains the Ag
Ctrl
principal properties (Ex: a vec-
tor of zones VZ and a vector of captured values
VCV) and operations (Ex: applying the resizing
task resizing() and sending an order to a zone
agent sendOrderTo(Ag: ZoneAgent))
Zone: is a class which models each zone Z
k
. It
contains the Z
k
properties (Ex: an identifiant IDj,
a state of Z
k
state and a vector of neighbor zones
VNeighbors )
ZoneAgent: is a class which models each zone
agent Ag
k
. It extends from the entity class and
contains the Ag
k
principal properties (Ex: an iden-
tifiant IDj and a vector of nodes VN ) and op-
erations (Ex: organizing the nodes in Z
k
orga-
nizeNodes() and applying the 3D mobility task ap-
ply3DMobility()).
SubZone: is a class which models each subzone
SZ
k
m
in Z
k
. It contains the SZ
k
m
principal proper-
ties (Ex: an identifiant composed of two proper-
ties (IDj and IDk) and a vector of nodes VN).
Sink: is a class which models each mobile sink
node SN
k
m
in SZ
k
m
. It extends from the entity class
and contains the SN
k
m
properties (Ex: an identifi-
ant composed of two properties (IDj and IDk) and
a boolean property free) and operations (Ex: mov-
ing to another position movTo(x2: Integer, y2: In-
teger, z2: Integer) and sending an order to a node
N
k
i
sendOrderTo(N: Node)).
Node: is a class which models each node N
k
i
in Z
k
.
It extends from the entity class and contains the
N
k
i
principal properties (Ex: an identifiant com-
posed of two properties (IDi and IDj) and a vector
of sensors VSens) and operations (Ex: monitoring
a physical or chemical values in the environment
monitoring() and sending a vector of captured val-
ues to its successor sendVCVTo(VCV: CapVal, E:
ICSOFT 2020 - 15th International Conference on Software Technologies
400
Figure 2: Class diagram for RWSNs.
Entity)).
NodeAgent: is a class which models each node
agent Ag
k
i
in Z
k
. It extends from the entity class
and contains the Ag
k
i
principal properties (Ex: an
identifiant composed of two properties (IDi and
IDj)) and operation (receiving an order from zone
agent Ag
k
receptFrom(Ag: ZoneAgent)).
FNode: is a class which models each fixed node
N
k
a
S
FN
in Z
k
. It extends from the node class.
MNode: is a class which models each mobile node
N
k
b
S
MN
in Z
k
. It extends from the node class
and contains the N
k
b
properties (Ex: a boolean
property Mob) and an operation (moving to an-
other position movTo(x2: Integer, y2: Integer, z2:
Integer)).
Sensor: is a class which models each sen-
sor Sens
N
k
i
j
in a node N
k
i
or Sens
Ag
k
j
in a zone
agent Ag
k
. It extends from the entity class and
contains the Sens
N
k
i
j
property (a captured value
SensVal) and operation (return the captured value
returnSensValue(): Double).
CapVal: is a class which models each captured
values CV that captured by a sensor Sens
N
k
i
j
or
Sens
Ag
k
j
.
3.4 Algorithms
In the proposed solutions we use a communication
protocol based on a multi-agent architecture and a
wireless communication between different network
entities. In order to minimize the energy consump-
tion in R, each zone agent Ag
k
executes Algorithm 1
to apply the 3D mobility according to its rules that
mentioned in 3.2. While Algorithm 2 implements
the most used function in Algorithm 1, i.e., function
move(e,n,succ) that moves the entity e {S
MN
,S
SN
}
as close to node n taking into consideration the dis-
tance between it and its successor succ. Otherwise
controller agent Ag
Ctrl
executes Algorithm 3 to apply
the resizing task according to its rules that montioned
in 3.2.
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
401
4 EXPERIMENTATION
In order to make a system reliable against fires in a
forest, we build a reconfigurable wireless sensor net-
work R.
Algorithm 1: Apply 3D Mobility in Z
k
.
Require: Set of nodes and sink nodes
Ensure: Minimize the total distance between node
vsz getsubzones()
for i = 0 to size(vsz) do
variables affectation
for j = 0 to size(get(vn) do
variables affectation
if Rule 1 conditions then
if Sub-rule 1.1 conditions then
move(s,n,succ)
else if Sub-rule 1.2 conditions then
for k = 0 to size(get pred(s)) do
e get(get pred(s),k)
if e S
N
then
if getc(e) α&issolved(e) then
if getc(e) β then
deact(getag(get(n, i),get(n, k)))
move(s,n,succ)
end if
end if
end if
end for
if Rule 2 conditions then
if Sub-rule 2.1 conditions then
if case 1 condition then
move(s,n,succ)
if case 2 condition then
for k = 0 to size(get pred(s)) do
e1 get(get pred(s),k)
if Sub-rule 2.1 conditions then
deact(getag(get(n, i),get(n, k)))
move(s,n,succ)
if case 1 conditions then
if getc(succ) α then
move(succ,n,succ)
end if
end for
if Sub-rule 2.2 conditions then
move(succ,n,succ)
end if
end for
end for
Algorithm 2: Moving node e as close to n.
Require: Entity e {S
MN
,S
SN
}, node n and its suc-
cessor succ
Ensure: moving e as close to n
movingto(e,(getx(n) +getx(succ))/2, (gety(n) +
gety(succ))/2,(getz(n) + getz(succ)/2))
if e S
SN
then
set f ree(e, f alse)
end if
setsolved(n,true)
Algorithm 3: Resizing of zones in R.
Require: Set of active zones
Ensure: Cover the possible largest space in R
for i = 0 to nbz do
if getnbact(get(vz,i)) λ then
Z get(vz,i)
if size(vneighbors(Z)) 0 then
Z
1
get(vneighbors,0)
for j = 0 to size(vneighbors(Z)) do
X get(vz, i)
Y vneighbors(X)
nghbr get(Y, j)
nbact getnbact(nghbr)
if nbact getnbact(Z
1
) then
Z
1
nghbr
end if
end for
end if
if notempty(Z)&notempty(Z
1
) then
deact(Z)
s size(vnacti f (Z))
for k = 0 to s do
add(vn(Z
1
),get(vnacti f (Z),k))
add(vnacti f (Z
1
),get(vnacti f (Z),k))
end for
resize true
end if
end if
end for
4.1 Case Study
4.1.1 Description
In this case study, we take a small part P of R com-
posed of 4 zones. Each zone is composed of i) 40
nodes: 25 fixed nodes and 15 mobile nodes, ii) 3 mo-
bile sink nodes and iii) one zone agent. Each node
and zone agent in P has 2 sensors, a temperature value
sensor, and a CO2 value sensor. Each node has a cap-
ture field represented as a cub (11m × 11m × 11m)
ICSOFT 2020 - 15th International Conference on Software Technologies
402
Figure 3: The entities position in zone Z
1
in 3D space.
and each zone agent has a capture field represented
as a cub (22m × 22m × 22m). In order to find out
the impact of the proposed solutions in RWSNs, we
focused on zone Z
1
. We propose that the position of
controller agent is Ag
Ctrl
(0,0,10) and the position of
zone agent Ag
1
is (50,50,5). Figure 3 illustrates the
initial nodes and mobile sink nodes positions in Z
1
in
3D Graphic.
Table 3: The number of controller zone demands per day in
each season.
Months Times/Day Hours
Jan-Feb-Mar 2 12 : 00
h
&14 : 00
h
Oct-Nov-Dec
Apr-May-Jun 11 : 00
h
&12 : 00
h
Jul-Aug-Sep 6 13 : 00
h
&14 : 00
h
15 : 00
h
&16 : 00
h
4.1.2 Reconfiguration Scenarios
We propose the following reconfiguration scenarios
which can be executed by the network entities:
1. Each period ρ, controller agent Ag
Ctrl
executes
a periodic task τ
Ag
Ctrl
1
which Ag
Ctrl
sends a request to
each zone agent Ag
k
to sense the temperature and CO
2
values:
τ
Ag
Ctrl
1
= SendRequestTo(Ag
k
)
such that k [1..Nb
Z
].
2. Each zone agent Ag
k
which recepts a message
from Ag
Ctrl
will execute the following tasks:
τ
Ag
k
1
= ReceptMsgFrom(AgCtrl)
τ
Ag
k
2
= CaptureCO2()
τ
Ag
k
3
= CaptureTemp()
τ
Ag
k
4
= SendCapValTo(Ag
Ctrl
)
such that k [1..Nb
Z
].
3. Controller agent Ag
Ctrl
will execute the follow-
ing task:
τ
Ag
Ctrl
2
= ReceptCapValFrom(CV,Ag
k
)
such that k [1..Nb
Z
] and CV is the captured values.
4. Controller agent Ag
Ctrl
tests if the incoming
captured values from each zone agent Ag
k
reach the
thresholds.
4.a. if the incoming captured values from zone
agent Ag
k
1
reach the thresholds Ag
Ctrl
will execute the
following task:
τ
Ag
Ctrl
3
= SendOrderTo(Ag
k
1
)
such that k
1
[1..Nb
Z
].
4.b. if the incoming captured values from all zone
agents not reach the thresholds, Ag
Ctrl
will wait for
the next periodic task τ
Ag
Ctrl
1
.
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
403
5. Each zone agent Ag
k
which received an order
from controller agent Ag
Ctrl
will execute these tasks:
τ
Ag
k
5
= ReceptOrderFrom(Ag
Ctrl
)
τ
Ag
k
6
= OrganizeNodes()
τ
Ag
k
7
= Apply3DMobility()
τ
Ag
k
8
= ApplyResizing()
τ
Ag
k
9
= SendOrderTo(SN
k
m
)
such that k [1..Nb
Z
].
6. Each mobile sink node SN
k
m
which received an
order from zone agent Ag
k
will start collecting of the
captured values from SNs in the same subzone SZ
k
m
.
It will execute these tasks:
τ
SN
k
m
1
= ReceptOrderFrom(Ag
k
)
τ
SN
k
m
2
= SendOrderTo(Succ)
such that m [1..Nb
k
SN
], k [1..Nb
Z
] and Succ S
k
N
.
7. Each node N
k
i
which received a message
from its predecessor will execute set of tasks
T = {τ
5
,τ
3
,τ
4
} in the same order, these tasks are
described in Table 1.
8. Each mobile sink node SN
k
m
which received a
vector of all captured values VCV from SNs in the
same subzone SZ
k
m
will execute these tasks:
τ
SN
k
m
3
= ReceptVCV From(Pred)
τ
SN
k
m
4
= SendVCV To(Ag
k
)
such that m [1..Nb
k
SN
], k [1..Nb
Z
] and Pred S
k
N
.
9. Each zone agent which received a vector of all
captured values from all sink nodes in Z
k
will execute
these tasks:
(
τ
Ag
k
10
= ReceptVCV From(SN
k
m
)
τ
Ag
k
11
= SendVCV To(Ag
Ctrl
)
such that k [1..Nb
Z
] and m [1..Nb
k
SN
].
10. Controller agent Ag
Ctrl
which received a vec-
tor of all captured values from all zone agents in R
will execute these tasks:
(
τ
Ag
Ctrl
4
= ReceptVCV From(Ag
k
)
τ
Ag
Ctrl
5
= Treatment(VCV )
such that k [1..Nb
Z
].
10.a if the incoming vector of captured values
from zone agent Ag
k
reach the thresholds, Ag
Ctrl
will
triggers an alert.
10.b if the incoming vector of captured values
from zone agent Ag
k
not reach the thresholds, Ag
Ctrl
will wait for the next periodic task τ
Ag
Ctrl
1
.
4.2 Evaluation of Performance
In order to prove the originality of this work, we
put the part P which composed of 4 zones in some
special conditions. We consider that with every de-
mand of sensory values from each zone agent Ag
k
in P, it sends a value greater than the thresholds of
temperature TempThreshold = 35 and of CO2 value
CO2Threshold = 5. Therefore the controller agent
Ag
Ctrl
requests from Ag
k
a vector of monitoring val-
ues VSV which is captured by sensor nodes. Thus, the
exchange of messages abounds in each zone Z
k
so, the
sensor nodes will be consuming more energy. Figure
4 illustrates the change in the number of active nodes
in P over time without the proposed solutions in the
absence of harvesting energy.
We notice that the lifetime of the zone Z
1
is 92
days in Figure 4, this period is very short compared
with the lifetime of the same zone in Figure 5 which
is estimated by 229 days with a percentage equal to
248%.
Figure 4: The number of active nodes in R over time without
the proposed solutions in the absence of harvesting energy.
Figure 5: The number of active nodes in R over time with
the proposed solutions in the absence of harvesting energy.
ICSOFT 2020 - 15th International Conference on Software Technologies
404
Table 4: Discussion.
Paper Reconfiguration Mobility Resizing Mobile Multi-agent Other
sink architecture solutions
nodes
(Mahendrababu and Joshitha, 2014) 7 7 7 7 7 3
(Anastasi et al., 2009)
(Gasmi et al., 2016) 3 7 7 7 7 3
(Grichi et al., 2014b) 3 7 7 7 3 7
(Housseyni et al., 2017) 3 7 7 7 3 7
(Chniter et al., 2018)
(Grichi et al., 2017) 3 3 3 7 3 7
(Son and Ahn, 2014) 7 3 7 7 7 7
(Ahn, 2009)
(Ji et al., 2013) 7 7 3 7 7 7
(Erman et al., 2012)
(Thomas and Mathew, 2018)
(Chao et al., 2019)
(Kang et al., 2019) 7 7 7 3 7 7
(Wang et al., 2019)
(Zhong and Ruan, 2018)
This paper 3 3 3 3 3 7
4.3 Discussion
The originality of this paper is the combination be-
tween several solutions in order to solve the energy
problem in WSNs which is mentioned in 2.3. While
the related works deal only with some solutions. The
Table 4 presents the difference between this paper and
the related works in terms of proposed solutions.
5 CONCLUSION
This paper proposes a new solution to energy prob-
lems in RWSNs which works under harvesting en-
ergy. This solution uses the 3D mobility, resizing and
mobile sink nodes based on a multi-agent architecture
which composed of a set of agents with different lev-
els of responsibilities. The multi-agent architecture
allows executing the reconfiguration scenarios more
optimally. We also develop an application that per-
mits the construction of RWSN using the proposed
solution, and explains its effectiveness by comparing
the results with and without applying this solution.
The perspectives of this paper is to increasing and
improving the effectiveness of solutions while reduc-
ing cost and find an optimal path for the mobile nodes
and sink nodes more useful to the network in terms
of profit time and cost. Finally, we seek to take into
consideration the constraints of energy, real-time and
coverage area for each entity in RWSNs.
REFERENCES
Ahn, H.-S. (2009). Formation coordination for self-mobile
localization: Framework. In 2009 IEEE Interna-
tional Symposium on Computational Intelligence in
Robotics and Automation-(CIRA), pages 340–348.
IEEE.
Anastasi, G., Conti, M., Francesco, M., and Passarella, A.
(2009). Energy conservation in wireless sensor net-
works: A survey. Ad Hoc Networks, 7:537–568.
Ben Salem, M. O., Mosbahi, O., Khalgui, M., Jlalia, Z.,
Frey, G., and Smida, M. (2016). Brometh: Methodol-
ogy to design safe reconfigurable medical robotic sys-
tems. The International Journal of Medical Robotics
and Computer Assisted Surgery, 13.
Chao, F., He, Z., Pang, A., Zhou, H., and Ge, J. (2019).
Path optimization of mobile sink node in wireless sen-
sor network water monitoring system. Complexity,
2019:1–10.
Chen, Y., Mao, X., Hou, F., Wang, Q., and Yang, S.
(2016). Combining re-allocating and re-scheduling
for dynamic multi-robot task allocation. In 2016 IEEE
International Conference on Systems, Man, and Cy-
bernetics (SMC), pages 000395–000400. IEEE.
Chniter, H., Li, Y., Khalgui, M., Koubaa, A., Li, Z., and
Jarray, F. (2018). Multi-agent adaptive architecture for
flexible distributed real-time systems. IEEE Access,
PP:1–1.
Erman, A. T., Dilo, A., and Havinga, P. (2012). A vir-
tual infrastructure based on honeycomb tessellation
for data dissemination in multi-sink mobile wireless
sensor networks. EURASIP Journal on Wireless Com-
munications and Networking, 2012(1):17.
Fang Tang and Parker, L. E. (2005). Asymtre: Automated
synthesis of multi-robot task solutions through soft-
3D Mobility, Resizing and Mobile Sink Nodes in Reconfigurable Wireless Sensor Networks based on Multi-agent Architecture under
Energy Harvesting Constraints
405
ware reconfiguration. In Proceedings of the 2005
IEEE International Conference on Robotics and Au-
tomation, pages 1501–1508.
Garcia, R., Gordon-Ross, A., and George, A. D. (2009).
Exploiting partially reconfigurable fpgas for situation-
based reconfiguration in wireless sensor networks. In
2009 17th IEEE Symposium on Field Programmable
Custom Computing Machines, pages 243–246.
Gasmi, M., Mosbahi, O., Khalgui, M., Gomes, L., and Li,
Z. (2016). R-node: New pipelined approach for an
effective reconfigurable wireless sensor node. IEEE
Transactions on Systems, Man, and Cybernetics: Sys-
tems, PP:1–14.
Gharsellaoui, H., Gharbi, A., Khalgui, M., and Ahmed, S.
(2012). Feasible Automatic Reconfigurations of Real-
Time OS Tasks.
Goldsmith, A. (2005). Wireless Communications. Cam-
bridge University Press.
Grichi, H., Mosbahi, O., and Khalgui, M. (2014a). New
flexible architectures for reconfigurable wireless sen-
sor networks. In International Conference on Soft-
ware Technologies, pages 151–169. Springer.
Grichi, H., Mosbahi, O., and Khalgui, M. (2014b). Re-
configurable wireless sensor networks new adaptive
dynamic solutions for flexible architectures. In 2014
9th International Conference on Software Engineer-
ing and Applications (ICSOFT-EA), pages 254–265.
IEEE.
Grichi, H., Mosbahi, O., Khalgui, M., and Li, Z. (2016).
Rwin: New methodology for the development of re-
configurable wsn. IEEE Transactions on Automation
Science and Engineering, PP:1–17.
Grichi, H., Mosbahi, O., Khalgui, M., and Li, Z. (2017).
New power-oriented methodology for dynamic resiz-
ing and mobility of reconfigurable wireless sensor net-
works. IEEE Transactions on Systems, Man, and Cy-
bernetics: Systems, PP:1–11.
Habibu, H., Zungeru, A. M., Susan, A. A., and Gerald, I.
(2014). Energy harvesting wireless sensor networks:
Design and modeling. Int. J. Wireless Mobile Netw.,
6(5):17–31.
Housseyni, W., Mosbahi, O., Khalgui, M., Li, Z., and
Yin, L. (2017). Multiagent architecture for distributed
adaptive scheduling of reconfigurable real-time tasks
with energy harvesting constraints. IEEE Access,
PP:1–1.
Ji, S., Beyah, R., and Cai, Z. (2013). Snapshot and con-
tinuous data collection in probabilistic wireless sensor
networks. IEEE Transactions on Mobile Computing,
13(3):626–637.
Kang, M.-J., Yoon, I., and Noh, D. K. (2019). Efficient lo-
cation service for a mobile sink in solar-powered wire-
less sensor networks. In Sensors.
Mahendrababu, K. and Joshitha, K. L. (2014). A solution
to energy hole problem in wireless sensor networks
using witricity. In International Conference on Infor-
mation Communication and Embedded Systems (ICI-
CES2014), pages 1–6.
Messer, H., Zinevich, A., and Alpert, P. (2006). Environ-
mental monitoring by wireless communication net-
works. Science, 312(5774):713–713.
Rault, T., Bouabdallah, A., and Challal, Y. (2014). Energy
efficiency in wireless sensor networks: A top-down
survey. Computer Networks, 67:104 – 122.
Son, J.-H. and Ahn, H.-S. (2014). Formation coordina-
tion for the propagation of a group of mobile agents
via self-mobile localization. IEEE Systems Journal,
9(4):1285–1298.
Thomas, S. and Mathew, T. (2018). Intelligent path dis-
covery for a mobile sink in wireless sensor network.
Procedia Computer Science, 143:749 756. 8th In-
ternational Conference on Advances in Computing &
Communications (ICACC-2018).
Wang, J., Gao, Y., Liu, W., Kumar, A., and Kim, H.-J.
(2019). Energy efficient routing algorithm with mo-
bile sink support for wireless sensor networks. Sen-
sors, 19:1494.
Wang, X., Khalgui, M., and Li, Z. (2011). Dynamic low
power reconfigurations of real-time embedded sys-
tems. pages 415–420.
Zhang, J., Khalgui, M., Boussahel, W., Frey, G., Hon, C. T.,
Wu, N., and Li, Z. (2015). Modeling and verification
of reconfigurable and energy-efficient manufacturing
systems. Discrete Dynamics in Nature and Society,
2015:1–14.
Zhong, P. and Ruan, F. (2018). An energy efficient multi-
ple mobile sinks based routing algorithm for wireless
sensor networks. IOP Conference Series: Materials
Science and Engineering, 323:012029.
ICSOFT 2020 - 15th International Conference on Software Technologies
406