Я использую PySCIPOpt для решения проблемы ILP. Тип переменных, которые я использую, является двоичным или целочисленным.
При получении переменных с использованием model.getVal(VariableName)
я получаю эту ошибку для некоторых переменных:
TypeError: Argument 'var' has incorrect type (expected pyscipopt.scip.Variable, got pyscipopt.scip.Expr)
Это связано с тем, что для этих переменных PySCIPOpt возвращает выражение вместо значения. Выражение выглядит так:
{1: Expr({Term(): 0.0, Term(W(14,10)): 0.0,
Term(W(14,9)): 0.0, Term(W(1,2)): 0.0,
Term(W(13,10)): 0.0, Term(W(4,3)): 0.0,
Term(W(13,9)): 0.0, Term(W(5,3)): 0.0,
Term(W(12,10)): 0.0, Term(W(12,9)): 0.0,
Term(W(2,2)): 0.0, Term(W(9,7)): 0.0,
Term(W(11,10)): 0.0, Term(W(2,1)): 1.0}
Можно ли заставить PySCIPOpt возвращать значение?
Я попытался изменить тип переменной с целого на непрерывный, но это не меняет того факта, что вместо значения возвращается выражение.
Я ожидаю, что PySCIPOpt вернет одно значение, а не полное выражение, представляющее зависимость между интересующей переменной и другими переменными.
Спасибо