Diagnosis: Efficient Ranking of Joint Observations

The engine.
Post Reply
lobstericus
Posts: 5
Joined: Wed Sep 23, 2009 2:00 am

Diagnosis: Efficient Ranking of Joint Observations

Post by lobstericus »

Howdy,

Suppose one had a fault that results in multiple observables:

> F -> (O1, O2)

We can use the diagnosis engine to calculate the information gain
of O1 or O2 and rank them accordingly.

However, imagine that we also have the capability of running an automated test that observes O1 and O2 simultaneously. Is there a particularly good way of implementing this within the SMILE framework?
Currently, I am creating a joint test node J1 equal to the cross product of values of the O1 and O2 nodes and making this joint node J1 the observation. This gives exactly the right information gain and probabilities. However, when J1 has many high arity parents, the computation time spikes dramatically. While I realize that this gets into fundamental issues in inference, I was wondering if there were existing approaches considered by the SMILE team.

Regards,

Bob.
marek [BayesFusion]
Site Admin
Posts: 430
Joined: Tue Dec 11, 2007 4:24 pm

Re: Diagnosis: Efficient Ranking of Joint Observations

Post by marek [BayesFusion] »

Bob,

You have hit the reason why we don't have automatic support for this: to pre-compute all combinations of pairs, we would need a combinatorial number of computations. If you add triples, quadruples, etc., it becomes quite something :-). Your solution is what I would do in this case. The problem that you are observing, notably an exponential growth of the probability tables when you consider pairs or triples of tests together, is what any algorithm for doing what you do would observe. We don't have any good solution for this without any further research. By the way, you are the first user signalling us this problem (i.e., the need to look at pairs of tests).
Cheers,

Marek
Post Reply