From: Michael Orlitzky Date: Tue, 1 Nov 2016 00:10:51 +0000 (-0400) Subject: Add a fudge factor of two when checking "unknown" conelp results. X-Git-Tag: 0.1.0~104 X-Git-Url: http://gitweb.michael.orlitzky.com/?p=dunshire.git;a=commitdiff_plain;h=465df68194eff71cadf77281a3a612111d6b0785 Add a fudge factor of two when checking "unknown" conelp results. --- diff --git a/dunshire/games.py b/dunshire/games.py index c841caa..4451606 100644 --- a/dunshire/games.py +++ b/dunshire/games.py @@ -505,7 +505,13 @@ class SymmetricLinearGame: # objectives match (within a tolerance) and that the # primal/dual optimal solutions are within the cone (to a # tolerance as well). - if abs(p1_value - p2_value) > options.ABS_TOL: + # + # The fudge factor of two is basically unjustified, but + # makes intuitive sense when you imagine that the primal + # value could be under the true optimal by ``ABS_TOL`` + # and the dual value could be over by the same amount. + # + if abs(p1_value - p2_value) > 2*options.ABS_TOL: raise GameUnsolvableException(self, soln_dict) if (p1_optimal not in self._K) or (p2_optimal not in self._K): raise GameUnsolvableException(self, soln_dict)