use of edu.cmu.tetrad.graph.Node in project tetrad by cmu-phil.
the class TestDiscreteProbs method testCreateRandom.
public static void testCreateRandom() {
DiscreteVariable x = new DiscreteVariable("X", 3);
DiscreteVariable y = new DiscreteVariable("Y", 3);
DiscreteVariable z = new DiscreteVariable("Z", 3);
DiscreteVariable w = new DiscreteVariable("W", 2);
List<Node> variables = new LinkedList<>();
variables.add(x);
variables.add(y);
variables.add(z);
variables.add(w);
StoredCellProbs cellProbabilities = StoredCellProbs.createRandomCellTable(variables);
}
use of edu.cmu.tetrad.graph.Node in project tetrad by cmu-phil.
the class SessionEditor method getSelectedModelComponents.
/**
* @return a list of all the SessionNodeWrappers (TetradNodes) and
* SessionNodeEdges that are model components for the respective
* SessionNodes and SessionEdges selected in the workbench. Note that the
* workbench, not the SessionEditorNodes themselves, keeps track of the
* selection.
*/
public List getSelectedModelComponents() {
List selectedComponents = getWorkbench().getSelectedComponents();
List selectedModelComponents = new ArrayList();
for (Object comp : selectedComponents) {
if (comp instanceof SessionEditorNode) {
SessionEditorNode editorNode = (SessionEditorNode) comp;
Node modelNode = editorNode.getModelNode();
selectedModelComponents.add(modelNode);
} else if (comp instanceof SessionEditorEdge) {
SessionEditorEdge editorEdge = (SessionEditorEdge) comp;
Edge modelEdge = getWorkbench().getModelEdge(editorEdge);
selectedModelComponents.add(modelEdge);
}
}
return selectedModelComponents;
}
use of edu.cmu.tetrad.graph.Node in project tetrad by cmu-phil.
the class ConstructTemplateAction method estimateFromSimulatedData.
private void estimateFromSimulatedData(int leftX) {
SessionEditorIndirectRef sessionEditorRef = DesktopController.getInstance().getFrontmostSessionEditor();
SessionEditor sessionEditor = (SessionEditor) sessionEditorRef;
SessionEditorWorkbench sessionWorkbench = sessionEditor.getSessionWorkbench();
sessionWorkbench.deselectAll();
List<Node> nodes = new LinkedList<>();
String data = nextName("Data");
String search = nextName("Search");
nodes.add(addNode("Data", data, leftX, 100));
nodes.add(addNode("Search", search, leftX + 150, 100));
String graph = nextName("Graph");
nodes.add(addNode("Graph", graph, leftX + 150, 200));
String pm = nextName("PM");
nodes.add(addNode("PM", pm, leftX + 150, 300));
String estimator = nextName("Estimator");
nodes.add(addNode("Estimator", estimator, leftX, 300));
addEdge(data, search);
addEdge(search, graph);
addEdge(graph, pm);
addEdge(data, estimator);
addEdge(data, pm);
addEdge(pm, estimator);
selectSubgraph(nodes);
}
use of edu.cmu.tetrad.graph.Node in project tetrad by cmu-phil.
the class ConstructTemplateAction method updateFromSimulatedData.
private void updateFromSimulatedData(int leftX) {
SessionEditorIndirectRef sessionEditorRef = DesktopController.getInstance().getFrontmostSessionEditor();
SessionEditor sessionEditor = (SessionEditor) sessionEditorRef;
SessionEditorWorkbench sessionWorkbench = sessionEditor.getSessionWorkbench();
sessionWorkbench.deselectAll();
List<Node> nodes = new LinkedList<>();
String data = nextName("Data");
String search = nextName("Search");
String estimator = nextName("Estimator");
String updater = nextName("Updater");
nodes.add(addNode("Data", data, leftX, 100));
nodes.add(addNode("Search", search, 150 + leftX, 100));
nodes.add(addNode("Estimator", estimator, 80 + leftX, 200));
nodes.add(addNode("Updater", updater, 80 + leftX, 300));
addEdge(data, search);
addEdge(data, estimator);
addEdge(search, estimator);
addEdge(estimator, updater);
selectSubgraph(nodes);
}
use of edu.cmu.tetrad.graph.Node in project tetrad by cmu-phil.
the class FgesMb method search.
@Override
public Graph search(DataModel dataSet, Parameters parameters) {
if (parameters.getInt("bootstrapSampleSize") < 1) {
if (algorithm != null) {
// initialGraph = algorithm.search(dataSet, parameters);
}
Score score = this.score.getScore(dataSet, parameters);
edu.cmu.tetrad.search.FgesMb search = new edu.cmu.tetrad.search.FgesMb(score);
search.setFaithfulnessAssumed(parameters.getBoolean("faithfulnessAssumed"));
search.setKnowledge(knowledge);
if (initialGraph != null) {
search.setInitialGraph(initialGraph);
}
this.targetName = parameters.getString("targetName");
Node target = this.score.getVariable(targetName);
return search.search(Collections.singletonList(target));
} else {
FgesMb fgesMb = new FgesMb(score, algorithm);
// fgesMb.setKnowledge(knowledge);
if (initialGraph != null) {
fgesMb.setInitialGraph(initialGraph);
}
DataSet data = (DataSet) dataSet;
GeneralBootstrapTest search = new GeneralBootstrapTest(data, fgesMb, parameters.getInt("bootstrapSampleSize"));
search.setKnowledge(knowledge);
BootstrapEdgeEnsemble edgeEnsemble = BootstrapEdgeEnsemble.Highest;
switch(parameters.getInt("bootstrapEnsemble", 1)) {
case 0:
edgeEnsemble = BootstrapEdgeEnsemble.Preserved;
break;
case 1:
edgeEnsemble = BootstrapEdgeEnsemble.Highest;
break;
case 2:
edgeEnsemble = BootstrapEdgeEnsemble.Majority;
}
search.setEdgeEnsemble(edgeEnsemble);
search.setParameters(parameters);
search.setVerbose(parameters.getBoolean("verbose"));
return search.search();
}
}
Aggregations