python混合整数线性规划代码
时间: 2024-04-22 12:19:05 浏览: 167
基于混合整数线性规划的旅行商问题求解(python+gurobi)
5星 · 资源好评率100%
混合整数线性规划(Mixed Integer Linear Programming,MILP)是一种优化问题,其中决策变量可以是整数或连续的。在Python中,可以使用`PuLP`库来解决MILP问题。以下是一个简单的例子:
首先,安装PuLP库:
```bash
pip install pulp
```
然后,编写代码解决MILP问题:
```python
import pulp
# 创建一个线性规划问题
prob = pulp.LpProblem("MILP_Example", pulp.LpMaximize)
# 定义决策变量
x1 = pulp.LpVariable("x1", lowBound=0, cat="Integer")
x2 = pulp.LpVariable("x2", lowBound=0, cat="Integer")
# 定义目标函数
prob += 3 * x1 + 2 * x2, "Objective"
# 添加约束条件
prob += x1 + x2 <= 4, "Constraint1"
prob += x1 - x2 >= 1, "Constraint2"
# 求解问题
prob.solve()
# 输出结果
print("Status:", pulp.LpStatus[prob.status])
print("Optimal Solution:")
for v in prob.variables():
print(v.name, "=", v.varValue)
print("Objective Value =", pulp.value(prob.objective))
```
在这个例子中,我们定义了一个具有两个整数决策变量x1和x2的MILP问题。目标函数是最大化3x1 + 2x2,同时满足以下约束条件:x1 + x2 <= 4 和 x1 - x2 >= 1。通过调用`prob.solve()`方法,我们可以求解这个问题并输出最优解和目标函数值。
阅读全文