Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Решение задачи линейного программирования

.pdf
Скачиваний:
100
Добавлен:
02.05.2014
Размер:
328.7 Кб
Скачать

4 Решение задачи оптимизации на основе симплекс-метода

Приведем математическую модель к стандартной форме. Для этого в ограничения «меньше или равно» потребуется ввести остаточные переменные.

30x1 + 40x2

+ x3 = 40000;

50x1 +20x2

+ x4 = 32000;

1500x1 +500x2 + x5

= 900000;

x1 + x2 + x6

=1050;

(4.1)

xi

0, i =1, 6;

 

xi

целое

i =1, 2;

 

E =1500x1 +500x2 max.

Составим первую симплекс-таблицу:

Таблица 4.1 – 1-ая симплекс-таблица

Базис

x1

 

x2

x3

x4

x5

x6

Решение

 

 

 

 

 

 

 

 

 

 

E

 

 

500

0

 

0

0

0

0

1000

 

 

 

 

 

 

 

 

 

 

x3

50

 

20

1

 

0

0

0

32000

 

 

 

 

 

 

 

 

 

 

 

 

x4

30

 

40

0

 

1

0

0

40000

 

 

 

 

 

 

 

 

 

 

x5

1500

 

500

0

 

0

1

0

900000

 

 

 

 

 

 

 

 

 

 

x6

1

 

1

0

 

0

0

1

1050

 

 

 

 

 

 

 

 

 

 

Приведенное в таблице начальное решение ( x1 = 0 , x2 = 0 , x3 = 40000 , x4 = 32000 , x5 = 900000 , x6 =1050 ) является допустимым, но не является оптимальным: признак неоптимальности решения – наличие отрицательных коэффициентов в строке целевой функции E .

Выбираем переменную для включения в базис: это переменная x1 , так как ей соответствует максимальный по модулю отрицательный коэффициент в строке целевой функции. Столбец, соответствующий переменной включаемой в базис называется ведущим.

12

tbicr

Для определения переменной, исключаемой из базиса, найдем симплексные

отношения:

 

32000/ 50 = 640 ;

 

40000/ 30 =1333.333 ;

(4.2)

900000/1500 = 600 ;

 

1050/1 =1050 .

 

Минимальное симплексное отношение соответствует переменной x5 , значит, эта переменная исключается из базиса. Строка, соответствующая переменной, исключаемой из базиса, называется ведущей.

На пересечении ведущего столбца и ведущей строки находится ведущий элемент. Получим новую симплекс таблицу.

Коэффициенты ведущей строки делятся на ведущий элемент, ведущий столбец заполняется нулями, ведущий элемент приравнивается единице. Все остальные элементы

пересчитываются по правилу прямоугольника: b'

= (a ×b

2

a

2

×b ) / a , где

a

– ведущий

 

 

 

2

1

 

 

1

1

 

1

 

элемент, a2 и b1 – старые значения ведущих строки и столбца, b2

старое значение

высчитываемой ячейки, b'

– новое значение высчитываемой ячейки.

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a1

 

a2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b1

 

b2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 4.1

Таблица 4.2 – 2-ая симплекс-таблица

Базис

x1

x2

x3

x4

x5

x6

Решение

 

 

 

 

 

 

 

 

E

0

166.667

0

0

0.667

0

600000

 

 

 

 

 

 

 

 

x3

0

3.333

1

0

0.033

0

2000

 

 

 

 

 

 

 

 

x4

0

30

0

1

0.02

0

22000

 

 

 

 

 

 

 

 

x1

1

0.333

0

0

667 ×106

0

600

 

 

 

 

 

 

 

 

x6

0

0.667

0

0

667×106

1

450

 

 

 

 

 

 

 

 

13

tbicr

Решение, полученное в таблице, еще не является оптимальным (в строке целевой функции имеется отрицательный коэффициент). Поэтому продолжаются нахождение оптимального решения.

В базис включается переменная x2 .

Для определения переменной, исключаемой из базиса, вычисляются симплексные

отношения:

 

2000 / 3.333 = 600 ;

 

22000/ 30 = 733.333 ;

(4.3)

