SlideShare a Scribd company logo
1 of 27
Download to read offline
Designed by Martin Wirsing
Introduction to the
Formal Engineering of Autonomic Systems
With contributions from Matthias Hölzl, Mirco Tribastone,
Franco Zambonelli
2Seite
Designed by Martin Wirsing
Contents and Goals of this Lecture
 Goals
 Students should be able to understand
 a model-based development process of autonomic systems
 focussing on mathematically based modeling and analysis techniques
 Contents
 Introduction to
 a model-based development process of autonomic systems
 SOTA/GEM requirements specification
 SCEL modeling
 Quantitative analysis of autonomic system behaviour using stochastic
methods
3Seite
Designed by Martin Wirsing
Autonomic Systems and Ensembles
 Autonomic systems are typically distributed computing systems
whose components act autonomously and can adapt to environment
changes.
 We call them ensembles if
they have the following
characteristics:
 Large numbers of nodes
 Heterogeneous
 Operating in open and non-
deterministic environments
 Complex interactions
between nodes and with
humans or other systems
 Dynamic adaptation to
changes in the environment
4Seite
Designed by Martin Wirsing
Engineering Autonomic systems
 Self-aware ensemble components are aware of their structure and their
aims
 Goals and models of ensemble components have to be available at runtime
 Autonomous components typically have internal models and goals
 For ensuring reliability and predictability of the ensemble and its
components important properties of the ensemble should be defined and
established at design time and maintained during runtime
 Analysis-driven development and execution
 Autonomic systems have to be able to adapt to dynamic changes of the
environment
 Even if the ensemble components are defined at design time, adaptation of
the ensemble components will happen at runtime
5Seite
Designed by Martin Wirsing
Ensemble Lifecycle:
Two-Wheels Approach
 Engineering an autonomic system consists of an iterative agile lifecycle
 Design time: Iteration of requirements engineering, modeling, validation
 Runtime: Awareness, adaptation, execution loop
 Design time and runtime loops connected by deployment and feedback
 Feedback leads to a better understanding and improvement of the system.
Deployment
Feedback
Design Runtime
6Seite
Designed by Martin Wirsing
Ensemble Lifecycle:
Two-Wheels Approach
 Engineering an autonomic system consists of an iterative agile lifecycle
 Design time: Iteration of requirements engineering, modeling, validation
 Runtime: Awareness, adaptation, execution loop
 Design time and runtime loops connected by deployment and feedback
 Feedback leads to a better understanding and improvement of the system.
Deployment
Feedback
Design Runtime
7Seite
Designed by Martin Wirsing
Outline
 For the sake of simplicity we restrict ourselves to a simple
example of autonomic robots and illustrate only the following first
development steps which happen at design time.
1. Requirements specification with SOTA/GEM
2. Coarse modeling: adaptation pattern selection
3. (Abstract) programming in SCEL and implementation in SCELua
4. Validating the requirements using quantitative analysis
 with CTMC and ordinary differential equations
8Seite
Designed by Martin Wirsing
The Robot Case Study
 Swarm of garbage collecting robots
 Acting in a rectangular exhibition hall
 The hall is populated by visitors and exhibits
 Scenario
 Visitors drop garbage
 Robots move around the hall,
pick up the garbage and
move it to the service area
 Robots may rest in the service area in order
to not intervene too much with the visitors
and to save energy
service area
9Seite
Designed by Martin Wirsing
Domain and Requirements Modeling:
SOTA/GEM Framework
 An adaptive system can (should?) be expressed in terms of “goals” =
“states of the affairs” that an entity aims to achieve
 Without making assumption on the actual design of the system
 It is a requirements engineering activity
 Goal-oriented modeling of self-adaptive systems
 Functional requirements representing the states of affairs that the system has
to achieve or maintain
 Utilities are non-functional requirements which do not have hard boundaries
and may be more or less desirable.
 The SOTA (“State of the Affairs”)/GEM Conceptual framework is
centered around this concept:
The “State Of The Affairs” represents the state of everything in the world in
which the system lives and executes that may affect its behaviour and that is
relevant w.r.t. its capabilities of achieving.
 GEM is the mathematical basis of the SOTA framework
