Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебники ТПР / Учебник ТПР_4.1.doc
Скачиваний:
181
Добавлен:
17.06.2016
Размер:
963.58 Кб
Скачать

1. Все ограничения (включая ограничения не отрицательности переменных) преобра­зуются в равенства с не отрицательной правой частью.

2. Все переменные являются неотрицательными.

3. Целевую функцию следует или максимизировать, или минимизировать.

1. Преобразование неравенств в равенства. Неравенства любого типа (со зна­ками неравенств  или ) можно преобразовать в равенства путем добавления в левую часть неравенств дополнительных переменных – остаточных или избыточных. Отметим, что в русской математической литературе для этих типов переменных не используются какие-либо специальные названия – они известны просто как дополнительные переменные (хотя иногда их также называют балансными). В неравенствах эти переменные различаются тем, что перед остаточной переменной всегда стоит знак "плюс", а перед избыточной – "минус".

Остаточная переменная. Неравенства типа "" обычно можно интерпретировать как ограничения на использование некоторых ресурсов (представленных в левой части неравенств переменными модели). В такой интерпретации остаточная переменная по­казывает количество неиспользованных ресурсов. В предыдущем примере неравенство 6 1 + 4 2  24 связано с использованием первого ресурса. Это неравенство эквива­лентно равенству 6 1 + 4 2 + s1 = 24, где s1  0. Здесь остаточная переменная s1 (=24 – 6 1 – 4 2) равна неиспользуемому количеству первого ресурса.

Избыточная переменная. Неравенство типа "" показывает, что "что-то" должно быть не меньше определенной величины. Избыточная переменная определяет превыше­ние значения левой части неравенства над этой величиной. Например, в задаче "о пищевом рационе" неравенство показывает, что количество белков в суточном пищевом рационе не должно быть меньше b1 единиц.

Математически это неравенство эквивалентно равен­ству , где S1  0. Положительное значение избыточной переменной S1 показывает превышение количество белков в суточном пищевом рационе над минимальным значением в b1 единиц.

Введем также понятие свободной переменной, которая может принимать как положительные, так и отрицательные значения (и, конечно, значение 0). В приведенных выше примерах условие не отрицательности переменных является естественным. Но, конечно, возможны ситуации, когда перемен­ные могут принимать любые действительные значения.

Такая ситуация показана в сле­дующем примере.

Ресторан быстрого обслуживания Макдоналдс торгует порционными мясными пи­рогами и гамбургерами. На порцию мясного пирога идет четверть фунта мяса, а на гамбургер – только 0,2 фунта. В начале рабочего дня в ресторане имеется 200 фун­тов мяса, можно еще прикупить мясо в течение дня, но уже с наценкой в 25 центов. Мясо, оставшееся в конце рабочего дня, жертвуется благотворительной организации "Горячий суп". Ресторан имеет доход 20 центов от одной порции мясного пирога и 15 центов – от одного гамбургера. Как и многие другие, этот ресторан не может продать в день более 900 бутербродов. Какова должна быть доля каждого из бутер­бродов (т.е. сколько порций мясного пирога и сколько гамбургеров) в ежедневном производстве ресторана, чтобы максимизировать его доход?

Сначала рассмотрим ограничения. Обозначим через 1 и 2, соответственно ко­личество порций мясного пирога и гамбургеров, производимых рестораном. Для их производства ресторан может ограничиться 200 фунтами мяса или может при­купить еще. В первом случае получаем ограничение в виде неравенства 0,25 1 + 0,2 2  200, а во втором: 0,25 1 + 0,2 2  200. Естественно, выбор одно­го из этих неравенств будет существенно влиять на возможное оптимальное реше­ние. Так как мы не знаем, какое из них необходимо, логично заменить их одним равенством 0,25 1 + 0,2 2 + 3 = 200, где 3свободная переменная. Фактически свободная переменная 3 в данной ситуации одновременно играет роли как оста­точной, так и избыточной переменных.

