Package edu.cmu.tetrad.search.utils
Class MsepVertexCutFinder
java.lang.Object
edu.cmu.tetrad.search.utils.MsepVertexCutFinder
The MsepVertexCutFinder class is responsible for finding "choke points" within a given directed acyclic graph (DAG)
using d-separation principles. Choke points represent sets of nodes that separate two given nodes in the graph.
The implementation leverages ancestor maps and considers causal relationships represented in the graph to find paths and cut-points between two nodes.
-
Constructor Summary
ConstructorsConstructorDescriptionMsepVertexCutFinder(Graph graph) Constructs an instance of the MsepVertexCutFinder class with the specified graph. -
Method Summary
Modifier and TypeMethodDescriptionFinds the choke points between a source node and a sink node within a given graph, considering a specific ancestor map and utilizing a d-separation-aware approach.static voidThe entry point for the MsepVertexCutFinder application.
-
Constructor Details
-
MsepVertexCutFinder
Constructs an instance of the MsepVertexCutFinder class with the specified graph.- Parameters:
graph- the graph for which vertex cuts will be identified. This graph serves as the base structure on which the operations of the MsepVertexCutFinder are conducted.
-
-
Method Details
-
main
The entry point for the MsepVertexCutFinder application. This method generates a random directed acyclic graph (DAG), initializes necessary objects, and verifies m-separation conditions for pairs of non-adjacent nodes in the graph. It determines choke points and checks their validity based on m-separation.- Parameters:
args- command-line arguments (not used in this implementation).
-
findChokePoint
Finds the choke points between a source node and a sink node within a given graph, considering a specific ancestor map and utilizing a d-separation-aware approach.- Parameters:
source- the starting node in the graph.sink- the destination node in the graph.ancestorMap- a map containing each node's set of ancestors. Used to determine valid paths based on d-separation principles.- Returns:
- a set of nodes representing the choke points between the source and sink if a valid path exists, or null if no such path exists.
-