600/ 0.333 =1800 ;

 

450 / 0.667 = 675.

 

Минимальное симплексное отношение соответствует переменной x3 , значит, она исключается из базиса.

Получим новую симплекс-таблицу.

Таблица 4.3 – 3-яя симплекс-таблица

Базис

x1

x2

x3

x4

x5

x6

Решение

 

 

 

 

 

 

 

 

E

0

0

50

0

1

0

700000

 

 

 

 

 

 

 

 

x2

0

1

0.3

0

0.01

0

600

 

 

 

 

 

 

 

 

x4

0

0

9

1

0.28

0

4000

 

 

 

 

 

 

 

 

x1

1

0

0.1

0

0.004

0

400

 

 

 

 

 

 

 

 

x6

0

0

0.2

0

0.006

1

50

 

 

 

 

 

 

 

 

Решение, полученное в таблице, еще не является оптимальным (в строке целевой функции имеется отрицательный коэффициент). Поэтому продолжаются нахождение оптимального решения.

В базис включается переменная x5 .

Для определения переменной, исключаемой из базиса, вычисляются симплекс

отношения:

 

4000/ 0.28 =14285.714 ;

 

400 / 0.004 =100000 ;

(4.4)

50 / 0.006 =8333.333.

 

14

tbicr

Минимальное симплексное отношение соответствует переменной x6 , значит, она исключается из базиса.

Получим новую симплекс-таблицу.

Таблица 4.4 – 4-ая симплекс-таблица

Базис

x1

x2

x3

x4

x5

x6

Решение

E

0

0

16.667

0

0

166.667

708333.333

 

 

 

 

 

 

 

 

x2

0

1

0.033

0

0

1.667

683.333

x4

0

0

0.333

1

0

46.667

1666.667

x1

1

0

0.033

0

0

0.667

366.667

 

 

 

 

 

 

 

 

x5

0

0

33.333

0

1

166.667

8333.333

 

 

 

 

 

 

 

 

Получено оптимальное решение (признак его оптимальности - отсутствие отрицательных коэффициентов в строке целевой функции). Основные переменные задачи приняли следующие значения:

x1 = 366.667 ;

(4.5)

x2 = 683.333 .

(4.6)

Это означает, что необходимо выпускать 366.667

автомобилей «Шторм» и

683.333 автомобилей «Торнадо».

Значение целевой функции E = 708333.333 показывает, что прибыль при таком выпуске автомобилей оставит 708333.333 ден. ед.

Остаточная переменная x3 = 0 означает, что количество неиспользуемого времени

квалифицированного труда равно нулю

 

 

Остаточная переменная

x4 =1666.667

означает,

что не используется 1666.667

часов неквалифицированного труда.

 

 

Остаточная переменная

x5 = 8333.333

означает,

что возможны еще затраты на

выпуск автомобилей в размере 8333.333 ден. ед.

 

Остаточная переменная

x6 = 0 означает, что на заводе выпускается максимально

возможное количество автомобилей.

 

 

 

15

 

tbicr

Данное решение не является целочисленным, поэтому в пункте 6. «Определение оптимального целочисленного решения» решим задачу методом ветвей и границ.

16

tbicr

5Анализ базовой модели на чувствительность

5.1Статус и ценность ресурсов

Врассмотренной задаче ресурсами являются квалифицированный и неквалифицированный труд, затраты на выпуск автомобилей и объем выпускаемых автомобилей.

Статус и ценность ресурсов определяется в нашем случае из остаточных переменных.

Квалифицированный труд расходуется полностью, то есть он является лимитирующим фактором и соответственно дефицитным ресурсом. Увеличение числа квалифицированных рабочих приведет к увеличению прибыли, а его уменьшение к уменьшению прибыли соответственно.

Ценность ресурсов представляет собой коэффициенты Е-строки при остаточных переменных, соответствующих остаткам ресурсов, в симплекс-таблице с оптимальным решением.

Ценность квалифицированного труда равна 16.667 ден. ед. При увеличении квалифицированной работы на один час предприятие повышает прибыль на 16.667 ден. ед., при увеличение на одного рабочего – на 16.667×40 = 666.667 ден. ед.

