ABSTRACT
Roles represent a powerful means to enable software agents to act in open environments. They can be implemented in different ways, and in this talk I will show two directions exploiting Java. The former one is quite traditional and exploits composition; the latter one adds the capabilities of roles to agents' classes in form of injected bytecode. I will compare the two approaches trying to generalize the considerations.
- N. R. Jennings. "An agent-based approach for building complex software systems", Communications of the ACM, Vol. 44, No. 4, pp. 35--41 (2001) Google ScholarDigital Library
- G. Cabri, L. Leonardi, F. Zambonelli. "BRAIN: a Framework for Flexible Role-based Interactions in Multiagent Systems", The 2003 Conference on Cooperative Information Systems (CoopIS), Catania, Italy (2003)Google Scholar
- M. Fowler. "Dealing with Roles", available at http://martinfowler.com/apsupp/roles.pdf (1997)Google Scholar
- G. Cabri, L. Leonardi, F. Zambonelli. "Separation of Concerns in Agent Applications by Roles", in Proceedings of the 2nd International Workshop on Aspect Oriented Programming for Distributed Computing Systems (AOPDCS 2002), at the International Conference on Distributed Computing Systems (ICDCS 2002), Wien, Austria Google ScholarDigital Library
- G. Cabri. "Role-based Infrastructures for Agents", in Proceedings of the 8th IEEE Workshop on Future Trends of Distributed Computing Systems (FTDCS 2001), Bologna, Italy (2001) Google ScholarDigital Library
- Y. Aridor, D. Lange, Agent Design Pattern: Elements of Agent Application design, in Proceedings of the International Conference on Autonomous Agents, ACM Press (1998) Google ScholarDigital Library
- G. Cabri, L. Ferrari, L. Leonardi, F. Zambonelli, Role-Based Software Agent Interaction Models: A Survey, Knowledge Engineering Review, Vol. 25, No. 4, pp. 397--419, 2010 Google ScholarDigital Library
- G. Cabri, F. De Mola, L. Leonardi. "Agent-based Plug-and-Play Integration of Role-Enabled Medical Devices", The Joint Workshop On High Confidence Medical Devices, Software, and Systems (HCMDSS) and Medical Device Plug-and-Play (MD PnP) Interoperability, Boston, MA, USA, June 2007 Google ScholarDigital Library
- M. Puviani, G. Cabri, F. Zambonelli. "Agent-based simulations of patterns for self-adaptive systems", The 6th International Conference on Agents and Artificial Intelligence (ICAART 2014), Angers, France, March 2014, InderscienceGoogle Scholar
- G. Cabri. "Agent Roles For Context-Aware P2P Systems", Peoceedings of Agents And Peer-To-Peer Computing, Budapest, Hungary, 2012 Google ScholarDigital Library
- G. Cabri, L. Ferrari, R. Rubino. "Building Computational Institutions for Agents with RoleX", Artificial Intelligence & Law (Springer, The Netherlands), ISSN: 0924-8463, Vol. 16, No. 1, pp. 129--145, March 2008. Google ScholarDigital Library
- {JADE} JADE, JAVA Agent DEvelopment Framework, http://jade.tilab.com/Google Scholar
- G. Cabri, L. Ferrari, L. Leonardi. "Injecting Roles in Java Agents Through Run-Time Bytecode Manipulation", IBM Systems Journal (IBM, Atlanta-USA), Vol. 44, No. 1, pp.185--208, February 2005 Google ScholarDigital Library
- D. B. Lange, M. Oshima. "Programming and Deploying Java Mobile Agents with Aglets", Addison-Wesley, Reading (MA) (1998) Google ScholarDigital Library
Index Terms
- Implementing agent roles in Java
Recommendations
Evaluating the Java Native Interface JNI: Leveraging Existing Native Code, Libraries and Threads to a Running Java Virtual Machine
This article aims to explore JNI features and to discover fundamental operations of the Java programming language, such as arrays, objects, classes, threads and exception handling, and to illustrate these by using various algorithms and code samples. ...
Autonomous role discovery for collaborating agents
Role-based collaboration is an emerging methodology to facilitate an organizational structure, provide orderly system behavior, and consolidate system security for both human and non-human entities, like agents, that collaborate and coordinate their ...
Exploiting runtime bytecode manipulation to add roles to Java agents
Special issue on principles and practice of programming in java (PPPJ 2003)Thanks to their sociality, agents can interact with other agents in a cooperative or competitive way. Such interactions must be carefully taken into consideration in the development of agent-based applications. A good paradigm for modeling such ...
Comments