Файл: Математическое программирование и производственные задачи..pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.10.2024

Просмотров: 65

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ции второго вида требуется 10,6 станко-часов работы обору­ дования третьей группы. Сумма элементов каждого столбца

представляет собой

общую

трудоемкость изготовления еди-

ницы продукции

данного

23

вида (например, V

*«= 153,7

 

 

i

1

означает, что дЛя изготовления единицы продукции третье­ го вида используется 153,7 станко-часов по всем группам оборудовайия).

Т а б л и ц а 3 .J*

Трудоемкость выпускаемой продукции (в станко-часах)

Виды обору­

Количество

 

Виды продукции

Полезный

 

 

 

 

довании и

оборудова­

 

 

 

. . . 31

фонд вре­

работ

1

2

3

мени обору­

ния

 

 

 

 

 

дования

 

 

 

 

 

 

1

20

3,1

4 ,6

2 ,3

0,42

158423

2

15

6 .2

3 ,4

1,5

0,54

122450

3

72

7 ,3

10,6

2 ,7

1,1

570240

22

7

5,81

3 ,7

1,6

0,32

57120

66

37,4

23,5

16,7

4,56

538560

Итого...

 

254*31

2207,13

153,7

. . . 104,83

2327232

 

Нормативы расхода

материалов

Т абли ц а 3 .2

 

 

Виды основ­ ных и вспо­ мога тель­ ных матери­ алов

1

2

3

Единицамерения ­из

кг

кг

м

 

 

Виды продукции

 

 

Объем за­

 

 

 

 

пасов ис­

 

 

 

 

 

 

 

 

 

 

 

 

пользуе­

1

2

3

• '

'

31

мых мате­

риалов

 

 

 

 

 

 

10,5

17,2

13,2

 

 

21,3

1350

22,6

2 7 ,5

20,1

. .

.

2700

т

0 ,4 3

1,71

• •

«

350

 

 

 

 

 

. . .

119

м

2 ,1

1,8

2 .3

120

ш т

1

3

1

121

ш т

10

8

5

 

 

1,4

460

.

.

2

650

9

1250

* Таблица 3.1 (как и табл. 3.2) приведена в сокращенном виде. Строки от четвертой до двадцать первой и столбцы от четвертого до тридцатого оцущены.

7 7


В табл. 3 2 приведены расходы сырья, основных и вспомо­ гательных материалов, а также покупных полуфабрикатов и малоценных изделий (/=121) для изготовления единицы про­ дукции (я=31). Так например, число 2,3, стоящее на пересе­ чении 119-ой строки и третьего столбца, показывает, что для изотовления единицы продукции третьего вида требуется из­

расходовать 2,3 ед. материала 119-го вида. В последнем столбце приведены запасы материалов (по видам).

В результате решения задачи получаем, что объем реали­ зуемой продукции по оптимальному плану составляет 40,2 мил­ лиона рублей вместо 36,8 миллиона рублей, т. е. увеличивает­ ся на 9,2%. Прибыль предприятия по оптимальному плану увеличивается на 11,3%, а фондоотдача по реализуемой про­ дукции—на 8,7%. Коэффициент использования основных фондов от 62,3% повысился до 81,2%, а для активной части (технологического оборудования) фондов—от 68,7 до 91,8%.

Примерно такая же картина наблюдается на остальных предприятиях исследуемой отрасли.

Вышеприведенные задачи с некоторыми упрощениями ре­ шались методом целочисленного линейного программирова­ ния на ЭВМ «Раздан-2». Метод решения и вычислительная схема приведены в следующем параграфе.

§4. АЛГОРИТМ РЕШЕНИЯ ОБЩЕЙ ЦЕЛОЧИСЛЕННОЙ ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ

Многие задачи оптимального планирования дискретного производства по существу являются целочисленными задача­ ми линейного программирования. Часто для решения нелиней­ ных (особенно многоэкстремальных) задач возникает необхо­ димость решать серию целочисленных задач линейного про­ граммирования.

Р. Гомори дал алгоритм решения целочисленной задачи линейного программирования [19, 20] при следующих пред­ положениях:

1) известно базисное допустимое решение двойственной задачи, причем все элементы преобразованной внебазисной матрицы целочисленны;

78

2) двойственные задачи, используемые в процессе реше­ ния, невырождены.

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

круг задач, решаемых

алгоритмом Гомори,

так как часто в

'практических задачах

заранее

неизвестно

допустимое ба­

зисное решение двойственной

задачи, а

получение цело­

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

Алгоритм решения общей целочисленной задачи, предло­ женный Мещеряковым [ 7 ], содержит довольно большой объ­ ем вычислений и, кроме того, требует дополнительной проце­ дуры нахождения всех допустимых базисных решений задач линейного программирования.

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

ного улучшения плана [65] и идеях

метода

Гомори [19].

