-
Notifications
You must be signed in to change notification settings - Fork 0
Home
mariorz edited this page Sep 13, 2010
·
9 revisions
http://www.cs.cornell.edu/~tomf/pyglpk/ex_ref.html maximize Z = 10x0 + 6x1 + 4x2 subject to: p = x0 + x1 + x2 q = 10x0 + 4x1 + 5x2 r = 2x0 + 2x1 + 6x2 and bounds of variables: −∞ < p ≤ 100 −∞ < q ≤ 600 −∞ < r ≤ 300 0 ≤ x0 < ∞ 0 ≤ x1 < ∞ 0 ≤ x2 < ∞
from pytorovich import LpProblem prob = LpProblem("Standard Example", 'max') x0 = prob.variable("x0") x1 = prob.variable("x1") x2 = prob.variable("x2") prob.constraints = [ x0 + x1 + x2 <= 100, 10*x0 + 4*x1 + 5*x2 <= 600, 2*x0 + 2*x1 + 6*x2 <= 300 ] prob.objective = [10*x0 + 6*x1 + 4*x2] prob.solve() for key, val in prob.variables.iteritems(): print "%s: %s" % (key, val.result)
from pytorovich import LpProblem prob = LpProblem("Goal Exammple") x0 = prob.variable("x0",0) x1 = prob.variable("x1",0) x2 = prob.variable("x2",0) n1 = prob.variable("n1",0) n2 = prob.variable("n2",0) n3 = prob.variable("n3",0) n4 = prob.variable("n4",0) p1 = prob.variable("p1",0) p2 = prob.variable("p2",0) p3 = prob.variable("p3",0) p4 = prob.variable("p4",0) f1 = 10*x0 + 6*x1 + 4*x2 + n1 - p1 == 1000 f2 = x0 + x1 + x2 + n2 - p2 == 100 f3 = 10*x0 + 4*x1 + 5*x2 + n3 - p3 == 600 f4 = 2*x0 + 2*x1 + 6*x2 + n4 - p4 == 300 prob.constraints = [f1, f2, f3, f4] prob.objective = [p2+p3+p4, n1] prob.solve() for key, val in prob.variables.iteritems(): print "%s: %s" % (key, val.result)