SlideShare uma empresa Scribd logo
1 de 68
Baixar para ler offline
´              ´
WHITE BOX ADAPTATION
   -- Roberto Bruni, UNIPI
   -- Andrea Corradini, UNIPI
   -- Fabio Gadducci, UNIPI
   -- Alberto Lluch Lafuente, IMT
   -- Andrea Vandin, IMT
What is
          ADAPTATION?



Andrea Vandin   Fabio Gadducci       Andrea Corradini     Roberto Bruni
IMT Lucca       University of Pisa   University of Pisa   University of Pisa
OUTLINE
1 White box adaptation

2 Russian dolls & robots

3 Adaptable transition systems
OUTLINE
1   A conceptual framework for adaptation [FASE 2012]


2   Modelling and Analyzing Adaptive Self-assembly
                   Strategies with Maude [WRLA 2012]

3   Adaptable Transition Systems [WADT 2012]
OUTLINE
1 White box adaptation

2 Russian dolls & robots

3 Adaptable transition systems
What is
Adaptation?
Lotfi A. Zadeh,
Proc. IEEE, 1963
“... a software system self-adaptive if
 modifies its own behavior in response to ...”

    [*] Oreizy, P., Gorlick, M.M., Taylor, R.N., Heimbigner, D., Johnson, G., Medvidovic, N.,
       Quilici, A., Rosenblum, D.S., Wolf, A.L.: An architecture-based approach to self-
       adaptive software. Intelligent Systems and their Applications 14(3), 54–62 (1999)
    [*] Robertson, P., Shrobe, H.E., Laddaga, R.: Introduction to self-adaptive software:
       Applications. In: Robertson, P., Shrobe, H.E., Laddaga, R. (eds.) IWSAS. LNCS, vol.
       1936, pp. 1–5. Springer (2001)
    [*] Self-Adaptive Software: Landscape and Research Challenges, Mazeiar Salehie,
       Ladan Tahvildari, ACM Transactions on Autonomous and Adaptive Systems 4, 2.
IS THIS ADAPTATION?
   ...
   if p(x) then
     do_this;
   else
     do_that;
   endif
   ...
IS THIS ADAPTATION?




“if the hill is too steep then
   assemble with other robots and try again”
is obstacle avoidance adaptation?

  “Obstacle avoidance may count as adaptive
behaviour if […] obstacles appear rarely. [...]

   If the ‘normal’ environment is […] obstacle-rich,
then avoidance becomes [...] “normal” behaviour
rather than an adaptation.”

                - Ezequiel di Paolo, course on “Adaptive Systems”,
                                University of Sussex, Spring 2006.
BLACK-BOX ADAPTATION
White box
adaptation
WHAT IS A PROGRAM?


“program = control + data”
      - Niklaus Wirth, “Algorithms + Data Structures = Programs”,
                                              Prentice-Hall (1976)
WHAT IS AN ADAPTABLE PROGRAM?



“adaptable program =
              control + data
WHAT IS AN ADAPTABLE PROGRAM?



“adaptable program =
              control + data

        control data + the rest ”
WHAT IS AN ADAPTABLE PROGRAM?


   CONTROL DATA OTHER DATA


            CONTROL


“adaptation is the run-time
 modification of control data”
AUTONOMIC MANAGER

         Analyze               Plan




   Monitor         Knowledge          Execute




                      EFFECTOR
MANAGED ELEMENT




                      CONTROL
                        DATA
A PROGRAM IS...
“...adaptable if it has a distinguished collection of CD
that can be modified at runtime.”

“...adaptive if its control data is modified at runtime
for some computation.”

“...self-adaptive if it modifies its own control data at
runtime.”
EXAMPLES OF CONTROL DATA

                                  plans
                 aspects
                              rules
                   contexts

 configuration     policies
 variables                            programs


            CONTROL DATA
“an excellent discussion of
 the precise meaning of the
 term adaptive software.”

    - Carlo Ghezzi, Evolution, Adaptation, and the
     Quest for Incrementality, LNCS 7539/2012,
1 White box adaptation

2 Russian dolls & robots

3 Adaptable transition systems
SELF-ASSEMBLING ROBOTS




