Check out the new USENIX Web site.


Next:
Base-level reasoning Up: Polus Framework Previous: Reasoning


Problem determination

Input: The current state and the goals being violated.
Output: The components whose behavior needs to change and the type of change. This is expressed as a query of the form:

\begin{displaymath}\begin{split}
 & \phi\;=\; \{(c, b, change)\vert\:c \epsilon ...
...lon Behavior,\: b_{new}\:=(1+ change)b_{current}\}
 \end{split}\end{displaymath}

   


Approach: Problem determination has been an area of ongoing research. We briefly describe a simplified approach to illustrate how problem determination, base-reasoning and meta-reasoning work together.

In the SAN file system example, by analyzing the invocation path (i.e. client machine, controller, disks), we determine that disks are saturated (i.e. the current I/O rate is the maximum they can support). Furthermore, a change analysis with a previous state reveals that client I/O request rate has increased by 40% and that the sequential/random ratio of the workload has changed from $ 0.1$to $ 0.7$. Based on the problem determination analysis the following two queries get generated: Query 1: Select an action that improves the throughput of the disks by 25% (the fact that it is saturated will show-up in the preconditions of actions). Query 2: Select an action that improves the throughput of the (controller or client machine) by 25%, and is optimized for sequential workloads.



Next:
Base-level reasoning Up: Polus Framework Previous: Reasoning

2004-02-14