Home

Core Technologies:
Agent Factory
AFME

Applications:
MiRA
NEXUS
HOTAIR
ACCESS
Mobile Systems

 

 

Core Technologies: Agent Factory Micro Edition (AFME)

 

 

 

 

 

1. Introduction

Agent Factory Micro Edition (AFME) is a framework that supports the development of rational agents for mobile devices. It has been specifically designed to tackle the performance and memory footprint issues associated with executing intentional agents in resource constrained environments (AFME is currently the smallest footprint deliberative agent platform in the world). This has had a significant impact on the design of the object-oriented components of the system.

2. Overview

Agent Factory Micro Edition (AFME) is a minimised footprint agent platform developed specifically to enable the execution of intentional agents on resource constrained mobile devices. AFME is loosely based on Agent Factory, a pre-existing framework for the development and deployment of multi-agent systems for standard (PC) computing environments. AFME distinguishes itself from Agent Factory and other alternative agent platforms in several ways. It addresses the practical issues associated with the deployment of agent technology in the ubiquitous domain. Agent platforms developed for standard computing enviroments do not scale down well (at all) to small devices.

For instance, many standard agent platforms are deployed on top of standard Java (J2SE or Java 5/6). The problem is that these platforms cannot be used on the vast majority of mobile devices because such devices do not support standard Java. The reason for this is that the footprint of standard Java is too large. The computational and power resources of embedded devices is considerably smaller than PC enviroments. It is therefore essential that software for resource constrained mobile devices is optimised and operates in an efficient manner. AFME has been developed using the Constrained Limited Device Configuration (CLDC). CLDC is the de facto standard Java platform for mobile devices; virtually all new mobile phones are shipped with CLDC on board (at present (2007), there are over 2.1 billion Java-enabled mobile devices).

2.1 AFME Design

AFME is loosely based on Agent Factory; it expresses an agent's internal state through the mentalistic notions of belief and commitment. In AFME, agents have perceptors that generate beliefs about their state and their environment. Actuators are used to enable agents to affect their environment. Rules that define the conditions under which commitments are adopted are used to encode an agent's behaviour in an agent programming language.

AFME distinguishes itself from (1) Agent Factory and (2) other agent platforms developed for resource constrained devices in several ways. Its design has been strongly influenced by the 'Law of Demeter' or the principle of least knowledge. The law can be succinctly summarized as: "Only talk to your immediate friends". It is named in honour of Demeter, distribution-mother and goddess of agriculture, to signify a bottom-up philosophy of programming. Although AFME does not blindly follow the law, it uses it consistently to protect the internal states of the objects that constitute the system and to thereby improve maintainability. Writing software in this manner tends to minimise duplicated code sections and thereby reduce the footprint of the system.

2.2 AFME Architecture

AFME agents follow a sense-deliberate-act cycle. The agents are executed at periodic intervals within the scheduler. The diagram to the left illustrates the AFME control algorithm. The control algorithm performs four functions. First, perceptors are fired and beliefs are updated. Second, the desired states of the agent are identified using resolution-based reasoning. The reasoning algorithm is somewhat similar to the goal-based query mechanism or theorem prover techniques commonly employed within Prolog engines (it uses a depth-first search). Third, a subset of desires are chosen as intentions within the intention selection process. Fourth, commitments are managed. Depending on the nature of the commitments adopted, various actuators are fired.

Some resource management techniques were developed to support AFME. A new threading model was created that reduces the computational overlap of the agents. The theading model phase shifts agents with equal responsiveness so as that they do not begin operating at the same time. A rational decision making infrastructure was introduced to enable agents to choose the most appropriate course of action with respect to their computational limitations. In AFME, agents are self-interested. When we say that an agent is self-interested, we do not imply that the agent selfish or that it never collaborates, rather that it will act in a consistent manner to achieve its objectives. Whether an agent should collaborate or compete depends on what its objectives are. A new technique known as belief labeling was introduced to improve the efficiency of the reasoning algorithm. Using belief labeling, common subsets of predicates are only evaluated once within the resolution-based reasoning algorithm.

3. Accessibility

AFME is an open source project and has been tested and deployed within several research projects, including the award-winning ACCESS Architecture. It is freely available for download under the terms of the GNU Lesser GPL Licence from the Agent Factory SourceForge website. More information on AFME may be found on the Agent Factory website: http://www.agentfactory.com.

4. Selected Publications

  • Muldoon, C. and O Hare, G.M.P. and O Grady, M.J. Managing Resources in Constrained Environments with Autonomous Agents. This is an extended version of the ESAW'06 paper 'AFME: An Agent Platform for Resource Constrained Devices', in Engineering Societies in the Agents' World. Berlin / Heidelberg, Springer. Volume 4457 of Lecture Notes in Computer Science (LNCS), 2007.
  • Muldoon, C and O Hare, G.M.P. and Collier, R.W. and O Grady, M.J. Agent Factory Micro Edition: A Framework for Ambient Applications, in International Conference in Computational Science. ICCS 2006. in Workshop on Intelligent Agents in Computing Systems. Berlin / Heidelberg, Springer. Volume 3993 of Lecture Notes in Computer Science (LNCS), 2006.
  • Muldoon, C., O'Hare, G.M.P. & O'Grady, M.J., AFME: An Agent Platform for Resource Constrained Devices, in Proceedings of 7th International Workshop, Engineering Societies in the Agents World VII, ESAW 2006. O'Hare, G.M.P., Ricci, A., O'Grady, M.J. & Dikenelli, O. (Eds.), University College Dublin, Dublin, Ireland 6th- 8th Sept. 2006.
  • Muldoon, C. and O Hare, G.M.P. and O Grady, M.J. Collaborative Agent Tuning: Performance Enhancement on Mobile Devices, in Engineering Societies in the Agents World VI. Berlin / Heidelberg, Springer. Volume 3963 of Lecture Notes in Computer Science (LNCS), 2006.
  • Bradley, J.F. and Muldoon, C. and O Hare, G.M.P. and O Grady, M.J. Embedded Agents for Mobile Services, in Volume 1 of the Encyclopaedia of Mobile Computing and Commerce (EMCC). USA, Idea Group Publishers, 2006.
  • Muldoon, C. and O Hare, G.M.P. and O Grady, M.J. Collaborative Agent Tuning, in 6th International Workshop on Engineering Societies in the Agents' World (ESAW'05), Kusadasi, Turkey, 2006.