1 / 23

Agent Factory Micro Edition: A Framework for Ambient Applications

Agent Factory Micro Edition: A Framework for Ambient Applications. C. Muldoon, G.M.P. O’ Hare, R.W. Collier, M.J. O’ Grady http://prism.ucd.ie. School of Computer Science and Informatics, University College Dublin. Overview of Presentation. Motivations Related Work J2ME Agent Factory

binta
Download Presentation

Agent Factory Micro Edition: A Framework for Ambient Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agent Factory Micro Edition: A Framework for Ambient Applications C. Muldoon, G.M.P. O’ Hare, R.W. Collier, M.J. O’ Grady http://prism.ucd.ie School of Computer Science and Informatics, University College Dublin

  2. Overview of Presentation • Motivations • Related Work • J2ME • Agent Factory • Design of AFME • Agnostic Communication • Message Transport and Migration Services • Conclusions

  3. Motivations • According to the W3C, there are now more mobile phones than desktop machines. • The rate of growth in the mobile phone market is increasing faster than the desktop market, particularly in developing countries. • The potential for deploying Java based agent frameworks is greater for the mobile market because most phones come with a J2ME JVM. • Traditional Agent Platforms were develop for desktop environments.

  4. Motivations • There is a need for small footprint agent systems that address the memory and performance constraints of mobile devices. • The BDI model of agency was specifically designed to facilitate the development of resource constrained agents. • Agents cannot achieve all of their desires. • They fix upon a subset known as their intentions • The BDI model is sometimes criticised for being inefficient but this is often due to the algorithms used rather than a problem with the model itself.

  5. Related Work • JADE-LEAP • Agent Middleware framework • MicroFIPA-OS • Embedded FIPA infrastructure • 3APL-M • Cognitive Agent Framework / Incorporates prolog engine

  6. AFME Technologies • CLDC 1.0 / MIDP 1.0 • Personal Digital Assistants (PDAs) • IBM J9 JVM • HP iPAQ H5450 / Bluetooth Enabled • 2.5G / 3G Smart Phones • Nokia 3660 / 6230 / 6630 • Sony Ericsson P800 / P900 / P910

  7. J2ME • Java Platform divided into three editions • Enterprise Edition, Standard Edition and Mobile Edition • One size fits all created problems • Limited capabilities for high end servers • Extraneous requirements for mobile devices • J2ME comprises two configurations and a number of profiles. • CLDC / MIDP • CDC / Personal Profile • Developers can now target specific markets but the write once run anywhere objective is not really feasible anymore, particularly with CLDC.

  8. J2ME • Differences between CLDC 1.0 / MIDP 1.0 and J2SE • May not have file system API • Different GUI package • No support for dynamic class loading or introspection • Different API for networking • No floating point numbers • Severely limited standard libraries; only about 80 classes • Different JVM specifications and application life cycle model

  9. Agent Factory • Cohesive Framework for the development of Multi-Agent Systems • Comprises four layers • Agent Programming language • Runtime environment • Integrated Development Environment • Development Methodology

  10. Agent Oriented Development • Facilitates the direct programming of agents in a language whose semantics capture a theory of rational agency • The Agent Factory Agent Programming Language is loosely based on Shoham’s AGENT0 • Agents use the intentional stance from an internal perspective to reason about their environment and goals • Based on a formalism of Belief and Commitment

  11. Why AFME? • Agent Factory was developed in J2SE and is heavily dependent on classes and APIs not present in CLDC/MIDP • Different Application lifecycle model. Applications must be packaged as MIDlets • Different compiler required • The footprint of the framework had to be reduced for embedded systems

  12. Design of AFME • Design strongly influenced by the Law of Demeter • Specifies the coding guideline “Only talk to your immediate friends” • Dictates the communication structure with the system • Popularised by Grady Booch and James Rumbaugh • Following the law leads to good style for object oriented development • Reduces the footprint of the software by minimising code duplication • Simplifies the message passing structure within the system

  13. Design of AFME • AFME does not blindly follow the law but uses consistently to remove accessor methods • Rather than asking an object for data to perform an operation ask the object to perform the operation itself. • This results in hiding implementation details and protect data encapsulation

  14. Problems with Accessors • They expose an objects state • Violate the precepts of Object-Oriented development • Reduce the maintainability of the software and increase the entropy or movement of information within the system • The developer should think declaratively rather than procedurally when developing objects • Objects should be created in terms of their capabilities. The focus of design should be on the messages passed between objects.

  15. Agnostic Communication • AFME comprises a number of system components • Perceptors, Actuators, Modules, Servies

  16. Agnostic Communication • In the Standard framework these components contain direct references to each other • AFME decouples these units • Communication faciltated through First Order Structures • Provides symbolic representation of information content • Differs from the notion of an interface. No types specified

  17. Message Transport Service • GPRS / G3 firewall • Intermittent polling / Tranparent from standard evironment • Two modes: synchronous an asynchronous

  18. Migration • Support for weak migration • Strong migration not possible due to limitations of the JVM specification. • Java prevents a developer gaining access to processor specific information to facilitate platform independent development. • Classes must be pre-verified therefore cannot use dynamic class loading

  19. Uses of Migration • Bandwidth • Sometimes it is better to send the computation to the data rather than the data to the computation • This will be the case if the result set of a query is greater than the size of the agent • In mobile computing devices the user will not always be connected to a network. • Mobile agents are more adaptive than static agents • If something is going wrong at one location, they can move to a different location and continue processing.

  20. Migration • Migration Server • Required because of service provider firewall • Mutation • Different agent design for interacting with FIPA yellow and white page services • Agent maintains beliefs about where platform specific commitment rule may be obtained • Destination platform specifies its type. The migration process is transparent from the source perspective • Agents not coupled to services or modules

  21. AFME Mental State Debugger • Enables the direct debugging of the agent’s mental state • Provides functionality to step through the reasoning process • Similar functionality to the desktop debugger but customised for MIDP

  22. Conclusions • Developed a framework for the construction of intentional agents for mobile devices • Improved the efficiency of the control algorithm. • Used the law of demeter to avoid accessor methods and to improve the coding style. • Improved the maintainability of the software • Reduced the footprint of the system • With a Jar size of 85k probably the smallest FIPA compliant agent platform in the world

  23. And Finally • More Information can be obtained at http://prism.ucd.ie • AFME is an open source project • Agent Factory / AFME may be downloaded from http://agentfactory.sourceforge.net

More Related