Personal Agents on Semantic Web
January 26, 2004
We describe an architecture for persistent personal agents (PPAs) designed to work on the semantic web. A PPA assists its user with everyday activities, such as maintaining a calendar, coordinating activities with other people, and answering simple queries on their behalf. Our PPAs use the semantic web languages RDF and DAML+OIL to define and use ontologies, to understand markup on web resources, and to encode the content in ACL messages exchanged with other PAs. We demonstrate the feasibility of our approach through a prototype, which receives event recommendations, reasons about them, shares information with peer PPAs, and decides whether or not to add events to its user's calendar. The PPAs encode their knowledge in Jess and use FIPA languages, protocols and infrastructure to communicate with other agents. An extension to the FIPA framework allows the DAML Query Language DQL to be used to query other agents. A discovery mechanism has been developed that allows PPAs to find and negotiate information exchange with peer PPAs. We also present a simple approach to reasoning about the trust-worthiness of a query and allow a PPA to infer whether the requested information could be shared based on the user's privacy preferences. We use the Java Agent Development Environment kit as the basic building block to create an agent because of the simplicity of its usage. Our model can easily incorporate enhancements with respect to the agent's behavior that may increase the comfort and usability provided by the agent to its user.