adaptable transition systems @ ascens meeting prague 2013

54
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

Upload: alberto-lluch-lafuente

Post on 02-Jul-2015

179 views

Category:

Documents


2 download

DESCRIPTION

My talk on "Adaptable Transition Systems" on the ASCENS general meeting at Prague (February 2013).

TRANSCRIPT

Page 1: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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

Page 2: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

adaptationis a game

Page 3: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Adaptable Transition Systems

White box adaptation1

2

OUTLINE

“A Conceptual Framework for Adaptation” [FASE 2012]

“Adaptable Transition Systems” [WADT 2012]

Page 4: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Adaptable Transition Systems

White box adaptation1

2

OUTLINE

“A Conceptual Framework for Adaptation” [FASE 2012]

“Adaptable Transition Systems” [WADT 2012]

Page 5: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

What isadaptation?

Page 6: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

“... 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.

Page 7: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Lotfi A. Zadeh,Proc. IEEE, 1963

Page 8: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

BLACK-BOX ADAPTATION

Page 9: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

White boxadaptation

Page 10: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

CONTROL DATA

configuration variables programs

aspects

contexts

policies

rules

ADAPTATION MECHANISMS

plansconstraints

contracts

messagesarchitectures

Page 11: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

ADAPTABLE SYSTEM

OTHER DATA

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

WHAT IS AN ADAPTABLE SYSTEM?

CONTROL DATA

Page 12: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

“...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...

Page 13: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

“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 14: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Adaptable Transition Systems

White box adaptation1

2

OUTLINE

“A Conceptual Framework for Adaptation” [FASE 2012]

“Adaptable Transition Systems” [WADT 2012]

Page 15: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 16: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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?

Page 17: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 18: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 19: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 20: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Interface Automatain a nutshell

Page 21: Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Page 22: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

task?

finish!finish!

task?

schedule! schedule!

task? task?

down! up!up!

IA = Automata + Interface (i/o distinction)

task

Page 23: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

task?

finish!finish!

task?

schedule! schedule!

task? task?

down! up!up!

IA = Automata + Interface (i/o distinction)

task?

Page 24: Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Page 25: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

down!up!

U

D

{t}

schedule?

finish!

{} [t]task?

schedule!

[] [tt]task?

schedule!

Page 26: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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!

Page 27: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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!

Page 28: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

AdaptableInterfaceAutomata

Page 29: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

task?

finish!finish!

task?

schedule! schedule!

task? task?

down! up!up!

task?

AIA = IA + control propositions (colors)

Page 30: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

task?

finish!finish!

task?

schedule! schedule!

task? task?

down! up!up!

AIA = IA + control propositions (colors)task?

Page 31: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

ExploitingControl Data

Page 32: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 33: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 34: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

some behavioural relation

Page 35: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

normal output actions become inputs(M “listens” outputs of B)

Page 36: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 37: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

control output actions become inputs(B “obeys” outputs of M)

Page 39: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 40: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 41: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

ISO(for deterministic AIA)

Page 42: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

BeyondIsomorphism

Page 43: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

control output actions become inputs(B “obeys” outputs of M)

collapse transitions labelled with B(M “ignores” B-moves)

Page 44: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

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 45: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

D{}[] D{}[t] D{}[tt]

U{}[] U{}[t] U{}[tt]

task?

finish?finish?

task?

task? task?

down! up!up!

Page 46: Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Page 47: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

alternating simulation

Page 48: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

(for deterministic IA)

Page 49: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Conclusion

Page 50: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

Adaptable Transition Systems

White box adaptation1

2

OUTLINE

“A Conceptual Framework for Adaptation” [FASE 2012]

“Adaptable Transition Systems” [WADT 2012]

Page 51: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

adaptationis a game

Page 52: Adaptable Transition Systems @ ASCENS Meeting Prague 2013
Page 53: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

“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?

Page 54: Adaptable Transition Systems @ ASCENS Meeting Prague 2013

THANKS!