我想知道是否有一种方法可以在
on_solution_callback(self)
方法中动态增加变量的下限?
这只是我想到的一种方法。
我有一个变量数组:
vars = [model.NewIntVar(0, suitableUpperBound, f'x{i}') for i in range(some_number)]
问题是,一旦我找到了特定数组配置的解决方案(具有我所具有的约束)(例如,[0,1,4,5]是一个解决方案),我确实不想要搜索具有相同 vars[-1] 元素(即相同的最后一个元素)的解决方案的算法。我希望它增加到“6”并寻找解决方案。
我想到的一种方法是每次找到解决方案时动态更改下限(因此它从另一个位置开始搜索),但是有没有更严格的数学方法来实现这一点?