在 CVXPY 中实施 "OR" 约束

Implement "OR" constraints in CVXPY

所以我有一个快速的问题,但我找不到答案...

我想对 CVXPY 实施“或”约束:

x = 0 或 x_min < x < x_max

其中 x 是正实数。我们如何在代码中实现这样的约束? 我试图用混合整数形式制定约束,但我没有成功...... 任何帮助将不胜感激!

凸优化中没有严格不等式。

假设,我们要表达:

Either x = 0 OR x_min <= x <= x_max
(x_min, x_max: scalar constants)

这通常由(混合整数编程!)完成:

Add binary variable y
Add constraint: x <= x_max * y
Add constraint: x >= x_min * y

严格的不等式需要先验定义 epsilons.