White Box Adaptation @ CINA Meeting 2013
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

White Box Adaptation @ CINA Meeting 2013

  • 443 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
443
On Slideshare
442
From Embeds
1
Number of Embeds
1

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 1

https://twitter.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ´ ´WHITE BOX ADAPTATION -- Roberto Bruni, UNIPI -- Andrea Corradini, UNIPI -- Fabio Gadducci, UNIPI -- Alberto Lluch Lafuente, IMT -- Andrea Vandin, IMT
  • 2. What is ADAPTATION?Andrea Vandin Fabio Gadducci Andrea Corradini Roberto BruniIMT Lucca University of Pisa University of Pisa University of Pisa
  • 3. OUTLINE1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  • 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. OUTLINE1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  • 6. What isAdaptation?
  • 7. Lotfi A. Zadeh,Proc. IEEE, 1963
  • 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. IS THIS ADAPTATION? ... if p(x) then do_this; else do_that; endif ...
  • 10. IS THIS ADAPTATION?“if the hill is too steep then assemble with other robots and try again”
  • 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. BLACK-BOX ADAPTATION
  • 13. White boxadaptation
  • 14. WHAT IS A PROGRAM?“program = control + data” - Niklaus Wirth, “Algorithms + Data Structures = Programs”, Prentice-Hall (1976)
  • 15. WHAT IS AN ADAPTABLE PROGRAM?“adaptable program = control + data
  • 16. WHAT IS AN ADAPTABLE PROGRAM?“adaptable program = control + data control data + the rest ”
  • 17. WHAT IS AN ADAPTABLE PROGRAM? CONTROL DATA OTHER DATA CONTROL“adaptation is the run-time modification of control data”
  • 18. AUTONOMIC MANAGER Analyze Plan Monitor Knowledge Execute EFFECTORMANAGED ELEMENT CONTROL DATA
  • 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. EXAMPLES OF CONTROL DATA plans aspects rules contexts configuration policies variables programs CONTROL DATA
  • 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. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  • 23. SELF-ASSEMBLING ROBOTS“if the hill is too steep then assemble with other robots and try again”
  • 24. - J. Meseguer et al., “Semantic models for distributed object reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
  • 25. RRDs IN A NUTSHELL Nested configurations of interacting objectsReflection (meta-programming)
  • 26. REFLECTIVE COMPONENTS manager state rules state rules interpreter
  • 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. Specification in MaudeStatistical Model Checking 1 0.8 0.6 0.4 0.2 0 0 3 6 9
  • 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. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  • 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. 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. 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. 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. 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. AdaptableInterfaceautomata
  • 37. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule!finish! finish! task
  • 38. IA = Automata + Interface (i/o distinction) task? task? down! up! up! task? task? schedule! schedule!finish! finish! task?
  • 39. task? task? down! up! up! task? task? schedule! schedule!finish! finish! task? AIA = IA + control propositions (colors)
  • 40. task? task? down! up! up! task? task? schedule! schedule!finish! finish! task? AIA = IA + control propositions (colors)
  • 41. Now what?
  • 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. some behavioural relation
  • 44. i.e. normal output actions become inputsi.e. M “listens” outputs of B
  • 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. 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. i.e. control output actions become inputsi.e. B “obeys” outputs of M
  • 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. 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. ISO (for deterministic AIA)
  • 51. Beyondisomorhism
  • 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. 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] task? task?U{}[] U{}[t] U{}[tt] finish? finish?
  • 55. alternating simulation
  • 56. (for deterministic IA)
  • 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. 1 White box adaptation2 Russian dolls & robots3 Adaptable transition systems
  • 59. 1 Keep working on what we saw2 Study cinas adaptation3 Apply our ideas to scel