“if the hill is too steep then
   assemble with other robots and try again”
- J. Meseguer et al., “Semantic models for distributed object reflection”,
                           ECOOP 2002, LNCS 2374. Springer, 1–36.
RRDs IN A NUTSHELL


   Nested configurations
   of interacting objects


Reflection (meta-programming)
REFLECTIVE COMPONENTS


                  manager


 state   rules   state   rules

                  interpreter
SELF-AWARENESS


“self-awareness means                                   manager
 that the system is aware of
 its self states
 and behaviors. ”                                    state        rules
  - M.G. Hinchey, et al, “Self-managing software”.
              IEEE Computer 39(2) 107–109, 2006.

                                                       interpreter

                                                     (white-box component)
Specification in Maude




Statistical Model Checking
   1

  0.8
  0.6

  0.4

  0.2
   0
        0   3   6   9
% of robots crossing the hole
    0.9



    0.8



    0.7



    0.6



    0.5



    0.4



    0.3               any shape
    0.2
                      anyshape, no double-grip
                      line
    0.1
                      quasi-orthogonal line
     0
          0       3             6            9


                  number of robots in the scenario
1 White box adaptation

2 Russian dolls & robots

3 Adaptable transition systems
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!



           Is it
           task? self              task?

                    v e?
U{}[]                  U{}[t]              U{}[tt]

           a da pti
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?               task?
D{}[]              D{}[t]              D{}[tt]


                     ffer     ent
                   di
   down!               up!      up!

             ,140
       = 4 U{}[t] task?ions!
   B 8 task?
U{}[]                 at U{}[tt]
                  ret schedule!
      int   erp
        schedule!


 finish!             finish!
        U{t}[]               U{t}[t]
                   task?
Adaptable
Interface
automata
IA = Automata + Interface (i/o distinction)
          task?                    task?


  down!                      up!               up!


          task?                    task?


          schedule!                schedule!


finish!                finish!

                      task
IA = Automata + Interface (i/o distinction)
          task?                   task?


  down!                   up!                 up!


          task?                   task?


          schedule!               schedule!


finish!                 finish!

                      task?
task?                   task?


  down!                   up!                 up!


          task?                   task?


          schedule!               schedule!


finish!                 finish!

                      task?
 AIA = IA + control propositions (colors)
task?                   task?


  down!                   up!                 up!


          task?                   task?


          schedule!               schedule!


finish!                 finish!

                      task?
 AIA = IA + control propositions (colors)
Now what?
AUTONOMIC MANAGER
    Analyze        Plan                 task?                  task?
                               D{}[]                D{}[t]             D{}[tt]


          Knowledge Execute         down!                up!               up!
Monitor

                                        task?                  task?
                               U{}[]                U{}[t]             U{}[tt]

  MANAGED COMPONENT                     schedule!              schedule!


                              finish!                  finish!
                                        U{t}[]               U{t}[t]
                                                    task?
some behavioural relation
i.e. normal output actions become inputs
i.e. M “listens” outputs of B
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish?                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule?               schedule?


 finish?                 finish?
        U{t}[]                   U{t}[t]
                       task?
i.e. control output actions become inputs
i.e. B “obeys” outputs of M
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down?                   up?                 up?


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
ISO
  (for deterministic AIA)
Beyond
isomorhism
i.e. control output actions become inputs
i.e. B “obeys” outputs of M




i.e. collapse transitions labelled with B
i.e. M “ignores” B-moves
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down!                   up!                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule?               schedule?


 finish?                 finish?
        U{t}[]                   U{t}[t]
                       task?
task?              task?
D{}[]              D{}[t]             D{}[tt]




           task?              task?
U{}[]              U{}[t]             U{}[tt]




 finish?            finish?
alternating simulation
(for deterministic IA)
task?                   task?
D{}[]                  D{}[t]              D{}[tt]

   down?                   up?                 up!


           task?                   task?
U{}[]                  U{}[t]              U{}[tt]
           schedule!               schedule!


 finish!                 finish!
        U{t}[]                   U{t}[t]
                       task?
1 White box adaptation

2 Russian dolls & robots

3 Adaptable transition systems
1 Keep working on what we saw

2 Study cina's adaptation

