Class SampleVcpcFast
java.lang.Object
edu.cmu.tetrad.search.work_in_progress.SampleVcpcFast
- All Implemented Interfaces:
IGraphSearch
Implements a conservative version of PC, in which the Markov condition is assumed but faithfulness is tested
locally.
- Version:
- $Id: $Id
- Author:
- josephramsey (this version).
-
Constructor Summary
ConstructorsConstructorDescriptionSampleVcpcFast(IndependenceTest independenceTest) Constructs a CPC algorithm that uses the given independence test as oracle. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidfutureNodeVisit(Graph graph, Node b, LinkedList<Node> path, Set<Node> futureNodes) futureNodeVisit.getAdjacencies.Getter for the fieldambiguousTriples.getApparentNonadjacencies.Getter for the fieldcolliderTriples.getCov()getCov.getDefiniteNonadjacencies.intgetDepth()Getter for the fielddepth.longGetter for the fieldelapsedTime.getGraph()The graph that's constructed during the search.Getter for the fieldindependenceTest.Getter for the fieldknowledge.Getter for the fieldnoncolliderTriples.getSemIm()Getter for the fieldsemIm.getSemPm()Getter for the fieldsemPm.static booleanisArrowheadAllowed1(Node from, Node to, Knowledge knowledge) isArrowheadAllowed1.booleanisDoOrientation.booleanisMeekPreventCycles.search()search.voidsetDepth(int depth) Sets the maximum number of variables conditioned on in any conditional independence test.voidSetter for the fieldgraph.voidsetKnowledge(Knowledge knowledge) Sets the knowledge specification used in the search.voidsetMeekPreventCycles(boolean meekPreventCycles) Sets to true just in case edges will not be added if they would create cycles.voidSetter for the fieldsemIm.voidSetter for the fieldsemPm.voidsetVerbose(boolean verbose) Setter for the fieldverbose.
-
Constructor Details
-
SampleVcpcFast
Constructs a CPC algorithm that uses the given independence test as oracle. This does not make a copy of the independence test, for fear of duplicating the data set!- Parameters:
independenceTest- aIndependenceTestobject
-
-
Method Details
-
futureNodeVisit
public static void futureNodeVisit(Graph graph, Node b, LinkedList<Node> path, Set<Node> futureNodes) futureNodeVisit.
- Parameters:
graph- aGraphobjectb- aNodeobjectpath- aLinkedListobjectfutureNodes- aSetobject
-
isArrowheadAllowed1
isArrowheadAllowed1.
-
getSemIm
Getter for the field
semIm.- Returns:
- a
SemImobject
-
setSemIm
Setter for the field
semIm.- Parameters:
semIm- aSemImobject
-
isMeekPreventCycles
public boolean isMeekPreventCycles()isMeekPreventCycles.
- Returns:
- true just in case edges will not be added if they would create cycles.
-
setMeekPreventCycles
public void setMeekPreventCycles(boolean meekPreventCycles) Sets to true just in case edges will not be added if they would create cycles.- Parameters:
meekPreventCycles- a boolean
-
getElapsedTime
public long getElapsedTime()Getter for the field
elapsedTime.- Returns:
- the elapsed time of search in milliseconds, after
search()has been run.
-
getKnowledge
Getter for the field
knowledge.- Returns:
- the knowledge specification used in the search. Non-null.
-
setKnowledge
Sets the knowledge specification used in the search. Non-null.- Parameters:
knowledge- aKnowledgeobject
-
getIndependenceTest
Getter for the field
independenceTest.- Returns:
- the independence test used in the search, set in the constructor. This is not returning a copy, for fear of duplicating the data set!
-
getDepth
public int getDepth()Getter for the field
depth.- Returns:
- the depth of the search--that is, the maximum number of variables conditioned on in any conditional independence test.
-
setDepth
public void setDepth(int depth) Sets the maximum number of variables conditioned on in any conditional independence test. If set to -1, the value of 1000 will be used. May not be set to Integer.MAX_VALUE, due to a Java bug on multi-core systems.- Parameters:
depth- a int
-
getAmbiguousTriples
Getter for the field
ambiguousTriples.- Returns:
- the set of ambiguous triples found during the most recent run of the algorithm. Non-null after a call to
search().
-
getColliderTriples
Getter for the field
colliderTriples.- Returns:
- the set of collider triples found during the most recent run of the algorithm. Non-null after a call to
search().
-
getNoncolliderTriples
Getter for the field
noncolliderTriples.- Returns:
- the set of noncollider triples found during the most recent run of the algorithm. Non-null after a call
to
search().
-
getAdjacencies
getAdjacencies.
- Returns:
- a
Setobject
-
getApparentNonadjacencies
getApparentNonadjacencies.
- Returns:
- a
Setobject
-
getDefiniteNonadjacencies
getDefiniteNonadjacencies.
- Returns:
- a
Setobject
-
search
search.
- Specified by:
searchin interfaceIGraphSearch- Returns:
- a
Graphobject
-
getCov
getCov.
- Returns:
- a
ICovarianceMatrixobject
-
isDoOrientation
public boolean isDoOrientation()isDoOrientation.
- Returns:
- a boolean
-
getGraph
The graph that's constructed during the search.- Returns:
- a
Graphobject
-
setGraph
Setter for the field
graph.- Parameters:
graph- aGraphobject
-
setVerbose
public void setVerbose(boolean verbose) Setter for the field
verbose.- Parameters:
verbose- a boolean
-
getSemPm
Getter for the field
semPm.- Returns:
- a
SemPmobject
-
setSemPm
Setter for the field
semPm.- Parameters:
semPm- aSemPmobject
-