10Seite
Designed by Martin Wirsing
SOTA/GEM:
Domain and Requirements Modeling
Domain modeling:
 State Of The Affairs Q = Q1 x … x Qn
 represents the state of all parameters that
 may affect the ensemble's behavior and
 are relevant to its capabilities
 Example: Robot Swarm
11Seite
Designed by Martin Wirsing
Ensemble and its Environment
 For mathematical analysis we distinguish often between the ensemble
and its environment such that the whole system is a combination of
both
 Example Robot Swarm
 The state space of the robot ensemble is given by the state spaces all robots
where QRobot is given by the position and state of the robots
 The state space environment is given by the exhibition area, the number of
garbage items , and the value indicating whether the exhibition is open
12Seite
Designed by Martin Wirsing
SOTA:
Trajectories
 Trajectory
 The state of affairs Q changes over time because of system actions or the
dynamics of the environment:
 A trajectory x represents a possible evolution of the State of affairs over
time;
 it a sequence of states of affairs (a trace)
 represented as a function x : Time -> Q from the (discrete or continuous)
time domain into Q
 The trajectory space is the set of all trajectories of Q, called X
 System
 A system S is a subset of the trajectory space.
 Systems can be combined using a combination operator *
 If Xaut and Xenv are the trajectory spaces of the ensemble and its environment,
and *: Xaut x Xenv -> X combines trajectories denotes the combination of a all
trajectories of the system,
 i.e
13Seite
Designed by Martin Wirsing
SOTA:
Requirements Modeling
 Goal-oriented requirements
modelling
 Goal = achievement of a given state
of the affairs
 Where the system should eventually
arrive in the phase space Qe,
 represented as a confined area in that
space (post-condition Gpost), and
 the goal can be activated in another
area of the space (pre-condition Gpre)
 Utility = how to reach a given state of
the affairs
 “maintain goal”: constraints on the
trajectory to follow in the phase
space Qe
 expressed as a subspace Gmaintain in
Qe
14Seite
Designed by Martin Wirsing
Robot Ensemble Goals and Utilities
 Example requirements:
 Goal G1
 Maintains < 300 garbage items
 as long as the exhibition is open
 Further (adaptation) goals
 Keep energy consumption lower
than predefined threshold
 In resting area allow sleeping time
for each robot
15Seite
Designed by Martin Wirsing
Towards Design
 Further requirements modelling steps
 Check consistency of requirements
 Model/program the autonomic system in SCEL
 Select suitable adaptation patterns for ensemble design (see also lecture 08
on patterns)
 Model each component in SCEL
 Validate the requirements
16Seite
Designed by Martin Wirsing
Adaptation Patterns
Component Patterns Ensemble Patterns
 Reactive Environment mediated (swarm)
Reactive
Component
Environment Environment
Event, pheromone, …
Internal Feedback
Goal
Action
Environment
 Internal feedback loop Negotiation/competition
 Further patterns: External feedback loop, norm-based ensembles, …
Interaction
between
components
17Seite
Designed by Martin Wirsing
Robot Ensemble Adaptation
 Reactive component pattern for implementing a single robot
 Environment mediated (swarm) pattern for the ensemble of
ineracting components
Reactive
Component
Environment Environment
18Seite
Designed by Martin Wirsing
The Modeling Language SCEL
 The Service Component Ensemble
Language (SCEL) provides primitives
and constructs for describing the
following programming abstractions
 Knowledge: describe how data,
information and knowledge is manipulated
and shared
 Processes: describe how systems of
components progress
 Policies: deal with the way properties of
computations are represented and
enforced
 Systems: describe how different entities
are brought together to form components,
systems and, possibly, ensembles
SC SC
SC
SC
SC
Service component
Service component ensemble
19Seite
Designed by Martin Wirsing
The SCEL Syntax (in one slide)
20Seite
Designed by Martin Wirsing
Robot Ensemble SCEL Design
 n robots Ri interacting with environment Env and other robots
 R1 || … || Rn || Env
 Env is abstractly represented by a master component Imaster[.,., m]
 keeping track of the total number of collected items
 Each robot R is of form Ibeh[.,., e] || Ictl[.,., k] || Itimer[.,., t] where
 ctl detects collisions,
 timer controls the sleeping time
 beh models the reactive robot behavior
 Environment mediated robot ensemble
