• No results found

Developing Strategies for Sustainability: Issues of purpose and content

Q 7 Organisations which do not have a diverse range of funding streams are at

9 FURTHER THEORISING: INSIGHTS FROM FOUR CASE STUDIES

9.3 Developing Strategies for Sustainability: Issues of purpose and content

CAPRI allows agents to express probabilistic evidence in terms of beliefs and likelihoods.

A belief or likelihood expresses the conditional probability of an event given some evi-dence. A belief expresses the conditional probability that a property has a certain value given some evidence, and a likelihood expresses the conditional probability of observing certain evidence given certain property values [71]. More formally, a belief about x repre-sents P(x|e), the probability of observing each value of x given some evidence e; likelihood represents P(e|x), the probability of observing the available evidence given each value of x. That is, a belief is a prediction about a variable given some evidence, whereas a likeli-hood expresses how the value of a variable affects the probability of the outcome observed.

For example, consider an agent diagnosing an HTTP connection failure. The agent may compute a belief that the status of a web server is OKwith 90% probability andFAILwith 10% probability given evidence of its historical connection status. After taking into ac-count evidence from additional observations, however, it may determine that the likelihood of observing all the available evidence about a failure is 23% if the web server has failed and 10% if it has not failed. Therefore it produces a diagnosis stating that more likely than not, the web server has failed. Both beliefs and likelihoods are necessary to express the messages required for belief propagation. This thesis adopts the sameπandλnotation for beliefs and likelihoods as Pearl [71]. Agents may infer probabilistic beliefs and likelihoods based on observations and dependency knowledge.

A belief also indicates the evidence on which it is based so that other agents can de-cide which beliefs to use and to avoid double-counting evidence. For example, suppose a regional agent infers the probability that an HTTP connection has failed using evidence about the number of failures to the destination web server for the HTTP connection. If the regional agent then receives a belief from a specialist agent about the status of the web server, the regional agent should only consider that new information if the new belief is based on evidence other than the number of failures to the destination web server.

There are several special cases of beliefs that are useful for distributed inference. If a belief does not take into account any evidence, then it is a prior probability distribution. If a likelihood does not consider any evidence, then the probability is 1. If a belief takes into account all evidence except the evidence downstream of a particular child i (diagnostic evidence), then it is πX,i(X). If a likelihood takes into account all evidence except the evidence upstream of a parent i (causal evidence), then it isλX,i(X). Agents can perform belief propagation by exchangingπandλbeliefs and likelihoods.

Figure 4-3 gives an example of a belief about a DNS Lookup component. The belief identifies the component and property to which it applies, provides a probability distribu-tion for the property, and lists the evidence used to derive the belief.

<belief id="bel-1"

originator="http://18.26.0.100/dnsAgent"

time="1160577157224"

cached="true">

<subject>

<component>

<class> DNS_Lookup </class>

<hostname> www.example.com </hostname>

<ipAddrs> 192.168.11.12,192.168.11.13 </ipAddrs>

</component>

</subject>

<property> status </property>

<distribution>

<entry value="OK" p="0.8"/>

<entry value="FAIL" p="0.2"/>

</distribution>

<fromEvidence>

<evidence propPath="verifyDNSLookupTest|dnsLookupTestResult" />

</fromEvidence>

</belief>

Figure 4-3: A belief identifies the subject component and property to which it applies, provides a probability distribution table for the property, and lists the evidence used to derive the belief.

In addition to the metadata common to all pieces of information, a belief contains the following:

1. Asubjectindicating the component individual to which this belief applies. A com-ponent individual is identified either by its comcom-ponent class and identifying proper-ties, or by its component ID.

2. A propertyindicating the property of the component over which the agent formed a belief. This corresponds to the variable x in the expression P(x|e)or P(e|x).

3. A distribution expressed as a conditional probability table indicating for each possible value of the specified property, the probability that the property has that value. For example, the status of the web server at www.example.com is OK with 23% probability andFAILwith 77% probability. Expressing probabilistic evidence

using conditional probabilities has the advantage that a conditional probability table can express any arbitrary probability distribution, but has the limitation that it can only express probability distributions for discrete variables. Minka describes how one might perform distributed probabilistic inference over continuous variables by expressing beliefs using parameterized Gaussian functions [65].

4. AfromEvidencefield listing the evidence from which the inference was made. Each piece of evidence is described by a property path from thesubjectcomponent indi-cating the component individual and property name of the evidence. A property path is a list of zero or more relationship properties followed by another property, and identifies a component individual and property in terms of its relationship to another component. For example, a belief about the status of a DNS Lookup component might be based on evidence described by the path verifyDNSLookupTest.dns-LookupTestResult. This property path refers to the dnsLookupTestResult prop-erty of the component to which theverifyDNSLookupTestrelationship property of the DNS Lookup refers. This thesis represents property paths as a list of property names separated by periods (‘.’) or vertical bars (‘|’). All properties in the path ex-cept possibly the last property must be relationship properties. Describing evidence in terms of property paths has important advantages in terms of information hiding.

Firstly, it permits agents to make inferences from beliefs without needing to know the identity of the components from which the evidence is derived. Furthermore, agents can determine whether a belief provides new information without knowing the actual value of the observations that the beliefs were based on. Agents also use property paths in other contexts as well, such as to describe their diagnostic capabilities (see Chapter 5). Note that the fromEvidence field only specifies which properties an agent used as evidence to produce the belief, and not the values of the properties. If desired, an agent can provide the actual property values of this evidence as a separate observation.

An agent may also optionally communicate additional information about the observa-tions and knowledge it used to produce the belief. Providing such additional information allows other agents to more effectively cache information, compute the value of available actions, and aggregate similar requests, but some agents may choose not to provide this information for policy reasons.

Agents represent likelihoods analogously to beliefs. The primary difference is that instead of adistributiontable representing P(x|e), a likelihood contains alikelihood table representing P(e|x).

Though CAPRI does not provide agents with the ability to explicitly represent proba-bilistic beliefs over relationship properties, in many cases one can accomplish effectively the same thing using beliefs over the properties of a component. For example, if an agent wishes to express the belief that with 80% probability an HTTP Connection is to a web server with IP address 192.0.0.1 and with 20% probability the HTTP Connection is to a web server with IP address 192.0.0.2, it can indicate this as a belief about the value of the IP address property of the web server component.