supporting self-adaptation in multi- agent systems

Post on 04-Jan-2016

216 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Supporting Self-Adaptation in Multi-Agent Systems

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Autonomic Computing

• Autonomic computing aims at providing systems and applications with self-management capabilities– self-configuration (automatic configuration according

to a specified policy)

– self-optimization (continuous performance monitoring)

– self-healing (detecting defects and failures, and taking corrective actions)

– self-protection (taking preventive measures and defending against malicious attacks)

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Adaptation Policies

• Adaptation policies prescribe a set of rules that guide the behavior of system components

Policy { Condition {

! helloWorldMB.isLoadHigh() } Decision {

helloWorldMB.helloWorld() }

Policy { Condition {

helloWorldMB.isLoadHigh() } Decision {

mailSender.sendEmail("admin@website.com", "High low problem", "...")

}

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Motivation

• Existing techniques mainly focus on defining a priori adaptation policies to manage system components.

• Adaptation polices can be specified using rules languages that they are often hard to write and cumbersome to maintain given their lower level specification and their low connection with the underlying system.

– SPL language

– Rainbow Adapation language

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Our Approach

• It uses Feature Model as a language to specify adaptation polices.

• Helps to avoid wrong configuration.

• Facilitates the definition of complex adaptation roles

IDW NN PI

Interpolation

SplineVegetation Slope Rain

Factors

GeoRisc

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Working Example I - Self-healing

• Georisc Input Factors to be analyzed– Different data sources

• File

• Data Base

Slope

Factors

File DataBase

Rain

File DataBase

Vegetation

File DataBase

c:\\GeoRisco\\dados\\rain.shp jdbc:mysql://localhost/olis

... ... ... ...

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Working Example I- Self-healing

@MBehaviour(ID="Rain",agentName="GeoRiscAgent")

public class Rain extends CyclicBehaviour {

private GeoRiscAgent geoRiscAgent;

private String dataSource =

...

}

Analyzer

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Factors

Rain

File DataBasexFactors

Rain

File DataBase

Feature ModelReconfiguration

“file://c:\\GeoRisco\\dados\\rain.shp“;

GenArch Derive a set of Tasks

“db://jdbc:mysql://localhost/rain“;

Failure(Rain,DataSource)

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Working Example II - Self-Optimization

• Data Interpolation

IDW NN PI

Interpolation

Spline

DataResponse

Time

......

DataResponse

Time

{10ms} {100MB} {20ms} {1000MB}

{25ms}

{2000MB}

{15ms}

{500MB}

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Working Example II - Self-Optimization

• Objective Function– Min(Response Time)

– Data >= Limit

IDW

Interpolation

Spline

DataResponse

Time

...

DataResponse

Time{10ms} {100MB} {20ms} {1000MB} IDW

Interpolation

Spline

DataResponse

Time

...

DataResponse

Time{10ms} {100MB} {20ms} {1000MB}

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Working Example II - Self-Optimization

@MAgent(ID="InperpolationAgent")

public class InterpolationAgent extends Agent {

private int responseTime;

...

}

Analyzer

Objective Function

GenArch Derive a set of Tasks

Feature ModelReconfiguration

IDW

Interpolation

Spline

DataResponse

Time

...

DataResponse

Time

{10ms} {100MB} {20ms} {1000MB}

IDW

Interpolation

Spline

DataResponse

Time

...

DataResponse

Time

{10ms} {100MB} {20ms} {1000MB}

iDW

Spline

Tuning(Interpolation,responseTime)

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Approach Overview

IDW NN PI

Interpolation

SplineVegetation Slope Rain

Factors

GeoRisc

1

Event

2Analyze and System

Reconfiguration

Feature Model Reconfiguration

IDW NN PI

Interpolation

SplineVegetation Slope Rain

Factors

GeoRisc

3Feature Model

Constraint Validation

Adaptation selection

4Structural Constraint

Validation

5Derive a set of

Adaptation Tasks

6System

Reconfiguration

Interpolation Agent

Interpolation Agent

Runtime system

Architectural Models

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Event-based Feature Reconfiguration

• Events are associated with Features and have a context

– Ev(feature,context)

• Events implies in a set of Reconfiguration Action regulated by a set of conditions

– Ev -> Ra

– Ra -> S({f}) ^ Ds({f})

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Contributions

• Reconfiguration actions can be automatically derived using feature model reasoning techniques– Incomplete specification

• Architectural Models enables the definition of complex adaption rules and automatically derivate concrete reconfiguration actions

• Trace links enable deeper analysis of changes:– Impact

– Soundness

– Viability

Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio

Contributions

• Reconfiguration actions can be automatically derived using feature model reasoning techniques

- Incomplete specification

• Architectural Models enables the definition of complex adaption rules and automatically derivate concrete reconfiguration actions

• Trace links enable deeper analysis of changes:– Impact

– Soundness

– Viability

- Filter- Best configuration- Debug

Supporting Self-Adaptation in Multi-Agent Systems

top related