Environment
R1 R2 R3
21Seite
Designed by Martin Wirsing
Robot Ensemble SCEL Design
 Reactive behavior Ibeh[.,., e] of a robot R
 If R is exploring then
 if it encounters another robot or a wall, it changes direction and continues exploring
(direction change abstracted in SCEL)
 if it encounters an item, the robot picks it up, informs the master and returns to the
service area
 When the robot arrives at the service area,
 it drops the item,
 goes into sleep mode for some time (to reduce power consumption) and
 starts exploring the exhibition hall again.
22Seite
Designed by Martin Wirsing
Validating Requirements:
Quantitative Analysis
 Analyze performance of ensembles by studying timing behavior of
actions via
 Simulation
 Performance models:
 Continuous-time Markov chains
 Ordinary differential equations
 Statistical modelchecking
 Validate performance model by comparing to simulation
 Very often, abstraction of the system is needed for performance modeling
23Seite
Designed by Martin Wirsing
Simplification/Abstraction of
Robot Behavior
 Actions p, p’, d, s take much less time than the other actions.
 Simplify/abstract robot behavior
 From
 To
24Seite
Designed by Martin Wirsing
Performance Modeling with
CTMC and ODE
 Derive continuous-time Markov chain from :
 CTMC has infinitely many states
 Transform into ordinary differential equations
25Seite
Designed by Martin Wirsing
Validation of Performance Models
 SCELua simulation
 SCELua is an experimental SCEL implementation in Lua/ARGOS [Hölzl 2012]
 Simulate robot example
 20 robots, arena 16 m², 150 independent runs of 10 h simulated time
 Instrument code to record timestamps of transitions and calculate m and g
 Compare
 Steady state ODE estimates of robot subpopulations and
 discrete-event LuaSCEL simulation
 Results
 Maximum error < 3.5%
26Seite
Designed by Martin Wirsing
Sensitivity Analysis for Validating the Adaptation
Requirements
 Adaptation requirements
 Keep area clean (< 300 garbage items) while allowing sleeping time t (e.g.
<= 1000) for each robot
 Energy consumption lower than predefined threshold
 Sensitivity analysis of throughput
 where throughput = frequency of returning garbage items to service area
Martin Wirsing
Model prediction:
 Adaptation requirement is
satisfied
 Maximum allowed rest
time (whilst achieving the
maintain goal): 1580
27Seite
Designed by Martin Wirsing
Summary
 Ensembles are heterogeneous distributed
systems in open environments which can
dynamically adapt to new situations and
requirements
 ASCENS is developing a systematic
approach for constructing Autonomic
Service-Component Ensembles
 A few development steps for a simple
example
 Iterative ensemble lifecycle
 Requirements specification with SOTA/GEM
 Selection of adaptation patterns
 (Abstract) programming in SCEL
 Simulation in SCELua
 Validation of adaptation requirements through
quantitative analysis with CTMC and ordinary
differential equations
Deployment
Feedback
DesignRuntime

More Related Content

Similar to Academic Course: 07 Introduction to the Formal Engineering of Autonomic Systems

Computational steering Interactive Design-through-Analysis for Simulation Sci...
Computational steering Interactive Design-through-Analysis for Simulation Sci...Computational steering Interactive Design-through-Analysis for Simulation Sci...
Computational steering Interactive Design-through-Analysis for Simulation Sci...SURFevents
 
Automatic Test Generation for Space
Automatic Test Generation for SpaceAutomatic Test Generation for Space
Automatic Test Generation for SpaceUlisses Costa
 
13_3 ROBOT SENSORI INTEGRATION_case study.ppt
13_3 ROBOT SENSORI INTEGRATION_case study.ppt13_3 ROBOT SENSORI INTEGRATION_case study.ppt
13_3 ROBOT SENSORI INTEGRATION_case study.pptDrPArivalaganASSTPRO
 
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...IRJET Journal
 
