【问题标题】:one way conditional statement in binary variable linearization二进制变量线性化中的单向条件语句
【发布时间】:2021-06-10 10:56:12
【问题描述】:

我正在尝试使用二进制变量编写单向条件语句。我的情况是

(if x=1 then y=0)

这是应该满足的唯一条件。所以我想拥有:

(if x=0 then y=0 or 1)
(if x=1 then y=0)
(if y=0 then x=0 or 1)
(if y=1 then x=0 or 1)

使用y<=1-x 的问题是该语句是双向的(对于 x 和 y:(如果 x=1 则 y=0)和(如果 y=1 则 x=0),我想要(如果 x=1,则 y=0))。 我已经尝试了大 M 和一些我知道的其他方法,但是我没有取得任何结果。
谁能帮帮我吗。我在这个问题上坚持了几天......
谢谢

【问题讨论】:

    标签: optimization constraints linear-programming mixed-integer-programming


    【解决方案1】:

    如果我们有 x=1⇒y=0,那么它遵循 y=1⇒x=0。你不能没有另一个。这在命题逻辑中有时被称为 Modus Tollens。

    【讨论】:

    • 谢谢。您的意思是即使我使用其他变量(如二进制 z)也不可能?
    • 如果 x=1⇒y=0,那么 y=1⇒x=0。无论如何。
    猜你喜欢
    • 1970-01-01
    • 2018-01-20
    • 2022-01-17
    • 2021-10-29
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多