A mobile agent is a running program that can migrate from host to host at times and to places of its own choosing. A software developer can use the ability to write a migratory program to develop software systems that are more efficient and more robust, particularly in a distributed system that includes wireless networks with low bandwidth and high disconnectivity.
In this project we set out to gain a better understanding of mobile-agent systems, and in particular their scalability and ability to interoperate with other mobile-agent systems. Using models, simulation, and large-scale experiments, and collaborating with the developers of other mobile-agent systems, we performed the first and (to date) most extensive scalability analysis of mobile-agent software. We compared their performance on information-retrieval tasks common to many application domains. We explored their performance benefits in a wireless-network environment. We developed technology that allows a mobile agent written for one mobile-agent system to migrate to and execute in a different mobile-agent system. We also expanded our prior work on the security of mobile agents.
In any mobile-agent system it is important to control the amount of resources consumed by a mobile agent. We used the concept of market-based control to allow hosts to ``sell'' computation time to visiting agents, setting the price through game-theoretic auction mechanisms. The agents, given a budget and a sequence of tasks to complete, seek low-price hosts that allow them to complete their tasks within budget. The result is a natural, distributed load-balancing scheme that works for self-interested agents and hosts.
Along the way, we delved into related topics in ad hoc wireless networks, sensor networks (see Section 25), information retrieval, and middleware for context-aware computing (see Section 18) and sensor-information processing. We aided the research community through our leadership of conferences and our founding of the Dartmouth Workshop on Transportable Agents. Building on our experience in the field, we also wrote and presented forward-looking articles on mobile-agent research.
We created and delivered at least one course on Mobile Agents and related technologies.