unbbayes.util.dseparation.impl
Class MSeparationUtilityIncludingSeparators

java.lang.Object
  extended by unbbayes.util.dseparation.impl.MSeparationUtility
      extended by unbbayes.util.dseparation.impl.MSeparationUtilityIncludingSeparators
All Implemented Interfaces:
IDSeparationUtility

public class MSeparationUtilityIncludingSeparators
extends MSeparationUtility

This is an extension of MSeparationUtility which tests if the separators are d-separated from the query nodes as well. This is slightly different from the original idea of m-separation, since in that case the separators are a distinct set of nodes which are "out" of scope.

Author:
Shou Matsumoto

Nested Class Summary
 
Nested classes/interfaces inherited from class unbbayes.util.dseparation.impl.MSeparationUtility
MSeparationUtility.MSeparationUtilityNodeVisitor
 
Constructor Summary
protected MSeparationUtilityIncludingSeparators()
          Default constructor.
 
Method Summary
 Set<INode> getAllDSeparatedNodes(Set<INode> consideredNodes, Set<INode> from, Set<INode> separators)
          Obtains all nodes within graph which is d-separated from the set "from" given the separators.
 boolean isDSeparated(Set<INode> consideredNodes, Set<INode> from, Set<INode> to, Set<INode> separators)
          Checks if the nodes within "from" are m-separated from nodes from "to", given a set of "separators".
static MSeparationUtilityIncludingSeparators newInstance()
          Default constructor method.
 
Methods inherited from class unbbayes.util.dseparation.impl.MSeparationUtility
buildClosedAdjacentNodeMap, getAllAncestors, getAllAncestors, getAllDescendants, getAllDescendants, getRoutes, getRoutes, getRoutes, getRoutes, makeItMoral
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MSeparationUtilityIncludingSeparators

protected MSeparationUtilityIncludingSeparators()
Default constructor. It's protected in order to simplify inheritance.

Method Detail

newInstance

public static MSeparationUtilityIncludingSeparators newInstance()
Default constructor method.

Returns:
a new instance of MSeparationUtilityIncludingSeparators

getAllDSeparatedNodes

public Set<INode> getAllDSeparatedNodes(Set<INode> consideredNodes,
                                        Set<INode> from,
                                        Set<INode> separators)
Description copied from interface: IDSeparationUtility
Obtains all nodes within graph which is d-separated from the set "from" given the separators.

Specified by:
getAllDSeparatedNodes in interface IDSeparationUtility
Overrides:
getAllDSeparatedNodes in class MSeparationUtility
Parameters:
consideredNodes - : nodes to be tested. They must reside in the same network containing the nodes within from, and separators sets.
from - set of nodes which d-separation is going to be tested
separators - : set of separators.
Returns:
set of all d-separated nodes within graph

isDSeparated

public boolean isDSeparated(Set<INode> consideredNodes,
                            Set<INode> from,
                            Set<INode> to,
                            Set<INode> separators)
Description copied from class: MSeparationUtility
Checks if the nodes within "from" are m-separated from nodes from "to", given a set of "separators". Lauritzen, Dawid, Larsen and Leimer (1990), says that m-separation is equivalent to d-separation.

Specified by:
isDSeparated in interface IDSeparationUtility
Overrides:
isDSeparated in class MSeparationUtility
Parameters:
consideredNodes - : represent a network containing the nodes within from, to and separators sets.
from - : set 1 of nodes which m-separation is going to be tested
to - : set 2 of nodes which m-separation is going to be tested
separators - : set of separators.
Returns:
: true if "from" is m-separated with "to" given "separators". False otherwise.


Copyright © 2001-2010 University of Brasilia - UnB. All Rights Reserved.