Class Cfci

java.lang.Object
edu.cmu.tetrad.algcomparison.algorithm.AbstractBootstrapAlgorithm
edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.Cfci
All Implemented Interfaces:
Algorithm, LatentStructureAlgorithm, ReturnsBootstrapGraphs, TakesCovarianceMatrix, AcceptsKnowledge, HasParameters, TakesIndependenceWrapper, TetradSerializable, Serializable

CFCI (Conservative FCI). This is FCI with the first collider orientation rule (R0) replaced by the conservative rule: for each unshielded triple X *-* Z *-* Y with X and Y nonadjacent, all subsets S that render X and Y independent are enumerated, and Z is oriented as a collider only if Z is in none of them and as a noncollider only if Z is in all of them. Triples on which the subsets disagree are left unoriented and marked ambiguous.

This is a thin wrapper over Fci with the R0 collider rule pinned to ColliderRule.CONSERVATIVE; the collider orientation style is therefore deliberately not offered as a parameter here. The equivalent search can also be had from the FCI box by setting the collider orientation style to Conservative. This class is retained under its own name because CFCI is a published algorithm, and because sessions saved by Tetrad 7.6.10 and earlier refer to it by this class name.

Version:
$Id: $Id
Author:
josephramsey
See Also:
  • Constructor Details

  • Method Details

    • getComparisonGraph

      public Graph getComparisonGraph(Graph graph)
      Returns the comparison graph based on the true directed graph, if there is one.
      Specified by:
      getComparisonGraph in interface Algorithm
      Parameters:
      graph - The true directed graph, if there is one.
      Returns:
      The comparison graph.
    • getDescription

      public String getDescription()
      Returns a short, one-line description of this algorithm.
      Specified by:
      getDescription in interface Algorithm
      Returns:
      The description of the algorithm.
    • getDataType

      public DataType getDataType()
      Returns the data type that the search requires, whether continuous, discrete, or mixed.
      Specified by:
      getDataType in interface Algorithm
      Returns:
      The data type required by the search algorithm.
    • getParameters

      public List<String> getParameters()
      Retrieves the list of parameters used by this algorithm.
      Specified by:
      getParameters in interface HasParameters
      Returns:
      The list of parameters used by this algorithm.
    • getKnowledge

      public Knowledge getKnowledge()
      Retrieves the knowledge object.
      Specified by:
      getKnowledge in interface AcceptsKnowledge
      Returns:
      The knowledge object.
    • setKnowledge

      public void setKnowledge(Knowledge knowledge)
      Sets the knowledge object for this method.
      Specified by:
      setKnowledge in interface AcceptsKnowledge
      Parameters:
      knowledge - The knowledge object to set.
    • getIndependenceWrapper

      public IndependenceWrapper getIndependenceWrapper()
      Retrieves the IndependenceWrapper object associated with this method.
      Specified by:
      getIndependenceWrapper in interface TakesIndependenceWrapper
      Returns:
      The IndependenceWrapper object associated with this method.
    • setIndependenceWrapper

      public void setIndependenceWrapper(IndependenceWrapper test)
      Sets the IndependenceWrapper object associated with this method.
      Specified by:
      setIndependenceWrapper in interface TakesIndependenceWrapper
      Parameters:
      test - the independence wrapper to set