Skip to main content

MIT M.Eng. Thesis · 1999

Hive: A Software Infrastructure for Things That Think

Author
Oliver R. Roup
Degree
Master of Engineering in Electrical Engineering and Computer Science
Institution
MIT, Department of Electrical Engineering and Computer Science
Supervisor
Michael Hawley, MIT Media Lab
Submitted
May 21, 1999

Abstract

Hive is a software toolkit to facilitate the creation of distributed systems of Things That Think. Hive contains a number of features that distinguish it from comparable toolkits including an unusual organizational metaphor, a reliance upon mobile code, and a powerful description facility to allow components of the system to find each other and communicate meaningfully.

As its name implies, Hive is based upon a biological metaphor. A Hive is composed of a collection of Cells which act as host to a population of Agents: mobile computational objects with some sort of agenda. Cells also play host to a number of distinct local resources called Shadows. A rich lookup scheme allows Agents to discover Shadows and each other and to facilitate meaningful ad-hoc connections.

The split between Shadows and Agents and the ability of Agents to move from Cell to Cell creates a great deal of flexibility. Code stability and wide-scale distribution of systems is encouraged.

Applications are implemented as the emergent behavior of an ecology of Agents: a population of Agents that move from Cell to Cell, discover resources, and interact with each other and the local Shadows.

Hive has been successfully deployed within the MIT Media Lab as the technical foundation for a number of widely varying projects and is scheduled for an Open Source release in the near future.

Read the thesis