Как сделать 2 индекса не равными друг другу в AMPL? - PullRequest
1 голос
/ 24 апреля 2019

Я очень новичок в AMPL.Я хочу написать программу, в которой мои переменные имеют некоторые индексы.У меня есть переменная V[i,j,k], где (i, j) происходит из набора индексов A = {1,2}, а k происходит из другого набора индексов B = {1,2,3}.Я знаю, что должен написать:

s.t. a1: sum {((i,j) in A, r in B } (V[i,j,r] − 1)<= −9.20 − (−8.9) <= V[i,j,r] ;

Но в вышеприведенной строке i и j могут быть равны, и я не хочу, чтобы они были равны!что мне теперь делать?Я имею в виду, как я могу иметь i!=j?

1 Ответ

1 голос
/ 24 апреля 2019

Это должно работать лучше:

s.t. a1: sum {(i,j) in A, r in B, i != j } −9.20 − (−8.9) <= V[i,j,r] <= −9.20 − (−8.9) + 1 ;
...