@Test public void test() throws Exception { ModifyingDBNs.main(null); }
public static void main(String[] args) throws Exception { DataStream<DynamicDataInstance> data = DynamicDataStreamLoader.loadFromFile( "datasets/simulated/syntheticDataDiscrete.arff"); DynamicVariables dynamicVariables = new DynamicVariables(data.getAttributes()); DynamicDAG dynamicDAG = new DynamicDAG(dynamicVariables); Variable A = dynamicVariables.getVariableByName("A"); Variable B = dynamicVariables.getVariableByName("B"); Variable C = dynamicVariables.getVariableByName("C"); Variable D = dynamicVariables.getVariableByName("D"); Variable E = dynamicVariables.getVariableByName("E"); Variable G = dynamicVariables.getVariableByName("G"); Variable A_Interface = dynamicVariables.getInterfaceVariable(A); Variable B_Interface = dynamicVariables.getInterfaceVariable(B); Variable E_Interface = dynamicVariables.getInterfaceVariable(E); Variable G_Interface = dynamicVariables.getInterfaceVariable(G); dynamicDAG.getParentSetTimeT(B).addParent(A); dynamicDAG.getParentSetTimeT(C).addParent(A); dynamicDAG.getParentSetTimeT(D).addParent(A); dynamicDAG.getParentSetTimeT(E).addParent(A); dynamicDAG.getParentSetTimeT(G).addParent(A); dynamicDAG.getParentSetTimeT(A).addParent(A_Interface); dynamicDAG.getParentSetTimeT(B).addParent(B_Interface); dynamicDAG.getParentSetTimeT(E).addParent(E_Interface); dynamicDAG.getParentSetTimeT(G).addParent(G_Interface); DynamicBayesianNetwork dbn = new DynamicBayesianNetwork(dynamicDAG); System.out.printf(dbn.toString()); Multinomial distA_Time0 = dbn.getConditionalDistributionTime0(A); distA_Time0.setProbabilities(new double[]{0.3, 0.7}); Multinomial_MultinomialParents distB_Time0 = dbn.getConditionalDistributionTime0(B); distB_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.1, 0.5}); distB_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.5, 0.3}); Multinomial_MultinomialParents distC_Time0 = dbn.getConditionalDistributionTime0(C); distC_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_Time0 = dbn.getConditionalDistributionTime0(D); distD_Time0.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_Time0 = dbn.getConditionalDistributionTime0(E); distE_Time0.getMultinomial(0).setProbabilities(new double[]{0.8, 0.2}); distE_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distG_Time0 = dbn.getConditionalDistributionTime0(G); distG_Time0.getMultinomial(0).setProbabilities(new double[]{0.6, 0.4}); distG_Time0.getMultinomial(1).setProbabilities(new double[]{0.7, 0.3}); Multinomial_MultinomialParents distA_TimeT = dbn.getConditionalDistributionTimeT(A); distA_TimeT.getMultinomial(0).setProbabilities(new double[]{0.15, 0.85}); distA_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distB_TimeT = dbn.getConditionalDistributionTimeT(B); distB_TimeT.getMultinomial(0).setProbabilities(new double[]{0.1, 0.2, 0.7}); distB_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.1, 0.3}); distB_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.4, 0.3}); distB_TimeT.getMultinomial(3).setProbabilities(new double[]{0.2, 0.1, 0.7}); distB_TimeT.getMultinomial(4).setProbabilities(new double[]{0.5, 0.1, 0.4}); distB_TimeT.getMultinomial(5).setProbabilities(new double[]{0.1, 0.1, 0.8}); Multinomial_MultinomialParents distC_TimeT = dbn.getConditionalDistributionTimeT(C); distC_TimeT.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_TimeT.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_TimeT = dbn.getConditionalDistributionTimeT(D); distD_TimeT.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_TimeT = dbn.getConditionalDistributionTimeT(E); distE_TimeT.getMultinomial(0).setProbabilities(new double[]{0.3, 0.7}); distE_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.4}); distE_TimeT.getMultinomial(2).setProbabilities(new double[]{0.7, 0.3}); distE_TimeT.getMultinomial(3).setProbabilities(new double[]{0.9, 0.1}); Multinomial_MultinomialParents distG_TimeT = dbn.getConditionalDistributionTimeT(G); distG_TimeT.getMultinomial(0).setProbabilities(new double[]{0.2, 0.8}); distG_TimeT.getMultinomial(1).setProbabilities(new double[]{0.5, 0.5}); distG_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.7}); distG_TimeT.getMultinomial(3).setProbabilities(new double[]{0.8, 0.2}); System.out.println(dbn.toString()); }
ModifyingDBNs { public static void main(String[] args) throws Exception { DataStream<DynamicDataInstance> data = DynamicDataStreamLoader.loadFromFile( "datasets/simulated/syntheticDataDiscrete.arff"); DynamicVariables dynamicVariables = new DynamicVariables(data.getAttributes()); DynamicDAG dynamicDAG = new DynamicDAG(dynamicVariables); Variable A = dynamicVariables.getVariableByName("A"); Variable B = dynamicVariables.getVariableByName("B"); Variable C = dynamicVariables.getVariableByName("C"); Variable D = dynamicVariables.getVariableByName("D"); Variable E = dynamicVariables.getVariableByName("E"); Variable G = dynamicVariables.getVariableByName("G"); Variable A_Interface = dynamicVariables.getInterfaceVariable(A); Variable B_Interface = dynamicVariables.getInterfaceVariable(B); Variable E_Interface = dynamicVariables.getInterfaceVariable(E); Variable G_Interface = dynamicVariables.getInterfaceVariable(G); dynamicDAG.getParentSetTimeT(B).addParent(A); dynamicDAG.getParentSetTimeT(C).addParent(A); dynamicDAG.getParentSetTimeT(D).addParent(A); dynamicDAG.getParentSetTimeT(E).addParent(A); dynamicDAG.getParentSetTimeT(G).addParent(A); dynamicDAG.getParentSetTimeT(A).addParent(A_Interface); dynamicDAG.getParentSetTimeT(B).addParent(B_Interface); dynamicDAG.getParentSetTimeT(E).addParent(E_Interface); dynamicDAG.getParentSetTimeT(G).addParent(G_Interface); DynamicBayesianNetwork dbn = new DynamicBayesianNetwork(dynamicDAG); System.out.printf(dbn.toString()); Multinomial distA_Time0 = dbn.getConditionalDistributionTime0(A); distA_Time0.setProbabilities(new double[]{0.3, 0.7}); Multinomial_MultinomialParents distB_Time0 = dbn.getConditionalDistributionTime0(B); distB_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.1, 0.5}); distB_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.5, 0.3}); Multinomial_MultinomialParents distC_Time0 = dbn.getConditionalDistributionTime0(C); distC_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_Time0 = dbn.getConditionalDistributionTime0(D); distD_Time0.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_Time0 = dbn.getConditionalDistributionTime0(E); distE_Time0.getMultinomial(0).setProbabilities(new double[]{0.8, 0.2}); distE_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distG_Time0 = dbn.getConditionalDistributionTime0(G); distG_Time0.getMultinomial(0).setProbabilities(new double[]{0.6, 0.4}); distG_Time0.getMultinomial(1).setProbabilities(new double[]{0.7, 0.3}); Multinomial_MultinomialParents distA_TimeT = dbn.getConditionalDistributionTimeT(A); distA_TimeT.getMultinomial(0).setProbabilities(new double[]{0.15, 0.85}); distA_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distB_TimeT = dbn.getConditionalDistributionTimeT(B); distB_TimeT.getMultinomial(0).setProbabilities(new double[]{0.1, 0.2, 0.7}); distB_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.1, 0.3}); distB_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.4, 0.3}); distB_TimeT.getMultinomial(3).setProbabilities(new double[]{0.2, 0.1, 0.7}); distB_TimeT.getMultinomial(4).setProbabilities(new double[]{0.5, 0.1, 0.4}); distB_TimeT.getMultinomial(5).setProbabilities(new double[]{0.1, 0.1, 0.8}); Multinomial_MultinomialParents distC_TimeT = dbn.getConditionalDistributionTimeT(C); distC_TimeT.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_TimeT.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_TimeT = dbn.getConditionalDistributionTimeT(D); distD_TimeT.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_TimeT = dbn.getConditionalDistributionTimeT(E); distE_TimeT.getMultinomial(0).setProbabilities(new double[]{0.3, 0.7}); distE_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.4}); distE_TimeT.getMultinomial(2).setProbabilities(new double[]{0.7, 0.3}); distE_TimeT.getMultinomial(3).setProbabilities(new double[]{0.9, 0.1}); Multinomial_MultinomialParents distG_TimeT = dbn.getConditionalDistributionTimeT(G); distG_TimeT.getMultinomial(0).setProbabilities(new double[]{0.2, 0.8}); distG_TimeT.getMultinomial(1).setProbabilities(new double[]{0.5, 0.5}); distG_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.7}); distG_TimeT.getMultinomial(3).setProbabilities(new double[]{0.8, 0.2}); System.out.println(dbn.toString()); } }
ModifyingDBNs { public static void main(String[] args) throws Exception { DataStream<DynamicDataInstance> data = DynamicDataStreamLoader.loadFromFile( "datasets/simulated/syntheticDataDiscrete.arff"); DynamicVariables dynamicVariables = new DynamicVariables(data.getAttributes()); DynamicDAG dynamicDAG = new DynamicDAG(dynamicVariables); Variable A = dynamicVariables.getVariableByName("A"); Variable B = dynamicVariables.getVariableByName("B"); Variable C = dynamicVariables.getVariableByName("C"); Variable D = dynamicVariables.getVariableByName("D"); Variable E = dynamicVariables.getVariableByName("E"); Variable G = dynamicVariables.getVariableByName("G"); Variable A_Interface = dynamicVariables.getInterfaceVariable(A); Variable B_Interface = dynamicVariables.getInterfaceVariable(B); Variable E_Interface = dynamicVariables.getInterfaceVariable(E); Variable G_Interface = dynamicVariables.getInterfaceVariable(G); dynamicDAG.getParentSetTimeT(B).addParent(A); dynamicDAG.getParentSetTimeT(C).addParent(A); dynamicDAG.getParentSetTimeT(D).addParent(A); dynamicDAG.getParentSetTimeT(E).addParent(A); dynamicDAG.getParentSetTimeT(G).addParent(A); dynamicDAG.getParentSetTimeT(A).addParent(A_Interface); dynamicDAG.getParentSetTimeT(B).addParent(B_Interface); dynamicDAG.getParentSetTimeT(E).addParent(E_Interface); dynamicDAG.getParentSetTimeT(G).addParent(G_Interface); DynamicBayesianNetwork dbn = new DynamicBayesianNetwork(dynamicDAG); System.out.printf(dbn.toString()); Multinomial distA_Time0 = dbn.getConditionalDistributionTime0(A); distA_Time0.setProbabilities(new double[]{0.3, 0.7}); Multinomial_MultinomialParents distB_Time0 = dbn.getConditionalDistributionTime0(B); distB_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.1, 0.5}); distB_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.5, 0.3}); Multinomial_MultinomialParents distC_Time0 = dbn.getConditionalDistributionTime0(C); distC_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_Time0 = dbn.getConditionalDistributionTime0(D); distD_Time0.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_Time0 = dbn.getConditionalDistributionTime0(E); distE_Time0.getMultinomial(0).setProbabilities(new double[]{0.8, 0.2}); distE_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distG_Time0 = dbn.getConditionalDistributionTime0(G); distG_Time0.getMultinomial(0).setProbabilities(new double[]{0.6, 0.4}); distG_Time0.getMultinomial(1).setProbabilities(new double[]{0.7, 0.3}); Multinomial_MultinomialParents distA_TimeT = dbn.getConditionalDistributionTimeT(A); distA_TimeT.getMultinomial(0).setProbabilities(new double[]{0.15, 0.85}); distA_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distB_TimeT = dbn.getConditionalDistributionTimeT(B); distB_TimeT.getMultinomial(0).setProbabilities(new double[]{0.1, 0.2, 0.7}); distB_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.1, 0.3}); distB_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.4, 0.3}); distB_TimeT.getMultinomial(3).setProbabilities(new double[]{0.2, 0.1, 0.7}); distB_TimeT.getMultinomial(4).setProbabilities(new double[]{0.5, 0.1, 0.4}); distB_TimeT.getMultinomial(5).setProbabilities(new double[]{0.1, 0.1, 0.8}); Multinomial_MultinomialParents distC_TimeT = dbn.getConditionalDistributionTimeT(C); distC_TimeT.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_TimeT.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_TimeT = dbn.getConditionalDistributionTimeT(D); distD_TimeT.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_TimeT = dbn.getConditionalDistributionTimeT(E); distE_TimeT.getMultinomial(0).setProbabilities(new double[]{0.3, 0.7}); distE_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.4}); distE_TimeT.getMultinomial(2).setProbabilities(new double[]{0.7, 0.3}); distE_TimeT.getMultinomial(3).setProbabilities(new double[]{0.9, 0.1}); Multinomial_MultinomialParents distG_TimeT = dbn.getConditionalDistributionTimeT(G); distG_TimeT.getMultinomial(0).setProbabilities(new double[]{0.2, 0.8}); distG_TimeT.getMultinomial(1).setProbabilities(new double[]{0.5, 0.5}); distG_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.7}); distG_TimeT.getMultinomial(3).setProbabilities(new double[]{0.8, 0.2}); System.out.println(dbn.toString()); }  }
ModifyingDBNs { public static void main(String[] args) throws Exception { DataStream<DynamicDataInstance> data = DynamicDataStreamLoader.loadFromFile( "datasets/simulated/syntheticDataDiscrete.arff"); DynamicVariables dynamicVariables = new DynamicVariables(data.getAttributes()); DynamicDAG dynamicDAG = new DynamicDAG(dynamicVariables); Variable A = dynamicVariables.getVariableByName("A"); Variable B = dynamicVariables.getVariableByName("B"); Variable C = dynamicVariables.getVariableByName("C"); Variable D = dynamicVariables.getVariableByName("D"); Variable E = dynamicVariables.getVariableByName("E"); Variable G = dynamicVariables.getVariableByName("G"); Variable A_Interface = dynamicVariables.getInterfaceVariable(A); Variable B_Interface = dynamicVariables.getInterfaceVariable(B); Variable E_Interface = dynamicVariables.getInterfaceVariable(E); Variable G_Interface = dynamicVariables.getInterfaceVariable(G); dynamicDAG.getParentSetTimeT(B).addParent(A); dynamicDAG.getParentSetTimeT(C).addParent(A); dynamicDAG.getParentSetTimeT(D).addParent(A); dynamicDAG.getParentSetTimeT(E).addParent(A); dynamicDAG.getParentSetTimeT(G).addParent(A); dynamicDAG.getParentSetTimeT(A).addParent(A_Interface); dynamicDAG.getParentSetTimeT(B).addParent(B_Interface); dynamicDAG.getParentSetTimeT(E).addParent(E_Interface); dynamicDAG.getParentSetTimeT(G).addParent(G_Interface); DynamicBayesianNetwork dbn = new DynamicBayesianNetwork(dynamicDAG); System.out.printf(dbn.toString()); Multinomial distA_Time0 = dbn.getConditionalDistributionTime0(A); distA_Time0.setProbabilities(new double[]{0.3, 0.7}); Multinomial_MultinomialParents distB_Time0 = dbn.getConditionalDistributionTime0(B); distB_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.1, 0.5}); distB_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.5, 0.3}); Multinomial_MultinomialParents distC_Time0 = dbn.getConditionalDistributionTime0(C); distC_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_Time0 = dbn.getConditionalDistributionTime0(D); distD_Time0.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_Time0 = dbn.getConditionalDistributionTime0(E); distE_Time0.getMultinomial(0).setProbabilities(new double[]{0.8, 0.2}); distE_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distG_Time0 = dbn.getConditionalDistributionTime0(G); distG_Time0.getMultinomial(0).setProbabilities(new double[]{0.6, 0.4}); distG_Time0.getMultinomial(1).setProbabilities(new double[]{0.7, 0.3}); Multinomial_MultinomialParents distA_TimeT = dbn.getConditionalDistributionTimeT(A); distA_TimeT.getMultinomial(0).setProbabilities(new double[]{0.15, 0.85}); distA_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distB_TimeT = dbn.getConditionalDistributionTimeT(B); distB_TimeT.getMultinomial(0).setProbabilities(new double[]{0.1, 0.2, 0.7}); distB_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.1, 0.3}); distB_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.4, 0.3}); distB_TimeT.getMultinomial(3).setProbabilities(new double[]{0.2, 0.1, 0.7}); distB_TimeT.getMultinomial(4).setProbabilities(new double[]{0.5, 0.1, 0.4}); distB_TimeT.getMultinomial(5).setProbabilities(new double[]{0.1, 0.1, 0.8}); Multinomial_MultinomialParents distC_TimeT = dbn.getConditionalDistributionTimeT(C); distC_TimeT.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_TimeT.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_TimeT = dbn.getConditionalDistributionTimeT(D); distD_TimeT.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_TimeT = dbn.getConditionalDistributionTimeT(E); distE_TimeT.getMultinomial(0).setProbabilities(new double[]{0.3, 0.7}); distE_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.4}); distE_TimeT.getMultinomial(2).setProbabilities(new double[]{0.7, 0.3}); distE_TimeT.getMultinomial(3).setProbabilities(new double[]{0.9, 0.1}); Multinomial_MultinomialParents distG_TimeT = dbn.getConditionalDistributionTimeT(G); distG_TimeT.getMultinomial(0).setProbabilities(new double[]{0.2, 0.8}); distG_TimeT.getMultinomial(1).setProbabilities(new double[]{0.5, 0.5}); distG_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.7}); distG_TimeT.getMultinomial(3).setProbabilities(new double[]{0.8, 0.2}); System.out.println(dbn.toString()); }  static void main(String[] args); }
ModifyingDBNs { public static void main(String[] args) throws Exception { DataStream<DynamicDataInstance> data = DynamicDataStreamLoader.loadFromFile( "datasets/simulated/syntheticDataDiscrete.arff"); DynamicVariables dynamicVariables = new DynamicVariables(data.getAttributes()); DynamicDAG dynamicDAG = new DynamicDAG(dynamicVariables); Variable A = dynamicVariables.getVariableByName("A"); Variable B = dynamicVariables.getVariableByName("B"); Variable C = dynamicVariables.getVariableByName("C"); Variable D = dynamicVariables.getVariableByName("D"); Variable E = dynamicVariables.getVariableByName("E"); Variable G = dynamicVariables.getVariableByName("G"); Variable A_Interface = dynamicVariables.getInterfaceVariable(A); Variable B_Interface = dynamicVariables.getInterfaceVariable(B); Variable E_Interface = dynamicVariables.getInterfaceVariable(E); Variable G_Interface = dynamicVariables.getInterfaceVariable(G); dynamicDAG.getParentSetTimeT(B).addParent(A); dynamicDAG.getParentSetTimeT(C).addParent(A); dynamicDAG.getParentSetTimeT(D).addParent(A); dynamicDAG.getParentSetTimeT(E).addParent(A); dynamicDAG.getParentSetTimeT(G).addParent(A); dynamicDAG.getParentSetTimeT(A).addParent(A_Interface); dynamicDAG.getParentSetTimeT(B).addParent(B_Interface); dynamicDAG.getParentSetTimeT(E).addParent(E_Interface); dynamicDAG.getParentSetTimeT(G).addParent(G_Interface); DynamicBayesianNetwork dbn = new DynamicBayesianNetwork(dynamicDAG); System.out.printf(dbn.toString()); Multinomial distA_Time0 = dbn.getConditionalDistributionTime0(A); distA_Time0.setProbabilities(new double[]{0.3, 0.7}); Multinomial_MultinomialParents distB_Time0 = dbn.getConditionalDistributionTime0(B); distB_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.1, 0.5}); distB_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.5, 0.3}); Multinomial_MultinomialParents distC_Time0 = dbn.getConditionalDistributionTime0(C); distC_Time0.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_Time0.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_Time0 = dbn.getConditionalDistributionTime0(D); distD_Time0.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_Time0 = dbn.getConditionalDistributionTime0(E); distE_Time0.getMultinomial(0).setProbabilities(new double[]{0.8, 0.2}); distE_Time0.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distG_Time0 = dbn.getConditionalDistributionTime0(G); distG_Time0.getMultinomial(0).setProbabilities(new double[]{0.6, 0.4}); distG_Time0.getMultinomial(1).setProbabilities(new double[]{0.7, 0.3}); Multinomial_MultinomialParents distA_TimeT = dbn.getConditionalDistributionTimeT(A); distA_TimeT.getMultinomial(0).setProbabilities(new double[]{0.15, 0.85}); distA_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distB_TimeT = dbn.getConditionalDistributionTimeT(B); distB_TimeT.getMultinomial(0).setProbabilities(new double[]{0.1, 0.2, 0.7}); distB_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.1, 0.3}); distB_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.4, 0.3}); distB_TimeT.getMultinomial(3).setProbabilities(new double[]{0.2, 0.1, 0.7}); distB_TimeT.getMultinomial(4).setProbabilities(new double[]{0.5, 0.1, 0.4}); distB_TimeT.getMultinomial(5).setProbabilities(new double[]{0.1, 0.1, 0.8}); Multinomial_MultinomialParents distC_TimeT = dbn.getConditionalDistributionTimeT(C); distC_TimeT.getMultinomial(0).setProbabilities(new double[]{0.4, 0.6}); distC_TimeT.getMultinomial(1).setProbabilities(new double[]{0.2, 0.8}); Multinomial_MultinomialParents distD_TimeT = dbn.getConditionalDistributionTimeT(D); distD_TimeT.getMultinomial(0).setProbabilities(new double[]{0.7, 0.3}); distD_TimeT.getMultinomial(1).setProbabilities(new double[]{0.1, 0.9}); Multinomial_MultinomialParents distE_TimeT = dbn.getConditionalDistributionTimeT(E); distE_TimeT.getMultinomial(0).setProbabilities(new double[]{0.3, 0.7}); distE_TimeT.getMultinomial(1).setProbabilities(new double[]{0.6, 0.4}); distE_TimeT.getMultinomial(2).setProbabilities(new double[]{0.7, 0.3}); distE_TimeT.getMultinomial(3).setProbabilities(new double[]{0.9, 0.1}); Multinomial_MultinomialParents distG_TimeT = dbn.getConditionalDistributionTimeT(G); distG_TimeT.getMultinomial(0).setProbabilities(new double[]{0.2, 0.8}); distG_TimeT.getMultinomial(1).setProbabilities(new double[]{0.5, 0.5}); distG_TimeT.getMultinomial(2).setProbabilities(new double[]{0.3, 0.7}); distG_TimeT.getMultinomial(3).setProbabilities(new double[]{0.8, 0.2}); System.out.println(dbn.toString()); }  static void main(String[] args);  }