Developing a Humanoid Robot Platform
Developing a Humanoid Robot PlatformDeveloping a Humanoid Robot Platform
Developing a Humanoid Robot PlatformDr. Amarjeet Singh
 
Flexible Multibody Dynamics
Flexible Multibody DynamicsFlexible Multibody Dynamics
Flexible Multibody Dynamicswallice3
 
Iaetsd robo control sytsem design using arm
Iaetsd robo control sytsem design using armIaetsd robo control sytsem design using arm
Iaetsd robo control sytsem design using armIaetsd Iaetsd
 
Soleil: A Component Framework for RTSJ
Soleil: A Component Framework for RTSJSoleil: A Component Framework for RTSJ
Soleil: A Component Framework for RTSJAleš Plšek
 
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGA
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGAHigh-Speed Neural Network Controller for Autonomous Robot Navigation using FPGA
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGAiosrjce
 
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT IAEME Publication
 
Modeling of distributed mutual exclusion system using event b
Modeling of distributed mutual exclusion system using event bModeling of distributed mutual exclusion system using event b
Modeling of distributed mutual exclusion system using event bcsandit
 
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B cscpconf
 

Similar to Academic Course: 07 Introduction to the Formal Engineering of Autonomic Systems (20)

Computational steering Interactive Design-through-Analysis for Simulation Sci...
Computational steering Interactive Design-through-Analysis for Simulation Sci...Computational steering Interactive Design-through-Analysis for Simulation Sci...
Computational steering Interactive Design-through-Analysis for Simulation Sci...
 
Automatic Test Generation for Space
Automatic Test Generation for SpaceAutomatic Test Generation for Space
Automatic Test Generation for Space
 
13_3 ROBOT SENSORI INTEGRATION_case study.ppt
13_3 ROBOT SENSORI INTEGRATION_case study.ppt13_3 ROBOT SENSORI INTEGRATION_case study.ppt
13_3 ROBOT SENSORI INTEGRATION_case study.ppt
 
Ch7
Ch7Ch7
Ch7
 
Ch7
Ch7Ch7
Ch7
 
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
 
Adaptive13 test
Adaptive13 testAdaptive13 test
Adaptive13 test
 
Developing a Humanoid Robot Platform
Developing a Humanoid Robot PlatformDeveloping a Humanoid Robot Platform
Developing a Humanoid Robot Platform
 
Flexible Multibody Dynamics
Flexible Multibody DynamicsFlexible Multibody Dynamics
Flexible Multibody Dynamics
 
Ch7
Ch7Ch7
Ch7
 
Iaetsd robo control sytsem design using arm
Iaetsd robo control sytsem design using armIaetsd robo control sytsem design using arm
Iaetsd robo control sytsem design using arm
 
Soleil: A Component Framework for RTSJ
Soleil: A Component Framework for RTSJSoleil: A Component Framework for RTSJ
Soleil: A Component Framework for RTSJ
 
Automatic P2R Published Paper P1277-1283
Automatic P2R Published Paper P1277-1283Automatic P2R Published Paper P1277-1283
Automatic P2R Published Paper P1277-1283
 
H011114758
H011114758H011114758
H011114758
 
Unit-1 Mod-Sim.ppt
Unit-1 Mod-Sim.pptUnit-1 Mod-Sim.ppt
Unit-1 Mod-Sim.ppt
 
Atva05
Atva05Atva05
Atva05
 
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGA
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGAHigh-Speed Neural Network Controller for Autonomous Robot Navigation using FPGA
High-Speed Neural Network Controller for Autonomous Robot Navigation using FPGA
 
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT
A WORKSPACE SIMULATION FOR TAL TR-2 ARTICULATED ROBOT
 
Modeling of distributed mutual exclusion system using event b
Modeling of distributed mutual exclusion system using event bModeling of distributed mutual exclusion system using event b
Modeling of distributed mutual exclusion system using event b
 
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B
MODELING OF DISTRIBUTED MUTUAL EXCLUSION SYSTEM USING EVENT-B
 

