GAMS - логические уравнения и двоичные переменные

У меня возник еще один вопрос по логическим уравнениям или, точнее, двоичным переменным. Это снова вопрос новичка.

Итак, прямо сейчас я пытаюсь понять, как установить значение двоичных переменных с условиями.

Рассмотрим двоичную переменную x и переменную m. Если бы я написал код на синтексе на другом языке, то, что я пытаюсь сделать, выглядело бы так:

если m> 0 x = True иначе x = ложный конец

Итак, я пытаюсь установить значение x равным 1, когда переменная m больше нуля.

Как смоделировать это в GAMS? Нужно ли мне использовать для этого логические уравнения? Я не могу найти решение для этого.

В очередной раз благодарим за помощь.

Ура Макс


person Help621    schedule 16.03.2018    source источник


Ответы (2)


Возможно, вы можете добавить в модель следующие ограничения

 Eq..    m =g= (x-1)*M

где M - очень большое положительное число, представляющее нижнюю границу переменной m.

person Salva    schedule 17.03.2018
comment
Я получил похожее, но более расширенное решение с другого форума. Я разместил ссылку ниже. В любом случае большое спасибо за то, что нашли время подумать о моей проблеме. - person Help621; 17.03.2018

Я получил полезный ответ на другом форуме: https://forum.gamsworld.org/viewtopic.php?f=2&t=10286

Это должно быть решением проблемы.

person Help621    schedule 17.03.2018