Commit 8c8580768769706feca2ebfdc99b0fc5945b7d2b

Authored by Geoffrey Challen
1 parent 9db30a7c

New.

Showing 1 changed file with 14 additions and 14 deletions
certainty.tex
@@ -152,7 +152,7 @@ to drive the adaptation approaches discussed next. @@ -152,7 +152,7 @@ to drive the adaptation approaches discussed next.
152 152
153 While large-scale split testing is intended to provide good coverage over all 153 While large-scale split testing is intended to provide good coverage over all
154 possible sources of uncertainty we have discussed, it still normally requires 154 possible sources of uncertainty we have discussed, it still normally requires
155 -that only one choice be made at any given time---implying that two 155 +that only one decision be made at any given time---implying that two
156 alternatives may never be evaluated under identical conditions. For 156 alternatives may never be evaluated under identical conditions. For
157 \texttt{maybe} statements, however, we are exploring the idea of performing 157 \texttt{maybe} statements, however, we are exploring the idea of performing
158 \textit{simultaneous} split testing. In this model the app forks at the top 158 \textit{simultaneous} split testing. In this model the app forks at the top
@@ -168,7 +168,7 @@ interference between alternatives executing in parallel. @@ -168,7 +168,7 @@ interference between alternatives executing in parallel.
168 \subsection{\texttt{\large maybe} Endgames} 168 \subsection{\texttt{\large maybe} Endgames}
169 169
170 The entire \texttt{maybe} approach is predicated on the fact that there does 170 The entire \texttt{maybe} approach is predicated on the fact that there does
171 -exist, among the alternatives, a right choice, even if it depends on many 171 +exist, among the alternatives, a right decision, even if it depends on many
172 factors and uncertainties. We continue by discussing how the dataset 172 factors and uncertainties. We continue by discussing how the dataset
173 generated by post-deployment testing can be used to determine how to 173 generated by post-deployment testing can be used to determine how to
174 correctly choose \texttt{maybe} alternatives at runtime. 174 correctly choose \texttt{maybe} alternatives at runtime.
@@ -203,7 +203,7 @@ adaptation is time varying (dynamic) or not (static). We begin with the @@ -203,7 +203,7 @@ adaptation is time varying (dynamic) or not (static). We begin with the
203 second, somewhat easier case. 203 second, somewhat easier case.
204 204
205 If the alternative is determined through static adaptation then the correct 205 If the alternative is determined through static adaptation then the correct
206 -choice is a function of some unchanging (or very-slowly changing) aspect of 206 +decision is a function of some unchanging (or very-slowly changing) aspect of
207 the deployed environment. Examples include the device model, average network 207 the deployed environment. Examples include the device model, average network
208 conditions, the other apps installed on the device, or user characteristics 208 conditions, the other apps installed on the device, or user characteristics
209 such as gender, age, or charging habits. In this case it is possible that the 209 such as gender, age, or charging habits. In this case it is possible that the
@@ -227,7 +227,7 @@ into the fragile decision-making we are trying to avoid. @@ -227,7 +227,7 @@ into the fragile decision-making we are trying to avoid.
227 227
228 Instead, the \texttt{maybe} system allows developers to experiment with and 228 Instead, the \texttt{maybe} system allows developers to experiment with and
229 evaluate a variety of different dynamic adaptation strategies deployed in a 229 evaluate a variety of different dynamic adaptation strategies deployed in a
230 -companion library, with the choice guided by post-deployment testing. For 230 +companion library, with the decision guided by post-deployment testing. For
231 example, if the performance of an alternative is discovered to be correlated 231 example, if the performance of an alternative is discovered to be correlated
232 with a link providing a certain amount of bandwidth, then that adaptation 232 with a link providing a certain amount of bandwidth, then that adaptation
233 strategy can be connected with that particular \texttt{maybe} statement. 233 strategy can be connected with that particular \texttt{maybe} statement.
@@ -236,18 +236,18 @@ Observe that in some cases of dynamic adaptation, what begins as a @@ -236,18 +236,18 @@ Observe that in some cases of dynamic adaptation, what begins as a
236 \texttt{maybe} statement may end as effectively \texttt{if-else} statement 236 \texttt{maybe} statement may end as effectively \texttt{if-else} statement
237 switching on a static threshold---the same approach we attacked to motivate 237 switching on a static threshold---the same approach we attacked to motivate
238 our system. However, through the process of arriving at this point we have 238 our system. However, through the process of arriving at this point we have
239 -determined several things that were initially unknown: what the alternatives  
240 -accomplish, that a single threshold works for all users, and what that  
241 -threshold is. And by maintaining the choice as a \texttt{maybe} statement,  
242 -they can continue the adaptation process as devices, users, and networks 239 +determined several things that were initially unknown: (1) what the
  240 +alternatives accomplish, (2) that a single threshold works for all users, and
  241 +(3) what that threshold is. And by maintaining the choice as a \texttt{maybe}
  242 +statement, they can continue adaptating as devices, users, and networks
243 change. 243 change.
244 244
245 Another benefit of this approach is that time-varying decisions can be 245 Another benefit of this approach is that time-varying decisions can be
246 -outsourced to developers with expertise in the particular area driving  
247 -adaptation policy decisions. For example, by exposing an energy-performance  
248 -tradeoff through a \texttt{maybe} statement, a developer allows it to be  
249 -driven by a sophisticated machine learning algorithm written by an expert in  
250 -energy adaptation, instead of their own ad-hoc approach. 246 +outsourced to developers with expertise in the particular area affecting
  247 +adaptation decisions. For example, by exposing an energy-performance tradeoff
  248 +through a \texttt{maybe} statement, a developer allows it to be connected to
  249 +a sophisticated machine learning algorithm written by an expert in energy
  250 +adaptation, instead of their own ad-hoc approach.
251 251
252 \subsubsection{Manual adaptation} 252 \subsubsection{Manual adaptation}
253 253
@@ -255,7 +255,7 @@ In some cases even our best efforts to automatically adapt may fail, and it @@ -255,7 +255,7 @@ In some cases even our best efforts to automatically adapt may fail, and it
255 may be impossible to predict which alternative is best for a particular user 255 may be impossible to predict which alternative is best for a particular user
256 using a particular device at a particular time. If the differences between 256 using a particular device at a particular time. If the differences between
257 the alternatives are small, then it may be appropriate to simply fall back to 257 the alternatives are small, then it may be appropriate to simply fall back to
258 -a best-effort choice. However, if the differences between the alternatives 258 +a best-effort decision. However, if the differences between the alternatives
259 are significant then the \texttt{maybe} alternatives may need to be exposed 259 are significant then the \texttt{maybe} alternatives may need to be exposed
260 to the user through a settings menu. Fortunately, information obtained 260 to the user through a settings menu. Fortunately, information obtained
261 through testing can still be presented to the user to guide their decision. 261 through testing can still be presented to the user to guide their decision.