Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Операторы SUB и SLB

Разработка более сложных моделей в LINGO 221 | Указатель LINGO | Представление модели в What’s Best | Связь с фирмой LINDO Systems | Ввод задачи в LINDO | Синтаксис модели | Детальное обсуждение команд для Windows | Output Options | Графическое изображение ненулевых элементов | Принципы моделирования |


Читайте также:
  1. Вложенные операторы If. Логические операции и выражения
  2. Вложенные операторы if. Сложное условие в операторе if. Логические операции
  3. Встроенные операторы и их приоритет
  4. Глава 4. Простые (линейные) программы. Операторы ввода-вывода. Переменные величины
  5. Лекция 7: операторы выбора, безусловный переход, циклы.
  6. Операторы ADD, SUB, MUL и DIV
  7. Операторы Stop, End и Exit Sub

 

Если не оговорено что-либо дополнительно, LINDO считает переменные непрерывными, ограниченными снизу нулем и неограниченными сверху. То есть переменные могут принимать любые неотрицательные значения большие или равные нулю. В некоторых приложениях такое предположение может не соответствовать реальному положению. Предположим, что ваши производственные мощности ограничивают количество производимой продукции. В этом случае переменная, представляющая количество этой произведенной продукции, ограничена сверху. Или предположим, вы хотите разрешить в системе наличие задолженности. Простейшим способом моделирования такой ситуации является возможность разрешить переменной, соответствующей уровню запасов, быть отрицательной. В подобном случае вы захотите обойти принятое по умолчанию соглашение о нижней нулевой границе переменных. Операторы SUB и SLB как раз и служат для того, чтобы изменить границы для переменных. SLB устанавливает S imple L ower B oundary (базовую нижнюю границу) и используется для установки нижних границ значений переменных. Аналогично, SUB устанавливает S imple U pper B ound (базовую верхнюю границу) и используется для установки верхних допустимых значений переменных.

Следующий маленький пример иллюстрирует использование операторов SUB и SLB:

 

В этом примере мы можем с равным успехом использовать обычные ограничения, чтобы установить границы. А именно, мы можем ввести нашу простейшую модель следующим образом:

 

max 20x + 30y

st

x + 2y < 120

x > 20

x < 50

y > 40

y < 70

end

 

Конечно последнее представление будет давать такой же результат, что и предыдущее, но следует иметь ввиду два соображения. Во-первых, операторы SUB и SLB обрабатываются решателем неявно и потому более эффективны в процессе выполнения решения, чем соответствующие условия в списке ограничений. Во-вторых, операторы SUB и SLB не учитываются в противоположность ограничениям при подсчете предела по переменным для конкретной версии LINDO, позволяя тем самым решать большие по объему задачи в пределах вашей версии LINDO.

 

Оператор QCP

Оператор QCP используется в моделях квадратичного программирования для указания первого из «реальных» квадратичных ограничений, противопоставляя их обычным линейным ограничениям. Детали формулирования квадратичных моделей более сложны и мы отправляем интересующегося читателя к книге Лайнуса Шрейджа «Optimization Modeling with LINDO».

 


Дата добавления: 2015-11-16; просмотров: 70 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Оператор FREE| Nbsp;   2 Команды LINDO

mybiblioteka.su - 2015-2024 год. (0.006 сек.)