Class DmFcit
java.lang.Object
edu.cmu.tetrad.algcomparison.algorithm.AbstractBootstrapAlgorithm
edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.DmFcit
- All Implemented Interfaces:
Algorithm,ReturnsBootstrapGraphs,TakesCovarianceMatrix,HasKnowledge,HasParameters,TakesIndependenceWrapper,TakesScoreWrapper,TetradSerializable,Serializable
@Algorithm(name="DM-FCIT",
command="dm-fcit",
algoType=allow_latent_common_causes)
@Bootstrapping
@Experimental
public class DmFcit
extends AbstractBootstrapAlgorithm
implements Algorithm, TakesScoreWrapper, TakesIndependenceWrapper, HasKnowledge, ReturnsBootstrapGraphs, TakesCovarianceMatrix
This class represents the Detect-Mimic-FCIT (DM-FCIT) algorithm, a specialized variant of the DM-PC and FCIT
algorithms designed to identify intermediate latent variables. DM-FCIT enhances accuracy and computational efficiency
by recursively maintaining complete PAG orientations during the search process. At each step, it uses these
orientations to substantially reduce the required size of conditioning sets when testing independence. This approach
leads to more precise identification of latent variables and better orientation accuracy overall.
- Author:
- josephramsey
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionDmFcit()This class represents a DM-FCIT algorithm.DmFcit(IndependenceWrapper test, ScoreWrapper score) Represents a DM-FCIT algorithm. -
Method Summary
Modifier and TypeMethodDescriptiongetComparisonGraph(Graph graph) Retrieves a comparison graph by transforming a true directed graph into a partially directed graph (PAG).Retrieves the data type required by the search algorithm.Returns a short, one-line description of this algorithm.Retrieves the IndependenceWrapper object associated with this instance.Retrieves the knowledge object associated with this method.Retrieves the list of parameters used by the algorithm.Retrieves the ScoreWrapper object associated with this method.runSearch(DataModel dataModel, Parameters parameters) Runs the search algorithm to find a graph structure based on a given data model and parameters.voidsetIndependenceWrapper(IndependenceWrapper independenceWrapper) Sets the IndependenceWrapper object for this algorithm.voidsetKnowledge(Knowledge knowledge) Sets the knowledge object associated with this method.voidsetScoreWrapper(ScoreWrapper score) Sets the score wrapper for the algorithm.Methods inherited from class edu.cmu.tetrad.algcomparison.algorithm.AbstractBootstrapAlgorithm
getBootstrapGraphs, searchMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface edu.cmu.tetrad.algcomparison.algorithm.ReturnsBootstrapGraphs
getBootstrapGraphs
-
Constructor Details
-
DmFcit
public DmFcit()This class represents a DM-FCIT algorithm.The DM-FCIT algorithm is a bootstrap algorithm that runs a search algorithm to find a graph structure based on a given data set and parameters. It is a subclass of the Abstract BootstrapAlgorithm class and implements the Algorithm interface.
- See Also:
-
DmFcit
Represents a DM-FCIT algorithm.The DM-FCIT algorithm is a bootstrap algorithm that runs a search algorithm to find a graph structure based on a given data set and parameters. It is a subclass of the AbstractBootstrapAlgorithm class and implements the Algorithm interface.
- Parameters:
test- The independence test to use.score- The score to use.- See Also:
-
-
Method Details
-
runSearch
Runs the search algorithm to find a graph structure based on a given data model and parameters.- Parameters:
dataModel- The data model to use for the search algorithm.parameters- The parameters to configure the search algorithm.- Returns:
- The resulting graph structure.
- Throws:
IllegalArgumentException- if the time lag is greater than 0 and the data model is not an instance of DataSet.InterruptedException
-
getComparisonGraph
Retrieves a comparison graph by transforming a true directed graph into a partially directed graph (PAG).- Specified by:
getComparisonGraphin interfaceAlgorithm- Parameters:
graph- The true directed graph, if there is one.- Returns:
- The comparison graph.
-
getDescription
Returns a short, one-line description of this algorithm. The description is generated by concatenating the descriptions of the test and score objects associated with this algorithm.- Specified by:
getDescriptionin interfaceAlgorithm- Returns:
- The description of this algorithm.
-
getDataType
Retrieves the data type required by the search algorithm.- Specified by:
getDataTypein interfaceAlgorithm- Returns:
- The data type required by the search algorithm.
-
getParameters
Retrieves the list of parameters used by the algorithm.- Specified by:
getParametersin interfaceHasParameters- Returns:
- The list of parameters used by the algorithm.
-
getKnowledge
Retrieves the knowledge object associated with this method.- Specified by:
getKnowledgein interfaceHasKnowledge- Returns:
- The knowledge object.
-
setKnowledge
Sets the knowledge object associated with this method.- Specified by:
setKnowledgein interfaceHasKnowledge- Parameters:
knowledge- the knowledge object to be set
-
getScoreWrapper
Retrieves the ScoreWrapper object associated with this method.- Specified by:
getScoreWrapperin interfaceTakesScoreWrapper- Returns:
- The ScoreWrapper object associated with this method.
-
setScoreWrapper
Sets the score wrapper for the algorithm.- Specified by:
setScoreWrapperin interfaceTakesScoreWrapper- Parameters:
score- the score wrapper.
-
getIndependenceWrapper
Retrieves the IndependenceWrapper object associated with this instance.- Specified by:
getIndependenceWrapperin interfaceTakesIndependenceWrapper- Returns:
- The IndependenceWrapper object that represents the independence test used.
-
setIndependenceWrapper
Sets the IndependenceWrapper object for this algorithm. The IndependenceWrapper represents the independence test to be used in the algorithm's operations.- Specified by:
setIndependenceWrapperin interfaceTakesIndependenceWrapper- Parameters:
independenceWrapper- the IndependenceWrapper object to set
-