Class Fcit
- All Implemented Interfaces:
Algorithm, LatentStructureAlgorithm, ReturnsBootstrapGraphs, TakesCovarianceMatrix, AcceptsKnowledge, HasParameters, TakesIndependenceWrapper, TakesScoreWrapper, TetradSerializable, Serializable
Thoroughness settings. The underlying search now exposes a set of knobs that trade completeness for speed.
Every one of them defaults to the full algorithm, so this wrapper leaves them alone; the runSearch method
carries a commented block showing each knob at its default with a note on what turning it down costs. The
output-identical optimizations (legality memo, negative sweep cache, independence-query cache) are always on and need
no configuration: the first two are unconditional inside the search, and the third is the
CachedIndependenceQueries wrap performed below.
None of the thoroughness knobs are registered as Params constants, deliberately: turning one of them down
changes what the algorithm is guaranteed to find, and that is a decision to make in code with the reason recorded,
not a checkbox in a GUI. To promote one anyway, add a constant to Params, a description to the parameter
properties file, a line to getParameters(), and replace the commented setter with a
parameters.get... call.
- Author:
- josephramsey
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionFcit()This class represents a FCIT algorithm.Fcit(IndependenceWrapper test, ScoreWrapper score) FCIT is a class that represents a 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.Returns the independence wrapper.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 independence wrapper.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 AbstractBootstrapAlgorithm
getBootstrapGraphs, searchMethods inherited from class Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ReturnsBootstrapGraphs
getBootstrapGraphs
-
Constructor Details
-
Fcit
public Fcit()This class represents a FCIT algorithm.The 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:
-
Fcit
FCIT is a class that represents a FCIT algorithm.The 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.The thoroughness knobs of
runSearch(DataModel, Parameters)are intentionally absent: each of them changes what the algorithm is guaranteed to find, which is a decision that belongs in code next to its justification rather than in a settings dialog. To expose one, add aParamsconstant, a description in the parameter properties file, a line here, and aparameters.get...call in place of the commented setter.- 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 interfaceAcceptsKnowledge- Returns:
- The knowledge object.
-
setKnowledge
Sets the knowledge object associated with this method.- Specified by:
setKnowledgein interfaceAcceptsKnowledge- 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
Description copied from interface:TakesIndependenceWrapperReturns the independence wrapper.- Specified by:
getIndependenceWrapperin interfaceTakesIndependenceWrapper- Returns:
- the independence wrapper.
-
setIndependenceWrapper
Description copied from interface:TakesIndependenceWrapperSets the independence wrapper.- Specified by:
setIndependenceWrapperin interfaceTakesIndependenceWrapper- Parameters:
independenceWrapper- the independence wrapper.
-