Неквалифицированный труд расходуется не полностью, то есть он не является дефицитным ресурсом. Увеличение числа сотрудников не приведет к увеличению прибыли, уменьшение загруженности квалифицированных рабочих на 1666.667 часов не приведет к изменению прибыли, более 1666.667 часов приведет к уменьшению прибыли.

Ценность неквалифицированного труда равна нулю.

На выпуск автомобилей расходуется не все возможные средства, то есть эти затраты не являются дефицитны ресурсом. Увеличение денежных средств не приведет к изменению прибыли, так же не приведет к изменению прибыли их уменьшение не более чем на 8333.333 ден. ед. При уменьшении денежных средств более чем на 8333.333 ден. ед. приведет к уменьшению прибыли.

Ценность ресурса «затраты на выпуск автомобилей» равна нулю.

Автозавод производит максимально возможное количество автомобилей, то есть этот ресурс является дефицитным. Увеличение числа вывозимых автомобилей повысило бы прибыль, уменьшение же уменьшило б прибыль.

Ценность ресурса «вывоз автомобилей» равна 166.667 ден. ед. При увеличении вывоза на один автомобиль прибыль предприятия повысится на 166.667 ден. ед.

Из значений ценности ресурсов можно сделать выводы:

 

17

tbicr

Если возможно изменить только один из дефицитных ресурсов, то целесообразней повысить количество квалифицированных рабочих, что связанно как с повышением прибыли предприятия, так и повышением занятости населения. Увеличение же выпускаемых предприятием автомобилей более целесообразно при повышенной востребованности их на рынке.

Из полученных результатов видно, что на предприятии небольшие остатки не дефицитных ресурсов.

Загруженность неквалифицированных рабочих составляет:

32000 1666.667

×100% = 94.8% .

(5.1)

32000

 

 

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

900000 8333.333

×100% = 99.1% .

(5.2)

900000

 

 

То есть на автозаводе хороший баланс ресурсов.

5.2Анализ на чувствительность к изменению количества часов квалифицированного труда

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

Пусть максимально допустимое количества квалифицированного труда изменилось на d часов и составляет 32000 +d часов. Для определения нового оптимального решения при изменившемся количестве часов квалифицированного труда используются коэффициенты симплекс таблицы, соответствующей оптимальному решению из столбца остаточной переменной x3 , так как эта переменная входит в изменившееся ограничение.

Новое оптимальное решение определяется следующим образом:

x1

= 366.667 +0.033d ;

 

x2

= 683.333 0.033d ;

 

x4

=1666.667 +0.333d ;

(5.2.1)

18

tbicr

x5 = 8333.333 33.333d ;

E = 708333.333 +16.667d .

Пусть, например, доступное количество часов квалифицированного труда будет составлять не 32000, а 36000 часов, что может быть связано с увеличением числа квалифицированных рабочих на 100 человек. При этом d = 4000 . Тогда найдем новое оптимальное решение:

x1

= 366.667 +0.033×4000 = 500 ;

 

x2

= 683.333 0.033×4000 = 550 ;

 

x4

=1666.667 +0.333×4000 = 3000;

(5.2.2)

x5

= 8333.333 33.333×4000 = −125000 ;

 

E = 708333.333 +16.667×250 = 775000.

Одна из переменных приняла отрицательное значение, что недопустимо по физическому смыслу. Это значит, что для поиска оптимального решения в новых условиях требуется решить задачу заново, изменив ограничение на доступное количество квалифицированного труда.

Пусть доступное количество часов квалифицированного труда будет составлять не 32000, а 30000 часов. При этом d = −2000. Тогда найдем новое оптимальное решение:

x1

= 366.667 +0.033×(2000) = 300 ;

 

x2

= 683.333 0.033×(2000) = 750 ;

 

x4

=1666.667 +0.333×(2000) =1000 ;

(5.2.3)

x5

=8333.333 33.333×(2000) = 75000 ;

 

E = 708333.333 +16.667×250 = 675000.

