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

The Fges-FCI class represents the Greedy Fast Causal Inference algorithm, adjusted as in *-FCI.
See Also:
  • Constructor Details

    • FgesFci

      public FgesFci()
      The FGES-FCI class represents the Greedy Fast Causal Inference algorithm.
    • FgesFci

      public FgesFci(IndependenceWrapper test, ScoreWrapper score)
      Constructs a new instance of FGES-FCI with the given IndependenceWrapper and ScoreWrapper.
      Parameters:
      test - The IndependenceWrapper object to associate with this FGES-FCI instance.
      score - The ScoreWrapper object to associate with this FGES-FCI instance.
  • Method Details

    • runSearch

      public Graph runSearch(DataModel dataModel, Parameters parameters) throws InterruptedException
      Runs the search algorithm to infer the causal graph given a dataset and specified parameters.
      Parameters:
      dataModel - The dataset containing the observational data.
      parameters - The parameters to configure the search algorithm.
      Returns:
      The inferred causal graph.
      Throws:
      InterruptedException
    • getComparisonGraph

      public Graph getComparisonGraph(Graph graph)
      Retrieves the comparison graph by transforming the true directed graph (if there is one) into a partially directed acyclic graph (PAG).
      Specified by:
      getComparisonGraph in interface Algorithm
      Parameters:
      graph - The true directed graph, if there is one.
      Returns:
      The comparison graph in the form of a partially directed acyclic graph (PAG).
    • getDescription

      public String getDescription()
      Returns a description of the FGES-FCI algorithm using the description of the independence test and score associated with it.
      Specified by:
      getDescription in interface Algorithm
      Returns:
      The description of the algorithm.
    • getDataType

      public DataType getDataType()
      Retrieves the data type required for the search algorithm.
      Specified by:
      getDataType in interface Algorithm
      Returns:
      The data type required for the search algorithm.
    • getParameters

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

      public Knowledge getKnowledge()
      Retrieves the Knowledge object associated with this instance.
      Specified by:
      getKnowledge in interface HasKnowledge
      Returns:
      The Knowledge object associated with this instance.
    • setKnowledge

      public void setKnowledge(Knowledge knowledge)
      Sets the Knowledge object associated with this instance.
      Specified by:
      setKnowledge in interface HasKnowledge
      Parameters:
      knowledge - The Knowledge object to be set.
    • getScoreWrapper

      public ScoreWrapper getScoreWrapper()
      Retrieves the ScoreWrapper associated with this instance.
      Specified by:
      getScoreWrapper in interface TakesScoreWrapper
      Returns:
      The ScoreWrapper associated with this instance.
    • setScoreWrapper

      public void setScoreWrapper(ScoreWrapper score)
      Sets the score wrapper for the algorithm.
      Specified by:
      setScoreWrapper in interface TakesScoreWrapper
      Parameters:
      score - the score wrapper.
    • getIndependenceWrapper

      public IndependenceWrapper getIndependenceWrapper()
      Returns the independence wrapper associated with this instance.
      Specified by:
      getIndependenceWrapper in interface TakesIndependenceWrapper
      Returns:
      The independence wrapper.
    • setIndependenceWrapper

      public void setIndependenceWrapper(IndependenceWrapper test)
      Sets the independence wrapper for the algorithm.
      Specified by:
      setIndependenceWrapper in interface TakesIndependenceWrapper
      Parameters:
      test - the independence wrapper to set