Class FciIod
java.lang.Object
edu.cmu.tetrad.algcomparison.algorithm.multi.FciIod
- All Implemented Interfaces:
Algorithm
,MultiDataSetAlgorithm
,HasKnowledge
,HasParameters
,TakesIndependenceWrapper
,TetradSerializable
,Serializable
@Algorithm(name="FCI-IOD",
command="fci-iod",
algoType=forbid_latent_common_causes,
dataType=All)
public class FciIod
extends Object
implements MultiDataSetAlgorithm, HasKnowledge, TakesIndependenceWrapper
Runs FCI on multiple datasets using the IOD pooled dataset independence test. The reference is here:
Tillman, R., & Spirtes, P. (2011, June). Learning equivalence classes of acyclic models with latent and selection variables from multiple datasets with overlapping variables. In Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics (pp. 3-15). JMLR Workshop and Conference Proceedings.
- Version:
- $Id: $Id
- Author:
- josephramsey
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionFciIod()
Constructor for FciIod.FciIod
(IndependenceWrapper test) Constructor for FciIod. -
Method Summary
Modifier and TypeMethodDescriptiongetComparisonGraph
(Graph graph) Returns that graph that the result should be compared to.Returns the data type that the search requires, whether continuous, discrete, or mixed.Returns a short, one-line description of this algorithm.Returns the independence wrapper.Returns a knowledge object.Returns the list of parameter names that are used.search
(DataModel dataSet, Parameters parameters) Runs the search.search
(List<DataModel> dataSets, Parameters parameters) Runs the search.void
Sets the independence wrapper.void
Sets a test wrapper if not null.void
setKnowledge
(Knowledge knowledge) Sets a knowledge object.void
setScoreWrapper
(ScoreWrapper score) Sets a score wrapper if not null.
-
Constructor Details
-
FciIod
Constructor for FciIod.
- Parameters:
test
- aIndependenceWrapper
object
-
FciIod
public FciIod()Constructor for FciIod.
-
-
Method Details
-
search
Runs the search.- Specified by:
search
in interfaceMultiDataSetAlgorithm
- Parameters:
dataSets
- The data sets.parameters
- The parameters.- Returns:
- The graph.
- Throws:
InterruptedException
-
setScoreWrapper
Sets a score wrapper if not null.- Specified by:
setScoreWrapper
in interfaceMultiDataSetAlgorithm
- Parameters:
score
- The wrapper
-
setIndTestWrapper
Sets a test wrapper if not null.- Specified by:
setIndTestWrapper
in interfaceMultiDataSetAlgorithm
- Parameters:
test
- The wrapper
-
search
Runs the search.- Specified by:
search
in interfaceAlgorithm
- Parameters:
dataSet
- The data set to run to the search on.parameters
- The paramters of the search.- Returns:
- The result graph.
- Throws:
InterruptedException
-
getComparisonGraph
Returns that graph that the result should be compared to.- Specified by:
getComparisonGraph
in 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. This will be printed in the report.- Specified by:
getDescription
in interfaceAlgorithm
- Returns:
- This description.
-
getDataType
Returns the data type that the search requires, whether continuous, discrete, or mixed.- Specified by:
getDataType
in interfaceAlgorithm
- Returns:
- This type.
-
getParameters
Returns the list of parameter names that are used. These are looked up in ParamMap, so if they're not- Specified by:
getParameters
in interfaceHasParameters
- Returns:
- Returns the list of parameter names that are used. These are looked up in ParamMap, so if they're not already defined they'll need to be defined there.
-
getKnowledge
Returns a knowledge object.- Specified by:
getKnowledge
in interfaceHasKnowledge
- Returns:
- a knowledge object.
-
setKnowledge
Sets a knowledge object.- Specified by:
setKnowledge
in interfaceHasKnowledge
- Parameters:
knowledge
- a knowledge object.
-
getIndependenceWrapper
Returns the independence wrapper.- Specified by:
getIndependenceWrapper
in interfaceTakesIndependenceWrapper
- Returns:
- the independence wrapper.
-
setIndependenceWrapper
Sets the independence wrapper.- Specified by:
setIndependenceWrapper
in interfaceTakesIndependenceWrapper
- Parameters:
test
- the independence wrapper.
-