More from FET AWARE project - Self Awareness in Autonomic Systems

More from FET AWARE project - Self Awareness in Autonomic Systems (20)

Academic Course: 12 Safety and Ethics
Academic Course: 12 Safety and EthicsAcademic Course: 12 Safety and Ethics
Academic Course: 12 Safety and Ethics
 
Academic Course: 08 Pattern-based design of autonomic systems
Academic Course: 08 Pattern-based design of autonomic systemsAcademic Course: 08 Pattern-based design of autonomic systems
Academic Course: 08 Pattern-based design of autonomic systems
 
Academic Course: 06 Morphogenetic Engineering
Academic Course: 06 Morphogenetic EngineeringAcademic Course: 06 Morphogenetic Engineering
Academic Course: 06 Morphogenetic Engineering
 
Academic Course: 04 Introduction to complex systems and agent based modeling
Academic Course: 04 Introduction to complex systems and agent based modelingAcademic Course: 04 Introduction to complex systems and agent based modeling
Academic Course: 04 Introduction to complex systems and agent based modeling
 
Academic Course: 02 Self-organization and emergence in networked systems
Academic Course: 02 Self-organization and emergence in networked systemsAcademic Course: 02 Self-organization and emergence in networked systems
Academic Course: 02 Self-organization and emergence in networked systems
 
Academic Course: 01 Self-awarenesss and Computational Self-awareness
Academic Course: 01 Self-awarenesss and Computational Self-awarenessAcademic Course: 01 Self-awarenesss and Computational Self-awareness
Academic Course: 01 Self-awarenesss and Computational Self-awareness
 
Awareness: Layman Seminar Slides
Awareness: Layman Seminar SlidesAwareness: Layman Seminar Slides
Awareness: Layman Seminar Slides
 
Industry Training: 04 Awareness Applications
Industry Training: 04 Awareness ApplicationsIndustry Training: 04 Awareness Applications
Industry Training: 04 Awareness Applications
 
Industry Training: 03 Awareness Simulation
Industry Training: 03 Awareness SimulationIndustry Training: 03 Awareness Simulation
Industry Training: 03 Awareness Simulation
 
Industry Training: 02 Awareness Properties
Industry Training: 02 Awareness PropertiesIndustry Training: 02 Awareness Properties
Industry Training: 02 Awareness Properties
 
Industry Training: 01 Awareness Overview
Industry Training: 01 Awareness OverviewIndustry Training: 01 Awareness Overview
Industry Training: 01 Awareness Overview
 
Robot Swarms as Ensembles of Cooperating Components - Matthias Holzl
Robot Swarms as Ensembles of Cooperating Components - Matthias HolzlRobot Swarms as Ensembles of Cooperating Components - Matthias Holzl
Robot Swarms as Ensembles of Cooperating Components - Matthias Holzl
 
Capturing the Immune System: From the wet-­lab to the robot, building better ...
Capturing the Immune System: From the wet-­lab to the robot, building better ...Capturing the Immune System: From the wet-­lab to the robot, building better ...
Capturing the Immune System: From the wet-­lab to the robot, building better ...
 
Underwater search and rescue in swarm robotics - Mark Read
Underwater search and rescue in swarm robotics - Mark Read Underwater search and rescue in swarm robotics - Mark Read
Underwater search and rescue in swarm robotics - Mark Read
 
Why Robots may need to be self-­‐aware, before we can really trust them - Ala...
Why Robots may need to be self-­‐aware, before we can really trust them - Ala...Why Robots may need to be self-­‐aware, before we can really trust them - Ala...
Why Robots may need to be self-­‐aware, before we can really trust them - Ala...
 
Ensemble-oriented programming of self-adaptive systems - Michele Loreti
Ensemble-oriented programming of self-adaptive systems - Michele LoretiEnsemble-oriented programming of self-adaptive systems - Michele Loreti
Ensemble-oriented programming of self-adaptive systems - Michele Loreti
 
