From: Michael Orlitzky Date: Mon, 5 Apr 2010 19:26:17 +0000 (-0400) Subject: Add the example linear programming problem solution via lp_solve. X-Git-Url: http://gitweb.michael.orlitzky.com/?p=dead%2Fcensus-tools.git;a=commitdiff_plain;h=0ca183505771a1a8ba38f0574dec27b43c0747b7 Add the example linear programming problem solution via lp_solve. --- diff --git a/bin/example-lp b/bin/example-lp new file mode 100755 index 0000000..210a055 --- /dev/null +++ b/bin/example-lp @@ -0,0 +1,33 @@ +#!/usr/bin/env python + +""" +Solve an example problem with lp_solve. +""" + +import os +import site +import sys + +# Add LP_SOLVE_PATH to our path. +LP_SOLVE_PATH = '../lib/lp_solve' +site.addsitedir(os.path.dirname(os.path.abspath(sys.argv[0])) + '/' + LP_SOLVE_PATH) + +from lp_solve import * + +c = [5, 100, 30, 10, 20, 300] + +A = [ [1,1,1,0,0,0], + [0,0,0,1,1,1], + [1,0,0,1,0,0], + [0,1,0,0,1,0], + [0,0,1,0,0,1] ] + +e = [ -1, -1, 0, 0, 0 ] + +b = [ 500, 600, 400, 300, 200 ] + +[v,x,duals] = lp_solve(c,A,b,e) + +print 'Optimal objective function value: ', v +print 'Optimal solution vector: ', x +print 'Duals: ', duals