Python 3.x 在python中从doopl获取结果
嗨,我正在python中使用doOPL 下面是我代码的一部分Python 3.x 在python中从doopl获取结果,python-3.x,cplex,docplex,doopl,Python 3.x,Cplex,Docplex,Doopl,嗨,我正在python中使用doOPL 下面是我代码的一部分 with create_opl_model(model="phase0.mod",data="prob1.dat") as opl: # tuple can be a list of tuples, a pandas dataframe... # Generate the problem and solve it. start_time = time.time()
with create_opl_model(model="phase0.mod",data="prob1.dat") as opl:
# tuple can be a list of tuples, a pandas dataframe...
# Generate the problem and solve it.
start_time = time.time()
opl.mute()
opl.run()
print("obj:",opl.objective_value,", time:",(time.time() - start_time))
运行它之后,我想检查决策变量x的结果
opl.get_表('x')
但是说期望tupleset x被通过是行不通的
我期待您的帮助。我认为get_table()
只适用于您在后期处理中显式创建的表(即元组集)。因此,您必须在后期处理中创建此表
考虑以下示例定义x
:
range I = 1..2;
range J = 1..4;
dvar float+ x[I][J];
在后处理中,您可以
tuple R {
int i;
int j;
float val;
}
{R} xResult = { <i,j,x[i][j]> | i in I, j in J };
元组R{
int i;
int j;
浮动增值税;
}
{R} xResult={i in i,j in j};
这样你就可以
opl.get_table('xResult')
在这个表中,你应该有所有的三元组(i,j,x[i][j])
,你刚刚救了我的命!我真的很感激!