white box adaptation @ cina meeting 2013
TRANSCRIPT
![Page 1: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/1.jpg)
WHITE BOX ADAPTATION-- Roberto Bruni, UNIPI
-- Andrea Corradini, UNIPI
-- Fabio Gadducci, UNIPI
-- Alberto Lluch Lafuente, IMT
-- Andrea Vandin, IMT
´ ´
![Page 2: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/2.jpg)
![Page 3: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/3.jpg)
Andrea VandinIMT Lucca
Roberto BruniUniversity of Pisa
Andrea CorradiniUniversity of Pisa
Fabio GadducciUniversity of Pisa
What isADAPTATION?
![Page 4: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/4.jpg)
Russian dolls & robots
Adaptable transition systems
White box adaptation1
2
3
OUTLINE
![Page 5: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/5.jpg)
1
2
3
A conceptual framework for adaptation [FASE 2012]
Modelling and Analyzing Adaptive Self-assembly Strategies with Maude [WRLA 2012]
Adaptable Transition Systems [WADT 2012]
OUTLINE
![Page 6: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/6.jpg)
Russian dolls & robots
Adaptable transition systems
White box adaptation1
2
3
OUTLINE
![Page 7: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/7.jpg)
What isAdaptation?
![Page 8: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/8.jpg)
Lotfi A. Zadeh,Proc. IEEE, 1963
![Page 9: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/9.jpg)
“... 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.
![Page 10: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/10.jpg)
...if p(x) thendo_this;
elsedo_that;
endif...
IS THIS ADAPTATION?
![Page 11: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/11.jpg)
“if the hill is too steep then assemble with other robots and try again”
IS THIS ADAPTATION?
![Page 12: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/12.jpg)
“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.
is obstacle avoidance adaptation?
![Page 13: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/13.jpg)
BLACK-BOX ADAPTATION
![Page 14: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/14.jpg)
White boxadaptation
![Page 15: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/15.jpg)
“program = control + data”
- Niklaus Wirth, “Algorithms + Data Structures = Programs”,Prentice-Hall (1976)
WHAT IS A PROGRAM?
![Page 16: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/16.jpg)
“adaptable program = control + data
WHAT IS AN ADAPTABLE PROGRAM?
![Page 17: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/17.jpg)
“adaptable program = control + data
control data + the rest ”
WHAT IS AN ADAPTABLE PROGRAM?
![Page 18: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/18.jpg)
![Page 19: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/19.jpg)
![Page 20: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/20.jpg)
![Page 21: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/21.jpg)
CONTROL
OTHER DATA
“adaptation is the run-time modification of control data”
WHAT IS AN ADAPTABLE PROGRAM?
CONTROL DATA
![Page 22: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/22.jpg)
Monitor ExecuteKnowledge
Analyze Plan
AUTONOMIC MANAGER
CONTROLDATA
EFFECTORMANAGED ELEMENT
![Page 23: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/23.jpg)
“...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.”
A PROGRAM IS...
![Page 24: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/24.jpg)
CONTROL DATA
configuration variables programs
aspects
contexts
policies
rules
EXAMPLES OF CONTROL DATA
plans
![Page 25: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/25.jpg)
“an excellent discussion of the precise meaning of the term adaptive software.”
- Carlo Ghezzi, Evolution, Adaptation, and the
Quest for Incrementality, LNCS 7539/2012,
![Page 26: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/26.jpg)
Russian dolls & robots
Adaptable transition systems
White box adaptation1
2
3
![Page 27: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/27.jpg)
“if the hill is too steep then assemble with other robots and try again”
SELF-ASSEMBLING ROBOTS
![Page 28: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/28.jpg)
- J. Meseguer et al., “Semantic models for distributed object reflection”, ECOOP 2002, LNCS 2374. Springer, 1–36.
![Page 29: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/29.jpg)
RRDs IN A NUTSHELL
Nested configurationsof interacting objects
Reflection (meta-programming)
![Page 30: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/30.jpg)
state rules
interpreter
state rules
manager
REFLECTIVE COMPONENTS
![Page 31: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/31.jpg)
interpreter
state rules
manager
(white-box component)
“self-awareness means that the system is aware of its self states and behaviors. ”
- M.G. Hinchey, et al, “Self-managing software”. IEEE Computer 39(2) 107–109, 2006.
SELF-AWARENESS
![Page 32: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/32.jpg)
0 3 6 90
0.2
0.4
0.6
0.8
1
Specification in Maude
Statistical Model Checking
![Page 33: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/33.jpg)
0 3 6 90
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
any shapeanyshape, no double-griplinequasi-orthogonal line
% of robots crossing the hole
number of robots in the scenario
![Page 34: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/34.jpg)
Russian dolls & robots
Adaptable transition systems
White box adaptation1
2
3
![Page 35: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/35.jpg)
D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
down!
finish!finish!
up!up!
task?
schedule! schedule!
task? task?
D{}[]
task?
![Page 36: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/36.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?Is it self
adaptive?
down! up!up!
task?
![Page 37: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/37.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
![Page 38: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/38.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
![Page 39: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/39.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
B8= 4,140 different
interpretations!
task?
![Page 40: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/40.jpg)
AdaptableInterfaceautomata
![Page 41: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/41.jpg)
![Page 42: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/42.jpg)
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
IA = Automata + Interface (i/o distinction)
task
![Page 43: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/43.jpg)
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
IA = Automata + Interface (i/o distinction)
task?
![Page 44: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/44.jpg)
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
AIA = IA + control propositions (colors)
![Page 45: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/45.jpg)
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
AIA = IA + control propositions (colors)task?
![Page 46: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/46.jpg)
Now what?
![Page 47: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/47.jpg)
Monitor ExecuteKnowledge
Analyze Plan
AUTONOMIC MANAGER
MANAGED COMPONENT
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
![Page 48: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/48.jpg)
some behavioural relation
![Page 49: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/49.jpg)
i.e. normal output actions become inputsi.e. M “listens” outputs of B
![Page 50: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/50.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish?
task?
schedule! schedule!
task? task?
down! up!up!
task?
![Page 51: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/51.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish?finish?
task?
schedule? schedule?
task? task?
down! up!up!
task?
![Page 52: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/52.jpg)
i.e. control output actions become inputsi.e. B “obeys” outputs of M
![Page 53: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/53.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
![Page 54: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/54.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down? up?up?
task?
![Page 55: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/55.jpg)
ISO(for deterministic AIA)
![Page 56: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/56.jpg)
Beyondisomorhism
![Page 57: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/57.jpg)
i.e. control output actions become inputsi.e. B “obeys” outputs of M
i.e. collapse transitions labelled with Bi.e. M “ignores” B-moves
![Page 58: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/58.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish?finish?
task?
schedule? schedule?
task? task?
down! up!up!
task?
![Page 59: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/59.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
task?
finish?finish?
task?
task? task?
![Page 60: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/60.jpg)
![Page 61: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/61.jpg)
alternating simulation
![Page 62: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/62.jpg)
(for deterministic IA)
![Page 63: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/63.jpg)
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
U{t}[] U{t}[t]
task?
finish!finish!
task?
schedule! schedule!
task? task?
down? up!up?
task?
![Page 64: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/64.jpg)
Russian dolls & robots
Adaptable transition systems
White box adaptation1
2
3
![Page 65: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/65.jpg)
![Page 66: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/66.jpg)
![Page 67: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/67.jpg)
Study cina's adaptation
Apply our ideas to scel
Keep working on what we saw1
2
3
![Page 68: White Box Adaptation @ CINA Meeting 2013](https://reader034.vdocuments.us/reader034/viewer/2022052622/559511c01a28ab1c108b4801/html5/thumbnails/68.jpg)