reconciling self-adaptation and self-organization
DESCRIPTION
Franco Zambonelli's presentation at SEAMS 2012TRANSCRIPT
Reconciling Self-adaptation and Self-organization
Franco Zambonelli Università di Modena e Reggio Emilia
Non-adaptive System
Adaptive with Human-in-the-Loop
Self-adaptive
Self-organizing
Reconciling Self-A and Self-O…
Outline
• Self-‐adap)ve systems – Concepts & Experiences
• Self-‐organizing systems – Concepts & Experiences
• Reconcilia)on – Roundabouts and more… – Future urban scenarios
• Conclusions
Self-adaptive Systems: Concepts
• Key research issues – From my own very personal and
necessarily limited perspec)ve
• Engineering the structure of feedback loops – Individual loops – Nested loops – Interac)ng loops
• And the components within – E.g., for effectors – Parameters upda)ng – Behavioral upda)ng (COP & C) – Structural upda)ng
The ASCENS Project
• ASCENS “Autonomic Service Component Ensembles” – EU FP7 FET IP – Starting October 1st 2010, lasting
4 years
• Key Challenges – How to develop complex and
large scale autonomic software systems?
– Models + Engineering Tools – Experience with swarm robotics
and car sharing of e-vehicles
The ASCENS SOTA Model (IEEE ECBS 2012, IEEE WETICE 2012)
• Kind of conceptual framework • SOTA :: “State of the Affairs”
– A Mul)dimensional space – Everything in the world in which the system lives and executes,
that may affect its behaviour
• Adap)ve systems can (should?) be expressed in terms of “goals” = “states of the affairs” to be achieved – Without making assump)on on the actual design – It is a requirements engineering ac)vity
SOTA: Components of the Model
• “State of the Affairs” :: S (t) at )me t, of a specific en)ty e is a tuple of n si values, each represen)ng a specific aspect of the current situa)on
• Dynamics :: evolu)on of Se as a movement in a virtual n-‐dimensional space Se:
• Transi5ons :: θ(t, t + 1) expresses a movement of e in S à endogenous or exogenous
• Goal :: achievement of a given state of the affairs, represented as a confined area in space
• U5lity :: (constraints on the trajectory to follow in the phase space Se) expressed as a subspace in Se:
Using SOTA in Analysis • Model checking func)onal
and non func)onal requirements – Opera5onaliza5on of SOTA
goals and U)li)es – Transforma5on into
asynchronous FLTL – Verifica5on with LTSA tool
• Elici)ng “awareness” requirements – Iden5fica5on: which knowledge (dimensions of SOTA space) with
components – Virtualiza5on: which (virtual) sensors available with components – Metrifica5on: which granularity/accuracy is needed for sensors
Using SOTA in Design • Express adapta)on pa]erns
in terms of G and U – G and U express the
adapta)on needs – And can thus drive the
iden)fica)on of With which so_ware architecture structure of feedback loops)
• At the level of both individual and ensembles – Two levels are strictly inter-‐twined – And possibly self-‐expressing the structure of feedback loops
• Pa]ern-‐based approach – What general structures for feedback loops? – Macro taxonomy of pa]erns
SOTA Patterns
G = ∅,
U = U1,U2,... Un
G = G1,G2,...,Gm, U = U1,U2,...,Un
GASC = GCSC ∩ GACM UASC = UCSC ∩ UACM
Self-org vs Self-adaptive Patterns • There are cases in which top-
down self-adaptive patterns are more effective – A small group of robots/vehicles
with a leader perceiving and directing/negotiating the the group
– “Loci” of feedback control
• There are cases in which bottom up self-org patterns are better – A large group of robots/vehicles
works well with peer organization – Self-organizing activities and
coordinated movements – Distributed implicit control loops
Key Question #1
• How to integrate bo]om-‐up self-‐organiza)on pa]erns into large-‐scale self-‐adap)ve systems? – What interface/API? – For what classes of self-‐org behavior?
– What mechanisms? – Can we define general rules/approaches?
The SAPERE Project • SAPERE “Self-aware Pervasive
Service Ecosystems” – EU FP7 FET – Starting October 1st 2010, lasting
3 years
• Key Challenges – To define and implement a general
framework for self-organizing service ecosystems
– Models + Middleware – Experience with pervasive urban
services and pervasive displays
The SAPERE Approach • Nature-inspired (Biochemical) – Simply metaphor for combining/aggregating services
in a spontaneous way – Whether human or
ICT ones • Spatially-situated – To match the
nature of urban scenarios
– Inherently adaptive – Spontaneous
reconfiguration of activities and interactions
The SAPERE Architecture • Humans & ICT Devices
– Interact by injecting/consuming service/data components
• Service Components – Execute in a sort virtual “Spatial substrate”
– Distributed reactive tuple space
– Moving, acting, composing, as from eco-laws
• Eco Laws – Rule local activities and
interactions – Apply based on local state – Self-organization of collective
behavior
Using SAPERE • Inject “live semantic
annotations” (LSAs) – messages+service
descriptions • Eco-laws apply to LSAs
– Bonding (subsuming discovery and composition) between LSAs
– Propagation (pheromones and fields) of LSAs
– Decay (evaporation) • Observe resulting LSA
– Their content – Their distributed structure
Example: Steering Mobility
• Mobile entities ingject LSA expressing their presence – Propagation of LSA
• Observe other LSAs – And if affected by their presence in chosing directions
Simulation of Steering Mobility
Integrating Self-organization and Self-Adaptation in SAPERE • Some LSAs that bonds with each other but are insensitive to
fields and pheromones – Autonomic manager can be easily integrated in the loop
• Other LSAs as fields and pheromones – For self-org patterns
• All in the same environment/space and with same mechanisms
SAPERE Ecosystem of Displays
Key Question #2
• How to control by design the behavior of self-‐organizing (sub)systems? – Predictable non-‐determinism
– Direct engineering of self-‐organizing behaviors
– E.g., in SAPERE, how can we sure that the macro behavior of steered will not diverge from what expected
The Roundabout Lesson: Engineering the environment • The shape of the environment can affect the behavior of self-‐organizing components – Without undermining their autonomy
– Without losing the advantages of self-‐organiza)on
– Yet promo)ng more predictability
• And enabling top-‐down engineering – The shape you give is the behavior you get
Engineering the Environment in SAPERE
• What does it means to “shape” the environment – Shaping its perception by components – Equivalent to the distort the way LSAs are perceived and propagate
• Very easy to implement but… – Still to be verified
its effectiveness and the ease of engineering top-down behaviors in this way
Engineering the Environment in SAPERE
• What does it means to “shape” the environment – Shaping its perception by components – Equivalent to the distort the way LSAs are perceived and propagate
• Very easy to implement but… – Still to be verified
its effectiveness and the ease of engineering top-down behaviors in this way
Key Question #3
• Are there different approaches to reconciliate? – I have no answers…. – However…
The Jazz Perspective • A few “engineered” rules
– How and how not to interact – Rythms and rules of interactions
• Freedom of self-organization for anything else – With who and when to interact – According to which internal goals/attitudes – Dynamic instantiation of feedback loops
• Worth investigating? I have no idea but it is fascinating – cfr “Ad-opera” approach
Key Question #4
• Where will reconcilia)on approaches be firstly applied? – In most large-‐scale so_ware systems
– And primarily in future urban socio-‐technical superorganisms
Smart Cities: From Senseable…
• Sensing what’s happening – Via ICT devices – And social
networks
• To better understand (via data analysis) – City and social
dynamics – At a global level
Sense
Understand (compute)
…To Actuable
• We can “shape” other than understand – Actuating ICT
device – Steering human
actions
• Closing loops that enables finalized urban behaviors possible
Sense
Understand (compute)
Act (Steer)
…To Actuable
• We can “shape” other than understand – Actuating ICT
device – Steering human
actions
• Closing the loop that enables finalized urban behaviors possible
Sense
Understand (compute)
Act (Steer)
Adaptation in Urban Superorganisms • The ICT and Human/Social level
blurred to the point of invisibility – Their capabilities well complement
each other à high value co-creation – High-levels of collective “urban”
intelligence – Necessarily situated and adaptive
• Many levels of top-down and bottom-up adaptation – Centralized control (municipalities) – Bottom up control (citizen
proactiveness) – Hybrid (crowdsourcing)
• Will have to be orchestrated
Example: Mobility in Urban Superorganisms • Mobility per se :: steer for car, bike, ride sharing • City maintainance :: please go there and do that • Exhibitions ::steer to avoid crowd or suggest paths • All of these require
– Sensing, computing (data interpretation) actuation (steering) – Adaptive self-organized mobility strategies – Top up engineering and control of behaviors
• Exxacerbating all previous engineering challenges
Conclusions • Need to reconcile self-org and self-adapt approaches • Integration of localized self-org sub-systems ! • Controlling self-organizing behaviors ! • Jazz ?
• Will be of fundamental importance in future urban socio-technical superorganisms • Yet there are still a lot of engineering challenges • There included social issues à humans are back in the loop!