Class PossibleMsepFci

java.lang.Object
edu.cmu.tetrad.search.utils.PossibleMsepFci

public class PossibleMsepFci extends Object
Implements the Possible-M-Sep search step of Spirtes, et al's (1993) FCI algorithm (pp 144-145). Specifically, the methods in this class perform step D. of the algorithm. The algorithm implemented by this class is a bit broader, however, because it allows for the possibility that some pairs of variables have already been compared by a different algorithm. Specifically, if the prevCheck variable is provided in the constructor, then the algorithm pairwise checks every variable in the graph with every variable in v \ prevCheck (that is, the unchecked variables). This feature is used by the CIVI algorithm of Danks's "Efficient Inclusion of Novel Variables."
Author:
David Danks
  • Constructor Details

    • PossibleMsepFci

      public PossibleMsepFci(Graph graph, IndependenceTest test)
      Creates a new SepSet and assumes that none of the variables have yet been checked.
      Parameters:
      graph - The GaSearchGraph on which to work
      test - The IndependenceChecker to use as an oracle
  • Method Details

    • search

      public SepsetMap search()
      Performs pairwise comparisons of each variable in the graph with the variables that have not already been checked. We get the Possible-M-Sep sets for the pair of variables, and we check to see if they are independent conditional on some subset of the union of Possible-M-Sep sets. This method returns the SepSet passed in the constructor (if any), possibly augmented by some edge removals in this step. The GaSearchGraph passed in the constructor is directly changed.
    • getSepset

      public Set<Node> getSepset(IndependenceTest test, Node node1, Node node2)
    • getDepth

      public int getDepth()
    • setDepth

      public void setDepth(int depth)
    • getKnowledge

      public Knowledge getKnowledge()
    • setKnowledge

      public void setKnowledge(Knowledge knowledge)
    • setMaxPathLength

      public void setMaxPathLength(int maxReachablePathLength)