Doris
unread,Aug 30, 2012, 7:22:45 AM8/30/12Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to tetrad-us...@googlegroups.com
Hi,
it seems that the newer version of Tetrad handles background knowledge in tiers unexpectedly, and outputs a wrong PAG. I compared the output of Tetrad version 4.3.10-6 and the older Tetread vesrion 4.3.9-10 (I just picked some random older version). Here is the small example:
- My generating DAG is x1 -> x2 <- l1 -> x3, where x1, x2, x3 are observed and l1 is hidden (input in Tetrad with a graph box).
- Running FCI without background knowledge gives me the expected result (for both versions 4.3.9-10 and 4.3.10-6): x1 o-> x2 <-o x3
- Then I add background knowledge in tiers: (in the newer version with the knowledge box, in the older version in the search box)
tier 1 = x1
tier 2 = x2
tier 3 = x3
The knowledge in text format is: (in both Tetrad versions)
/knowledge
addtemporal
1 X1
2 X2
3 X3
forbiddirect
requiredirect
- If I run FCI in the latest (non-experimental) Tetrad version 4.3.10-6, I get the following output:
x1 o-> x2 --> x3
note the tail at x2; this output PAG does not seem to represent the correct ancestral relationships (the PAG would say that x2 is an ancestor of x3, which is not the case in the generating DAG)
The logger gives the following output:
Starting FCI algorithm.
Independence test = D-separation.
Starting Fast Adjacency Search.
Independence accepted: X1 _||_ X3 p = 1.0000
Finishing Fast Adjacency Search.
Orienting collider: X1 *-> X2 <-* X3
Step C: 0.0s
Step D: 0.016s
Starting BK Orientation.
Finishing BK Orientation.
Step CI C: 0.012s
Orienting edge (Away from collider): X2 --> X3
It seems that after the collider orientation x1 *-> x2 <-* x3, the edge x2 <-*x3 is re-oritented in the background orientation, probably to x2 o-> x3.
- Since this was not the expected outcome, I ran FCI in Tetrad version 4.3.9-10, and get as output the following graph (which I would have expected to get)
x1 o-> x2 <-> x3 (this represents the correct ancestral relationships)
The logger gives the following output:
Starting FCI algorithm.
Independence test = D-separation.
Starting Fast Adjacency Search.
Independence accepted: X1 _||_ X3 p = 1,0000
Finishing Fast Adjacency Search.
Step C: 0.0s
Possible-D-Sep(X1, X2) = []
Possible-D-Sep(X2, X1) = [X3]
Possible-D-Sep(X2, X3) = [X1]
Possible-D-Sep(X3, X2) = []
Step D: 0.044s
Starting BK Orientation.
Orienting edge (Knowledge): X1 o-> X2
Orienting edge (Knowledge): X2 o-> X3
Finishing BK Orientation.
Orienting collider: X1 *-> X2 <-* X3
Step CI C: 0.0060s
So in the older version, the background orientation is done before the collider orientation. Should this be done the same way in the newer version?
Best,
Doris