Self-awareness and Adaptive Technologies: the Future of Operating Systems?
Self-awareness and Adaptive Technologies: the Future of Operating Systems? Self-awareness and Adaptive Technologies: the Future of Operating Systems?
Self-awareness and Adaptive Technologies: the Future of Operating Systems?
 
EnhancingWeb Process Self-Awareness with Context-Aware Service Composition
EnhancingWeb Process Self-Awareness with Context-Aware Service CompositionEnhancingWeb Process Self-Awareness with Context-Aware Service Composition
EnhancingWeb Process Self-Awareness with Context-Aware Service Composition
 
Testing cooperative autonomous systems for unwanted emergent behaviour and da...
Testing cooperative autonomous systems for unwanted emergent behaviour and da...Testing cooperative autonomous systems for unwanted emergent behaviour and da...
Testing cooperative autonomous systems for unwanted emergent behaviour and da...
 
Enduring Institutions and Self-Organising Trust-Adaptive Systems for an Open ...
Enduring Institutions and Self-Organising Trust-Adaptive Systems for an Open ...Enduring Institutions and Self-Organising Trust-Adaptive Systems for an Open ...
Enduring Institutions and Self-Organising Trust-Adaptive Systems for an Open ...
 

Recently uploaded

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Recently uploaded (20)

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

