adaptable transition systems @ ascens meeting prague 2013
DESCRIPTION
My talk on "Adaptable Transition Systems" on the ASCENS general meeting at Prague (February 2013).TRANSCRIPT
Adaptable Transition Systems-- Roberto Bruni, UNIPI
-- Andrea Corradini, UNIPI
-- Fabio Gadducci, UNIPI
-- Alberto Lluch Lafuente, IMT
-- Andrea Vandin, IMT
´´
ASCENS General and Working Meeting, Prague, February 11-14 2013
adaptationis a game
Adaptable Transition Systems
White box adaptation1
2
OUTLINE
“A Conceptual Framework for Adaptation” [FASE 2012]
“Adaptable Transition Systems” [WADT 2012]
Adaptable Transition Systems
White box adaptation1
2
OUTLINE
“A Conceptual Framework for Adaptation” [FASE 2012]
“Adaptable Transition Systems” [WADT 2012]
What isadaptation?
“... a software system self-adaptive if changes 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.
Lotfi A. Zadeh,Proc. IEEE, 1963
BLACK-BOX ADAPTATION
White boxadaptation
CONTROL DATA
configuration variables programs
aspects
contexts
policies
rules
ADAPTATION MECHANISMS
plansconstraints
contracts
messagesarchitectures
ADAPTABLE SYSTEM
OTHER DATA
“adaptation is the run-time modification of control data”
WHAT IS AN ADAPTABLE SYSTEM?
CONTROL DATA
“...adaptable if it has a distinguished control data 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 SYSTEM IS...
“an excellent discussion of the precise meaning of the term adaptive software.”
- Carlo Ghezzi, Evolution, Adaptation, and the
Quest for Incrementality, LNCS 7539/2012,
Adaptable Transition Systems
White box adaptation1
2
OUTLINE
“A Conceptual Framework for Adaptation” [FASE 2012]
“Adaptable Transition Systems” [WADT 2012]
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?
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?Is it self
adaptive?
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?
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?
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?
Interface Automatain a nutshell
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
IA = Automata + Interface (i/o distinction)
task
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
IA = Automata + Interface (i/o distinction)
task?
down!up!
U
D
{t}
schedule?
finish!
{} [t]task?
schedule!
[] [tt]task?
schedule!
down!up!
U
D
{t}
schedule?
finish!
{} [t]task?
schedule!
[] [tt]task?
schedule!
{}[] {}[t] {}[tt]
{t}[] {t}[t]
finish!
task? task?
task?{t}[tt]
task?
finish!finish!
down!up!
U
D
{t}
schedule?
finish!
{} [t]task?
schedule!
[] [tt]task?
schedule!
{}[] {}[t] {}[tt]
{t}[] {t}[t]
finish!
schedule! schedule!
task? task?
task?{t}[tt]
task?
finish!finish!
schedule?
schedule! schedule!
AdaptableInterfaceAutomata
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
task?
AIA = IA + control propositions (colors)
task?
finish!finish!
task?
schedule! schedule!
task? task?
down! up!up!
AIA = IA + control propositions (colors)task?
ExploitingControl Data
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?
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?
some behavioural relation
normal output actions become inputs(M “listens” outputs of B)
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?
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?
control output actions become inputs(B “obeys” outputs of M)
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?
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?
ISO(for deterministic AIA)
BeyondIsomorphism
control output actions become inputs(B “obeys” outputs of M)
collapse transitions labelled with B(M “ignores” B-moves)
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?
D{}[] D{}[t] D{}[tt]
U{}[] U{}[t] U{}[tt]
task?
finish?finish?
task?
task? task?
down! up!up!
alternating simulation
(for deterministic IA)
Conclusion
Adaptable Transition Systems
White box adaptation1
2
OUTLINE
“A Conceptual Framework for Adaptation” [FASE 2012]
“Adaptable Transition Systems” [WADT 2012]
adaptationis a game
“in the game between the system and the environment, the manager has a strategy to ensure the satisfaction of ψ.”
“receptiveness, realizability, and controllability can be formulated as model-checking problems for alternating-time formulas.”
RECONCILING BLACK- AND WHITE-BOX ADAPTATION?
THANKS!