PULP是用python写的建模描述语言,自带的例子里面就带有column generation的例子,显然是比glpk自带的那个强不少,下面就用一个例子来说明一个简单建模的流程吧。
Python代码-
- from pulp import *
-
-
- prob = LpProblem("test1", LpMinimize)
-
-
-
- x = LpVariable("x", 0, 4)
-
- y = LpVariable("y", -1, 1)
-
- z = LpVariable("z", 0)
-
-
-
- prob = x 4*y 9*z, "obj"
-
-
-
- prob = x y <= 5, "c1"
- prob = x z >= 10, "c2"
- prob = -y z == 7, "c3"
-
-
-
- prob.writeLP("test1.lp")
-
-
- prob.solve()
-
-
-
-
-
-
-
-
-
-
-
- print "Status:", LpStatus[prob.status]
-
-
- for v in prob.variables():
- print v.name, "=", v.varValue
-
-
- print "objective=", value(prob.objective)