×

JavaLog: a framework-based integration of Java and Prolog for agent-oriented programming. (English) Zbl 1079.68519

Summary: Intelligent agent development has imposed new challenges on the necessary language support. Object-oriented languages have been proposed as an appropriate tool, although logic-oriented languages are more adequate for managing mental attitudes. Multi-paradigm languages supporting encapsulation of actions, hiding of private knowledge and flexible manipulation of knowledge are, certainly, a good alternative for programming agents. However, a unique language to support flexible and efficient development of multi-agent systems confronts with the tradeoffs imposed by expressive power, efficiency and support technology. An alternative to conciliate these tradeoffs is not to think about a single language but an incrementally compatible family of agent-oriented multi-paradigm languages. In this work we present an approach based on object-oriented framework technology for integrating object and logic paradigms in such a way that new language features can be incrementally added to the core language. This core language is based on logic modules integrated as object abstractions in the object paradigm. JavaLog is a materialization of this framework integrating Java and Prolog. This core was extended to provide multi-threading support, mobility and temporal-logic operators to Prolog. MoviLog, the mobile part of the family provides a novel mobility mechanism, reactive mobility by failure, which enables virtual Prolog databases distributed across Web sites.

MSC:

68N19 Other programming paradigms (object-oriented, sequential, concurrent, automatic, etc.)
68N17 Logic programming
68N15 Theory of programming languages
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Dix J, Leite JA, Satoh K, editors. Computational logic in multi-agent systems, Datalogiske skrifter, vol. 93. Roskilde, Denmark, August 1, 2002.; Dix J, Leite JA, Satoh K, editors. Computational logic in multi-agent systems, Datalogiske skrifter, vol. 93. Roskilde, Denmark, August 1, 2002. · Zbl 1270.68023
[2] Crnogorac L, Rao AS, Ramamohanarao K. Analysis of inheritance mechanisms in agent-oriented programming. In: Proceedings of the 15th International Joint Conference on Artificial Intelligence, IJCAI. Los Altas, CA: Morgan Kaufmann Publishers, 1997. p. 23-29, 647-54.; Crnogorac L, Rao AS, Ramamohanarao K. Analysis of inheritance mechanisms in agent-oriented programming. In: Proceedings of the 15th International Joint Conference on Artificial Intelligence, IJCAI. Los Altas, CA: Morgan Kaufmann Publishers, 1997. p. 23-29, 647-54.
[3] Shoham Y. An overview of agent-oriented programming. In: Software agents, Menlo Park, USA, AAAI; 1997.; Shoham Y. An overview of agent-oriented programming. In: Software agents, Menlo Park, USA, AAAI; 1997.
[4] Fisher M. A survey of concurrent METATEM—the language and its applications. In: Gabbay DM, Ohlbach HJ, editors. Temporal logic—Proceedings of the First International Conference, Lecture Notes in Artificial Intelligence, vol. 827. Heidelberg, Germany: Springer; 1994, p. 480-505.; Fisher M. A survey of concurrent METATEM—the language and its applications. In: Gabbay DM, Ohlbach HJ, editors. Temporal logic—Proceedings of the First International Conference, Lecture Notes in Artificial Intelligence, vol. 827. Heidelberg, Germany: Springer; 1994, p. 480-505. · Zbl 0949.68532
[5] Noda I, Nakashima H, Handa K. Programming language gaea and its application for multiagent systems. In: Workshop on Multi-Agent System and Logic Programming, December 1999.; Noda I, Nakashima H, Handa K. Programming language gaea and its application for multiagent systems. In: Workshop on Multi-Agent System and Logic Programming, December 1999.
[6] Dix, J., The logic programming paradigm, AI Communications, 11, 3, 39-43 (1998), (Short version in Newsletter of ALP 1998;11(3):10-14)
[7] Poggi A. Daisy: an object-oriented system for distributed artificial intelligence. In: Proceedings of the ECAI-94 Workshop on Agent Theories, Architectures, and Languages, 1994.; Poggi A. Daisy: an object-oriented system for distributed artificial intelligence. In: Proceedings of the ECAI-94 Workshop on Agent Theories, Architectures, and Languages, 1994.
[8] Van Roy P, Haridi S. Mozart: a programming system for agent applications. In: International Workshop on Distributed and Internet Programming with Logic and Constraint Languages, November 1999. Part of International Conference on Logic Programming (ICLP 99).; Van Roy P, Haridi S. Mozart: a programming system for agent applications. In: International Workshop on Distributed and Internet Programming with Logic and Constraint Languages, November 1999. Part of International Conference on Logic Programming (ICLP 99).
[9] Yamazaki, K.; Yoshida, M.; Amagai, Y.; Takeuchi, I., Implementation of logic computation in a multi-paradigm language tao, Information Processing Society of Japan, 41, 1, 142-157 (2001)
[10] Lee, J. H.M.; Pun, P. K.C., Object logic integrationa multiparadigm design methodology and a programming language, Computer Languages, 23, 1, 25-42 (1997)
[11] Ng KW, Huang L, Sun Y. A multiparadigm language for developing agent-oriented applications. In: Proceedings of Technology of Object-Oriented Languages and Systems (TOOLS), Beijing, China, September. New York: IEEE; 1998.; Ng KW, Huang L, Sun Y. A multiparadigm language for developing agent-oriented applications. In: Proceedings of Technology of Object-Oriented Languages and Systems (TOOLS), Beijing, China, September. New York: IEEE; 1998.
[12] Fayad, M. E.; Schmidt, D. C., Object-oriented application frameworks (special issue introduction), Communications of the ACM, 40, 10, 39-42 (1997)
[13] Fayad ME, Johnson R, editors. Domain-specific application frameworks: frameworks experience by industry. New York: Wiley, 1999.; Fayad ME, Johnson R, editors. Domain-specific application frameworks: frameworks experience by industry. New York: Wiley, 1999.
[14] O’Keefe RA. Towards an algebra for constructing logic programs. In: Proceedings of the International Symposium on Logic Programming. IEEE Computer Society, Technical Committee on Computer Languages. Rockville, MD: The Computer Society Press, July 1985.; O’Keefe RA. Towards an algebra for constructing logic programs. In: Proceedings of the International Symposium on Logic Programming. IEEE Computer Society, Technical Committee on Computer Languages. Rockville, MD: The Computer Society Press, July 1985.
[15] Bugliesi, M.; Lamma, E.; Mello, P., Modularity in logic programming, The Journal of Logic Programming, 19&20, 443-502 (1994)
[16] Zunino A, Campo M, Mateos C. Simplifying mobile agent development through reactive mobility by failure. In: Bittencourt G, Ramalho G, editors, Advances in artificial intelligence. Lecture Notes in Computer Science, vol. 2507. Berlin: Springer; Novermber, 2002. p. 163-174.; Zunino A, Campo M, Mateos C. Simplifying mobile agent development through reactive mobility by failure. In: Bittencourt G, Ramalho G, editors, Advances in artificial intelligence. Lecture Notes in Computer Science, vol. 2507. Berlin: Springer; Novermber, 2002. p. 163-174. · Zbl 1031.68614
[17] Lange, D. B.; Oshima, M., Seven good reasons for mobile agents, Communications of the ACM, 42, 3, 88-89 (1999)
[18] Gray, R. S.; Cybenko, G.; Kotz, D.; Rus, D., Mobile agents: motivations and state of the art, (Bradshaw, J., Handbook of agent technology (2001), AAAI/MIT Press: AAAI/MIT Press Menlo Park, USA/Cambridge, MA)
[19] Bradshaw, J. M., Software agents (1997), AAAI Press: AAAI Press Menlo Park, USA
[20] Garcia A, Chavez C, Silva O, Silva V, Lucena C. Promoting advanced separation of concerns in intra-agent and inter-agent software engineering. In: Workshop on Advanced Separation of Concerns in Object-Oriented Systems at OOPSLA’2001, October 2001.; Garcia A, Chavez C, Silva O, Silva V, Lucena C. Promoting advanced separation of concerns in intra-agent and inter-agent software engineering. In: Workshop on Advanced Separation of Concerns in Object-Oriented Systems at OOPSLA’2001, October 2001.
[21] Cordero D, Roldán P, Schiaffino S, Amandi A. Intelligent agents generating personal newspapers. In: Proceedings of the International Conference on Enterprise Information Systems, Portugal, March 1999.; Cordero D, Roldán P, Schiaffino S, Amandi A. Intelligent agents generating personal newspapers. In: Proceedings of the International Conference on Enterprise Information Systems, Portugal, March 1999.
[22] Schiaffino S, Amandi A. User profiling with case-based reasoning and bayesian networks, in: Proceedings of the Seventh Iberoamerican Conference on Artificial Intelligence (IBERAMIA 2000) and the 15th Brazilian AI Symposium (SBIA 2000), Atibaia, São Paulo, Brasil, November 2000.; Schiaffino S, Amandi A. User profiling with case-based reasoning and bayesian networks, in: Proceedings of the Seventh Iberoamerican Conference on Artificial Intelligence (IBERAMIA 2000) and the 15th Brazilian AI Symposium (SBIA 2000), Atibaia, São Paulo, Brasil, November 2000.
[23] Zunino A, Amandi A. Building multi-agent systems from reusable software components. In: Alvares LO, editor. Proceedings of the Third Workshop in Distributed Artificial Intelligence and Multi-Agent Systems (3WDAIMAS) held in conjunction with the Seventh Iberoamerican Conference on Artificial Intelligence (IBERAMIA 2000) and the 15th Brazilian AI Symposium (SBIA 2000), Atibaia, São Paulo, Brasil, November 2000.; Zunino A, Amandi A. Building multi-agent systems from reusable software components. In: Alvares LO, editor. Proceedings of the Third Workshop in Distributed Artificial Intelligence and Multi-Agent Systems (3WDAIMAS) held in conjunction with the Seventh Iberoamerican Conference on Artificial Intelligence (IBERAMIA 2000) and the 15th Brazilian AI Symposium (SBIA 2000), Atibaia, São Paulo, Brasil, November 2000.
[24] Reticular Systems Inc., AgentBuilder: an integrated toolkit for constructing intelligent software agents, White Paper, February 1999.; Reticular Systems Inc., AgentBuilder: an integrated toolkit for constructing intelligent software agents, White Paper, February 1999.
[25] Busetta P, Ramamohanarao K. The BDIM agent toolkit design. Technical Report 97/15, Departament of Computer Science, University of Melbourne, 1997.; Busetta P, Ramamohanarao K. The BDIM agent toolkit design. Technical Report 97/15, Departament of Computer Science, University of Melbourne, 1997.
[26] Nwana, H.; Ndumu, D.; Lee, L.; Collis, J., ZEUSa tool-kit for building distributed multi-agent systems, Applied Artifical Intelligence Journal, 13, 1, 129-186 (1999)
[27] Denti E, Omicini A. Engineering multi-agent systems in luce. In: Proceedings of the Workshop on Multi-Agent Systems in Logic Programming—MAS?99 (in conjunction with the International Conference on Logic Programming 1999), New Mexico, USA, December 1999.; Denti E, Omicini A. Engineering multi-agent systems in luce. In: Proceedings of the Workshop on Multi-Agent Systems in Logic Programming—MAS?99 (in conjunction with the International Conference on Logic Programming 1999), New Mexico, USA, December 1999.
[28] Kellett A, Fisher M. Coordinating heterogeneous components using executable temporal logic. In: Meyer J-J, Treur J, editors. Agents, reasoning and dynamics, Series of Handbooks in Defeasible Reasoning and Uncertainty Management Systems, vol. 6. Dordecht: Kluwer Academic Publishers: 2001.; Kellett A, Fisher M. Coordinating heterogeneous components using executable temporal logic. In: Meyer J-J, Treur J, editors. Agents, reasoning and dynamics, Series of Handbooks in Defeasible Reasoning and Uncertainty Management Systems, vol. 6. Dordecht: Kluwer Academic Publishers: 2001.
[29] Weerasooriya D, Rao A, Ramamohanarao K. Design of a concurrent agent-oriented language. In: Wooldridge MJ, Jennings NR, editors. Proceedings of the ECAI-94 Workshop on Agent Theories, Architectures and Languages: Intelligent Agents I, Lecture Notes in Artificial Intelligence, vol. 890. Berlin: Springer, August 1995, 386pp.; Weerasooriya D, Rao A, Ramamohanarao K. Design of a concurrent agent-oriented language. In: Wooldridge MJ, Jennings NR, editors. Proceedings of the ECAI-94 Workshop on Agent Theories, Architectures and Languages: Intelligent Agents I, Lecture Notes in Artificial Intelligence, vol. 890. Berlin: Springer, August 1995, 386pp.
[30] Levesque, H. J.; Reiter, R.; Lespérance, I.; Lin, F.; Scherl, R. B., GOLOGa logic programming language for dynamic domains, Journal of Logic Programming, 31, 1-3, 59-83 (1997) · Zbl 0880.68008
[31] Tarau P. Jinni: a lightweight java-based logic engine for internet programming. In: Sagonas K, editor. Proceedings of JICSLP’98 Implementation of LP languages Workshop, Manchester, UK, June 1998, invited talk.; Tarau P. Jinni: a lightweight java-based logic engine for internet programming. In: Sagonas K, editor. Proceedings of JICSLP’98 Implementation of LP languages Workshop, Manchester, UK, June 1998, invited talk.
[32] Graham J, Decker K. Towards distributed, environment centred agent framework. In: Proceedings of Agent Theory and Languages (ATAL) ’99, July 1999.; Graham J, Decker K. Towards distributed, environment centred agent framework. In: Proceedings of Agent Theory and Languages (ATAL) ’99, July 1999.
[33] Kendall, E. A.; Krishna, P. V.M.; Pathak, C. V.; Suresh, C. B., A framework for agent system, (Fayad, M. E.; Schmidt, D. C.; Johnson, R. E., Implementing applications frameworks: object oriented frameworks at work (1999), Wiley: Wiley New York)
[34] Lange DB, Oshima M. Programming and deploying mobile agents with java aglets. Reading, MA, USA: Addison-Wesley; September 1998.; Lange DB, Oshima M. Programming and deploying mobile agents with java aglets. Reading, MA, USA: Addison-Wesley; September 1998.
[35] Weld, D. S., An introduction to least commitment planning, AI Magazine, 15, 4, 27-61 (1994)
[36] Amandi A, Iturregui R, Zunino A. Object-agent oriented programming, Electronic Journal of Sociedad Argentina de Informática e Investigación Operativa (EJS) also in Second Argentine Symposium on Object Orientation (ASOO’98) 1999; 2(1):5-16. ISSN 1514-6774.; Amandi A, Iturregui R, Zunino A. Object-agent oriented programming, Electronic Journal of Sociedad Argentina de Informática e Investigación Operativa (EJS) also in Second Argentine Symposium on Object Orientation (ASOO’98) 1999; 2(1):5-16. ISSN 1514-6774. · Zbl 0920.68020
[37] Teyseyre A. A 3d visualization approach to validate requirements. In: Congreso Argentino de Ciencias de la Computación, October 2002.; Teyseyre A. A 3d visualization approach to validate requirements. In: Congreso Argentino de Ciencias de la Computación, October 2002.
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.