首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在pyscipopt中添加非约束

在pyscipopt中添加非约束
EN

Stack Overflow用户
提问于 2020-09-16 21:08:14
回答 1查看 66关注 0票数 0

我想在我的PySCIPOpt模型中添加一个非约束。我可以看到andConsAndaddConsOraddConsXor,但没有一个用于NOT运算符。添加非约束的最简单方法是什么?

我想出了:

代码语言:javascript
复制
x = model.addVar('B')
not_x = model.addVar('B')

model.addCons(not_x == (x - 1) * (x - 1))

但这看起来很丑陋。

我需要not_x的原因是因为我想稍后将其添加到连接词中,例如:

代码语言:javascript
复制
model.addConsAnd([not_x, y], True)

但是,据我所知,如果我使用Python not operator操作,PySCIPOpt接口将无法工作:

代码语言:javascript
复制
model.addConsAdd([not x, y], True)

所以上面这行代码打破了我的jupyter笔记本中的内核。

感谢您的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-18 07:51:24

二进制变量x的表达式not x1-x相同。这在混合整数编程模型中被广泛使用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63920743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档