Class VcPcFast
java.lang.Object
edu.cmu.tetrad.search.work_in_progress.VcPcFast
- All Implemented Interfaces:
- IGraphSearch
Implements a convervative version of PC, in which the Markov condition is assumed but faithfulness is tested
 locally.
- Version:
- $Id: $Id
- Author:
- josephramsey (this version).
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic enumAn enum of the types of triples that can be found in a graph.
- 
Constructor SummaryConstructorsConstructorDescriptionVcPcFast(IndependenceTest independenceTest) Constructs a CPC algorithm that uses the given independence test as oracle.
- 
Method SummaryModifier and TypeMethodDescriptionstatic voidfutureNodeVisit(Graph graph, Node b, LinkedList<Node> path, Set<Node> futureNodes) futureNodeVisit.getAdjacencies.Getter for the fieldambiguousTriples.getApparentNonadjacencies.Getter for the fieldcolliderTriples.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.getPopulationTripleType(Node x, Node y, Node z, IndependenceTest test, int depth, Graph graph, boolean verbose) getPopulationTripleType.booleanisMeekPreventCycles.search()search.voidsetDepth(int depth) Sets the maximum number of variables conditioned on in any conditional independence test.voidsetFacts(IndependenceFacts facts) Setter for the fieldfacts.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.voidsetVerbose(boolean verbose) Setter for the fieldverbose.
- 
Constructor Details- 
VcPcFastConstructs 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- a- IndependenceTestobject
 
 
- 
- 
Method Details- 
futureNodeVisitpublic static void futureNodeVisit(Graph graph, Node b, LinkedList<Node> path, Set<Node> futureNodes) futureNodeVisit. - Parameters:
- graph- a- Graphobject
- b- a- Nodeobject
- path- a- LinkedListobject
- futureNodes- a- Setobject
 
- 
isMeekPreventCyclespublic boolean isMeekPreventCycles()isMeekPreventCycles. - Returns:
- true just in case edges will not be added if they would create cycles.
 
- 
setMeekPreventCyclespublic void setMeekPreventCycles(boolean meekPreventCycles) Sets to true just in case edges will not be added if they would create cycles.- Parameters:
- meekPreventCycles- a boolean
 
- 
getElapsedTimepublic long getElapsedTime()Getter for the field elapsedTime.- Returns:
- the elapsed time of search in milliseconds, after search()has been run.
 
- 
getKnowledgeGetter for the field knowledge.- Returns:
- the knowledge specification used in the search. Non-null.
 
- 
setKnowledge
- 
getIndependenceTestGetter 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!
 
- 
getDepthpublic 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.
 
- 
setDepthpublic 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
- 
getColliderTriples
- 
getNoncolliderTriples
- 
getAdjacencies
- 
getApparentNonadjacencies
- 
getDefiniteNonadjacencies
- 
searchsearch. - Specified by:
- searchin interface- IGraphSearch
- Returns:
- a Graphobject
- Throws:
- InterruptedException- if any.
 
- 
getPopulationTripleTypepublic VcPcFast.CpcTripleType getPopulationTripleType(Node x, Node y, Node z, IndependenceTest test, int depth, Graph graph, boolean verbose) throws InterruptedException getPopulationTripleType. - Parameters:
- x- a- Nodeobject
- y- a- Nodeobject
- z- a- Nodeobject
- test- a- IndependenceTestobject
- depth- a int
- graph- a- Graphobject
- verbose- a boolean
- Returns:
- a VcPcFast.CpcTripleTypeobject
- Throws:
- InterruptedException
 
- 
getGraph
- 
setGraph
- 
setVerbosepublic void setVerbose(boolean verbose) Setter for the field verbose.- Parameters:
- verbose- a boolean
 
- 
setFactsSetter for the field facts.- Parameters:
- facts- a- IndependenceFactsobject
 
 
-