Title: UbiCom Book Slides
1UbiCom Book Slides
- Chapter 10
- Autonomous Systems Artificial Life
- (All Parts, Short Version)
Stefan Poslad http//www.eecs.qmul.ac.uk/people/st
efan/ubicom
2Chapter 10 Overview
- Chapter 10 focuses on
- Internal system properties autonomous
- External interaction with any type of environment
- Focussing more on physical environment
- A lesser extent focussing on Human ICT
environments
3Introduction
4Related Chapter Links
- Sometimes autonomy is seen as a property of
intelligence (Chapter 8) - Designing UbiCom systems to be autonomous enables
them to be self-managed (chapter 12)
5Chapter 10 Overview
- The slides for this chapter are split into
several parts - Part A Autonomous Systems Basics ?
- Part B Reflective Self-Aware Systems
- Part C Self-Management Autonomic Computing
- Part D Complex Systems
- Part E Artificial Life
6(No Transcript)
7Part A Outline
- Basics ?
- Types of Autonomous System
- Autonomous Intelligent Systems
- Limitation of Autonomous Systems
- Self- Properties of Intra-Action
8Introduction
- Term autonomous originates from the Greek terms
autos meaning self and nomos meaning rule or law.
- Autonomy is considered to be a core property of
UbiCom systems - enabling systems to operate independently
- without external intervention.
- Autonomous systems operate at the opposite end of
the spectrum to completely manual, interactive,
HCI systems. - Without autonomous systems, sheer number
variety of tasks in an advanced technological
society that require human interaction would
overwhelm us and make system operation
unmanageable.
9Automatic System
- An automatic system is specific type of
autonomous system designed to - Act without human intervention
- Execute specific preset processes
- Work in deterministic dynamic environments
- Incorporate simple models of environment
behaviour - Incorporate algorithms to control the environment
(closed-loop control systems).
10Autonomous Systems
- More general types of systems than automatic
systems are needed. Why?
11Autonomous Systems Design
- 4 major designs for general autonomous systems
- Dynamically reusable and extensible components
- EDA and context-aware system
- Hybrid goal-based (Section 8.3.4) and environment
model based IS systems (section 8.3.3). - Autonomic Systems
12Autonomous Systems Design Component-based
- Autonomous systems can be designed to consist of
dynamically reusable and extensible components - There are different types of component autonomy /
cohesion - Design autonomy
- Interface Autonomy
- Components use of SOA (Section 3.2.4).
- Component functions could be reprogrammable
e.g., using mobile code (Section 4.2.2). - These types of systems tend to have a strong
notion of ICT environment autonomy - but not of their physical human environment
autonomy.
13Autonomous Systems Design EDA, Context-Aware
- Autonomous systems which operate in dynamic
environments can be designed to ? -
- These systems tend to focus on
- Physical world awareness and user awareness
- How the system decides how to adapt to such
context changes how they affect current,
active, user goals (Section 7.2).
14Autonomous Systems Design IS
- Autonomous systems can be designed to be hybrid
goal-based (Section 8.3.4) and environment model
based IS systems (section 8.3.3). - Generally, focus of such systems is on
supporting a notion of social autonomy or
self-interested behaviour rather than on
supporting ICT environment autonomy or physical
environment autonomy.
15Autonomous Systems Design Autonomic
- Autonomous systems can be designed to be
autonomic. How? - Key challenges?
16Autonomous Intelligent Systems
- Autonomy is a key property of an IS
- An IS may have a physical embodiment or software
embodiment which may be free to be executed in
any part of a internetworked virtual computer.
17Autonomous Types Self Governance
- There are two main kinds of autonomy
- self-governance
- independence.
18Social / Organisational Autonomy
- Often an IS will delegate actions to another one,
making it dependent on actions of another IS - But ? risk of failure for the delegated actions
because of misunderstandings, disagreements and
conflicts, error, unknown private utilities and
self-interests may operate. -
- Designs for IS to cope with risk of delegation of
actions?
19 Autonomous versus Automatic
- Automatic refers to a system being self-steering
- To be self-steering requires a system to sense
its environment act upon it based upon what it
has sensed - Autonomous are generally first automatic systems
but which are extended so that they become
self-governed.
20Limitation of Autonomous Systems
- Systems designed to be autonomous over parts of
its life-cycle - Challenges in supporting full autonomy?
-
21Self- Properties of Intra-Action
- Application processes are not influenced by
external behaviour or control but are dependent
on, or driven by, their internal behaviour - Attempts to externally pertubate the system will
be resisted and moderated in autonomous systems. - Some system behaviour is decentralised and local,
- However, other system behaviour is
community-wide, global - Set of so called self- properties is a way to
characterise autonomous systems - These are also called the self-self-x or auto-
properties - Set of self- properties that need to be
supported depends upon the application domain and
system design.
22Self-Star Properties
- Need to model complex systems whose components
have some autonomy and propensity to maintain and
improve their own operation in the face of
external environment perturbations, e.g., - Autonomic computing
- Organic Computing
- IS
23Self-Star Properties
- Self-star model focuses on doing things
self-contained or doing things internally - List of types of self-star system could be
expanded - to incorporate self-referencing, self-interaction
(intranets) etc.
24Self-star Properties Examples
- Self-Configuring
- Self-Regulating
- Self-Optimising, Self-Tuning
- Self-Learning
- Self-Healing, Self-Recovery
- Self-Protecting
- Self-Aware
- Self-Inspection Self-Decision
- Self-Interested
- Self-Organising
- Self-Creating, Self-Assembly, Self-Replicating
- Self-Evolution, Emergence
- Self-Managing or self-governing
- Self-Describing Self-Explaining
- Self-representing
25Part B Outline
- Self-Awareness ?
- Self-Describing and Self-Explaining Systems
- Self-Modifying Systems based upon Reflective
Computation
26Context-Awareness versus Self-Awareness
- Context-awareness is complementary to
self-awareness. - Context-awareness (Section 7) focuses on an
awareness of a systems external environment
(user, ICT, Physical ) context, periodically
sensing this, automatically detecting significant
change, and using this to adapt the internal
systems behaviour to external environment
behaviour. - An associated design issue is what degree if any,
an awareness the system needs of its own internal
behaviour. - Self-awareness focuses on monitoring its internal
behaviour in order to optimise its behaviour
27Self-Awareness
- Basic design is that an ICT system does not
process itself or is not aware of its own
actions. Why not? - Is basic designs for Intelligent Systems
inherently self-aware? - Useful that systems know its internal state how
it acts?
28Self-Awareness Applications
- Optimising internal resource use
- Robots, e.g., robot arms
- Self-explaining systems
29External Descriptions Explanations
- Common reasons why systems are less usable?
- Intelligibility to user etc
- Disadvantages to using an external operators
manual? - How to support self-descriptions?
- Using internal (to the device) resources
- Hybrid device can be queried for the address,
e.g., URL, of its description, but which resides
elsewhere in its environment, e.g., the Cooltown
and Semacode, Tagging (Chapter 6)
30Self-Describing Self-Explaining Systems
- A self-describing system is able to describe
itself from the perspective of what - A self-explaining system describes itself from
the perspective of how and why. - Self-descriptions self-explanations can be
supported at multi-levels - Systems can also provide mechanisms and
interfaces to output their external for other
meta-level processes or diagnostics - e.g., the JTAG interface (Section 6.6.1).
- Devices know their state in relation to their
plans and goals - etc
31Self-Description Limitations Design Issues
- Limitations?
- Design issues?
- How rich are descriptions?
- How structured are they?
- How full versus short?
- Internal versus external and on-line versus
off-line, - Co-located versus external not co-located
(Section 6.2).
32Reflection
- Reflection is the process by which a system can
observe its own structure and behaviour, reason
about these and possibly modify these - Reflection has several benefits for UbiCom?
- Reflection is considered in more detail in
Section 10.3.3.
33Reflective System Architecture
To support reflection, reflective computation is
done by a system at a meta-level about its own
operation at the application or base level of the
system
34Reflection
- There are three elements to the reflection
process - Instrumentation
- introspection
- adaptation
35Reflection Design
- Combined system reflection operation
representation -
- Separate system reflection operation
representation - Design issues?
- How to support enable this meta-level
processing - How the reflection is represented,
- what triggers the reflection
- what parts of the system can be reflected upon
- performance security aspects of using
reflection.
36Reflection Design
- Reflection as an extension to middleware model?
- Reflective model is often applied as a design for
context-aware systems. How?
37Part C Outline
- Basics ?
- Self- Management Control
- Autonomic Computing Design
- Autonomic Computing Applications
- Modelling and Management Self-Star Systems
38Autonomic Computing
- Motivation for autonomic systems was to deal with
the obstacle of IT system complexity - The growing complexity of the IT infrastructure
threatens to undermine the very benefits
information technology aims to provide (Horn,
2001). - Autonomic computing is one of the most well-known
types of self- system - Autonomic computing is also referred to as
self-managing systems or self-governing systems. - Autonomic computing was inspired through analogy
with the human bodys nervous system. - Autonomic systems can be constructed as group of
locally interacting autonomous entities that
cooperate to maintain system wide behaviour
without any external control.
39Types of Self- Control Compared
Global
Global
Policies
Policies
Policies
Policies
Control Loop
Local
Local
Policies
Local
Policies
Local
Local
Local
Local
Local
40Key Autonomic Computing Properties
- Different definitions of key properties
- Keplar
- self-configuration
- self-optimisation
- self-healing
- self-protection.
- Ganek
- self-awareness
- context-aware adaptation
- planning to control behaviours constrained by
system policies.
41Taxonomy for Basic Self-star Properties
- General Classification for basic self-star
properties of systems can be based upon?
42Taxonomy for Basic Self-star Properties
- Hence, agent designs oriented to these
environments can form the basis of designs of
autonomic systems - Specific properties relate to the type of
organisation - Spatially dependent,
- Role-based,
- Group-based,
- Resource access control
- Self protecting.
43Taxonomy for Basic Self-star Properties
- Methods for coordination of autonomous systems
are dependent on the type of organisation - Tuning servers individually (also called locally
or on a microscopic scale) may be beneficial - However in other applications, tuning servers
individually, may not be optimal
44Autonomic Computing Design
45Autonomic Computing Architectural Models
- 5 basic components
- a user interface (task manager)
- an autonomic manager with an autonomic control
loop - a knowledge base about the managed resources
including management policies - a standardised interface to access managed
resources (TouchPoint) - service-based communications network, the ESB
(Section 3.3.3.8).
46Designs to Support Self- System Components
- SNMP and the MIB can be used to implement
TouchPoint part of knowledgebase (Chapter 12) - Semantic and Syntactical metadata wrappers can be
used to describe the structures of resources in
richer ways. - Sensors can poll resources or receive
notifications about events in resources (Chapters
3,6) - Designs for autonomic control loop can be based
on - feedback control algorithms (Section 6.6)
- action selection loop design of intelligent
systems (Section 8.3).
47Designs for Self- System
48Different Levels of Support for Self- Properties
- Self-star systems can be designed to support
different maturity levels of self-star
properties - Basic
- Managed
- Predictive
- Adaptive
- Autonomic
49Autonomic Computing Applications
- Channels allocation to meet peak demand for calls
in different mobile phone cells - Load-balancing in servers to meet a designated
QoS under variable external processor loads - Intrusion detection
- Protecting Critical Infrastructures (SCADA)
50Modelling Managing Self- Systems
- How to model and mange systems which are dynamic
decentralised and to an extent,
non-deterministic? - Unit testing and formal proofs?
- Statistical methods?
- Equation based computation methods ?
- Equation free computation methods ?
- Time series chaos theory analysis?
51Modelling Self- Systems
- Modelling behaviour interaction in simple
life-forms forms an important contribution to
improve models of complexity. - Mathematical equations nay not capture many of
natures most essential mechanisms. - Modelling systems purely based upon physics
interaction may lead to useful self-organising
system models, models - They must take into account higher level social
science interaction models
52Part D Outline
- Basics of Complex Systems ?
- Self-Organisation and Interaction
- Self-Creation
- Self-Replication
53Complex Systems
- Complex system is defined to be a system whose
properties are not fully explained by an
understanding of its component parts - In computation, a complex system often represents
a hard-problem that cannot be solved within
polynomial time. - Complex ubiquitous systems?
54Complex Systems
- Complex systems can arise when?
- Complexity can also arise through, or can be
designed using, simple interactions and repeated
applications of simple rules
55Modelling Complex Systems
- It is not clear how accurate or equivalent the
complexity models of one phenomenon, - Models of relative complexity?
- Modus also discusses the growth in complexity
56Modelling Complex Systems
- Conventional technique to modelling complex
systems is the divide-and-conquer or reductionist
approach -
- Some systems however, have macro properties which
are almost impossible to predict from knowledge
of the micro level properties of the individual
parts of the system
57Modelling Complex Systems
- Key design challenges is whether or not complex
system that are designed by - specifying local interactions
- can be controlled, constrained
- can be coherent
- Can they enable the separate lower level
components to act at a higher level in some
unified way?
58Self-Organisation and Interaction
- Self-Organisation is a set of dynamical processes
whereby stable or transient structures or order
appears at a higher or global level of a system
from the interactions between the lower-level or
local entities - Self-organised behaviour can be characterised by
key properties such as - Spatiotemporal structures
- Multiple equilibria
- Bifurcations
59Emergent versus Self-Organising Systems
- Emergent or process of macro behaviour emerging
from micro or local behaviour is also called
micro-macro effect. - Self-organisation is an adaptable behaviour that
autonomously acquires and maintains an increased
order, statistical complexity, structure, etc. - Emergence can have a micro-macro effect, but may
not be self-organising, hence - System can have emergence without
self-organising. - System can also be self-organising without
emergence. - Self-organising Emergent are often combined
60Self-Organising Systems Interaction Mechanisms
- Interaction mechanisms organising and
coordinating autonomic system components? - Digital Stigmergy
- Co-field coordination (or Gradient-based
Coordination) - Tag-based,
- Token-based
61Digital Stigmergy Design Principles
- Proximity principle
- Quality principle
- Diverse response
- Stability principle
- Adaptability principle
- UbiCom Applications
- Network routing
- Power distribution energy regulation system etc
62Co-field Coordination
- Inspired by physics forces in nature
- Also called Gradient-based Coordination and Wave
Propagation coordination - Autonomous entities can spread out a computation
field or co-field, throughout the local
environment - UbiCom Applications
- to provide context information to other entities
to follow the field. - to signal that someone wants priority use of
specific resources. - to repel (separation) or attract individuals
(cohesion and alignment). - to support tourists in planning their activities
63Tag based Coordination
- Observable labels are attached to things.
- Can be used to make control decisions, to allow
self-organisation of things according to tag
types. - UbiCom Applications
- Resource allocation in networks to enable them to
adapt to continuous node failure and to the
addition of new nodes and resources and changes
in traffic conditions (Section 11.8.1).
64Token based Coordination
- Token based coordination resource access control
token can be circulated amongst resource users - Section 11. 8.1
- Token based vs. Tag based coordination?
- Applications
- to control access to shared things such as
devices or people in social spaces, e.g., patient
appointment system
65IS Models as Self-Organising Systems
- MAS can support relatively fixed organisational
models based upon quite complex agents and
relatively complex cooperative and competitive
interaction - But these often lack the flexibility to
dynamically reorganise and to self-organise? - Cellular computing
- Amorphous computers
66Self-Creation and Self-Replication
- Self-organising models discussed so far focus on
how existing peers and resources are optimised
through self-organisation, not clear how - Self-replication is considered to be a hallmark
of living systems. - Evolution of self-producing systems require
strategies that lead to cumulative selection of
traits occurs over multiple cycles of
reproduction
67Self-Replication Computer Viruses
- Computer virus is a well-known examples of
artificial self-replicating mechanism. - Computer virus is also referred to as a
self-reproducing or self-replicating program
(SRP). - Tends to be software virus rather than a hardware
virus. Why? - Are nano devices more dangerous than Micro size
MEMS as hardware viruses?
68Self-Replication Computer Viruses
- Virus is often introduced into host system
hidden - Virus contains a trigger that activates the
self-replication mechanism -
- Computer viruses versus Worms?
- Anti-virus systems?
69Part E Outline
- Basics of Artificial Life ?
- Finite State Automata Models
- Evolutionary Computing
70Artificial Life
- Are systems which mimic natural life and are
characterised as follows. - Have a finite lifetime from birth to death.
- Use selective reproduction.
- Their offspring inherit some of traits of the
parents. - They use survival of the fittest (evolution).
- They support the ability to expand in numbers to
command a space or habitat. - They can respond to stimuli in a habitat, acting
to maintain it and adapting to it.
71Artificial Life
- Living organisms are consummate problem solvers
- Hence the motivation for use of artificial life
models? - UbiCom Applications?
72Finite State Automata (FSA) Models
- There are different types of FSA
- FSM can be represented in several ways,
mathematically - FSMs can be used to model devices with a finite
set of states such as off, on and standby.
73Finite State Automata Models
74(Multi) Cellular Automata Models
- Are models of self-reproducing organisms
- Can be designed in the form of a grid, where each
cell is represented as an FSM - Cell exists in 1 of 2 states dead or alive
which use basic transformation rules to transform
a cell into dead or alive. - E.g., rules of Conways Game of Life
75Conways game of life
This example illustrates the principle that
reactive type behaviours combined with a set of
simple transformation rules, when repeatedly
applied, can model more complex behaviours e.g.,
the gliding pattern
76Multi) Cellular Automata Models
- Other more complex rules of life can also be
formulated. - Other examples of simple rules governing
collective behaviour? - Rule model for flocks of animals (Section 10.4).
- Multiple individual FSMs can also be
interconnected to form device networks.
77Evolutionary Computing
- Evolutionary computing are computer algorithms
which involve cumulative selections from a
population of entities to solve a problem. - Behaviour of entities in the system is governed
by implicit behaviours and goals, - Cumulative mean that in each generation or step
of evolution, existing entities reproduce to form
a new generation of entities.
78Evolutionary Computing
- Evolutionary computing originated from research
in cell automata, the ideas also changed
somewhat. - New generations are based upon the best traits of
the previous generation rather than on rules
which define how the existing generation
transforms into the next one. - There is a set of possible outcomes for
reproduction determined by natural selection.
79Evolutionary Computing
- Main types of evolutionary computing techniques
include - Genetic Algorithms (GA) and Genetic Programming
(GP), - Evolutionary Strategies (ES) and Evolutionary
Programming (EP).
80Digital Ecosystems
- Digital ecosystem is analogous biological
ecosystem which consists of a community - Set of organisms from different species
interacting together - Organisms interact with and lives in harmony with
their habitat. - Distributed Evolutionary Computing (DEC) as an
extension of SOA - Evolutionary computing is used locally within an
ecosystem to find individual members of ecosystem
to satisfy locally relevant constraints.
81Summary
82Revision
- For each chapter
- See book web-site for chapter summaries,
references, resources etc. - Identify new terms concepts
- Apply new terms and concepts define, use in old
and new situations problems - Debate problems, challenges and solutions
- See Chapter exercises on web-site
83Exercises Define New Concepts
84Exercise Applying New Concepts