Professional Documents
Culture Documents
Abstract— in this work we propose a flexible, generic and agent accomplish some tasks. Our work consists of implementing a
based platform for the design and simulation of wireless sensor generic, flexible platform based on agents, for modelling and
networks (WSN) protocols and applications. This platform is simulating WSNs. In our approach, each node is considered as
independent from the physical architecture of nodes, where each an autonomous agent having its own characteristics, according
node is considered as an autonomous agent having its own to the hardware architecture of a node and that of the network,
properties and behaviors according to the role it takes in the as well as the behaviour of a sensor according to its role in the
network. Once the description of the WSN is done using agent network.
models, we can translate them to the simulation environment or
directly to the physical network architecture using a translation The remainder of the paper is organized as follows. In the
library witch makes the correspondence between agent models second section we will present the architectures and
and the target environment. To validate our work, we have characteristics of WSNs and their development challenges. In
extended OMNeT++ with new models for WSN and implemented the third section, the architecture of the proposed platform is
some functions that translate automatically the agent models of presented. The fourth section contains the models of the
the WSN nodes to OMNeT++ source code. platform. The fifth section presents the interface and the last
one is a conclusion and perspectives.
Keywords- wireless sensor networks, multi-agent system,
network simulation, OMNeT++
II. BACKGROUND
Once the description of agents is done by high level primitives, Translation functions
translation functions are used in order to transform these library
Source file Compiling
agents’ descriptions to the simulation models or to the code generation and
running
source of the physical sensor. For each simulation Library
update
environment and physical architecture of WSN (Sensors and
network architecture) there are a set of translation functions
that make the correspondence between the agents’ models and Simulation interfaces
the code source of the target environment. The Figure 3 is a
layered view of the proposed architecture.
Figure 4. The architecture of the proposed platform
• Physical architecture of nodes: The model of the node A. Node components models
can represent a physical device that exists in the market Nodes models must take in consideration either hardware
as it can be built by the designer (virtual node) by and software aspect. A node is composed of modules that
defining its components and their characteristics. communicate directly (physical link) or by messages. The next
• Protocols architecture: To facilitate the implementation figure illustrates an abstraction of the node components.
of a new protocol, the designer has to define the fields
of the message traversing the different layers, the Sensing Sensor Application
channel
processing to be performed on this message and how it module module
will be transmitted to the next layer. Processing
module
• Network architecture: The definition of the network is Target Power Network module
done by selecting the nodes and their roles (defining Object module
Controller
module
protocols and the target objet that generate events.
channel
Physical module
Actuator
The next figure shows the different components of the module
architecture of our platform. Radio
module
The Node
Direct communication
Messages communication
Figure 5. The model of the node architecture
The controller is the main agent of the node that b) Control methods :define a set of methods for handeling
coordinates between the hardware and the software modules. the agent charactersitics (components properties, node
The characteristic and methods of each module will be state and position , nighbors list,…).
represented by an XML schema.
c) Behaviors methods: define the actions to acomplish
according to the events received whether internal (state
B. Agents model
change, messages exchanged between components
1) Types of agents module or communication layers,..) or external (query
According to the network architecture, the physical received, data captured, message received from
components of nodes and their positions in the network, we can neighbor,…).
distinguish several types of agents:
Agents’ models are represented by XML schema in order to
• Base Stations’ Agents: the Base Station is the interface generate the source code according to the simulator used.
between the WSN and the observer .they can be fixed or
mobile. the main behaviors of this type of agents are : <agent>
<identification>
Queries definition: the Agent maintains some tables of <id> </id> <name> </ name > <type> </type> <author> </author>
queries (according to the application of the WSN) </identification>
<characteristics>
with a list of neighbor nodes (Agents) that directly <hard>
communicate with the BS. An entry of a query table is <node>
a triplet (Attribute, Operator, Value). <!...Import XML description of node components ….>
</ node>
Data processing: preparing data for the observer. This </hard>
is done in the application layer and it differs from <soft>
other processing tasks related to the routing protocol. <simple>
<type> </type> <value> </value>
Communications: can be either with the observer </simple>
using a specific protocol and the WSNs using the <structure>
routing protocol. <static>
<dimension> </ dimension>
• Network Agents: the type of these agents is based on the <type> </type> <value> </value>
<static>
role of the node in the network. Several factors <dynamic>
influence the definition of the characteristics and <simple> </simple>
behaviors of the agent: <structure> </structure>
</dynamic>
Physical architecture of nodes: some nodes have more </structure>
processing, storage and energetic capacity. Others can </soft>
</characteristics>
have specific sensing capabilities. <behaviors>
<behavior>
Communication protocols: the role of the agent in the <conditions>
communication protocol defines its behaviors. For < cond_name>
example some nodes can be elected as cluster-head. <par_g> </par_g> <op> </op> <par_d> </ par_d >
< cond_name>
Network architecture: Generally, nodes located in the <and_cond>
border of the network are oriented for capturing <conditions> </conditions>
measures while nodes located inside the network are </and_cond>
<or_cond>
oriented for processing and routing. <conditions> </conditions>
</or_cond>
• Target objet agent: it represents either a physical object </conditions>
that we want to monitor their movements or particular <actions>
points in the network that are a source of measures. The <corp_action> </corp_action>
role is to generate events to be captured by the sensor </actions>
</behavior>
nodes. <behaviors>
</agent>
2) Agent description
Each agent is defined by three part modeling its
characteristics and behaviors: C. Protocols models
Each layer in the protocol stack provides communication
a) Agent characteristics : contains identification services allowing data exchanges between nodes. A layer
informations related to the node (Id, name, fabricant,..), receives an SDU (Service Data Unit) from the upper layer,
hardware components and their characteristics, and adds its own information (Protocol Control Interface) as header
network informations (node type, position, nighbor and constructs the PDU (Protocol Data Unit) to send to the
nodes list, queries and routing tables,…). lower layer. For implementing a protocol, the platform allows
to the designer to define the header fields, their control
methods and the processing methods.
1) Protocol Control Interface: for each layer a sub class VI. CONCLUSION
(hiretate from the base class modeling a layer) is generated, it
contains the fields of the header defined by the user and the We proposed a platform for designing and simulating
control methods for the manipulation of these fileds. For protocols and applications for WSNs based on the paradigm of
agents. Our approach is to abstract the physical characteristics
example for the filed destination the two methods
of the network nodes and their behaviors to autonomous
set_destination and get_destination are generated agents. Modeling agents is done through an XML schema.
automatically. Once completed, it is translated into source code for the target
2) Processing methods: the subclass of each layer defines environment (simulator or real network). To support multiple
three kind of methods for implementing the services garanted target environments, it is enough enriching the platform with
by this layer : receive, handle and send. The first one is translation functions that make the correspondence between the
executed when receiving a message for preparing it for the agent-based modeling and the target environment. To validate
our approach, we extended OMNeT++ with new modules for
processing done by the second method, and the third one
supporting WSN functionalities. The defined architecture is
prepare the PDU (SDU) to be sent for the next layer. For each scalable and generic. It allows the designer to define their own
method there are two versions, for example the method models for nodes components and communication protocols.
receive_up is executed when receiving an SDU from the uper As future work, we will try to implement translation functions
layer and receive_down when receiving a PDU from the to support other WSN simulators, emulator and operating
lower layer. system.
The designer has the possibility to implement his own
methods to add to the layer subclass by defining the name of REFERENCES
the method, its parameters and the body code. All these
protocols descriptions are represented by an XML schema and [1] Ning Xu. A Survey of Sensor Network Applications. Computer Science
added to the protocols library. Department, University of Southern California. 2003.
[2] Sameer Tilak, Nael B. Abu-Ghazaleh and Wendi Heinzelman. A
V. IMPLEMENTATION AND INTERFACES Taxonomy of Wireless Micro-Sensor Network Models. Mobile
Computing and Communications Review, Volume 1, Number 2. 2002.
The platform is composed by several interfaces. The node [3] Ian F. Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, and Erdal
interface used for defining the nodes components and there Cayirci. A Survey on Sensor Networks. Georgia Institute of Technology.
characteristics. The protocol interface allows writing the Pages 102-114, IEEE Communications Magazine. August 2002.
implementation of new protocols. Using the nodes and [4] M. Vinyals, J.A. Rodriguez-Aguilar, J. Cerquides. A survey on sensor
protocols descriptions the agent interface allows defining the networks from a multi-agent perspective. In Proceedings of the 2nd
International Workshop on Agent Technology for Sensor Networks
type, characteristics and behaviors (tasks and actions) of the (ATSN 2008), Estoril, Portugal, 2008; pp. 1–8.
agents.
[5] Žarko Živanov, Predrag Rakić and Miroslav Hajduković. Wireless
The network is defined by the sensing area, agents (target Sensor Network Application Programming and Simulation System.
Faculty of Technical Sciences, Trg D.Serbia. ComSIS Vol. 5, No. 1,
object, base stations and network nodes), and the method of June 2008.
deployment. All models will be translated to the target [6] A. Dearle, D. Balasubramaniam, J. Lewis, R. Morrison. A Component-
simulator code source (in our case OMNeT++ modules). Once based Model and Language for Wireless Sensor Network Applications.
done, the designer can lunch the simulation via the interface of 32nd Annual IEEE International on Computer Software and
OMNeT++. The figure shows the principal interface of the Applications, 2008. COMPSAC '08. Page(s): 1303 – 1308. 2008
platform. [7] E. Meshkova, J. Riihijarvi, F. Oldewurtel, C. Jardak, P. Mahonen.
Service-Oriented Design Methodology for Wireless Sensor Networks: A
View through Case Studies. 2008 IEEE International Conference on
Sensor Networks, Ubiquitous, and Trustworthy Computing. Page(s): 146
– 153. IEEE 2008.
[8] Zahia Guessoum and Jean-Pierre Briot. From Active Objects to
Autonomous Agents. Concurrency, IEEE .Volume: 7 , Issue: 3 .
Page(s): 68 – 76.1999
[9] Chen Min, S. Gonzalez, V.C.M. Leung. Applications and design issues
for mobile agents in wireless sensor networks . Wireless
Communications, IEEE . Volume: 14 , Issue: 6 , Page(s): 20 – 26. 2007.
[10] Athanassios Boulis , Chih-Chieh Han , Roy Shea, and Mani B.
Srivastava. SensorWare: Programming sensor networks beyond code
update and querying. Pervasive and Mobile Computing. Volume 3
, Issue 4.ACM, August 2007.
[11] Chien-liang Fok, Gruia-catalin Roman, and Chenyang Lu. Agilla: A
Mobile Agent Middleware for Self-Adaptive Wireless Sensor Networks.
ACM Transactions on Autonomous and Adaptive Systems, Vol. 4, No.
3, Article 16, Publication date: July 2009.
Figure 6. The main interface of the platform