]> gitweb.michael.orlitzky.com - dead/census-tools.git/blobdiff - src/LinearProgramming.py
Update the search path within the LinearProgramming module.
[dead/census-tools.git] / src / LinearProgramming.py
index 5f4668a705d1e3972f42433ff045fa27ee427e71..2e949d252bd65e18e175a9068d73c9cbc97a32e1 100644 (file)
@@ -3,6 +3,7 @@ Classes to create, solve, and make dinner for linear programs. Handles
 integration with lp_solve.
 """
 
+import fractions
 import os
 import site
 import sys
@@ -10,7 +11,7 @@ import sys
 # Add LP_SOLVE_PATH to our path. There is no point to this variable
 # other than to make the site.addsitedir() line fit within 80
 # characters.
-LP_SOLVE_PATH = '/../lib/lp_solve'
+LP_SOLVE_PATH = '/../../lib/lp_solve'
 site.addsitedir(os.path.dirname(os.path.abspath(sys.argv[0])) + LP_SOLVE_PATH)
 
 from lpsolve55 import *
@@ -318,3 +319,10 @@ class LinearProgram(object):
             [obj, x, duals, ret] = lpsolve('get_solution', self._lp)
 
         return [obj, x, duals]
+
+
+    def objective_coefficient_gcd(self):
+        """
+        Return the GCD of all objective function coefficients.
+        """
+        return reduce(fractions.gcd, self.objective_coefficients)