Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лр5)Решение управленческих задач средствами ПЛП...doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
2.48 Mб
Скачать

3.2 Задача параметрического линейного программирования с параметром в правых частях ограничений

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

(7)

где ;

xj – переменные;

aij, bi, cj, bi`, bi`` - константы;

n – число переменных;

m – число ограничений;

L - параметр.

Например, построим модель следующей экономической ситуации. Пусть кондитерская фабрика производит два вида карамели, используя те же самые нормы расхода сырья, что и в разделе 3.1. Цена карамели «Снежинка» составляет 108 тыс. руб. за тонну, а «Яблочной» - 140 тыс. руб. На складе имеется 800 т сахара, 600 т патоки и 10 т фруктового пюре. Необходимо сохранить про запас 50 т пюре. Ожидается поставка фруктового пюре грузовыми автомашинами, каждая из которых может привезти по 20 т сырья. Количество автомашин неизвестно. Необходимо для любого количества автомашин, которые привезут пюре, заранее найти план производства карамели, который даст наиболее высокую выручку.

Обозначим х1 - производство карамели «Снежинка», т; х2 - производство карамели «Яблочная», т. Количество автомашин будет выступать в качестве параметра, обозначим его L.

Количество пюре, которое можно будет использовать в производстве, подсчитаем по формуле 20L +10 – 50 = 20L – 40.

Тогда математическую модель можно построить следующим образом:

m ax 108х1 + 140х2

0,8х1 + 0,5х2 800

0,2х1 + 0,4х2 600

0,01х1 + 0,1х2 20L - 40

х1,2 0

L[0;+∞]

3.2.1 Графический способ решения

Графический способ решения удобно применять к задачам с двумя переменными, в которых параметр входит только в одно ограничение:

(8)

В геометрической интерпретации задача сводится к изменению ОДП. В уравнении, определяющем одну из сторон ОДП, изменяется свободный член, и прямая подвергается параллельному переносу, «сдвигается» параллельно исходному положению.

Например, решим графически задачу из раздела 3.2. Для фиксированного значения L построим графическую иллюстрацию (рисунок 5). Если в этой задаче взять в качестве начального значения 0, построенным графиком будет неудобно пользоваться, поэтому возьмем некоторое другое значение, например, L=8. Прямая, соответствующая третьему ограничению, при изменении L будет сдвигаться параллельно самой себе. Учитывая знак коэффициента при L, пунктирной стрелкой изобразим на графике направление этого сдвига при возрастании L. Соответственно, при уменьшении L прямая будет сдвигаться в противоположную сторону.

Р исунок 5 - Графическое решение задачи о кондитерской фабрике

Р ассмотрим очень малое значение L (рисунок 6). При таком значении решить задачу вообще невозможно, так как у нее нет допустимых планов (полуплоскость, которую определяет прямая, соответствующая третьему ограничению, вообще не пересекается с неотрицательной координатной четвертью). Это не противоречит обыденной логике: в самом деле, если сырье не подвезут, то невозможно, имея на складе всего 10 т сырья, создать запас в 50 т.

Рисунок 6 - Графическое решение задачи при малом L

Допустимые планы появятся лишь при таком L, при котором прямая, соответствующая ограничению по пюре, пройдет через начало координат. Чтобы найти это значение L, подставим точку (0; 0) в уравнение 0,01х1 + 0,1х2 = 20L – 40. Отсюда 20L – 40 = 0; L = 2.

При L>2 ОДП задачи примет вид треугольника (рисунок 7). Крайнее положение линии уровня на рисунке показано тонкой сплошной линией: оптимальный план находится в точке пересечения горизонтальной оси и прямой, соответствующей ограничению по пюре.

С ледовательно, оптимальный план можно найти из системы уравнений:

0,01х1 + 0,1х2 = 20L – 40

х2 = 0

О тсюда Х* = (2000L - 4000; 0). Оптимум можно найти путем подстановки этой точки в целевую функцию: z* = 108х1 + 140х2 = 108*(2000L – 4000) = 216000L - 432000.

Рисунок 7 - Графическое решение задачи при L>2

Отметим, что координаты точки оптимума здесь зависят от параметра. С изменением L эта точка будет «двигаться» по отрезку ОС от О к С. Как только прямая, соответствующая фруктовому пюре, пройдет через точку С, найденный план перестанет быть оптимальным, так как станет недопустимым (для его осуществления перестанет хватать сахара).

При каком L это произойдет? Чтобы ответить на этот вопрос, необходимо подставить в ограничение по фруктовому пюре 0,01х1 + 0,1х2 = 20L – 40 координаты точки С = (1000; 0): 0,01*1000 + 0,1*0 = 20L – 40; L = 2,5.

П ри дальнейшем увеличении параметра (рисунок 8) ОДП примет вид четырехугольника, а точкой максимума станет его вершина В (пересечение прямых, которые соответствуют ограничениям по сахару и фруктовому пюре).

Рисунок 8 – Графическое решение при L>2,5

Н айдем ее координаты из системы уравнений:

0,8х1 + 0,5х2 800

0,01х1 + 0,1х2 20L - 40

Если данные для построения диаграммы были подготовлены так, как это рассматривалось в [1-4], такую систему удобно решить с помощью Microsoft Excel. Предположим, что последний столбец диапазона исходных данных для диаграммы – столбец F, и значения х1 находятся в первой строке электронной таблицы, а значения х2, выраженные из первого и третьего ограничений – соответственно во второй и четвертой. Тогда в F2 находится формула «=(800-0,8*F1)/0,5», а в F4 – «=((20*8-40)-0,01*F1)/0,1» (поскольку исходная диаграмма на рисунке 5 строилась для L=8). Скопируем эти формулы на два соседних столбца (если эти ячейки свободны, иначе можно воспользоваться любыми другими ячейками). Тогда в G2, G4, H2 и H4 будут находиться аналогичные формулы, но со ссылкой не на ячейку F1, а на ячейки G1 и H1 соответственно.

Теперь отредактируем полученные формулы. Представим свободный член 800, как 800 + 0*L. В третьем ограничении свободный член 20L + 40. В столбце G на месте свободных членов оставим только те числа, которые не умножаются на L, т.е. в G2 оставим формулу «=(800-0,8*G1)/0,5», а в G4 - «=(-40-0,01*G1)/0,1». В столбце H, напротив, оставим только те числа, которые в свободных членах на L умножаются, т.е. в H2 оставим формулу «=(0-0,8*H1)/0,5», а в H4 - «=(20-0,01*H1)/0,1».

Введем в G5 формулу «=G2-G4», которую скопируем на Н5 (в Н5 – «=Н2-Н4»).

Дважды обратившись к «Подбору параметра», установим в ячейках G5 и Н5 нули, изменяя соответственно G1 и H1. Таким образом мы решаем систему уравнений, находим пересечение двух прямых, т.е. находим такое значение х1 (в первой строке), при котором значение х2 будет одним и тем же (во второй и четвертой строке – разница между ними должна стать нулевой, т.е. они должны сравняться). Результат вычислений в электронной таблице представлен в таблице 10.

Таблица 10 – Решение системы уравнений с параметром

F

G

H

1

3000

1333,333

-133,333

2

-3200

-533,333

213,3333

3

0

4

900

-533,333

213,3333

5

0

0

Из таблицы 10 видно, что решением системы будет х1 = 1333,3 - 133,3L, х2 = 213,3L - 533,3. Отметим, что в этой задаче точка В зависит от L, и с изменением параметра будет двигаться по отрезку СD (рисунок 8) от С к D. Положение точки В, представленное на рисунках 4 и 5, является частным случаем этой ситуации при L=8, что легко проверить подстановкой. В самом деле: х1 = 1333,3 - 133,3*8 = 267; х2 = 213,3*8 - 533,3 = 1173. Это совпадает с координатами точки В, полученными в разделе 3.1.1.

Оптимум найдем по формуле z* = 108*(1333,3 - 133,3L) + 140*(213,3L - 533,3). Для приведения подобных в этой формуле также удобно воспользоваться средствами электронной таблицы, например, ввести в I1 и I2 соответственно числа 108 и 140, а в G3 формулу «=$I1*G1», которую затем скопировать в Н3; а затем обе формулы в диапазоне G3:Н3 скопировать на G4:Н4. В G5 вводится формула «=СУММ(G3:G4)», которая копируется на Н5. Результаты вычислений в электронной таблице представлены в таблице 11.

Таблица 11 – Вывод формулы для оптимума

G

H

I

1

1333,333

-133,333

108

2

-533,333

213,3333

140

3

144000

-14400

4

-74666,7

29866,67

5

69333,33

15466,67

Из таблицы 11 видно, что z* = 69333,3 + 15466,7L.

Н айденное решение будет верным до тех пор, пока третье ограничение не пройдет через точку D (после этого для осуществления такого плана начнет не хватать патоки). Координаты точки D находят из системы уравнений:

0,8х1 + 0,5х2 = 800

0,2х1 + 0,4х2 = 600

Отсюда D = (90,9; 1454,5). При каком значении L ограничение по фруктовому пюре пройдет через эту точку? Подставим ее координаты в это ограничение: 0,01*90,9 + 0,1*1454,5 = 20L – 40; L = 9,3.

П ри увеличении L>9,3 ОДП задачи примет вид пятиугольника (рисунок 9), а затем, при дальнейшем увеличении, снова четырехугольника (рисунок 10), но точка максимума при этом всегда останется в точке D, поскольку, начиная с этого значения L, производство карамели ограничивается уже запасами сахара и патоки, а фруктовое пюре оказывается в избытке.

Рисунок 9 - Графическое решение при L>9,3

Таким образом, для кондитерской фабрики вообще не имеет смысла заказывать больше 10 автомашин с фруктовым пюре (и то десятую автомашину можно не загружать полностью, а достаточно хотя бы на три десятых). Оптимум равен 108*90,9 + 140*1454,5 = 213447,2 (при использовании для расчетов результатов «Подбора параметра» можно получить более точное значение оптимума 213454,5).

Результат решения задачи можно представить в виде таблицы 12.

Рисунок 10 - Графическое решение при большом L

Таблица 12 – Результат решения задачи о кондитерской фабрике

Количество автомашин (L)

Производство карамели

Выручка, тыс. руб. (z*)

«Снежинка», т (х1*)

«Яблочная», т (х2*)

[0; 2[

ОДП = 

[2; 2,5]

2000L - 4000

0

216000L - 432000

[2,5; 9,3]

1333,3 - 133,3L

213,3L - 533,3

69333,3 + 15466,7L

[9,3; +[

90,9

1454,5

213454,5

Отметим, что граничное значение параметра L=2 включено только в один промежуток – второй. Действительно, если на фабрику доставят ровно две автомашины с фруктовым пюре, допустимый план будет (правда, единственный). Это план (0; 0), т.е. не производить продукцию вообще.

Остальные граничные значения включаются в два промежутка, т.е. ответ задачи содержится в двух строках таблицы. Это один и тот же ответ, так как при подстановке значения L в формулы результат окажется одинаковым (с поправкой на погрешность округлений). Например, для L=2,5 можно убедиться, что 2000*2,5 – 4000  1333,3 - 133,3*2,5  1000; 213,3*2,5 - 533,3  0; 216000*2,5 – 432000 = 69333,3 + 15466,7*2,5 = 108000. В самом деле, при этом значении параметра точкой максимума будет точка С, в которой одновременно пересекутся не две, а три прямые (горизонтальная ось и ограничения по сахару и фруктовому пюре).

Построенную таблицу можно использовать для планирования производства карамели при любом количестве автомашин. Например, если для перевозки фруктового пюре будет выделено три автомашины, то следует воспользоваться третьей строкой таблицы 12 (поскольку 3  [2,5; 9,3]) и произвести 1333,3 - 133,3*3 = 933,3 (т) карамели «Снежинка» и 213,3*3 - 533,3 = 106,7 (т) карамели «Яблочная». При этом выручка составит 69333,3 + 15466,7*3 = 115733 (тыс. руб.). Если будет выделено 100 автомашин, то следует воспользоваться последней строкой (100  [9,3; +[) и произвести соответственно по 90,9 т и 1454,5 т этих видов карамели, а выручка составит 213454,5 тыс. руб. (и т.п.).

Пользуясь средствами Excel, можно проверить правильность определения граничных значений L (построив графики для различных его значений).