![Page 1: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/1.jpg)
Supporting Self-Adaptation in Multi-Agent Systems
![Page 2: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/2.jpg)
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)
![Page 3: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/3.jpg)
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("[email protected]", "High low problem", "...")
}
![Page 4: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/4.jpg)
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
![Page 5: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/5.jpg)
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
![Page 6: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/6.jpg)
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
... ... ... ...
![Page 7: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/7.jpg)
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)
![Page 8: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/8.jpg)
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}
![Page 9: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/9.jpg)
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}
![Page 10: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/10.jpg)
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)
![Page 11: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/11.jpg)
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
![Page 12: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/12.jpg)
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})
![Page 13: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/13.jpg)
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
![Page 14: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/14.jpg)
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
![Page 15: Supporting Self-Adaptation in Multi- Agent Systems](https://reader035.vdocuments.mx/reader035/viewer/2022080917/56649f0c5503460f94c1f862/html5/thumbnails/15.jpg)
Supporting Self-Adaptation in Multi-Agent Systems