Package edu.cmu.tetrad.search.utils
Class SepsetsMaxP
java.lang.Object
edu.cmu.tetrad.search.utils.SepsetsMaxP
- All Implemented Interfaces:
SepsetProducer
Provides a SepsetProcuder that selects the first sepset it comes to from among the extra sepsets or the adjacents of i or k, or null if none is found. This version uses conservative reasoning (see the CPC algorithm).
- Version:
- $Id: $Id
- Author:
- josephramsey
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionSepsetsMaxP
(Graph graph, IndependenceTest independenceTest, SepsetMap extraSepsets, int depth) Constructor for SepsetsConservative. -
Method Summary
Modifier and TypeMethodDescriptionGetter for the fieldindependenceTest
.double
Returns the p-value for the independence test between two nodes, given a set of separator nodes.double
getScore()
getScore.Returns the set of nodes in the sepset between two given nodes, or null if no sepset is found.getSepsetContaining
(Node i, Node k, Set<Node> s) Returns the set of nodes in the sepset between two given nodes containing a given set of separator nodes, or null if no sepset is found.getSepsetsLists
(Node x, Node y, Node z, IndependenceTest test, int depth, boolean verbose) getSepsetsLists.getVariables.boolean
isIndependent
(Node a, Node b, Set<Node> sepset) Determines if two nodes are independent given a set of separator nodes.boolean
isUnshieldedCollider
(Node i, Node j, Node k) isUnshieldedCollider.void
setVerbose
(boolean verbose) setVerbose.
-
Constructor Details
-
SepsetsMaxP
public SepsetsMaxP(Graph graph, IndependenceTest independenceTest, SepsetMap extraSepsets, int depth) Constructor for SepsetsConservative.
- Parameters:
graph
- aGraph
objectindependenceTest
- aIndependenceTest
objectextraSepsets
- aSepsetMap
objectdepth
- a int
-
-
Method Details
-
getSepset
Returns the set of nodes in the sepset between two given nodes, or null if no sepset is found.- Specified by:
getSepset
in interfaceSepsetProducer
- Parameters:
i
- the first nodek
- the second node- Returns:
- a Set of Node objects representing the sepset between the two nodes, or null if no sepset is found.
-
getSepsetContaining
Returns the set of nodes in the sepset between two given nodes containing a given set of separator nodes, or null if no sepset is found. If there is no required set of nodes, pass null for the set.- Specified by:
getSepsetContaining
in interfaceSepsetProducer
- Parameters:
i
- the first nodek
- the second nodes
- A set of nodes that must be in the sepset, or null if no such set is required.- Returns:
- a Set of Node objects representing the sepset between the two nodes containing the given set, or null if no sepset is found
-
isUnshieldedCollider
isUnshieldedCollider.
- Specified by:
isUnshieldedCollider
in interfaceSepsetProducer
- Parameters:
i
- aNode
objectj
- aNode
objectk
- aNode
object- Returns:
- a boolean
-
getSepsetsLists
public List<List<Set<Node>>> getSepsetsLists(Node x, Node y, Node z, IndependenceTest test, int depth, boolean verbose) getSepsetsLists.
- Parameters:
x
- aNode
objecty
- aNode
objectz
- aNode
objecttest
- aIndependenceTest
objectdepth
- a intverbose
- a boolean- Returns:
- a
List
object
-
isIndependent
Determines if two nodes are independent given a set of separator nodes.- Specified by:
isIndependent
in interfaceSepsetProducer
- Parameters:
a
- ANode
object representing the first node.b
- ANode
object representing the second node.sepset
- ASet
object representing the set of separator nodes.- Returns:
- True if the nodes are independent, false otherwise.
-
getPValue
Returns the p-value for the independence test between two nodes, given a set of separator nodes.- Specified by:
getPValue
in interfaceSepsetProducer
- Parameters:
a
- the first nodeb
- the second nodesepset
- the set of separator nodes- Returns:
- the p-value for the independence test
-
getScore
public double getScore()getScore.
- Specified by:
getScore
in interfaceSepsetProducer
- Returns:
- a double
-
getVariables
getVariables.
- Specified by:
getVariables
in interfaceSepsetProducer
- Returns:
- a
List
object
-
setVerbose
public void setVerbose(boolean verbose) setVerbose.
- Specified by:
setVerbose
in interfaceSepsetProducer
- Parameters:
verbose
- a boolean
-
getIndependenceTest
Getter for the field
independenceTest
.- Returns:
- a
IndependenceTest
object
-