public static void main (String[] args) throws Throwable { TestSuite theSuite; if (args.length > 0) { theSuite = new TestSuite (); for (int i = 0; i < args.length; i++) { theSuite.addTest (new TestDirectedModel (args[i])); } } else { theSuite = (TestSuite) suite (); } junit.textui.TestRunner.run (theSuite); }
private void comparePotentials (DiscreteFactor fActual, DiscreteFactor fExpected) { double[] actual = fActual.toValueArray (); double[] expected = fExpected.toValueArray (); assertEquals (expected.length, actual.length); for (int i = 0; i < expected.length; i++) { assertEquals (expected[i], actual[i], 0.001); } }
public void testCptOfVar () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); assertTrue (pA == dm.getCptofVar (A)); assertTrue (pB == dm.getCptofVar (B)); assertTrue (pC == dm.getCptofVar (C)); }
public void testSimpleModel () { FactorGraph fg1 = new FactorGraph (vars); fg1.addFactor (pA); fg1.addFactor (pB); fg1.addFactor (fC); DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); BruteForceInferencer inf = new BruteForceInferencer (); DiscreteFactor joint1 = (DiscreteFactor) inf.joint (fg1); DiscreteFactor joint2 = (DiscreteFactor) inf.joint (dm); comparePotentials (joint1, joint2); }
public void testSimpleModel () { FactorGraph fg1 = new FactorGraph (vars); fg1.addFactor (pA); fg1.addFactor (pB); fg1.addFactor (fC); DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); BruteForceInferencer inf = new BruteForceInferencer (); DiscreteFactor joint1 = (DiscreteFactor) inf.joint (fg1); DiscreteFactor joint2 = (DiscreteFactor) inf.joint (dm); comparePotentials (joint1, joint2); }
public static void main (String[] args) throws Throwable { TestSuite theSuite; if (args.length > 0) { theSuite = new TestSuite (); for (int i = 0; i < args.length; i++) { theSuite.addTest (new TestDirectedModel (args[i])); } } else { theSuite = (TestSuite) suite (); } junit.textui.TestRunner.run (theSuite); }
public void testCptOfVar () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); assertTrue (pA == dm.getCptofVar (A)); assertTrue (pB == dm.getCptofVar (B)); assertTrue (pC == dm.getCptofVar (C)); }
private void comparePotentials (DiscreteFactor fActual, DiscreteFactor fExpected) { double[] actual = fActual.toValueArray (); double[] expected = fExpected.toValueArray (); assertEquals (expected.length, actual.length); for (int i = 0; i < expected.length; i++) { assertEquals (expected[i], actual[i], 0.001); } }
public void testCycleChecking () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); try { TableFactor f1 = new TableFactor (new Variable[] { B, C }); dm.addFactor (new CPT (f1, B)); assertTrue ("Test failed: No exception thrown.", false); } catch (IllegalArgumentException e) { // Exception is expected } try { TableFactor f1 = new TableFactor (new Variable[] { A, C }); dm.addFactor (new CPT (f1, A)); assertTrue ("Test failed: No exception thrown.", false); } catch (IllegalArgumentException e) { // Exception is expected } }
public void testFactorReplace () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); assertEquals (3, dm.factors ().size ()); TableFactor f1 = new TableFactor (new Variable[] { B, C }); CPT p1 = new CPT (f1, C); try { dm.addFactor (p1); } catch (IllegalArgumentException e) { // expected } }
public void testCycleChecking () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); try { TableFactor f1 = new TableFactor (new Variable[] { B, C }); dm.addFactor (new CPT (f1, B)); assertTrue ("Test failed: No exception thrown.", false); } catch (IllegalArgumentException e) { // Exception is expected } try { TableFactor f1 = new TableFactor (new Variable[] { A, C }); dm.addFactor (new CPT (f1, A)); assertTrue ("Test failed: No exception thrown.", false); } catch (IllegalArgumentException e) { // Exception is expected } }
public void testFactorReplace () { DirectedModel dm = new DirectedModel (vars); dm.addFactor (pA); dm.addFactor (pB); dm.addFactor (pC); assertEquals (3, dm.factors ().size ()); TableFactor f1 = new TableFactor (new Variable[] { B, C }); CPT p1 = new CPT (f1, C); try { dm.addFactor (p1); } catch (IllegalArgumentException e) { // expected } }