Далее построим целевую функцию. Ресторан хочет максимизировать свой до­ход. Очевидно, что для максимизации дохода желательно как можно больше про­давать своей продукции, но для этого необходимы дополнительные закупки мяса. В этом случае переменная 3 должна быть отрицательной, т.е. должна играть роль избыточной переменной.

Для того чтобы раскрыть "двойственную" природу переменной 3, используем стандартный математический прием, а именно представим ее в следующем виде:

3 = +3 3, где +3 , 3  0.

Если +3 > 0 и 3 = 0, тогда переменная 3 играет роль остаточной переменной. Если, напро­тив, 3 > 0 и +3 = 0, тогда переменная 3 выступает в роли избыточной переменной. Итак, теперь ограничение можно записать в виде равенства 0,25 1 + 0,2 2 + +3 3 = 200.

Целевая функция получает следующее выражение:

максимизировать W() = 0,20 1 + 0,15 2 – 0,25 3.

Встречаются ситуации, когда оптимальное решение задачи линейного программирования достигается при положительных значениях как +3, так и 3.

Пример неравенства типа "": Неравенство 1 + 2 2  3 эквивалентно равенству 1 + 2 2 + s1 = 3, где s1 – остаточная переменная и s1  0.

Пример неравенства типа "": Неравенство 3 1 + 2 5 эквивалентно равенству 3 1 + 2S1 = 5, где S1 – избыточная переменная и S1  0.

Правую часть равенства всегда можно сделать неотрицательной путем умножения всего равенства на –1. Кроме того, заметим, что неравенство типа "" также преобразу­ется в неравенство типа "" посредством умножения обеих частей неравенства на –1. Например, неравенство 2 < 4 после умножения на –1 становится неравенством –2 > –4.

2. Преобразование свободных переменных в не отрицательные переменные. Свободную переменную j (т.е. переменную, которая может принимать как отрицательные, так и по­ложи­тель­ные значения) можно представить как разность двух неотрицательных пере­менных следующим образом: j = +j j, где +j, j  0.

Например, для j = –5 положим +j = 0 и j = 5 . Если же j = +5, тогда +j = 5 и j = 0. В обоих случаях переменные +j и j неотрицательны.

Такое преобразование свободных переменных следует выполнить во всех неравенст­вах и в целевой функции.

После решения задачи с переменными +j и j значения ис­ходных переменных восстанавливаются с помощью обратной подстановки.

3. Преобразование задачи максимизации в задачу минимизации. Задача максимизации функции W( 1, 2, …, n) эквивалентна задаче минимизации функции – W( 1, 2, …, n), поскольку при решении обеих задач предоставляется один и тот же набор значений переменных 1, 2, …, n.

Пример: Преобразуем следующую задачу ЛП в стандартную форму.

Максимизировать W() =2 1+ З 2 + 5 3 при выполнении условий

1+  2 –  3  – 5,

– 6 1+7 2 9 3  4,

1 + 2 + 4 3 = 10,

1, 2  0, 3 – свободная переменная.

Для преобразования задачи в стандартную форму выполним следующие действия:

  1. Вычтем из левой части первого неравенства дополнительную (избыточную) переменную S1 = 4 и затем умножим все неравенство на –1, для того чтобы правая часть неравенства стала положительной. (Другой путь преобразова­ния неравенства: сначала умножим его на –1 (неравенство вместо вида "" примет вид ""); далее к левой части неравенства прибавим дополнительную (остаточную) переменную s1=4).

  2. Добавим дополнительную (остаточную) переменную s2=5 к левой части вто­рого неравенства.

  3. Так как третье ограничение изначально записано в виде равенства, поэтому оставляем его без изменения.

  4. Выполняем замену 3 = +3 3, где +3 , 3  0, во всех ограничениях и це­левой функции.

Получаем следующую стандартную задачу линейного программирования:

Максимизировать W() =2 1+ З 2 + 5 +3 –5 3 при выполнении условий

–  1 –  2 +  +3 –  3 + 4 =5,

– 6 1+7 2 9 +3 – 9 3 + 5 = 4,

1 + 2 + 4 +3 4 3 = 10,

1, 2, +3, 3, 4, 5>0.

Соседние файлы в папке Учебники ТПР