You are on page 1of 8

Handling Uncertainty in Autonomic Systems

Disney

Shang-Wen Cheng and David Garlan {zensoul,garlan}@cs.cmu.edu CMU Architecture-Based Language & Environment Group

Intl Workshop on Living with Uncertainties November 5, 2007

Big Picture

Autonomic Monitor-Analyze-Plan-Execute loop introduces inherent uncertainties


Detecting the existence of a problem Deciding on adaptation actions Carrying out the actions

Architecture-based instantiation provides techniques


Smoothing, model distribution, prediction Capture cost and effect, estimate likelihood Explicit settling time

Handling Uncertainty

Shang-Wen Cheng IWLU 2007

Autonomic MAPE Loop

Reference standard

Monitor-Analyze-Plan-Execute Analyze problem detection Plan adaptation choice Execute outcome


Analyze Plan

Loose coupling uncertainties


Monitor

Architectural Knowledge Model

Execute

Knowledge? Architecture!

Global system perspective Important behaviors and properties Explicit system constraints Proven tradeoff, analysis techniques

Managed element

Architecture-based self-adaptation
Handling Uncertainty

Shang-Wen Cheng IWLU 2007

Rainbow: Instantiating MAPE


Model Manager maintains architectural knowledge of system Architecture Analyzer detects constraint violation in model trigger Adaptation Engine selects a strategy to maximize utility adapt
Architecture Layer Adaptation Executor Adaptation Engine Architecture Analyzer

Analyze
Model Manager

Plan

Gauges

Translation Infrastructure
Effectors

Knowledge Monitor
Probes

Execute

System API Resource


Target System

Discovery

System Layer

Managed element

Handling Uncertainty

Shang-Wen Cheng IWLU 2007

Does a Problem Exist?

Touchpoint Autonomic Manager

Analyze

Plan

Monitor

Architectural Knowledge Model

Execute

Stochastic uncertainty of system properties, e.g., CPU


Transient rise above threshold not necessarily worth adaptation Steady trend toward but not beyond threshold still problematic
yHI yLO yHI yHI

?
t

Three solution techniques


Moving-average filter to smooth stochastic Explicit probability distribution as envelop to determine problem Resource prediction to anticipate problem

Handling Uncertainty

Shang-Wen Cheng IWLU 2007

Which Adaptation Action?

Touchpoint Autonomic Manager

Analyze

Plan

Monitor

Architectural Knowledge Model

Execute

Strategy selection uncertainty


Cost and effect of actions Outcome of action steps


[+500, +2, 5, 1]

ulatency(), uquality(), ucost(), udisruption() (wlatency, wquality, wcost, wdisruption) = (0.5, 0.3, 0.1, 0.1) [= 1]
Given tree X w/ children A, B, & pA, pB EA(X) = Agg_AV(X) = pA Agg_AV(A) + pB Agg_AV(B) +

Score

T1 [375, 1.5, 3.75, .75] 75% = 0.58 P0 [latency: low; quality: textual; cost: 1; disruption: 3] 100% [-125, [-500,1.5, +0, 1, 4.75, 1.25] 2] 25% [-1000, -2, 1, 3] T3 T2 [0.4, 0.6] [900,1, 5,0.2, 4.75, 2] [-1000, +0, [-2000, +2, 4, 3, 5] 2]

Three-step solution technique

Assign cost and effect attributes to action steps Estimate the likelihood of known effects of an action step Compute expected aggregate attribute vector of a strategy and then score with utility function
Shang-Wen Cheng IWLU 2007
6

Handling Uncertainty

Did Action Succeed?

Touchpoint Autonomic Manager

Analyze

Plan

Monitor

Architectural Knowledge Model

Execute

Wait-time uncertainty for action execution


Too short: misjudge outcome of strategy Too long: unacceptable latency for adaptation
strategy SimpleReduceResponseTime() { boolean c0 = responseTime() > RespTimeLimit; t0: (c0) -> switchToTextualContent() { t1: (#[prob{t1}] success @[1000/*ms*/]) -> done ; t2: (#[prob{t2}] c0 @[2000/*ms*/]) -> enlistServer(1) { t2a: (success @[1000/*ms*/]) -> done ; }}}

20

y(k)

10

0 0 5 10 15 20 25

ks

Solution technique

Adopt a concept of settling time from control theory wait time Explicit description of time window to wait for action execution
Shang-Wen Cheng IWLU 2007
7

Handling Uncertainty

The End

Summary

Inherent uncertainties in autonomic MAPE loop Architecture-based Rainbow solves 3 uncertainty sources

Stochastic props smoothing, model distribution, prediction Strategy selection capture cost & effect, estimate likelihood Wait time of execution explicit settling time

Questions?

Shang-Wen Cheng and David Garlan


{zensoul,garlan}@cs.cmu.edu Carnegie Mellon University

Handling Uncertainty

Shang-Wen Cheng IWLU 2007

You might also like