Academic Course: 07 Introduction to the Formal Engineering of Autonomic Systems

  • 1. Designed by Martin Wirsing Introduction to the Formal Engineering of Autonomic Systems With contributions from Matthias Hölzl, Mirco Tribastone, Franco Zambonelli
  • 2. 2Seite Designed by Martin Wirsing Contents and Goals of this Lecture  Goals  Students should be able to understand  a model-based development process of autonomic systems  focussing on mathematically based modeling and analysis techniques  Contents  Introduction to  a model-based development process of autonomic systems  SOTA/GEM requirements specification  SCEL modeling  Quantitative analysis of autonomic system behaviour using stochastic methods
  • 3. 3Seite Designed by Martin Wirsing Autonomic Systems and Ensembles  Autonomic systems are typically distributed computing systems whose components act autonomously and can adapt to environment changes.  We call them ensembles if they have the following characteristics:  Large numbers of nodes  Heterogeneous  Operating in open and non- deterministic environments  Complex interactions between nodes and with humans or other systems  Dynamic adaptation to changes in the environment
  • 4. 4Seite Designed by Martin Wirsing Engineering Autonomic systems  Self-aware ensemble components are aware of their structure and their aims  Goals and models of ensemble components have to be available at runtime  Autonomous components typically have internal models and goals  For ensuring reliability and predictability of the ensemble and its components important properties of the ensemble should be defined and established at design time and maintained during runtime  Analysis-driven development and execution  Autonomic systems have to be able to adapt to dynamic changes of the environment  Even if the ensemble components are defined at design time, adaptation of the ensemble components will happen at runtime
  • 5. 5Seite Designed by Martin Wirsing Ensemble Lifecycle: Two-Wheels Approach  Engineering an autonomic system consists of an iterative agile lifecycle  Design time: Iteration of requirements engineering, modeling, validation  Runtime: Awareness, adaptation, execution loop  Design time and runtime loops connected by deployment and feedback  Feedback leads to a better understanding and improvement of the system. Deployment Feedback Design Runtime
  • 6. 6Seite Designed by Martin Wirsing Ensemble Lifecycle: Two-Wheels Approach  Engineering an autonomic system consists of an iterative agile lifecycle  Design time: Iteration of requirements engineering, modeling, validation  Runtime: Awareness, adaptation, execution loop  Design time and runtime loops connected by deployment and feedback  Feedback leads to a better understanding and improvement of the system. Deployment Feedback Design Runtime
  • 7. 7Seite Designed by Martin Wirsing Outline  For the sake of simplicity we restrict ourselves to a simple example of autonomic robots and illustrate only the following first development steps which happen at design time. 1. Requirements specification with SOTA/GEM 2. Coarse modeling: adaptation pattern selection 3. (Abstract) programming in SCEL and implementation in SCELua 4. Validating the requirements using quantitative analysis  with CTMC and ordinary differential equations
  • 8. 8Seite Designed by Martin Wirsing The Robot Case Study  Swarm of garbage collecting robots  Acting in a rectangular exhibition hall  The hall is populated by visitors and exhibits  Scenario  Visitors drop garbage  Robots move around the hall, pick up the garbage and move it to the service area  Robots may rest in the service area in order to not intervene too much with the visitors and to save energy service area
  • 9. 9Seite Designed by Martin Wirsing Domain and Requirements Modeling: SOTA/GEM Framework  An adaptive system can (should?) be expressed in terms of “goals” = “states of the affairs” that an entity aims to achieve  Without making assumption on the actual design of the system  It is a requirements engineering activity  Goal-oriented modeling of self-adaptive systems  Functional requirements representing the states of affairs that the system has to achieve or maintain  Utilities are non-functional requirements which do not have hard boundaries and may be more or less desirable.  The SOTA (“State of the Affairs”)/GEM Conceptual framework is centered around this concept: The “State Of The Affairs” represents the state of everything in the world in which the system lives and executes that may affect its behaviour and that is relevant w.r.t. its capabilities of achieving.  GEM is the mathematical basis of the SOTA framework
  • 10. 10Seite Designed by Martin Wirsing SOTA/GEM: Domain and Requirements Modeling Domain modeling:  State Of The Affairs Q = Q1 x … x Qn  represents the state of all parameters that  may affect the ensemble's behavior and  are relevant to its capabilities  Example: Robot Swarm
  • 11. 11Seite Designed by Martin Wirsing Ensemble and its Environment  For mathematical analysis we distinguish often between the ensemble and its environment such that the whole system is a combination of both  Example Robot Swarm  The state space of the robot ensemble is given by the state spaces all robots where QRobot is given by the position and state of the robots  The state space environment is given by the exhibition area, the number of garbage items , and the value indicating whether the exhibition is open
  • 12. 12Seite Designed by Martin Wirsing SOTA: Trajectories  Trajectory  The state of affairs Q changes over time because of system actions or the dynamics of the environment:  A trajectory x represents a possible evolution of the State of affairs over time;  it a sequence of states of affairs (a trace)  represented as a function x : Time -> Q from the (discrete or continuous) time domain into Q  The trajectory space is the set of all trajectories of Q, called X  System  A system S is a subset of the trajectory space.  Systems can be combined using a combination operator *  If Xaut and Xenv are the trajectory spaces of the ensemble and its environment, and *: Xaut x Xenv -> X combines trajectories denotes the combination of a all trajectories of the system,  i.e
  • 13. 13Seite Designed by Martin Wirsing SOTA: Requirements Modeling  Goal-oriented requirements modelling  Goal = achievement of a given state of the affairs  Where the system should eventually arrive in the phase space Qe,  represented as a confined area in that space (post-condition Gpost), and  the goal can be activated in another area of the space (pre-condition Gpre)  Utility = how to reach a given state of the affairs  “maintain goal”: constraints on the trajectory to follow in the phase space Qe  expressed as a subspace Gmaintain in Qe
  • 14. 14Seite Designed by Martin Wirsing Robot Ensemble Goals and Utilities  Example requirements:  Goal G1  Maintains < 300 garbage items  as long as the exhibition is open  Further (adaptation) goals  Keep energy consumption lower than predefined threshold  In resting area allow sleeping time for each robot
  • 15. 15Seite Designed by Martin Wirsing Towards Design  Further requirements modelling steps  Check consistency of requirements  Model/program the autonomic system in SCEL  Select suitable adaptation patterns for ensemble design (see also lecture 08 on patterns)  Model each component in SCEL  Validate the requirements
  • 16. 16Seite Designed by Martin Wirsing Adaptation Patterns Component Patterns Ensemble Patterns  Reactive Environment mediated (swarm) Reactive Component Environment Environment Event, pheromone, … Internal Feedback Goal Action Environment  Internal feedback loop Negotiation/competition  Further patterns: External feedback loop, norm-based ensembles, … Interaction between components
  • 17. 17Seite Designed by Martin Wirsing Robot Ensemble Adaptation  Reactive component pattern for implementing a single robot  Environment mediated (swarm) pattern for the ensemble of ineracting components Reactive Component Environment Environment
  • 18. 18Seite Designed by Martin Wirsing The Modeling Language SCEL  The Service Component Ensemble Language (SCEL) provides primitives and constructs for describing the following programming abstractions  Knowledge: describe how data, information and knowledge is manipulated and shared  Processes: describe how systems of components progress  Policies: deal with the way properties of computations are represented and enforced  Systems: describe how different entities are brought together to form components, systems and, possibly, ensembles SC SC SC SC SC Service component Service component ensemble
  • 19. 19Seite Designed by Martin Wirsing The SCEL Syntax (in one slide)
  • 20. 20Seite Designed by Martin Wirsing Robot Ensemble SCEL Design  n robots Ri interacting with environment Env and other robots  R1 || … || Rn || Env  Env is abstractly represented by a master component Imaster[.,., m]  keeping track of the total number of collected items  Each robot R is of form Ibeh[.,., e] || Ictl[.,., k] || Itimer[.,., t] where  ctl detects collisions,  timer controls the sleeping time  beh models the reactive robot behavior  Environment mediated robot ensemble Environment R1 R2 R3
  • 21. 21Seite Designed by Martin Wirsing Robot Ensemble SCEL Design  Reactive behavior Ibeh[.,., e] of a robot R  If R is exploring then  if it encounters another robot or a wall, it changes direction and continues exploring (direction change abstracted in SCEL)  if it encounters an item, the robot picks it up, informs the master and returns to the service area  When the robot arrives at the service area,  it drops the item,  goes into sleep mode for some time (to reduce power consumption) and  starts exploring the exhibition hall again.
  • 22. 22Seite Designed by Martin Wirsing Validating Requirements: Quantitative Analysis  Analyze performance of ensembles by studying timing behavior of actions via  Simulation  Performance models:  Continuous-time Markov chains  Ordinary differential equations  Statistical modelchecking  Validate performance model by comparing to simulation  Very often, abstraction of the system is needed for performance modeling
  • 23. 23Seite Designed by Martin Wirsing Simplification/Abstraction of Robot Behavior  Actions p, p’, d, s take much less time than the other actions.  Simplify/abstract robot behavior  From  To
  • 24. 24Seite Designed by Martin Wirsing Performance Modeling with CTMC and ODE  Derive continuous-time Markov chain from :  CTMC has infinitely many states  Transform into ordinary differential equations
  • 25. 25Seite Designed by Martin Wirsing Validation of Performance Models  SCELua simulation  SCELua is an experimental SCEL implementation in Lua/ARGOS [Hölzl 2012]  Simulate robot example  20 robots, arena 16 m², 150 independent runs of 10 h simulated time  Instrument code to record timestamps of transitions and calculate m and g  Compare  Steady state ODE estimates of robot subpopulations and  discrete-event LuaSCEL simulation  Results  Maximum error < 3.5%
  • 26. 26Seite Designed by Martin Wirsing Sensitivity Analysis for Validating the Adaptation Requirements  Adaptation requirements  Keep area clean (< 300 garbage items) while allowing sleeping time t (e.g. <= 1000) for each robot  Energy consumption lower than predefined threshold  Sensitivity analysis of throughput  where throughput = frequency of returning garbage items to service area Martin Wirsing Model prediction:  Adaptation requirement is satisfied  Maximum allowed rest time (whilst achieving the maintain goal): 1580
  • 27. 27Seite Designed by Martin Wirsing Summary  Ensembles are heterogeneous distributed systems in open environments which can dynamically adapt to new situations and requirements  ASCENS is developing a systematic approach for constructing Autonomic Service-Component Ensembles  A few development steps for a simple example  Iterative ensemble lifecycle  Requirements specification with SOTA/GEM  Selection of adaptation patterns  (Abstract) programming in SCEL  Simulation in SCELua  Validation of adaptation requirements through quantitative analysis with CTMC and ordinary differential equations Deployment Feedback DesignRuntime