pywhy-graphs
pywhy-graphs copied to clipboard
Conversions to equivalence class representations that satisfy constraints
Suppose the ground truth DAG is A🡢B🡢C. Suppose you apply a score-based discovery algorithm captures an intervention on C. This algorithm should give A🡢B🡢C and A🡠B🡢C have a higher score than A🡠B🡠C. Equivalently, include/exclude lists or a Bayesian prior might force or put high probability on B🡢C and exclude/put low probability on B🡠C.
However, the traditional algorithm for converting a DAG to a CPDAG will return A--B--C, which essentially weights these three DAGs as equivalent.
This task calls to implement an algorithm that converts a DAG to a CPDAG that freezes edges oriented by interventions or prior knowledge.
Here is a sketch of an algorithm: 