Class SvarGfci

java.lang.Object
edu.cmu.tetrad.search.SvarGfci
All Implemented Interfaces:
IGraphSearch

public final class SvarGfci extends Object implements IGraphSearch
Represents a GFCI search algorithm for structure learning in causal discovery.
  • Constructor Details

    • SvarGfci

      public SvarGfci(IndependenceTest test, Score score)
      Constructs a new GFCI search for the given independence test and background knowledge.
      Parameters:
      test - The independence test.
      score - The score.
  • Method Details

    • search

      public Graph search()
      Runs the search and returns a PAG.
      Specified by:
      search in interface IGraphSearch
      Returns:
      a PAG.
    • setKnowledge

      public void setKnowledge(Knowledge knowledge)
      Sets the knowledge for the search.
      Parameters:
      knowledge - The knowledge.
    • setCompleteRuleSetUsed

      public void setCompleteRuleSetUsed(boolean completeRuleSetUsed)
      Sets whether the complete rule set is used.
      Parameters:
      completeRuleSetUsed - True if Zhang's complete rule set should be used, False if only R1-R4 (the rule set of the original FCI) should be used. False by default.
    • setMaxPathLength

      public void setMaxPathLength(int maxPathLength)
      Sets the maximum length of any discriminating path.
      Parameters:
      maxPathLength - the maximum length of any discriminating path, or -1 if unlimited.
    • setVerbose

      public void setVerbose(boolean verbose)
      Sets whether verbose output is printed.
      Parameters:
      verbose - True, if so.
    • setResolveAlmostCyclicPaths

      public void setResolveAlmostCyclicPaths(boolean resolveAlmostCyclicPaths)
      Sets whether to resolve almost cyclic paths during the search.
      Parameters:
      resolveAlmostCyclicPaths - True if almost cyclic paths should be resolved, false otherwise.