我試圖定義一個目標函數,它使用變量的當前值作為整數進行計算(如下所示):def foo(arg1, arg2, arg3): return arg1 - arg2 + arg3 def objective_that_does_not_work(x0, x1, x2): y = foo(x0.solution_value(), x1.solution_value(), x2.solution_value()) return ydef objective_that_works(x0, x1, x2): y = foo(x0, x1, x2) return y其中 x0、x1、x2 是 IntVar。在我的用例中,函數 foo 的定義方式需要 int 參數。當我嘗試最大化時objective_that_does_not_work,它會隨機給出 x0、x1、x2 的上限或下限(每次運行求解器時都有不同的值)。我的問題:是否可以根據 IntVar 的值而不是 IntVar 本身來定義目標?如果是,solution_value()使用的屬性是否正確?從文檔來看,它似乎是最合適的,但我可能誤解了它的用途。
添加回答
舉報
0/150
提交
取消