Оптимизация в целом (и AMPL в частности) обычно требует, чтобы допустимая область была топологически замкнута , т.е. любая предельная точка разрешенного пространства решений сама является частью пространства решений,Это означает, что строгие неравенства, как правило, не допускаются в качестве ограничений на переменные.
Чтобы понять почему, рассмотрим проблему:
var p > 0;
maximize OF: 1-p^2;
Даже если OF явно ограничено и никогда не может превышать 1,это не может быть оптимизировано, потому что нет оптимального значения p.Для любого допустимого (т. Е. Положительного) значения p, которое вы можете предложить, я могу улучшить целевую функцию, вдвое уменьшив p.Трудно определить алгоритм оптимизации, который имеет дело с ситуацией, когда не существует оптимума, даже локального оптимума!
(Технически, точность машины действительно налагает оптимальное значение p, где pэто наименьшее положительное число, которое может быть представлено в компьютерной арифметике. Но если мы хотим взглянуть на это так, то фактически у нас есть строгое неравенство, p> = eps, и нам лучше признать это явно.)
По этой причине ограничения на переменные обычно должны быть нестрогими неравенствами, например, заменить "> 0" на "> = smallnum".