Package edu.cmu.tetrad.search
Class Cfci
java.lang.Object
edu.cmu.tetrad.search.Cfci
- All Implemented Interfaces:
IGraphSearch
Adjusts FCI (see) to use conservative orientation as in CPC (see). Because the collider orientation is conservative, there may be ambiguous triples; these may be retrieved using that accessor method.
This class is configured to respect knowledge of forbidden and required edges, including knowledge of temporal tiers.
- Author:
- josephramsey
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCfci(IndependenceTest independenceTest) Constructs a new FCI search for the given independence test and background knowledge. -
Method Summary
Modifier and TypeMethodDescriptionReturns the ambiguous triples found in the search.longReturns the elapsed time ot the search.intReturns the map from nodes to their sepsets.booleanReturns true if Zhang's complete rule set should be used, false if only R1-T1 (the rule set of the original FCI) should be used.booleanbooleanWhether verbose output (about independencies) is output.search()Performs the search and returns the PAG.voidsetCompleteRuleSetUsed(boolean completeRuleSetUsed) Sets whether the complete rule set should be used.voidsetDepth(int depth) Sets the depth--i.e., the maximum number of variables conditioned on in any test.voidsetDoDiscriminatingPathRule(boolean doDiscriminatingPathRule) voidsetKnowledge(Knowledge knowledge) Set the knowledge used in the search.voidsetMaxReachablePathLength(int maxReachablePathLength) voidsetPossibleMsepSearchDone(boolean possibleMsepSearchDone) voidsetVerbose(boolean verbose)
-
Constructor Details
-
Cfci
Constructs a new FCI search for the given independence test and background knowledge.- Parameters:
independenceTest- The independence to use as an oracle.
-
-
Method Details
-
search
Performs the search and returns the PAG.- Specified by:
searchin interfaceIGraphSearch- Returns:
- The search PAG.
-
setDepth
public void setDepth(int depth) Sets the depth--i.e., the maximum number of variables conditioned on in any test.- Parameters:
depth- This maximum.
-
getElapsedTime
public long getElapsedTime()Returns the elapsed time ot the search.- Returns:
- This time.
-
getSepsets
Returns the map from nodes to their sepsets. For x _||_ y | z1,...,zn, this would map {x, y} to {z1,..,zn}.- Returns:
- This map.
-
setKnowledge
Set the knowledge used in the search.- Parameters:
knowledge- This knowledge.- See Also:
-
isCompleteRuleSetUsed
public boolean isCompleteRuleSetUsed()Returns true if Zhang's complete rule set should be used, false if only R1-T1 (the rule set of the original FCI) should be used. False by default.- Returns:
- True for the complete rule set.
-
setCompleteRuleSetUsed
public void setCompleteRuleSetUsed(boolean completeRuleSetUsed) Sets whether the complete rule set should be used.- Parameters:
completeRuleSetUsed- set to true if Zhang's complete rule set should be used, false if only R1-T1 (the rule set of the original FCI) should be used. False by default.
-
getAmbiguousTriples
Returns the ambiguous triples found in the search.- Returns:
- This set.
- See Also:
-
isVerbose
public boolean isVerbose()Whether verbose output (about independencies) is output. -
setVerbose
public void setVerbose(boolean verbose) -
isPossibleMsepSearchDone
public boolean isPossibleMsepSearchDone() -
setPossibleMsepSearchDone
public void setPossibleMsepSearchDone(boolean possibleMsepSearchDone) -
getMaxReachablePathLength
public int getMaxReachablePathLength() -
setMaxReachablePathLength
public void setMaxReachablePathLength(int maxReachablePathLength) -
setDoDiscriminatingPathRule
public void setDoDiscriminatingPathRule(boolean doDiscriminatingPathRule)
-