Class DmPc

java.lang.Object
edu.cmu.tetrad.search.DmPc

public class DmPc extends Object
The Detect-Mimic-PC (DM-PC) algorithm. This is intended to detect intermediate latent variables for Multiple Input * Multiple IndiCator (MIMIC) models. models. This implements a causal discovery algorithm for detecting and representing intermediate latent variables and their causal relationships in a dataset. The algorithm utilizes constraint-based causal discovery techniques, clustering, and structure refinement to build a causal graph that incorporates latent variables.

The class requires an `IndependenceTest` to perform statistical independence checks on variable pairs or groups, which is central to its operation.

Author:
murraywaters, josephramsey
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs an instance of the DmPc class using the specified independence test.
  • Method Summary

    Modifier and Type
    Method
    Description
    Executes the Directed Maximal PC (DmPc) algorithm to identify a causal graph structure that represents the relationships between observed and latent variables.
    void
    Sets the knowledge for the current instance.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DmPc

      public DmPc(IndependenceTest test)
      Constructs an instance of the DmPc class using the specified independence test.
      Parameters:
      test - An instance of the IndependenceTest interface, used to perform conditional independence tests as part of the algorithm.
  • Method Details

    • search

      public Graph search()
      Executes the Directed Maximal PC (DmPc) algorithm to identify a causal graph structure that represents the relationships between observed and latent variables. The method performs several steps including initialization, clustering, introducing latent nodes, refining edges, and final adjustments to produce the resultant graph.
      Returns:
      A causal Graph that represents the inferred structure of relationships among variables, incorporating both observed and latent variables.
    • setKnowledge

      public void setKnowledge(Knowledge knowledge)
      Sets the knowledge for the current instance. The provided knowledge is used in the context of the DmPc algorithm to guide the structure learning process by incorporating prior information or constraints.
      Parameters:
      knowledge - An instance of the Knowledge class that encapsulates domain-specific rules, constraints, or prior knowledge to be applied.