Таким образом, в новых условиях завод должен будет производить 300 автомобилей «Шторм» и 750 автомобилей «Торнадо». При этом количество часов неиспользуемого неквалифицированного труда уменьшится на 666.667 часов, неиспользуемые средства на выпуск автомобилей увеличится на 66666.667 ден. ед. Остальные значения переменных останутся неизменными. Будет получена прибыль в

19

tbicr

размере 675000 ден. ед. Таким образом, уменьшение количества часов

квалифицированного труда приведет к уменьшению прибыли.

 

 

Найдем значения

d , при которых состав переменных в оптимально базисе не

изменится

 

 

 

 

x1

= 366.667 +0.033d 0 ;

 

d ≥ −366.667 / 0.033;

d ≥ −11000;

 

x2

= 683.333 0.033d 0 ;

 

d 683.333/ 0.033 ;

d 20500 ;

(5.2.4)

x4

=1666.667 +0.333d 0 ;

d ≥ −166.667 / 0.333;

d ≥ −5000;

 

x5

= 8333.333 33.333d 0 ;

d 8333.333/ 33.333;

d 250 .

 

 

При d [5000,

250]

количество часов квалифицированного

труда будет

изменяться от 27000 до 32250 часов. При этом состав переменных в оптимально базисе не изменится. Прибыль предприятия будет изменяться в пределах от

708333.333 +16.667 ×(5000) = 625000 ден. ед. до 708333.333 +16.667 ×250 = 712500 ден.

ед. То есть при уменьшении часов квалифицированного труда прибыль предприятия уменьшается, при увеличении – увеличивается.

5.3 Анализ на чувствительность к изменению стоимости автомобиля «Шторм»

Проанализируем, как влияет на оптимальный план производства изменение величины прибыли от продажи одного автомобиля «Шторм».

Пусть прибыль от продажи одного автомобиля «Шторм» изменилась на d ден. ед., то есть составляет 1000 +d ден. ед. Для анализа влияния этого изменения на оптимальное решение используются коэффициенты симплекс-таблицы, соответствующей оптимальному решению, из строки x1 , так как для этой переменной изменился коэффициент целевой функции. Новые значения E-строки определяются следующим образом:

F3

=16.667 +0.033d ;

 

F6

=166.667 0.667d ;

(5.3.1)

E = 708333.333 +366.667d .

 

20

tbicr

Пусть, например, прибыль от продажи одного автомобиля «Шторм» снизится до 950 ден. ед., что может быть связано со снижением цены на него из-за низкой рентабельности. При этом d = −50 . Тогда найдем новое оптимальное решение:

F3

=16.667 +0.033×(50) =15 ;

 

F6

=166.667 0.667 ×(50) = 200 ;

(5.3.2)

E = 708333.333 +366.667 ×(50) = 690000 .

 

Коэффициенты E-строки остались неотрицательными. Это означает, что оптимальное решение не изменилось. Таким образом, в новых условиях изменится ценность ресурсов квалифицированного труда и вывоза автомобилей, а прибыль будет составлять 690000 , то есть снижение прибыли от выпуска автомобилей, как и следовало ожидать, приведет к снижению прибыли.

Найдем значения d , при которых остается оптимальным решение, найденное для исходной постановки задачи. Условием оптимальности решения является неотрицательность всех коэффициентов E-строки:

F3

=16.667 +0.033d 0 ;

d ≥ −16.667 / 0.033;

d ≥ −500 ;

(5.3.3)

F6

=166.667 0.667d 0 ;

d 166.667 / 0.667 ;

d 250 .

 

 

При d [500, 250]

прибыль от продажи одного автомобиля «Шторм» будет

изменяться от 1000 ден. ед. до 1750 ден. ед. При этом решение, найденное для исходной постановки задачи, будет оптимально. Если прибыли выйдет за эти пределы, то для получения оптимального решения потребуется решить задачу заново (новое оптимальное решение будет отличаться от прежнего не только значениями, но и составом переменных в оптимальном базисе). Прибыль предприятия будет изменяться в пределах от

708333.333 +366.667 ×(500) = 525000 ден. ед. до 708333.333 +366.667 ×250 =800000

ден. ед.

21

tbicr