IMAGO: A Prolog-based System for Intelligent Mobile Agents
This paper presents the preliminary design of the IMAGO project. This project consists of two major parts: the IMAGO Application Programming Interface (API) - an agent development kit based on Prolog, and the MLVM - a multithreading agent server framework. We focus on the IMAGO API and its communication model - a novel mechanism to automatically track down agents and deliver messages in a dynamic, changing world. Examples are given to show the expressive power and simplicity of the programming interface as well as possible applications of the proposed system.
KeywordsVirtual Machine Mobile Agent Logic Programming Application Program Interface Identical Copy
Unable to display preview. Download preview PDF.
- 1.N. M. Karnik and A. R. Tripathi, Design Issues in Mobile-Agent Programming Systems. IEEE Concurrency, July–Sept., 1998, pp. 53–61.Google Scholar
- 2.D. B. Lange and M. Oshima, Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley, August, 1998.Google Scholar
- 3.ObjectSpace: ObjectSpace Voyager Core Package Technical Overview. Technical Report, ObjectSpace Inc., 1997, http://www.objectspace.com/.
- 4.Odyssey. Technical Report, General Magic Inc., http://www.genmagic.com/agents.
- 5.Concordia. Mitsubishi Electric,http://www.meitca.com/HSL/Projects/Concordia.
- 6.N. Karnik and A. Tripathi, Agent Server Architecture for the Ajanta Mobile-Agent System. In Proc. of PDPTA’98, CSREA Press, 1998, pp. 62–73.Google Scholar
- 7.J. E. White, Mobile Agents. Technical Report, General Magic Inc., 1995.Google Scholar
- 8.D. Johansen, R. van Renesse, and F. B. Schnelder, Operating System for Mobile Agents. In Proc. of HotOS-V’95, IEEE Computer Society Press, 1995, pp. 42–45.Google Scholar
- 9.R. S.. Gray, Agent Tel: A Flexible and Secure Mobile-Agent System. In Proc. Fouth Ann. Tcl/Tk Workshop, 1996, pp. 9–23.Google Scholar
- 10.P. Tarau, Jinni: Intelligent Mobile Agent Programming at the Intersection of Java and Prolog. In Proc. of PAAM’99, 1999, pp. 109–123.Google Scholar
- 11.P. van Roy et al., Mobile Objects in Distributed Oz. ACM Trans. on Programming Languages and Systems, (19)5, 1997, pp. 805–852.Google Scholar
- 12.X. Li, Efficient Memory Management in a Merged Heap/Stack Prolog Machine. ACM-SIGPLAN 2nd International Conference on Principles and Practice of Declarative Programming (PPDP’00), 2000, pp. 245–256.Google Scholar
- 13.J. Eskilson and M. Carlsson, SICStus MT-A Multithreaded Execution Environment for SICStus Prolog. In Proc. of PLILP/ALP’98, 1998, pp. 36–53.Google Scholar