A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

43
1 WP2 / ASCENS General Meeting Grenoble, July 7-8, 2011 A conceptual framework for (behavioural) adaptation [email protected]

description

Talk at ASCENS meeting in Grenoble (July 2011).

Transcript of A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

Page 1: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

1

WP2 / ASCENS General Meeting Grenoble, July 7-8, 2011

A conceptual framework

for (behavioural) adaptation

[email protected]

Page 2: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

towards D2.4

D2.4A Foundational Framework for Autonomic Computational Models with Feedback and Assessment of Models

“A Conceptual Framework for Adaptation”

Page 3: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

·1· A framework for adaptation

·2· Reflective Rule-based Programming

·3· Context-Oriented Programming

Page 4: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

·1· A framework for adaptation

·2· Reflective Rule-based Programming

·3· Context-Oriented Programming

Page 5: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

our sources of inspiration

IBM's AC/MAPE-K

MAUDECONTEXT-ORIENTED PROGRAMMING

EU Projects (S-CUBE, CASCADAS, ALLOW,...)

SCEL (META)KLAIM

WP4's SELF-ADAPTATION PATTERNS

MATTHIAS' GOAL-ORIENTED

ADAPTATION

Page 6: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

let's walk together

D2.4

Foundational … Feedback

… Assessment

“A Conceptual Framework for Adaptation”

SCELSCEL

Casestudy 3

Casestudy 1Case

study 2

WP4's frkWP4's frk

Casestudy 3

Casestudy 1Case

study 2

Page 7: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

“The act of modifying behaviour...”

- WP4, (c.f. “framework for self-adaptation and self-expression in ASCENS”)

adaptation

Page 8: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptable

“Something whose behaviour can be modified”

- WP2

Page 9: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptable program =

CONTROL DATA

control

+ data

Page 10: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptable program =

CONTROL DATA

CONTROLDATA

MANAGER

control

+ data

+ control data

Page 11: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

which “control data”?

CONTROL

CONTROL

DATA

rules?

contexts?

interactions?

policies?

etc.

Page 12: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

smells like control data...

Models: HO π-calculus, MetaKlaim, HO Petri nets,

Rewriting Logic, HO Graph Grammars,

Logic Programming, etc.

Languages: reflection,

aspects, monads,

effects, contexts, etc.

etc.

Page 13: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

desiderata 1: compositional

C0

CD0

C1

CD1

...

Page 14: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

WP4's internal feedback loop pattern

CONTROL

CONTROLDATA

INTERNALMANAGER

Page 15: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

WP4's external feedback loops?

CONTROL

CD

EXTERNALCONTROLLER

CD

Page 16: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

(un)desiderata?

C

CD

C

CD

C

CD

reciprocal management?

self management

(without separation of concerns)?

Page 17: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

desiderata 2: MAPE-K compliance

Monitor ExecuteKnowledge

Analyze Plan

AUTONOMIC MANAGER

MANAGED ELEMENT

Control Data

Control Data

Con

trol

Page 18: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

MAPE-K towers

M EK

A P

MANAGED ELEMENT

CD

M EK

A P

CD

M EK

A P

CD

CD

Page 19: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

·1· A framework for adaptation

·2· Reflective Rule-based Programming

·3· Context-Oriented Programming

Page 20: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

reflection tower

Page 21: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

reflection tower

Page 22: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

reflection tower

Page 23: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

reflection tower

Page 24: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptation tower

Page 25: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptation tower

Page 26: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptation tower

Page 27: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

the tower in the framework...

Page 28: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

http://www.springerlink.com/content/3lcycpvew20fcl9q/

Page 29: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

mobility

Page 30: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

adaptation

Page 31: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

·1· A framework for adaptation

·2· Reflective Rule-based Programming

·3· Context-Oriented Programming

Page 32: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

http://arxiv.org/abs/1105.0069v1

Page 33: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

context-oriented programming

A

A'

A''

Page 34: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

context-oriented languages

ContextL(isp)ContextPy(thon)ContextR(uby)ContextS(malltalk)ContextSchemeContextJ(ava)ContextErlang...

Page 35: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

contextJclass bot {

private void go(void);

void go(void){

set_speed(normal); }

layer surface{

void go(void){

all_wheel_drive();

set_speed(fast); }}

layer darkness{

void go(void){

proceed(); /* propagation */

turn_lights_on();

set_speed(slow); }}

}

Page 36: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

dynamic dispatching

darkness

surface

meteor_stormwith(surface){

with(darkness){

with(meteor_storm){

go();

}

}

}

Active Variation Stack

Page 37: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

layers as control data

darkness

surface

meteor_storm

with(this.layers()){

go();

}

bot.set_layers(...);

Page 38: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

MAPE-K in COP

Page 39: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

·1· A framework for adaptation

·2· Reflective Rule-based Programming

·3· Context-Oriented Programming

Page 40: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

summary

We have presented a conceptual framework for adaptation;One step towards the foundational models of AC (D2.4);Assessment with foundational models and paradigms:

– e.g. reflective logical frameworks;– e.g. context-oriented languages;

We are starting to understand what is adaptation;We are figuring out how to realize it with “our” models.

Page 41: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

some questions

·1· What is “control data” in SCEL? (policies? Tuples?)

·2· Does SCEL have meta/reflective features? (metaKlaim?)

·3· Adaptation towers/loops in SCEL: programmable? native?

·4· Compositional approach (c.f. BIP) vs external/imp. loops?

·5· Structural adaptation via “structural data” (e.g. connectors)?

·6· Is control data Knowledge? Expressed in KnowLang?

·7· Is control data an interface? (c.f. WP2's kick-off talk)

·8· Are goals/plans control data?

Page 42: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

outlook

D2.4

Foundational … Feedback

… Assessment

“A Conceptual Framework for Adaptation”

SCELSCEL

Casestudy 3

Casestudy 1Case

study 2

WP4's frkWP4's frk

Casestudy 3

Casestudy 1Case

study 2

Page 43: A conceptual framework for behavioural adaptation @ Meeting ASCENS 2011

QUESTIONS?

ascens

(or answers)