diff --git a/gtsam/discrete/tests/testDiscreteBayesTree.cpp b/gtsam/discrete/tests/testDiscreteBayesTree.cpp index 0288561cd..617eb7c9d 100644 --- a/gtsam/discrete/tests/testDiscreteBayesTree.cpp +++ b/gtsam/discrete/tests/testDiscreteBayesTree.cpp @@ -347,26 +347,26 @@ TEST(DiscreteBayesTree, Lookup) { EXPECT_LONGS_EQUAL(2, lookup->size()); auto lookup_x1_a1_x2 = (*lookup)[X(1)]->conditional(); EXPECT_LONGS_EQUAL(3, lookup_x1_a1_x2->frontals().size()); - // check that sum is 100 + // check that sum is 1.0 (not 100, as we now normalize) DiscreteValues empty; - EXPECT_DOUBLES_EQUAL(100, (*lookup_x1_a1_x2->sum(3))(empty), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*lookup_x1_a1_x2->sum(3))(empty), 1e-9); // And that only non-zero reward is for x1 a1 x2 == 0 1 1 - EXPECT_DOUBLES_EQUAL(100, (*lookup_x1_a1_x2)({{X(1),0},{A(1),1},{X(2),1}}), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*lookup_x1_a1_x2)({{X(1),0},{A(1),1},{X(2),1}}), 1e-9); auto lookup_a2_x3 = (*lookup)[X(3)]->conditional(); // check that the sum depends on x2 and is non-zero only for x2 \in {1,2} auto sum_x2 = lookup_a2_x3->sum(2); EXPECT_DOUBLES_EQUAL(0, (*sum_x2)({{X(2),0}}), 1e-9); - EXPECT_DOUBLES_EQUAL(10, (*sum_x2)({{X(2),1}}), 1e-9); - EXPECT_DOUBLES_EQUAL(20, (*sum_x2)({{X(2),2}}), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*sum_x2)({{X(2),1}}), 1e-9); + EXPECT_DOUBLES_EQUAL(2.0, (*sum_x2)({{X(2),2}}), 1e-9); EXPECT_LONGS_EQUAL(2, lookup_a2_x3->frontals().size()); // And that the non-zero rewards are for // x2 a2 x3 == 1 1 2 - EXPECT_DOUBLES_EQUAL(10, (*lookup_a2_x3)({{X(2),1},{A(2),1},{X(3),2}}), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*lookup_a2_x3)({{X(2),1},{A(2),1},{X(3),2}}), 1e-9); // x2 a2 x3 == 2 0 2 - EXPECT_DOUBLES_EQUAL(10, (*lookup_a2_x3)({{X(2),2},{A(2),0},{X(3),2}}), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*lookup_a2_x3)({{X(2),2},{A(2),0},{X(3),2}}), 1e-9); // x2 a2 x3 == 2 1 2 - EXPECT_DOUBLES_EQUAL(10, (*lookup_a2_x3)({{X(2),2},{A(2),1},{X(3),2}}), 1e-9); + EXPECT_DOUBLES_EQUAL(1.0, (*lookup_a2_x3)({{X(2),2},{A(2),1},{X(3),2}}), 1e-9); } /* ************************************************************************* */ diff --git a/gtsam_unstable/linear/tests/testQPSolver.cpp b/gtsam_unstable/linear/tests/testQPSolver.cpp index 12bd93416..b307c7302 100644 --- a/gtsam_unstable/linear/tests/testQPSolver.cpp +++ b/gtsam_unstable/linear/tests/testQPSolver.cpp @@ -181,7 +181,7 @@ TEST(QPSolver, iterate) { QPSolver::State state(currentSolution, VectorValues(), workingSet, false, 100); - int it = 0; + // int it = 0; while (!state.converged) { state = solver.iterate(state); // These checks will fail because the expected solutions obtained from @@ -190,7 +190,7 @@ TEST(QPSolver, iterate) { // do not recompute dual variables after every step!!! // CHECK(assert_equal(expected[it], state.values, 1e-10)); // CHECK(assert_equal(expectedDuals[it], state.duals, 1e-10)); - it++; + // it++; } CHECK(assert_equal(expected[3], state.values, 1e-10)); diff --git a/python/gtsam/tests/test_DiscreteBayesTree.py b/python/gtsam/tests/test_DiscreteBayesTree.py index c8a93e63b..2a9b6ea09 100644 --- a/python/gtsam/tests/test_DiscreteBayesTree.py +++ b/python/gtsam/tests/test_DiscreteBayesTree.py @@ -128,15 +128,15 @@ class TestDiscreteBayesNet(GtsamTestCase): assert lookup.size() == 2 lookup_x1_a1_x2 = lookup[X(1)].conditional() assert lookup_x1_a1_x2.nrFrontals() == 3 - # Check that sum is 100 + # Check that sum is 1.0 (not 100, as we now normalize to prevent underflow) empty = gtsam.DiscreteValues() - self.assertAlmostEqual(lookup_x1_a1_x2.sum(3)(empty), 100) + self.assertAlmostEqual(lookup_x1_a1_x2.sum(3)(empty), 1.0) # And that only non-zero reward is for x1 a1 x2 == 0 1 1 values = DiscreteValues() values[X(1)] = 0 values[A(1)] = 1 values[X(2)] = 1 - self.assertAlmostEqual(lookup_x1_a1_x2(values), 100) + self.assertAlmostEqual(lookup_x1_a1_x2(values), 1.0) lookup_a2_x3 = lookup[X(3)].conditional() # Check that the sum depends on x2 and is non-zero only for x2 in {1, 2} @@ -145,16 +145,16 @@ class TestDiscreteBayesNet(GtsamTestCase): values[X(2)] = 0 self.assertAlmostEqual(sum_x2(values), 0) values[X(2)] = 1 - self.assertAlmostEqual(sum_x2(values), 10) + self.assertAlmostEqual(sum_x2(values), 1.0) # not 10, as we normalize values[X(2)] = 2 - self.assertAlmostEqual(sum_x2(values), 20) + self.assertAlmostEqual(sum_x2(values), 2.0) # not 20, as we normalize assert lookup_a2_x3.nrFrontals() == 2 # And that the non-zero rewards are for x2 a2 x3 == 1 1 2 values = DiscreteValues() values[X(2)] = 1 values[A(2)] = 1 values[X(3)] = 2 - self.assertAlmostEqual(lookup_a2_x3(values), 10) + self.assertAlmostEqual(lookup_a2_x3(values), 1.0) # not 10... if __name__ == "__main__": unittest.main()