3 Apply our ideas to scel
White Box Adaptation @ CINA Meeting 2013

Mais conteúdo relacionado

Semelhante a White Box Adaptation @ CINA Meeting 2013

Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Anubhav Jain
 
Integrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AIIntegrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AILuke Dicken
 
Mixed Effects Models - Descriptive Statistics
Mixed Effects Models - Descriptive StatisticsMixed Effects Models - Descriptive Statistics
Mixed Effects Models - Descriptive StatisticsScott Fraundorf
 
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...Alberto Lluch Lafuente
 
Declarative Language Definition
Declarative Language DefinitionDeclarative Language Definition
Declarative Language DefinitionEelco Visser
 
A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011Alberto Lluch Lafuente
 
Loom & Functional Graphs in Clojure @ LambdaConf 2015
Loom & Functional Graphs in Clojure @ LambdaConf 2015Loom & Functional Graphs in Clojure @ LambdaConf 2015
Loom & Functional Graphs in Clojure @ LambdaConf 2015Aysylu Greenberg
 

Semelhante a White Box Adaptation @ CINA Meeting 2013 (10)

Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...
 
Integrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AIIntegrated Influence - The Six Million Dollar Man of AI
Integrated Influence - The Six Million Dollar Man of AI
 
REVIEW OF VIRTUAL ARTICULATED ROBOT
REVIEW OF VIRTUAL ARTICULATED ROBOTREVIEW OF VIRTUAL ARTICULATED ROBOT
REVIEW OF VIRTUAL ARTICULATED ROBOT
 
A white-box perspective on self-adaptation and self-awareness
A white-box perspective on self-adaptation and self-awarenessA white-box perspective on self-adaptation and self-awareness
A white-box perspective on self-adaptation and self-awareness
 
