我正在使用谷歌或工具的 CP-sat 解算器,并且我正在向我的变量添加一些约束。
如果 2 个布尔变量为 True,则应强制执行一个约束。但是我无法找到如何做到这一点。
我尝试使用 OnlyEnforceIf 方法:
模型.Add (RandomIntVar < 100).OnlyEnforcef(firstboolvar and secondboolvar)
但它给了我一个错误:未实现将 LinearExpr 实例评估为布尔值。我已经检查过,我的变量是布尔值。
你有什么办法解决这个问题吗?
好吧,抱歉我找到了,
你只需要做
模型.Add(RandomIntVar < 100).OnlyEnforcef(firstboolvar, secondboolvar)
而不是“和”,抱歉造成混乱