Autonomic computing (AC) is
distributed computing
A distributed system is a system whose components are located on different computer network, networked computers, which communicate and coordinate their actions by message passing, passing messages to one another from any system. Distributed com ...
resources with
self-managing characteristics, adapting to unpredictable changes while hiding intrinsic complexity to operators and users. Initiated by
IBM in 2001, this initiative ultimately aimed to develop computer systems capable of self-management, to overcome the rapidly growing complexity of computing
systems management
Systems management refers to enterprise-wide administration of distributed systems including (and commonly in practice) computer systems. Systems management is strongly influenced by network management initiatives in telecommunications. The ap ...
, and to reduce the barrier that complexity poses to further growth.
Description
The AC system concept is designed to make adaptive decisions, using high-level policies. It will constantly check and optimize its status and automatically adapt itself to changing conditions. An autonomic computing framework is composed of autonomic
component
Circuit Component may refer to:
•Are devices that perform functions when they are connected in a circuit.
In engineering, science, and technology Generic systems
* System components, an entity with discrete structure, such as an assem ...
s (AC) interacting with each other. An AC can be modeled in terms of two main control schemes (local and global) with
sensor
A sensor is a device that produces an output signal for the purpose of sensing a physical phenomenon.
In the broadest definition, a sensor is a device, module, machine, or subsystem that detects events or changes in its environment and sends ...
s (for
self-monitoring
Self-monitoring, a concept introduced in the 1970s by Mark Snyder (psychologist), Mark Snyder, describes the extent to which people monitor their self-presentations, expressive behavior, and nonverbal affective displays. Snyder held that human bei ...
),
effectors (for self-adjustment), knowledge and planner/adapter for exploiting policies based on self- and environment awareness. This architecture is sometimes referred to as Monitor-Analyze-Plan-Execute (MAPE).
Driven by such vision, a variety of architectural frameworks based on "
self-regulating" autonomic components has been recently proposed. A very similar trend has recently characterized significant research in the area of
multi-agent system
A multi-agent system (MAS or "self-organized system") is a computerized system composed of multiple interacting intelligent agents.Hu, J.; Bhowmick, P.; Jang, I.; Arvin, F.; Lanzon, A.,A Decentralized Cluster Formation Containment Framework f ...
s. However, most of these approaches are typically conceived with centralized or cluster-based
server
Server may refer to:
Computing
*Server (computing), a computer program or a device that provides functionality for other programs or devices, called clients
Role
* Waiting staff, those who work at a restaurant or a bar attending customers and su ...
architectures in mind and mostly address the need of reducing management costs rather than the need of enabling complex software systems or providing innovative services. Some
autonomic systems involve mobile agents interacting via loosely coupled communication mechanisms.
''Autonomy-oriented computation'' is a paradigm proposed by Jiming Liu in 2001 that uses artificial systems imitating
social animals
Sociality is the degree to which individuals in an animal population tend to associate in social groups (gregariousness) and form cooperative societies.
Sociality is a survival response to evolutionary pressures. For example, when a mother wasp ...
' collective behaviours to solve difficult computational problems. For example,
ant colony optimization
In computer science and operations research, the ant colony optimization algorithm (ACO) is a probabilistic technique for solving computational problems which can be reduced to finding good paths through graphs. Artificial ants stand for multi ...
could be studied in this paradigm.
Problem of growing complexity
Forecasts suggest that the computing devices in use will grow at 38% per year
and the average complexity of each device is increasing.
Currently, this volume and complexity is managed by highly skilled humans; but the demand for skilled IT personnel is already outstripping supply, with labour costs exceeding equipment costs by a ratio of up to 18:1. Computing systems have brought great benefits of speed and automation but there is now an overwhelming economic need to automate their maintenance.
In a 2003
IEEE
The Institute of Electrical and Electronics Engineers (IEEE) is a 501(c)(3) professional association for electronic engineering and electrical engineering (and associated disciplines) with its corporate office in New York City and its operation ...
''
Computer
A computer is a machine that can be programmed to Execution (computing), carry out sequences of arithmetic or logical operations (computation) automatically. Modern digital electronic computers can perform generic sets of operations known as C ...
'' article, Kephart and Chess
warn that the dream of interconnectivity of computing systems and devices could become the "nightmare of
pervasive computing
Ubiquitous computing (or "ubicomp") is a concept in software engineering, hardware engineering and computer science where computing is made to appear anytime and everywhere. In contrast to desktop computing, ubiquitous computing can occur using ...
" in which architects are unable to anticipate, design and maintain the
complexity
Complexity characterises the behaviour of a system or model whose components interaction, interact in multiple ways and follow local rules, leading to nonlinearity, randomness, collective dynamics, hierarchy, and emergence.
The term is generall ...
of interactions. They state the essence of autonomic computing is system self-management, freeing administrators from low-level task management while delivering better system behavior.
A general problem of modern
distributed computing systems is that their
complexity
Complexity characterises the behaviour of a system or model whose components interaction, interact in multiple ways and follow local rules, leading to nonlinearity, randomness, collective dynamics, hierarchy, and emergence.
The term is generall ...
, and in particular the complexity of their management, is becoming a significant limiting factor in their further development. Large companies and institutions are employing large-scale
computer network
A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are ...
s for communication and computation. The distributed applications running on these computer networks are diverse and deal with many tasks, ranging from internal control processes to presenting web content to customer support.
Additionally,
mobile computing
Mobile computing is human–computer interaction in which a computer is expected to be transported during normal usage, which allows for the transmission of data, voice, and video. Mobile computing involves mobile communication, mobile hardware ...
is pervading these networks at an increasing speed: employees need to communicate with their companies while they are not in their office. They do so by using
laptop
A laptop, laptop computer, or notebook computer is a small, portable personal computer (PC) with a screen and alphanumeric keyboard. Laptops typically have a clam shell form factor with the screen mounted on the inside of the upper li ...
s,
personal digital assistant
A personal digital assistant (PDA), also known as a handheld PC, is a variety mobile device which functions as a personal information manager. PDAs have been mostly displaced by the widespread adoption of highly capable smartphones, in partic ...
s, or
mobile phones
A mobile phone, cellular phone, cell phone, cellphone, handphone, hand phone or pocket phone, sometimes shortened to simply mobile, cell, or just phone, is a portable telephone that can make and receive calls over a radio frequency link whil ...
with diverse forms of
wireless
Wireless communication (or just wireless, when the context allows) is the transfer of information between two or more points without the use of an electrical conductor, optical fiber or other continuous guided medium for the transfer. The most ...
technologies to access their companies' data.
This creates an enormous complexity in the overall computer network which is hard to control manually by human operators. Manual control is time-consuming, expensive, and error-prone. The manual effort needed to control a growing networked computer-system tends to increase very quickly.
80% of such problems in infrastructure happen at the client specific application and database layer. Most 'autonomic' service providers guarantee only up to the basic plumbing layer (power, hardware,
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
, network and basic database parameters).
Characteristics of autonomic systems
A possible solution could be to enable modern, networked computing systems to manage themselves without direct human intervention. The ''Autonomic Computing Initiative'' (ACI) aims at providing the foundation for autonomic systems. It is inspired by the
autonomic nervous system
The autonomic nervous system (ANS), formerly referred to as the vegetative nervous system, is a division of the peripheral nervous system that supplies viscera, internal organs, smooth muscle and glands. The autonomic nervous system is a control ...
of the human body. This nervous system controls important bodily functions (e.g. respiration,
heart rate
Heart rate (or pulse rate) is the frequency of the heartbeat measured by the number of contractions (beats) of the heart per minute (bpm). The heart rate can vary according to the body's physical needs, including the need to absorb oxygen and excr ...
, and
blood pressure
Blood pressure (BP) is the pressure of circulating blood against the walls of blood vessels. Most of this pressure results from the heart pumping blood through the circulatory system. When used without qualification, the term "blood pressure" r ...
) without any conscious intervention.
In a
self-managing autonomic system, the human operator takes on a new role: instead of controlling the system directly, he/she defines general policies and rules that guide the self-management process. For this process, IBM defined the following four types of property referred to as self-star (also called self-*, self-x, or auto-*) properties.
# Self-configuration: Automatic configuration of components;
# Self-healing: Automatic discovery, and correction of faults;
#
Self-optimization In cellular communications technology, self-optimization is a process in which the system’s settings are autonomously and continuously adapted to the traffic profile and the network environment in terms of topology, propagation and interference. ...
: Automatic monitoring and control of resources to ensure the optimal functioning with respect to the defined requirements;
# Self-protection: Proactive identification and protection from arbitrary attacks.
Others such as Poslad
and Nami and Sharifi
[
] have expanded on the set of self-star as follows:
#
Self-regulation: A system that operates to maintain some parameter, e.g.,
Quality of service
Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitat ...
, within a reset range without external control;
# Self-learning: Systems use machine learning techniques such as
unsupervised learning
Unsupervised learning is a type of algorithm that learns patterns from untagged data. The hope is that through mimicry, which is an important mode of learning in people, the machine is forced to build a concise representation of its world and t ...
which does not require external control;
#
Self-awareness
In philosophy of self, self-awareness is the experience of one's own personality or individuality. It is not to be confused with consciousness in the sense of qualia. While consciousness is being aware of one's environment and body and lifesty ...
(also called Self-inspection and Self-decision): System must know itself. It must know the extent of its own resources and the resources it links to. A system must be aware of its internal components and external links in order to control and manage them;
#
Self-organization
Self-organization, also called spontaneous order in the social sciences, is a process where some form of overall order arises from local interactions between parts of an initially disordered system. The process can be spontaneous when suffi ...
: System structure driven by physics-type models without explicit pressure or involvement from outside the system;
# Self-creation (also called
Self-assembly
Self-assembly is a process in which a disordered system of pre-existing components forms an organized structure or pattern as a consequence of specific, local interactions among the components themselves, without external direction. When the ...
,
Self-replication
Self-replication is any behavior of a dynamical system that yields construction of an identical or similar copy of itself. Biological cells, given suitable environments, reproduce by cell division. During cell division, DNA is replicated and ca ...
): System driven by ecological and social type models without explicit pressure or involvement from outside the system. A system's members are self-motivated and self-driven, generating complexity and order in a creative response to a continuously changing strategic demand;
# Self-management (also called self-governance): A system that manages itself without external intervention. What is being managed can vary dependent on the system and application. Self -management also refers to a set of self-star processes such as autonomic computing rather than a single self-star process;
# Self-description (also called self-explanation or Self-representation): A system explains itself. It is capable of being understood (by humans) without further explanation.
IBM has set forth eight conditions that define an autonomic system:
The system must
# know itself in terms of what resources it has access to, what its capabilities and limitations are and how and why it is connected to other systems;
# be able to automatically configure and reconfigure itself depending on the changing computing environment;
# be able to optimize its performance to ensure the most efficient computing process;
# be able to work around encountered problems by either repairing itself or routing functions away from the trouble;
# detect, identify and protect itself against various types of attacks to maintain overall system security and integrity;
# adapt to its environment as it changes, interacting with neighboring systems and establishing communication protocols;
# rely on open standards and cannot exist in a proprietary environment;
# anticipate the demand on its resources while staying transparent to users.
Even though the purpose and thus the behaviour of autonomic systems vary from system to system, every autonomic system should be able to exhibit a minimum set of properties to achieve its purpose:
#
Automatic: This essentially means being able to self-control its internal functions and operations. As such, an autonomic system must be self-contained and able to start-up and operate without any manual intervention or external help. Again, the knowledge required to bootstrap the system (''Know-how'') must be inherent to the system.
#
Adaptive
Adaptation, in biology, is the process or trait by which organisms or population better match their environment
Adaptation may also refer to:
Arts
* Adaptation (arts), a transfer of a work of art from one medium to another
** Film adaptation, a ...
: An autonomic system must be able to change its operation (i.e., its configuration, state and functions). This will allow the system to cope with temporal and spatial changes in its operational context either long term (environment customisation/optimisation) or short term (exceptional conditions such as malicious attacks, faults, etc.).
#
Aware: An autonomic system must be able to monitor (sense) its operational context as well as its internal state in order to be able to assess if its current operation serves its purpose. Awareness will control adaptation of its operational behaviour in response to context or state changes.
Evolutionary levels
IBM defined five evolutionary levels, or the ''autonomic deployment model'', for the deployment of autonomic systems:
* Level 1 is the basic level that presents the current situation where systems are essentially managed manually.
* Levels 2–4 introduce increasingly automated management functions, while
* level 5 represents the ultimate goal of autonomic, self-managing systems.
Design patterns
The design complexity of Autonomic Systems can be simplified by utilizing
design patterns
''Design Patterns: Elements of Reusable Object-Oriented Software'' (1994) is a software engineering book describing software design patterns. The book was written by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, with a foreword ...
such as the
model–view–controller
Model–view–controller (MVC) is a software architectural pattern commonly used for developing user interfaces that divide the related program logic into three interconnected elements. This is done to separate internal representations of infor ...
(MVC) pattern to improve
concern separation by
encapsulating functional concerns.
Control loops
A basic concept that will be applied in Autonomic Systems are
closed control loop
A control loop is the fundamental building block of industrial control systems. It consists of all the physical components and control functions necessary to automatically adjust the value of a measured process variable (PV) to equal the value of ...
s. This well-known concept stems from
Process Control
An industrial process control in continuous production processes is a discipline that uses industrial control systems to achieve a production level of consistency, economy and safety which could not be achieved purely by human manual control. I ...
Theory. Essentially, a closed control loop in a self-managing system monitors some resource (software or hardware component) and autonomously tries to keep its parameters within a desired range.
According to IBM, hundreds or even thousands of these control loops are expected to work in a large-scale self-managing computer system.
Conceptual model
A fundamental building block of an autonomic system is the sensing capability (''Sensors S
i''), which enables the system to observe its external operational context. Inherent to an autonomic system is the knowledge of the ''Purpose'' (intention) and the ''Know-how'' to operate itself (e.g.,
bootstrapping
In general, bootstrapping usually refers to a self-starting process that is supposed to continue or grow without external input.
Etymology
Tall boots may have a tab, loop or handle at the top known as a bootstrap, allowing one to use fingers ...
, configuration knowledge, interpretation of sensory data, etc.) without external intervention. The actual operation of the autonomic system is dictated by the ''Logic'', which is responsible for making the right decisions to serve its ''Purpose'', and influence by the observation of the operational context (based on the sensor input).
This model highlights the fact that the operation of an autonomic system is purpose-driven. This includes its mission (e.g., the service it is supposed to offer), the policies (e.g., that define the basic behaviour), and the "
survival instinct". If seen as a control system this would be encoded as a feedback error function or in a heuristically assisted system as an algorithm combined with set of
heuristic
A heuristic (; ), or heuristic technique, is any approach to problem solving or self-discovery that employs a practical method that is not guaranteed to be optimal, perfect, or rational, but is nevertheless sufficient for reaching an immediate, ...
s bounding its operational space.
See also
*
Autonomic networking
Autonomic Networking follows the concept of Autonomic Computing, an initiative started by IBM in 2001. Its ultimate aim is to create self-managing networks to overcome the rapidly growing complexity of the Internet and other networks and to enabl ...
*
Autonomic nervous system
The autonomic nervous system (ANS), formerly referred to as the vegetative nervous system, is a division of the peripheral nervous system that supplies viscera, internal organs, smooth muscle and glands. The autonomic nervous system is a control ...
*
Organic computing
Organic computing is computing that behaves and interacts with humans in an organic manner. The term "organic" is used to describe the system's behavior, and does not imply that they are constructed from organic materials. It is based on the ins ...
*
Resilience (network)
In computer networking, resilience is the ability to "provide and maintain an acceptable level of service in the face of faults and challenges to normal operation." Threats and challenges for services can range from simple misconfiguration over ...
References
External links
International Conference on Autonomic Computing (ICAC 2013) Autonomic Computing by Richard Murch published by IBM PressPractical Autonomic Computing – Roadmap to Self Managing TechnologyAutonomic computing blogWhitestein Technologies – provider of development and integration environment for autonomic computing softwareApplied Autonomics provides Autonomic Web ServicesEnigmatec Website – providers of autonomic computing softwareHandsfree Networks – providers of autonomic computing softwareCASCADAS Project: Component-ware for Autonomic, Situation-aware Communications And Dynamically Adaptable, funded by the European UnionCASCADAS Autonomic Tool-Kit in Open SourceANA Project: Autonomic Network Architecture Research Project, funded by the European Union*
ttp://www.bsc.es/autonomic Barcelona Supercomputing Center – Autonomic Systems and eBusiness PlatformsSOCRATES: Self-Optimization and Self-Configuration in Wireless NetworksDynamically Self Configuring Automotive SystemsASSL (Autonomic System Specification Language) : A Framework for Specification, Validation and Generation of Autonomic Systems*
tp://ftp.informatik.uni-stuttgart.de/pub/library/medoc.ustuttgart_fi/DIP-2787/DIP-2787.pdf Explanation of Autonomic Computing and its usage for business processes (IBM)- in GermanAutonomic Computing Architecture in the RKBExplorerInternational Journal of Autonomic ComputingBiSNET/e: A Cognitive Sensor Networking Architecture with Evolutionary Multiobjective Optimization
Licas: Open source framework for building service-based networks with integrated Autonomic Manager.
{{Authority control
Artificial intelligence
Distributed computing architecture