簡體   English   中英

在CPLEX中,如何在forall循環語法中使用變量?

[英]In CPLEX, How can I use variables in forall loop syntax?

我想在cplex forall語法中使用變量,如下所示。

forall(j in {1,2,3,4,5,6,7})
{
  x[1][j] + x[1][(j+3)%7] + x[1][(j+4)%7] + x[1][(j+5)%7] + 
  x[1][(j+6)%7] + x[2][j] + x[2][(j+3)%7] + x[2][(j+4)%7] + 
  x[2][(j+5)%7] + x[2][(j+6)%7] >= 5;
}

但是運行該腳本后,由於(j + 3),出現了語法錯誤。我該如何制作一個腳本來使用該算法?

有多種解決方法,基本上,您需要一個以j索引和偏移量為參數並返回相應結果的函數。

這可以通過為每個7 j和偏移量在開始時設置的常數矩陣來完成。 然后在循環中引用

x[1][ f[j][3] ]

暫無
暫無

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

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