Coordinated Resource Management in Networked Embedded Systems

This dissertation shows that with simple programming abstractions, network-wide resource coordination is efficient and useful for programming embedded sensor networks. Existing systems have focused primarily on managing resources for individual nodes, but a sensor network is not merely a collection o...

Full description

Bibliographic Details
Main Author: Waterman, Jason
Other Authors: Nagpal, Radhika
Language:en_US
Published: Harvard University 2012
Subjects:
Online Access:http://dissertations.umi.com/gsas.harvard:10651
http://nrs.harvard.edu/urn-3:HUL.InstRepos:9861674
Description
Summary:This dissertation shows that with simple programming abstractions, network-wide resource coordination is efficient and useful for programming embedded sensor networks. Existing systems have focused primarily on managing resources for individual nodes, but a sensor network is not merely a collection of nodes operating independently: it must coordinate behavior across multiple nodes to achieve high efficiency. We need tools that can enable system-wide coordination at a higher level of abstraction than what exists today. We present three core contributions. The first is a service called IDEA that enables networkwide energy management for sensor networks. It unites energy monitoring, load modeling, and distributed state sharing into a single service that facilitates distributed decision making. Using simulation and testbed results, we show that IDEA enables improvements in network lifetime of up to 35% over approaches that do not consider energy distribution. Our second contribution is Karma, a system for coordinating insect-sized robotic microaerial vehicle (MAV) swarms, an emerging class of mobile sensor networks. Karmas system architecture simplifies the functionality of an individual MAV to a sequence of sensing and actuation commands called behaviors. Each behavior has an associated progress function, a measure of how much of that behavior has been completed. Programming is done by composing behaviors which are coordinated using input from the progress functions. Through simulation and testbed experiments, we demonstrate Karma applications can run on limited resources, are robust to individual MAV failure, and adapt to changes in the environment. Our final contribution is Simbeeotic, a testbed for MAV coordination algorithms. MAV sensors must be codesigned with the software and coordination algorithms that depend on them. This requires a testbed capable of simulating sensors to evaluate them before actual hardware is available and the ability to test with real flight dynamics for accurate control evaluation. In addition, simulation should be able to scale to hundreds or thousands of MAVs at a reduced level of fidelity in order to test at scale. We demonstrate that Simbeeotic provides the appropriate level of fidelity to evaluate prototype systems while maintaining the ability to test at scale. === Engineering and Applied Sciences