簡體   English   中英

搜索MILP約束以防止整數變量交替

[英]Searching for MILP constraint to prevent alternation of integer variable

這正是我的情況:假設變量x[t]的NonNegativeInteger小於或等於3。

因此x[t]可以為{0,1,2,3} 它由時間序列索引。

我想防止x[t]交替出現。 表示我想禁止

x[0] = 0
x[1] = 1
x[2] = 0

但是也

x[0] = 1
x[1] = 2
x[2] = 1

x[0] = 2
x[1] = 3
x[2] = 2

我正在尋找禁止這樣做的約束。 該約束必須包含三個時間步驟。

我嘗試了一些約束。 我不確定是否可以通過簡單的約束來實現。

也許我必須添加一個變量才能使它工作。 您是否有處理此類問題的經驗?

先感謝您!

您可以通過以下限制條件確保升序或降序:

x [t] + M(y-1)<= x [t + 1]

x [t] +我的> = x [t + 1]

y:二進制變量(在所有方程式中使用相同的y)

M:大數(大於可能的最大值)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM