Package edu.cmu.tetrad.search
Class Fasd
java.lang.Object
edu.cmu.tetrad.search.Fasd
- All Implemented Interfaces:
- IFas,- IGraphSearch
Adjusts FAS (see) for the deterministic case by refusing to removed edges based on conditional independence tests that are judged to be deterministic. That is, if X _||_ Y | Z, but Z determines X or Y, then the edge X---Y is not removed.
This class is configured to respect knowledge of forbidden and required edges, including knowledge of temporal tiers.
- Author:
- peterspirtes, josephramsey.
- See Also:
- 
Constructor SummaryConstructorsConstructorDescriptionFasd(Graph graph, IndependenceTest test) Constructs a new FastAdjacencySearch.Fasd(IndependenceTest test) Constructs a new FastAdjacencySearch.
- 
Method SummaryModifier and TypeMethodDescriptiongetAmbiguousTriples(Node node) Returns an empty list.longReturns the elapsed time.getNodes()Returns the nodes beign searched over.intReturns the nubmer of conditional independence tests done in the course of search.Returns the map of node pairs to sepsets from the search.booleansearch()Discovers all adjacencies in data.voidsetDepth(int depth) Sets the maximum number of variables conditoined on in any test.voidsetExternalGraph(Graph externalGraph) Sets the external graph.voidsetKnowledge(Knowledge knowledge) Sets the knowledge to be used in the search.voidsetOut(PrintStream out) Sets the output to send prints to.voidsetVerbose(boolean verbose) Sets whether verbose output will be printed.
- 
Constructor Details- 
FasdConstructs a new FastAdjacencySearch.- Parameters:
- graph- An initial graph of edges that will be removed.
- test- A test to use as a conditional independence oracle.
 
- 
FasdConstructs a new FastAdjacencySearch.- Parameters:
- test- A test to use as a conditional independence oracle.
 
 
- 
- 
Method Details- 
search- Throws:
- UnsupportedOperationException- This contructor is not implemented.
 
- 
searchDiscovers all adjacencies in data. The procedure is to remove edges in the graph which connect pairs of variables which are independent conditional on some other set of variables in the graph (the "sepset"). These are removed in tiers. First, edges which are independent conditional on zero other variables are removed, then edges which are independent conditional on one other variable are removed, then two, then three, and so on, until no more edges can be removed from the graph. The edges which remain in the graph after this procedure are the adjacencies in the data.- Specified by:
- searchin interface- IGraphSearch
- Returns:
- a graph which indicates which variables are independent conditional on which other variables
 
- 
setDepthpublic void setDepth(int depth) Sets the maximum number of variables conditoined on in any test.
- 
setKnowledgeSets the knowledge to be used in the search.- Specified by:
- setKnowledgein interface- IFas
- Parameters:
- knowledge- This knowledge.
 
- 
getNumIndependenceTestspublic int getNumIndependenceTests()Returns the nubmer of conditional independence tests done in the course of search.- Specified by:
- getNumIndependenceTestsin interface- IFas
- Returns:
- This number.
 
- 
getSepsetsReturns the map of node pairs to sepsets from the search.- Specified by:
- getSepsetsin interface- IFas
- Returns:
- This map.
 
- 
setExternalGraphSets the external graph. Adjacencies not in this external graph will not be judged adjacent in the search result.- Parameters:
- externalGraph- This graph.
 
- 
isVerbosepublic boolean isVerbose()
- 
setVerbosepublic void setVerbose(boolean verbose) Sets whether verbose output will be printed.- Specified by:
- setVerbosein interface- IFas
- Parameters:
- verbose- True if so.
 
- 
getElapsedTimepublic long getElapsedTime()Returns the elapsed time.- Specified by:
- getElapsedTimein interface- IFas
- Returns:
- This time.
 
- 
getNodesReturns the nodes beign searched over.
- 
getAmbiguousTriplesReturns an empty list. Not used.- Specified by:
- getAmbiguousTriplesin interface- IFas
- Parameters:
- node- Whichever node.
- Returns:
- An empty list.
- See Also:
 
- 
setOutSets the output to send prints to.
 
-