X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=TODO;h=7ac8ebfde3bd021d302fa2a635a9e18fe6d65131;hb=481d7626ac1f2641ad5c02c370fc6f082b96144d;hp=e571aeaf6dda586f4d5e217979654a0c515468c6;hpb=0e2a195d7b947aff65893c000292f7742028afdc;p=dunshire.git diff --git a/TODO b/TODO index e571aea..7ac8ebf 100644 --- a/TODO +++ b/TODO @@ -139,3 +139,85 @@ 8. Fix floating point comparisons in the doctest output. + +10. Sometimes our Lyapunov-like tests over the ice cream cone are + failing badly. For example, + + FAIL: test_lyapunov_icecream (test.symmetric_linear_game_test + .SymmetricLinearGameTest) + ---------------------------------------------------------------------- + Traceback (most recent call last): + File "/home/mjo/src/dunshire/test/symmetric_linear_game_test.py", + line 620, in test_lyapunov_icecream + self.assert_lyapunov_works(G) + File "/home/mjo/src/dunshire/test/symmetric_linear_game_test.py", + line 578, in assert_lyapunov_works + self.assertTrue(negative_stable) + AssertionError: False is not true + + + We should have a matrix L that is negative stable, but its eigenvalues + are actually, + + [0.8991268260361707, + 0.8991268260361707, + -1.4648148562918966, + 3.2630685083642352, + 0.8991268260361712] + +12. Investigate this test failure too. It looks like it was really + close to being solved, but we would have needed a fudge factor + of three instead of two. + + ERROR: test_positive_operator_value (test.symmetric_linear_game_test + .SymmetricLinearGameTest) + ---------------------------------------------------------------------- + Traceback (most recent call last): + File "/home/mjo/src/dunshire/test/symmetric_linear_game_test.py", + line 550, in test_positive_operator_value + self.assertTrue(G.solution().game_value() >= -options.ABS_TOL) + File "/home/mjo/src/dunshire/dunshire/games.py", line 515, in solution + raise GameUnsolvableException(self, soln_dict) + dunshire.errors.GameUnsolvableException: Solution failed with result + "unknown." + The linear game (L, K, e1, e2) where + L = [8.0814704 3.5584693] + [3.9986814 9.3381562], + K = Nonnegative orthant in the real 2-space, + e1 = [1.3288182] + [0.7458942], + e2 = [0.6814326] + [3.3799082], + Condition((L, K, e1, e2)) = 41.093597. + CVXOPT returned: + dual infeasibility: 2.368640021750079e-06 + dual objective: -7.867137172157051 + dual slack: 1.1314089173606103e-07 + gap: 1.1404410161224882e-06 + iterations: 6 + primal infeasibility: 1.379959981010593e-07 + primal objective: -7.867137449574777 + primal slack: 1.0550559882036034e-08 + relative gap: 1.4496264027827932e-07 + residual as dual infeasibility certificate: 0.12711103707156543 + residual as primal infeasibility certificate: None + s: + [1.4674968] + [0.0000000] + [1.4055364] + [0.0000000] + status: unknown + x: + [ 7.8671374] + [ 1.4674968] + [-0.0000000] + y: + [7.8671372] + z: + [ 0.0000001] + [14.0707905] + [ 0.0000002] + [ 1.3406728] + + +13. Add game payoff(x,y) method to check solutions.