• No se han encontrado resultados

4. CAPÍTULO IV:

4.10. A NÁLISIS DE R ESULTADOS

4.10.1. Sitio antes de la metodología de posicionamiento

The TMS presented by Doyle in [1979a] and [1979b] - henceforth referred to as a justification-based TMS or JTMS - is a very general system capable of representing premises, assumptions and contingent beliefs. The difference between premises, assumptions and contingent beliefs is not explicit, but comes from the structure of the dependencies: a premise will not be dependent on any other nodes; an assumption will be dependent on the disbelief of some node (e.g. "not A" not being believed provides support for believing "A" is true is equivalent to assuming "A" unless "not A" is believed); and a contingent belief is a node that has some dependencies but cannot be classed as an assumption.

The purpose of the JTMS is to provide a consistent interpretation of the nodes by assigning a value of "believed" or "not believed" to each node on the basis of whether that node has a valid justification, or reason for belief, making it in the current set of beliefs, or not, in which case the node will be out i.e. not in. Doyle identifies two main types of justification although it would be easy to define additional types1 The first is the "support- list" (SL) justification of the form "If aj ,..., am are believed and bi .... bp are not believed

1 However, as the TMS is designed to be a domain independent system, the types of justilication should represent general kinds of justification and not be domain specific.

2.1.1 Justification-Based Truth Maintenance

then n is believed", written

( a l »•••* ^m )in (t*l »•••» ^ p )o u t ^SL^*

The second is the "conditional proof' (CP) justification of the form "If c is believed whenever aj am are believed and bi bp are not believed then n is believed", written

(ai ,...» am)in (bi ...bp) out c cons ^CPn -

The a, ’s are called "in-nodes or -hypotheses" (for SL- or CP-justifications respectively), the bj’s are "out-nodes or -hypotheses" and c is the "CP-consequent". Whenever a dependency d supports a value in we say that d has a value in or is valid. So, using this notation we could differentiate the following:

a premise P justified by --- > S L P

an assumption A justified by (-«AJout—>s lA

or more generally ( a l *•••♦ a m ) i n ( ^ 1 *•• •» b p ) o u t * SlA

a contingent belief C justified with ( a l »•••» a m ) i n

where a, and bj are arbitrary nodes.

The basic interactions between the problem solver and the JTMS consist of the problem solver asserting and retracting justifications and marking nodes as contradictions2 with the TMS answering queries about the status of particular nodes. The addition or removal of a justification from a node n invokes the "Truth Maintenance" (TM) procedure which updates n’s value so that it corresponds with that supported by n’s justifications. I.e. if all the justifications are out n should be out but if one or more justifications are in then n should be in. Any change in n’s value is propagated to the consequences of n, i.e. those nodes whose values depend (in part) on n’s value. On termination of TM no node’s value should conflict with that supported by its justifications.

Doyle’s |1979] algorithm works by constructing a list of nodes whose value is dependent on n (where n is the node where the justification is added or removed) and by

2 There is no need to explicitly create nodes as this is done automatically when they are mentioned in some justitication.

2.1.1 Justification-Based Truth Maintenance

labelling them nil: successive attempts are made to determine a value for each node by considering only those nodes labelled in or out, and then by assuming that all nil values will become out. The assumption that nil values become out is a relaxation process designed to assign values to nodes in cycles whose values would otherwise be incalculable. This process is explicitly captured by Goodwin [1987] in an improved version of Doyle’s algorithm which explicitly deals with strongly connected components3.

When a node is marked as contradictory if that node is in then a Dependency Directed Backtracking (DDB) procedure is called (similarly if a previously marked contradictory node is in at the end of TM then DDB is also invoked). DDB traces back through the nodes supporting the contradictory node, say c, to discover the underlying inconsistent assumptions S = {A) An ), i.e. those nodes that support c (either directly or through a chain of other derived nodes) and who are in turn supported by some node being out. A "no-good" node Ng is created to record the inconsistency of S, and is used to reject one (called the "culprit") of the "no-good" assumptions A, by justifying one of the A j ’s supporting "out-nodes". So whenever all the no-good assumptions would have previously been in, one of the A j’s out- nodes is in as well, invalidating A j’s supporting justification thus preventing the contradiction from becoming believed.

The only other procedure used by the JTMS is one that approximates CP-justifications as SL-justifications as it is difficult in most circumstances to test the validity of CP- justifications. Doyle [1983] does give a formal specification of how the JTMS should consider CP-justifications even if the algorithms described do not achieve this. The mechanics of approximating CP-justifications will not be discussed here and is only considered in passing in §3.3.2. Furthermore, some of the problems of using CP-justifications to record entailment relationships can be seen in §3.3 and §4.3.2.3 which demonstrate that in general it is very difficult to establish entailment relationships purely through examining the dependencies linking propositions.

1 A directed graph is strongly connected if every pair of nodes is connected i.e. given nodes n and m there is a path from n to m and vice versa.

2.1.1 Justification-Based Truth Maintenance

The algorithms presented by Doyle and Goodwin have a number of design and implementation problems. The most important implementation problem is the inability to deal with unsatisfiable dependency networks which cause incorrect termination before finding solutions, or no termination at all. DDB is also prone to failure in that alternative derivations of a contradiction may exist but are not removed.

The JTMS was initially presented as an algorithm for doing Truth Maintenance and Dependency Directed Backtracking. It was only after this that a formal specification was given, first in terms of generating grounded admissible expansions of a network [Doyle 1983] and latterly as modal logics [Brown 1985, Brown and Shoham 1989], operations over lattices [Brown et al 1987, Ginsberg 1988], and most recently using stable sets [Elkan 1990], No proof of the correctness of Doyle’s algorithm has been given and although Goodwin claims such a proof for his algorithm there is in fact an error4.

Finally, the complexity of such systems has only been briefly investigated. Goodwin (incorrectly) claims a complexity of polynomial degree 2 for updates to a network, while Elkan [1989] has shown, by transformation of propositional satisfiability, that the problem of deciding if a given interpretation is admissible for a given dependency network is NP- complete. In chapters 3 and 4 I will address these issues in depth and present solutions to some of them.

Documento similar