Mixed Effects Models - Descriptive Statistics
Mixed Effects Models - Descriptive StatisticsMixed Effects Models - Descriptive Statistics
Mixed Effects Models - Descriptive Statistics
 
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...
A White-box Perspective on Self-Adaptation and Self-Awareness (with a focus o...
 
Declarative Language Definition
Declarative Language DefinitionDeclarative Language Definition
Declarative Language Definition
 
Hadoop I/O Analysis
Hadoop I/O AnalysisHadoop I/O Analysis
Hadoop I/O Analysis
 
A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011A conceptual framework for behavioural adaptation @ Leicester 2011
A conceptual framework for behavioural adaptation @ Leicester 2011
 
Loom & Functional Graphs in Clojure @ LambdaConf 2015
Loom & Functional Graphs in Clojure @ LambdaConf 2015Loom & Functional Graphs in Clojure @ LambdaConf 2015
Loom & Functional Graphs in Clojure @ LambdaConf 2015
 

Mais de Alberto Lluch Lafuente

Many-to-Many Information Flow Policies
Many-to-Many Information Flow PoliciesMany-to-Many Information Flow Policies
Many-to-Many Information Flow PoliciesAlberto Lluch Lafuente
 
Aggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal LogicAggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal LogicAlberto Lluch Lafuente
 
Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...Alberto Lluch Lafuente
 
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...Alberto Lluch Lafuente
 
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013Alberto Lluch Lafuente
 
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...Alberto Lluch Lafuente
 
Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...Alberto Lluch Lafuente
 
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011Alberto Lluch Lafuente
 
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009Alberto Lluch Lafuente
 

Mais de Alberto Lluch Lafuente (13)

Many-to-Many Information Flow Policies
Many-to-Many Information Flow PoliciesMany-to-Many Information Flow Policies
Many-to-Many Information Flow Policies
 
Aggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal LogicAggregate Programming through a Soft Modal Logic
Aggregate Programming through a Soft Modal Logic
 
A Semiring-valued Temporal Logic
A Semiring-valued Temporal LogicA Semiring-valued Temporal Logic
A Semiring-valued Temporal Logic
 
Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...Can we efficiently verify concurrent programs under relaxed memory models in ...
Can we efficiently verify concurrent programs under relaxed memory models in ...
 
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
Collaborative Task Execution In Volunteer Clouds (or how to choose a sub-revi...
 
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
State Space C-Reductions @ ETAPS Workshop GRAPHITE 2013
 
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
State Space c-Reductions of Concurrent Systems in Rewriting Logic @ ETAPS Wor...
 
Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...Evaluating the performance of model transformation styles with Maude @ Sympos...
Evaluating the performance of model transformation styles with Maude @ Sympos...
 
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011
 
Maude .:° ASCENS 2011
Maude .:° ASCENS 2011Maude .:° ASCENS 2011
Maude .:° ASCENS 2011
 
IMT Welcome Day 2011
IMT Welcome Day 2011IMT Welcome Day 2011
IMT Welcome Day 2011
 
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
A Graph Syntax for Processes and Services @ Workshop WS-FM 2009
 
An Algebra of Hierarchical Graphs
An Algebra of Hierarchical GraphsAn Algebra of Hierarchical Graphs
An Algebra of Hierarchical Graphs
 

White Box Adaptation @ CINA Meeting 2013

  • 1. ´ ´ WHITE BOX ADAPTATION -- Roberto Bruni, UNIPI -- Andrea Corradini, UNIPI -- Fabio Gadducci, UNIPI -- Alberto Lluch Lafuente, IMT -- Andrea Vandin, IMT
  • 2.
  • 3. What is ADAPTATION? Andrea Vandin Fabio Gadducci Andrea Corradini Roberto Bruni IMT Lucca University of Pisa University of Pisa University of Pisa
  • 4. OUTLINE 1 White box adaptation 2 Russian dolls & robots 3 Adaptable transition systems
  • 5. OUTLINE 1 A conceptual framework for adaptation [FASE 2012] 2 Modelling and Analyzing Adaptive Self-assembly Strategies with Maude [WRLA 2012] 3 Adaptable Transition Systems [WADT 2012]
  • 6. OUTLINE 1 White box adaptation 2 Russian dolls & robots 3 Adaptable transition systems
  • 9. “... a software system self-adaptive if modifies its own behavior in response to ...” [*] Oreizy, P., Gorlick, M.M., Taylor, R.N., Heimbigner, D., Johnson, G., Medvidovic, N., Quilici, A., Rosenblum, D.S., Wolf, A.L.: An architecture-based approach to self- adaptive software. Intelligent Systems and their Applications 14(3), 54–62 (1999) [*] Robertson, P., Shrobe, H.E., Laddaga, R.: Introduction to self-adaptive software: Applications. In: Robertson, P., Shrobe, H.E., Laddaga, R. (eds.) IWSAS. LNCS, vol. 1936, pp. 1–5. Springer (2001) [*] Self-Adaptive Software: Landscape and Research Challenges, Mazeiar Salehie, Ladan Tahvildari, ACM Transactions on Autonomous and Adaptive Systems 4, 2.
  • 10. IS THIS ADAPTATION? ... if p(x) then do_this; else do_that; endif ...
  • 11. IS THIS ADAPTATION? “if the hill is too steep then assemble with other robots and try again”
  • 12. is obstacle avoidance adaptation? “Obstacle avoidance may count as adaptive behaviour if […] obstacles appear rarely. [...] If the ‘normal’ environment is […] obstacle-rich, then avoidance becomes [...] “normal” behaviour rather than an adaptation.” - Ezequiel di Paolo, course on “Adaptive Systems”, University of Sussex, Spring 2006.
  • 15. WHAT IS A PROGRAM? “program = control + data” - Niklaus Wirth, “Algorithms + Data Structures = Programs”, Prentice-Hall (1976)
  • 16. WHAT IS AN ADAPTABLE PROGRAM? “adaptable program = control + data
  • 17. WHAT IS AN ADAPTABLE PROGRAM? “adaptable program = control + data control data + the rest ”
  • 18.
  • 19.
  • 20.
  • 21. WHAT IS AN ADAPTABLE PROGRAM? CONTROL DATA OTHER DATA CONTROL “adaptation is the run-time modification of control data”
  • 22. AUTONOMIC MANAGER Analyze Plan Monitor Knowledge Execute EFFECTOR MANAGED ELEMENT CONTROL DATA
  • 23. A PROGRAM IS... “...adaptable if it has a distinguished collection of CD that can be modified at runtime.” “...adaptive if its control data is modified at runtime for some computation.” “...self-adaptive if it modifies its own control data at runtime.”
  • 24. EXAMPLES OF CONTROL DATA plans aspects rules contexts configuration policies variables programs CONTROL DATA
  • 25. “an excellent discussion of the precise meaning of the term adaptive software.” - Carlo Ghezzi, Evolution, Adaptation, and the Quest for Incrementality, LNCS 7539/2012,
  • 26. 1 White box adaptation 2 Russian dolls & robots 3 Adaptable transition systems
  • 27. SELF-ASSEMBLING ROBOTS “if the hill is too steep then assemble with other robots and try again”
  • 28. - J. Meseguer et al., “Semantic models for distributed object reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
  • 29. RRDs IN A NUTSHELL Nested configurations of interacting objects Reflection (meta-programming)
  • 30. REFLECTIVE COMPONENTS manager state rules state rules interpreter
  • 31. SELF-AWARENESS “self-awareness means manager that the system is aware of its self states and behaviors. ” state rules - M.G. Hinchey, et al, “Self-managing software”. IEEE Computer 39(2) 107–109, 2006. interpreter (white-box component)
  • 32. Specification in Maude Statistical Model Checking 1 0.8 0.6 0.4 0.2 0 0 3 6 9
  • 33. % of robots crossing the hole 0.9 0.8 0.7 0.6 0.5 0.4 0.3 any shape 0.2 anyshape, no double-grip line 0.1 quasi-orthogonal line 0 0 3 6 9 number of robots in the scenario
  • 34. 1 White box adaptation 2 Russian dolls & robots 3 Adaptable transition systems
  • 35. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 36. task? task? D{}[] D{}[t] D{}[tt] down! up! up! Is it task? self task? v e? U{}[] U{}[t] U{}[tt] a da pti schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 37. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 38. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 39. task? task? D{}[] D{}[t] D{}[tt] ffer ent di down! up! up! ,140 = 4 U{}[t] task?ions! B 8 task? U{}[] at U{}[tt] ret schedule! int erp schedule! finish! finish! U{t}[] U{t}[t] task?
  • 41.
  • 42. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule! finish! finish! task
  • 43. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule! finish! finish! task?
  • 44. task? task? down! up! up! task? task? schedule! schedule! finish! finish! task? AIA = IA + control propositions (colors)
  • 45. task? task? down! up! up! task? task? schedule! schedule! finish! finish! task? AIA = IA + control propositions (colors)
  • 47. AUTONOMIC MANAGER Analyze Plan task? task? D{}[] D{}[t] D{}[tt] Knowledge Execute down! up! up! Monitor task? task? U{}[] U{}[t] U{}[tt] MANAGED COMPONENT schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 49. i.e. normal output actions become inputs i.e. M “listens” outputs of B
  • 50. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish? finish! U{t}[] U{t}[t] task?
  • 51. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule? schedule? finish? finish? U{t}[] U{t}[t] task?
  • 52. i.e. control output actions become inputs i.e. B “obeys” outputs of M
  • 53. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 54. task? task? D{}[] D{}[t] D{}[tt] down? up? up? task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 55. ISO (for deterministic AIA)
  • 57. i.e. control output actions become inputs i.e. B “obeys” outputs of M i.e. collapse transitions labelled with B i.e. M “ignores” B-moves
  • 58. task? task? D{}[] D{}[t] D{}[tt] down! up! up! task? task? U{}[] U{}[t] U{}[tt] schedule? schedule? finish? finish? U{t}[] U{t}[t] task?
  • 59. task? task? D{}[] D{}[t] D{}[tt] task? task? U{}[] U{}[t] U{}[tt] finish? finish?
  • 60.
  • 63. task? task? D{}[] D{}[t] D{}[tt] down? up? up! task? task? U{}[] U{}[t] U{}[tt] schedule! schedule! finish! finish! U{t}[] U{t}[t] task?
  • 64. 1 White box adaptation 2 Russian dolls & robots 3 Adaptable transition systems
  • 65.
  • 66.
  • 67. 1 Keep working on what we saw 2 Study cina's adaptation 3 Apply our ideas to scel