White Box Adaptation @ CINA Meeting 2013

510 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
510
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

White Box Adaptation @ CINA Meeting 2013

  1. 1. ´ ´WHITE BOX ADAPTATION -- Roberto Bruni, UNIPI -- Andrea Corradini, UNIPI -- Fabio Gadducci, UNIPI -- Alberto Lluch Lafuente, IMT -- Andrea Vandin, IMT
  2. 2. What is ADAPTATION?Andrea Vandin Fabio Gadducci Andrea Corradini Roberto BruniIMT Lucca University of Pisa University of Pisa University of Pisa
  3. 3. OUTLINE1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  4. 4. OUTLINE1 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]
  5. 5. OUTLINE1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  6. 6. What isAdaptation?
  7. 7. Lotfi A. Zadeh,Proc. IEEE, 1963
  8. 8. “... 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.
  9. 9. IS THIS ADAPTATION? ... if p(x) then do_this; else do_that; endif ...
  10. 10. IS THIS ADAPTATION?“if the hill is too steep then assemble with other robots and try again”
  11. 11. is obstacle avoidance adaptation? “Obstacle avoidance may count as adaptivebehaviour if […] obstacles appear rarely. [...] If the ‘normal’ environment is […] obstacle-rich,then avoidance becomes [...] “normal” behaviourrather than an adaptation.” - Ezequiel di Paolo, course on “Adaptive Systems”, University of Sussex, Spring 2006.
  12. 12. BLACK-BOX ADAPTATION
  13. 13. White boxadaptation
  14. 14. WHAT IS A PROGRAM?“program = control + data” - Niklaus Wirth, “Algorithms + Data Structures = Programs”, Prentice-Hall (1976)
  15. 15. WHAT IS AN ADAPTABLE PROGRAM?“adaptable program = control + data
  16. 16. WHAT IS AN ADAPTABLE PROGRAM?“adaptable program = control + data control data + the rest ”
  17. 17. WHAT IS AN ADAPTABLE PROGRAM? CONTROL DATA OTHER DATA CONTROL“adaptation is the run-time modification of control data”
  18. 18. AUTONOMIC MANAGER Analyze Plan Monitor Knowledge Execute EFFECTORMANAGED ELEMENT CONTROL DATA
  19. 19. A PROGRAM IS...“...adaptable if it has a distinguished collection of CDthat can be modified at runtime.”“...adaptive if its control data is modified at runtimefor some computation.”“...self-adaptive if it modifies its own control data atruntime.”
  20. 20. EXAMPLES OF CONTROL DATA plans aspects rules contexts configuration policies variables programs CONTROL DATA
  21. 21. “an excellent discussion of the precise meaning of the term adaptive software.” - Carlo Ghezzi, Evolution, Adaptation, and the Quest for Incrementality, LNCS 7539/2012,
  22. 22. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  23. 23. SELF-ASSEMBLING ROBOTS“if the hill is too steep then assemble with other robots and try again”
  24. 24. - J. Meseguer et al., “Semantic models for distributed object reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
  25. 25. RRDs IN A NUTSHELL Nested configurations of interacting objectsReflection (meta-programming)
  26. 26. REFLECTIVE COMPONENTS manager state rules state rules interpreter
  27. 27. 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)
  28. 28. Specification in MaudeStatistical Model Checking 1 0.8 0.6 0.4 0.2 0 0 3 6 9
  29. 29. % 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
  30. 30. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  31. 31. 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?
  32. 32. 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?
  33. 33. 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?
  34. 34. 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?
  35. 35. 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?
  36. 36. AdaptableInterfaceautomata
  37. 37. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule!finish! finish! task
  38. 38. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule!finish! finish! task?
  39. 39. task? task? down! up! up! task? task? schedule! schedule!finish! finish! task? AIA = IA + control propositions (colors)
  40. 40. task? task? down! up! up! task? task? schedule! schedule!finish! finish! task? AIA = IA + control propositions (colors)
  41. 41. Now what?
  42. 42. 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?
  43. 43. some behavioural relation
  44. 44. i.e. normal output actions become inputsi.e. M “listens” outputs of B
  45. 45. 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?
  46. 46. 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?
  47. 47. i.e. control output actions become inputsi.e. B “obeys” outputs of M
  48. 48. 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?
  49. 49. 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?
  50. 50. ISO (for deterministic AIA)
  51. 51. Beyondisomorhism
  52. 52. i.e. control output actions become inputsi.e. B “obeys” outputs of Mi.e. collapse transitions labelled with Bi.e. M “ignores” B-moves
  53. 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. 54. task? task?D{}[] D{}[t] D{}[tt] task? task?U{}[] U{}[t] U{}[tt] finish? finish?
  55. 55. alternating simulation
  56. 56. (for deterministic IA)
  57. 57. 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?
  58. 58. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  59. 59. 1 Keep working on what we saw2 Study cinas adaptation3 Apply our ideas to scel

×