public void rtestDSeparation4() { Graph graph = new Dag(GraphUtils.randomGraph(100, 20, 100, 5, 5, 5, false)); long start, stop; int depth = -1; IndependenceTest test = new IndTestDSep(graph); Rfci fci = new Rfci(test); Fas fas = new Fas(test); start = System.currentTimeMillis(); fci.setDepth(depth); fci.setVerbose(true); fci.search(fas, fas.getNodes()); stop = System.currentTimeMillis(); System.out.println("DSEP RFCI"); System.out.println("# dsep checks = " + fas.getNumIndependenceTests()); System.out.println("Elapsed " + (stop - start)); System.out.println("Per " + fas.getNumIndependenceTests() / (double) (stop - start)); SemPm pm = new SemPm(graph); SemIm im = new SemIm(pm); DataSet data = im.simulateData(1000, false); IndependenceTest test2 = new IndTestFisherZ(data, 0.001); Rfci fci3 = new Rfci(test2); Fas fas2 = new Fas(test2); start = System.currentTimeMillis(); fci3.setDepth(depth); fci3.search(fas2, fas2.getNodes()); stop = System.currentTimeMillis(); System.out.println("FISHER Z RFCI"); System.out.println("# indep checks = " + fas.getNumIndependenceTests()); System.out.println("Elapsed " + (stop - start)); System.out.println("Per " + fas.getNumIndependenceTests() / (double) (stop - start)); }