© Spinger-Verlag, http://www.springer.de/comp/lncs/index.html
submitted version
Structuring Agents for Adaptation
Sander van Splunter, Niek J.E. Wijngaards and Frances M.T. Brazier
Intelligent Interactive Distributed Systems Group, Faculty of Sciences, Vrije Universiteit
Amsterdam, de Boelelaan 1081a, 1081HV, The Netherlands
{sander,niek,frances}@cs.vu.nl
http://www.iids.org/
Abstract. Agents need to be able to adapt to the dynamic nature of the
environments in which they operate. Automated adaptation is an option that is
only feasible if enough structure is provided. This paper describes a component-
based structure within which dependencies between components are made
explicit. An example of a simple web-page analysis agent is used to illustrate
the structuring principles and elements.
1. Introduction
Agents typically operate in dynamic environments. Agents come and go, objects and
services appear and disappear, and cultures and conventions change. Whenever an
environment of an agent changes to the extent that an agent is unable to cope with
(parts of) the environment, an agent needs to adapt. Changes in the social environment
of an agent, for example, may require new agent communication languages, or new
protocols for auctions. In some cases an agent may be able to detect gaps in its
abilities; but not be able to fill these gaps on its own (with, e.g., its own built-in
learning and adaptation mechanisms).
Adaptive agents are a current focus of research (e.g., see this book), but opinions on
what 'adaptation' constitutes differ. Sometimes reactive behaviour of an agent is
dubbed 'adaptive behaviour' [1] where an agent is, e.g., capable of abandoning a
previous goal or plan and adopting a new goal or plan that fits its current situation
better. In this paper, adaptation of an agent is used to refer to "structural" changes of
an agent, including knowledge and facts available to an agent. External assistance may
be needed to perform the necessary modifications, e.g. by an agent factory [2].
An adaptation process has a scope: a scope defines the extent to which parts of an
agent are adapted. Research on agent adaptation can be categorised by distinguishing
three specific scopes: adaptation of knowledge and facts; adaptation of the language
with which an agent's interface to the outside world is expressed (e.g., dependency on
agent platform), and adaptation of an agent's functionality.
• Research on adaptation of knowledge and facts of an agent is usually based on
(machine) learning, e.g. [3]. Example applications include personification: an agent
maintains and adapts a profile of its (human) clients, e.g. [4], [5] and [6], co-