^остановка задачи. Алгоритм.

Найти

максимальное

значение линейной функции

 

 

/ т = / (*;, 4

Пг

(4.1)

 

7-1 с)х )

 

при условиях

II

i = l , 2,

т;

(4.2)

л^>0,

/=1.

2, . . ., п'\

 

(4.3)

х г -

целые

числа,

 

(4.4)

 

 

 

 

где с'., а и и bi (г—1, 2,

. . .,

т\ у= 1, 2,

. . .,

/г')—задан­

ные целые числа, bi — не отрицательные

(легко

убедиться,

79



чтй эти предположения не нарушают общности постановки задачи).

Как известно, задача (4.1) — (4.4) без условия (4.4) явля­ ется обШей задачей линейного программирования и лег­ ко решается так называемым Л1-методом. Поэтому естественно задачу (4.1) — (4.4) называть общей целочисленной задачей линейного программирования^

Сформулируем расширенную задаНу (М —задачу), соот­ ветствующую задаче (4.1) — (4.4). Для простоты дальнейшего изложения здесь :не будем отличать искусственные и основ­ ные переменные. Поэтому все переменные расширенной задачи будем обозначать символом х с единой нумерацией

индексов. Расширенная

задача

сформулируется так: найти

максимальное

значение линейной

функции

 

 

 

__

т

 

 

п

 

 

 

 

 

F(X) = - M ^

Xj +

2

с

X j

 

(4.1')

 

 

1

 

j —m + l

 

 

 

при условиях

 

 

 

 

 

 

 

 

 

xi =

bi

auXj

,

i= \ ,

2, .

. .,

ГП-,

(4.2')

 

xj > 0 ,

y = l,

2, .

.

., n ;

 

(4.3')

 

Xj --- целые числа.

 

 

 

 

(4.4')

Здесь M —произвольно большая

величина,

 

не­

видно, что л-мерный вектор

 

 

 

 

 

 

 

* ° =

( * lt h ........Ьт, О, 0,

. . ., 0)

 

 

является допустимым

базисным

решением

задачи

(4.Г) —

(4.4'). Связь между задачами (4.1) — (4.4)

и (4.Г) — (4.4') ана­

логична связи между общей задачей линейного программиро­

вания

и соответствующей расширенной задачей (например,

задача

(4.1) — (4.4) неразрешима, если решение задачи

(4.Г) — (4.4') содержит искусственные переменные). Основы­

ваясь на вышеуказанном, для решения задачи

(4.1) — (4.4)

решаем задачу (4.Г ) — (4.4'). Решение задачи

(4.Г) — (4.4').

80


сводится к последовательному применению симплексных пре­

образований относительно задачи типа (4.Г) — (4.3'),

причем

на каждом шаге к

ограничениям (4.3') добавляется

новое

ограничение с новой переменной так, чтобы

 

 

а) добавленная переменная удовлетворяла условиям ви­

да

(4.3')

и (4.4');

 

 

 

б) новое ограничение не противоречило имеющейся систе­

ме

вида

(4.2').

 

 

 

Таким образом,

получаем новую задачу, относительно ко­

торой применяем один шаг симплексного преобразования. В

результате этого

преобразования

из базиса

исключается

вектор, соответствующий добавленной переменной.

 

Пусть на некотором шаге система (4.2')

имеет вид

 

■Xjj Яю

 

(UjXj

к

 

 

 

 

2

+ X biksk,

i= 1 , 2 , . .

., г,

(4.5)

 

 

}£j

 

 

k■1

 

 

 

 

где J —"\j i , y*2 ,

• • .,

j r )

множество

индексов

базисных

век­

торов,

а

 

 

 

 

 

 

 

 

Предположим,

что существует

вектор,

удовлетворяю­

щий условиям

(4.2')

(4.4'). Тогда для любого

i переменная

s*+i =

UlO

V'

 

 

К

 

 

 

(4.6)

 

Л

v

 

 

 

 

 

 

 

Г -

 

 

 

 

является целочисленной неотрицательной переменной при лю­

бом положительном значении

Это

означает, что ограни­

чение (4.6) удовлетворяет условиям а)

и б).

Опишем произвольный шаг алгоритма решения задачи (4.Г) — (4.4'). Проверяем признак оптимальности. При его обеспечении анализируем коэффициент при М в выражении целевой функции (4.Г ). Если этот коэффициент отличен от нуля, то задача (4.1) — (4.4) не имеет решения, в противном случае получено оптимальное решение. Если признак опти­ мальности не обеспечен, то генеральный столбец выбираем так, как в обычном методе последовательного улучшения плана. Отсутствие положительного элемента в генеральном столбце

означает неограниченность целевой

функции (4. Г)

на мно­

жестве допустимых решений задачи

(4. Г) — (4.4');

следова­

тельно, и функция (4.1) не ограничена на множестве допусти-

81

6—450