我試圖定義一個(gè)目標(biāo)函數(shù),它使用變量的當(dāng)前值作為整數(shù)進(jìn)行計(jì)算(如下所示):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。在我的用例中,函數(shù) foo 的定義方式需要 int 參數(shù)。當(dāng)我嘗試最大化時(shí)objective_that_does_not_work,它會(huì)隨機(jī)給出 x0、x1、x2 的上限或下限(每次運(yùn)行求解器時(shí)都有不同的值)。我的問(wèn)題:是否可以根據(jù) IntVar 的值而不是 IntVar 本身來(lái)定義目標(biāo)?如果是,solution_value()使用的屬性是否正確?從文檔來(lái)看,它似乎是最合適的,但我可能誤解了它的用途。
- 1 回答
- 0 關(guān)注
- 158 瀏覽
添加回答
舉報(bào)
0/150
提交
取消