Abstract
Assisting an user working with an application can involve several tasks of a different nature; thus it can be a complex job which is better performed by several autonomous agents. Accordingly, in many scenarios, several small assistant agents, each dedicated to a single task, are employed to supply help and to enhance the same application. This paper proposes a software architecture that allows multiple assistants to serve the same application and interact with each other as necessary, while working autonomously from each other. This architecture interfaces assistants with an existing application by means of computational reflection. The latter mechanism allows meaningful user activities to be intercepted by assistants, and the outcomes of their activity to be supplied to the application. No assumptions need to be made about the application or the assistants; assistants can be changed, added and removed as necessary to adapt the application to unforeseen scenarios, conversely an assistant can be employed to support several applications. The usefulness and applicability of the proposed architecture is demonstrated by an e-commerce case study: we show how a suitable assistant set can integrate with and enhance a bare web browser, making it fit to support e-commerce activities.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
G. Cabri, L. Leonardi, and F. Zambonelli. Mobile-Agent Coordination Models for Internet Applications. IEEE Computer, 33(2):82–89, February 2000.
S. Chiba. A Metaobject Protocol for C++. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’ 95), pages 285–299, 1995.
S. Chiba. Load-time Structural Reflection in Java. In Proceedings of the ECOOP 2000, volume 1850 of Lecture Notes in Computer Science, 2000.
A. Di Stefano, G. Pappalardo, C. Santoro, and E. Tramontana. Extending Applications using Reflective Assistant Agents. In Proceedings of the 26th Annual International Computer Software and Applications Conference (Compsac’02), Oxford, UK, 2002.
A. Di Stefano, G. Pappalardo, and E. Tramontana. Introducing Distribution into Applications: a Reflective Approach for Transparency and Dynamic Fine-Grained Object Allocation. In Proceedings of the Seventh IEEE Symposium on Computers and Communications (ISCC’02), Taormina, Italy, 2002.
A. Di Stefano and C. Santoro. NetChaser: Agent Support for Personal Mobility. IEEE Internet Computing, 4(2):74–79, March/April 2000.
D. W. Embley, D. M. Campbell, Y. S. Jiang, S. W. Liddle, Y.-K. Ng, D. Quass, and R. D. Smith. Conceptual-Model-Based Data Extraction from Multiple-Record Web Pages. Data Knowledge Engineering, 31(3):227–251, 1999.
J. Ferber. Computational Reflection in Class Based Object Oriented Languages. In Proceedings of the ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’89), volume 24 of Sigplan Notices, pages 317–326, New York, NY, 1989.
E. Gamma, R. Helm, R. Johnson, and R. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. Reading, MA, 1994.
D. Goodman. Danny Goodman’s AppleScript Handbook. Random House, New York, 1994.
Y. Kitamura, T. Yamada, T. Kokubo, Y. Mawarimichi, T. Yamamotom, and T. Ishida. Interactive Integration of Information Agents on the Web. In Proceedings of CIA 2001, volume 2182 of Lecture Notes in Artificial Intelligence, pages 1–13. Springer, 2001.
Y. Labrou, T. Finin, and Y. Peng. Agent Communication Languages: the Current Landscape. IEEE Intelligent Systems, pages 45–52, March–April 1999.
H. Lieberman. Letizia: An Agent That Assists Web Browsing. In International Joint Conference on Artificial Intelligence, pages 924–929, Montreal, August 1995.
H. Lieberman, P. Maes, and N. Van Dyke. Butterfly: A Conversation-Finding Agent for Internet Relay Chat. In International Conference on Intelligent User Interfaces, Los Angeles, January 1999.
P. Maes. Concepts and Experiments in Computational Reflection. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’87), volume 22 (12) of Sigplan Notices, pages 147–155, Orlando, FA, 1987.
P. Maes. Agents that Reduce Work and Information Overload. In Bradshaw, J., editor, Software Agents, pages 145–164. AAAI Press/The MIT Press, 1997.
H. Mase. Experiments on Automatic Web Page Categorization for IR system, 1998. Technical Report, Stanford University.
Microsoft Corporation. Microsoft Developer Network Library, 2000.
M. Shaw and D. Garlan. Software Architecture-Perspective on an Emerging Discipline. Prentice Hall, 1996.
SourceForge. Jazilla Home Page. WWW, 2002. http://jazilla.sourceforge.net.
E. Tramontana. Managing Evolution Using Cooperative Designs and a Reflective Architecture. In W. Cazzola, R. J. Stroud, and F. Tisato, editors, Reflection and Software Engineering, volume 1826 of Lecture Notes in Computer Science. Springer-Verlag, June 2000.
E. Tramontana. Reflective Architecture for Changing Objects. In Proceeding of the ECOOP Workshop on Reflection and Metalevel Architectures (RMA’00), Nice, France, June 2000.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Di Stefano, A., Pappalardo, G., Santoro, C., Tramontana, E. (2002). A Multi-agent Reflective Architecture for User Assistance and Its Application to E-commerce. In: Klusch, M., Ossowski, S., Shehory, O. (eds) Cooperative Information Agents VI. CIA 2002. Lecture Notes in Computer Science(), vol 2446. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45741-0_9
Download citation
DOI: https://doi.org/10.1007/3-540-45741-0_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44173-1
Online ISBN: 978-3-540-45741-1
eBook Packages: Springer Book Archive