Linear programming 线性规划的Cplex:DOCplex决策变量是否假定为非负?

Linear programming 线性规划的Cplex:DOCplex决策变量是否假定为非负?,linear-programming,cplex,docplex,docplexcloud,Linear Programming,Cplex,Docplex,Docplexcloud,我想用docplex编写一个简单的LP。假设我有三个变量:x、y和z,约束是4x+9y-18.7如果你不给出一个范围,它们是非负的 以下是一个小例子: 给予 from docplex.mp.model import Model mdl = Model(name='buses') nbbus40 = mdl.continuous_var(name='nbBus40') nbbus30 = mdl.continuous_var(name='nbBus30') mdl.add_constraint(

我想用docplex编写一个简单的LP。假设我有三个变量:x、y和z,约束是4x+9y-18.7如果你不给出一个范围,它们是非负的

以下是一个小例子:

给予

from docplex.mp.model import Model

mdl = Model(name='buses')
nbbus40 = mdl.continuous_var(name='nbBus40')
nbbus30 = mdl.continuous_var(name='nbBus30')
mdl.add_constraint(nbbus40*40 + nbbus30*30 >= 300, 'kids')
mdl.minimize(nbbus40*500 + nbbus30*400)
mdl.solve(log_output=False,)
print("nbbus40.lb =",nbbus40.lb)

for v in mdl.iter_continuous_vars():
    print(v," = ",v.solution_value)

mdlv2 = Model(name='buses2')
nbbus40v2 = mdlv2.continuous_var(-2,200,name='nbBus40')
nbbus30v2 = mdlv2.continuous_var(-2,200,name='nbBus30')
mdlv2.add_constraint(nbbus40v2*40 + nbbus30v2*30 >= 300, 'kids')
mdlv2.minimize(nbbus40v2*500 + nbbus30v2*400)
mdlv2.solve(log_output=False,)

print("nbbus40v2.lb =",nbbus40v2.lb)

for v in mdlv2.iter_continuous_vars():
    print(v," = ",v.solution_value)
nbbus40.lb = 0
nbBus40  =  7.5
nbBus30  =  0
nbbus40v2.lb = -2
nbBus40  =  9.0
nbBus30  =  -2.0