Multi Mobile Agent Deployment in Wireless Sensor Networks

Daniel Massaguer , Chien-Liang Fok , Nalini Venkatasubramanian , Gruia-Catalin Roman and Chenyang Lu  


This work is supported by:
the ONR MURI Project CONTESSA
and the Girona Fellowship.


Keywords:
Mobile Agents, Wireless Sensor Networks.


Abstract:
Fast, reliable, and flexible, Multi Mobile Agent (MMA) systems provide quick response, reliability and flexibility for tomorrow's wireless sensor network (WSN) applications. Unlike regular programs, mobile agents are programs that can execute special migration instructions that move both code and state from one node to another, thereby allowing them to control their execution context. By having multiple mobile agents collect the sensed information in parallel, larger regions of the WSN can be covered with less time. In addition, mobile agents provide a higher degree of reliability since they can be programmed to intelligently adapt to unexpected situations like changes in the network topology. Moreover, they are flexible in that agents can be dynamically injected into a pre-existing network, meaning the network can be reprogrammed and multiple programs can run simultaneously.

Traditional mobile agent middleware is not suited for deploying MMAs in a WSN because they uniquely consist of thousands of deeply embedded resource-constrained devices that utilize weak unreliable low-bandwidth wireless ad hoc links. Unlike other networks where resources are plentiful, WSNs are extremely resource constrained. Thus, the way in which MMAs are deployed for collecting sensor data must be carefully planned. We propose a two-step algorithm for achieving the collection of the sensed information in an energy-efficient way and with real-time guarantees. First, a genetic algorithm plans the number of agents needed and their parallel routes. Second, each agent dynamically adapts its route responding to network failures and topology changes.

We implemented the genetic algorithm and mobile agents using Java in combination with a middleware for MICA2 and MICAz motes called Agilla. Agilla enables remote users to inject mobile agents into the network via Java RMI. It supports up to four agents on each node, and utilizes local Linda-like tuple spaces and acquaintance lists for inter-agent coordination. Our Java application implements the genetic algorithm and decides the number of agents needed to efficiently visit every node and the paths they must follow to achieve real-time deadlines. It utilizes Java RMI to inject the agents into the WSN. Through experiments on a 5x5 node WSN, we have determined that our genetic algorithm achieves its stated goals.

We are currently working on expanding our scenario to include larger networks and multiple mobile base stations. We are also running simulations and experiments, the conclusions of which are to be retrospectively inputted on our on-going formal analysis of the problem and its optimal solution.

Our work promises to gain critical insight for enabling fast, reliable, flexible and energy efficient applications that provide real-time guarantees for the WSNs of tomorrow.



Documentation:

  1. Daniel Massaguer, Chien-Liang Fok, Nalini Venkatasubramanian, Gruia-Catalin Roman, and Chenyang Lu, "Exploring Sensor Networks using Mobile Agents", submitted.
  2. Brief paper/flier: Multi Mobile Agent Deployment in Wireless Sensor Networks. Available here [pdf].
see more documentation in the Agilla website


Presentations:

  1. Efficient Network Exploration and Fire Detection using Mobile Agents in a Wireless Sensor Network. ONR-MURI Review Meeting, November 18-19, 2004. Poster available here [pdf].

Downloads:

  1. Demo Instructions
  2. Agilla
  3. The Genetic Algorithm for route preplanning