|
Project: Self-Managing Locations
|
SMART (Self-Management Architecture for
Roaming Task-handlers)
Overview
Self-managing
systems strive to reach a four-fold objective: (1) to adapt
automatically to changing environments, (2) to discover, diagnose and
react to disruptions, (3) to monitor and tune resources automatically,
(4) to anticipate and thwart malicious attacks. The SMART project aims
at providing an architecture that will fulfill this objective in
large-scale agent-oriented environments.
In order to be
effective in a large-scale, open environment, the envisaged
architecture ought to have the following characteristics:
(a) Scalability
The number of nodes/processes involved
in the computation should be virtually unlimited.
(b) Agent-compliance
Users/agents should be allowed to
express their needs in terms of service requests.
(c) Adaptivity/Autonomy
Serviceability
should be independent from computational context evolution in terms of
application needs, environment characteristics, and system behaviour.
What is meant here is that the projected architecture should be able to
adapt its services dynamically, and that the adaptation should come as
a response – preferably an automatic one – to evolving requirements.
Assessment of the existing research material
- AgentScape
Scalable (hierarchical)
Adaptable
services can be modified/added
(on-the-fly ?)
Not adaptive
no monitoring yet (incoming),
no high-level way of expressing change,
neither control mechanism (?) nor effectors
- DARX
Scalable in the hierarchical sense
Adaptive: monitoring, replication policy, TaskShell/ReplicationManager
low-scale autonomy due to policy being
user-defined only
Provides services in a transparent way
(naming service is the exception)
services are not dynamically pluggable
components
Research leads for SMART
- Scalability issue should be addressed differently given our targeted
environment
In open environments all nodes must be
considered as equally relevant
e.g. AgentScape LocationManager cannot be statically designated (=>
super-peer paradigm?)
- Adaptivity can be brought a step further
Services designed as dynamically
pluggable components with built-in reflexivity
High-level language to describe a service and its (re)configuration
Automated manager for analysis/control of system behaviour
Fundamental research questions attached to SMART
Service design
Can a
template/model be designed for services that are both scalable and
dynamically adjustable? How can we make sure that serviceability is
guaranteed at all times?
Autonomic management
Are there general
rules that can govern service adaptation? When does a service need to
be changed? How should it be modified? How can the impact of a service
modification be evaluated?