DoCPLEX是IBM提供的一个Python库,用于解决线性规划(LP)和整数线性规划(ILP)问题。下面是一个使用DoCPLEX解决线性规划问题的代码示例:
from docplex.mp.model import Model
# 创建一个模型对象
model = Model(name='LP Example')
# 创建决策变量
x = model.continuous_var(name='x')
y = model.continuous_var(name='y')
# 添加约束条件
model.add_constraint(x + y <= 10, ctname='constraint1')
model.add_constraint(2*x - y >= 0, ctname='constraint2')
# 设置目标函数
model.maximize(3*x + 4*y)
# 解决问题
solution = model.solve()
# 打印结果
print('Objective value: ', solution.get_objective_value())
print('x = ', solution.get_value(x))
print('y = ', solution.get_value(y))
在上面的代码中,我们首先创建了一个名为“LP Example”的模型对象。然后,我们使用model.continuous_var()
方法创建了两个决策变量x
和y
。接下来,我们使用model.add_constraint()
方法添加了两个约束条件。然后,我们使用model.maximize()
方法设置了最大化的目标函数。最后,我们使用model.solve()
方法求解了该线性规划问题,并使用solution.get_objective_value()
和solution.get_value()
方法获取了最优解的目标函数值和决策变量的取值。
请注意,上述代码只是一个简单的示例,实际应用中可能涉及更复杂的问题和约束条件。您可以根据自己的需求修改代码,并根据DoCPLEX的文档进一步了解更多功能和用法。