小试牛刀
解一个线性规划问题:
import gurobipy as gp
# 创建模型
model = gp.Model("example")
# 创建变量,默认非负
x = model.addVar(vtype=gp.GRB.CONTINUOUS, name="x")
y = model.addVar(vtype=gp.GRB.CONTINUOUS, name="y")
# 设置目标函数
model.setObjective(2*x + 3*y, sense=gp.GRB.MAXIMIZE)
# 添加约束
model.addConstr(x + y <= 5, name="constraint1")
model.addConstr(4*x - y >= 1, name="constraint2")
# 求解模型
model.optimize()
# 输出结果
print("最优解:", model.objVal)
print("x的值:", x.x)
print("y的值:", y.x)
添加变量
调整最大化和最小化
model.ModelSense = GRB.MAXIMIZE
参考资料: