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

книги из ГПНТБ / Говар В.М. Математическое программирование учеб. пособие

.pdf
Скачиваний:
9
Добавлен:
23.10.2023
Размер:
7.19 Mб
Скачать

 

- 3 0 -

§ 4.

МЕТОД ПОСЛЕДОВАТЕЛЬНОГО УЛУЧШЕНИЯ ПЛАНА

Рассмотренный, ранее графический метод имеет некоторую цен­

ность благодаря

своей наглядности, но при II .> 3 он применатьсз

не может. Решение задач линейного программирования с любым числом

неизвестных производится другими методами. Одним из такояых явля­

ется метод последовательного улучшения плана, основные идеи кото­

рого

были разработаны американским

математиком .Данцигом. Этот ме­

тод в литературе фигурирует часто

под названием

с и м п л е к с ­

н ы й

метод (или симплекс-метод).

 

 

 

С геометрической точки зрения этот метод похож на графичес­

кий. Как и л графическом методе значение функции

цели исследуется

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

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

Дана система линейных ограничений - неравенств (4.1):

V •
*t '

a I I x I

+ a I 2 x 2

a 2 I X I

+ a 22x 2

(4.1) < a L l x I

+ a L2X 2

a t I x I

+ a t2 x 2

.+ ... + %

+... + %

+... + ai,J-

+... + 4

. + a ll1

x rt

. + а Xj?

. + a \ n

x n

a tn

 

. a m i x i

+ a n2X 2 + ... +

 

Xj.+ .

аІЛі7 *<1

 

и функции цели

(4.2)

L ( X ) =

cQ

+ C J X J

+ CoXp + . . .

+ C ; Ï | . +

 

 

 

 

 

. . . T C^Xf,.

 

 

 

Требуется найти такое неотрицательное решение

 

(4.3)

X j i . О, х 2

0,

. . . j X j .

?

0, . . .

, х п

^ О

 

системы(4.І),

при котором функция

цели (4.2)

принимает

экстремаль­

ное

значение.

 

 

 

 

 

 

 

 

 

Для определенности

рассмотрим

случай

максимизации

функций

цели. Решение начинается с отыскания допустимого значения опорного

плана (базиса). Для этого от системы неравенств (4.1) переходиы к

системе уравнений (4.Ь) путем введения дополнительных неотрицатель­

ных переменных

 

(4.4)

 

x n +j^0, xn + 2,>Q,,..,xn + L

 

д. 0, ... ,x f ) + l î J ^

0 ;

а

І І

х

І

+

а

І 2

х

2

+

.

+ ат

X: +

• '

+ а

Ы

х

 

+

V i

 

= * Р

 

 

 

 

 

 

 

 

 

 

 

О

 

 

 

^21^1

+ ^22*^2

 

* * * "^" ^2 ^

^ * * * "^"^2^^'"^ "^*

*^іт^"2

= в 2 >

а І І х І +

\ 2 Х 2 +

 

+ % %

г

+

...+аи 1 х,-)

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a t I x I +

a t2 x 2 +

 

+ а і у х

у

+

. . . + а . „ х ) 7

+

 

 

 

=Bt ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ а,т

X +

. .+а.„,х,, +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

un,

1:

 

 

 

 

Коэффициенты при дополнительных

неотрицательных

переменной

(4.4) образуют

 

единичную матрицу .m -го порядка,поэтому она являют­

ся линейно-независимыми

и,следовательно,

 

составляют

базис,

итак,

неременные

 

(4.4)

принимаем за базисные,

в общем случае кеотркца-'

- 32 -

тельные, а переменные (4.3) за свободные, .равные нулю.

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

-11+1 =

х П+2 ~

x n+t =

> m -

- I -

^иН

+ а І 2 х 2

•*•...+ aT-i x '

- ( a 2 l x j

+ a 22x 2

+ . . . +

 

\ -

( - U - I

+ a l2 X 2

+ .... +

 

*t -

<

a

t l

x

l

+ a t 2 x 2

+ . . . +

Ч х і -

 

 

 

 

- m " < a m l x l +

a n ,2x 2 + " — + \ * y +

+ . . . +

 

 

+ "... +

a2 n xn

) ,

+ . . . +

V n ,

!

+ . . . + a tn x n ) »

+ V « > -

(4.7)

L С X )

=

c 0

-

(-CJXJ

- c 2 x 2 - . . .

-

c^x^- . . .

- c n

x n

)

=

 

 

 

=

C0

-

(Çj-Xj + C^g + . . .

+ C'X;+ . . . + c'n xn

) ,

ГД e

Cj ~

 

'

^2 =

""^ ^ ' * " * '

— С *

Cp —

—С ß »

 

Из системы

ограничений

(4. ь)

и функции

цели

(4.7)

находим,

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

решение:

 

 

 

 

 

 

 

 

 

 

-п+і

- • " - > •

 

 

I

 

 

 

 

 

 

 

 

 

X Q t ? . T . . f 2 .

 

 

 

/

 

 

 

 

 

 

 

 

 

X X ,

=

в

 

 

 

 

 

 

 

 

 

 

 

 

-n+t =

- t

> п

р

и Э І 0 Ы Ф2/НКЦИЯ

Ч ѳ л и

 

L

( X )

= Cp .

 

 

 

 

Можно сформулировать следующий признак оптимальности: в опти

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

максимума

функции цели необходимо

и достаточно, чтобы все коэффи­

циенты ее

C j , с 2 ,

 

с ' , . . . , Ср

были

неотрицательными.

 

 

 

Исследуем коэффициенты

функции цели

(4.7). Если хотя

бы один

из коэффициентов с^

, с£

с':

, . . . , с п

отрицателен,

го

путем

перевода соответствующей переменной из свободной в базисную,значе­ ние функции цели можно увеличить . Тогда для улучшения первого

- 33 -

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

вилу, при этом значение функции цели (4.7) должно возрасти.

Примечание I . В оптимальном решении задачи линейного про­

граммирования на отыскание минимума функции цели нѳрбходимо и

достаточно, чтобы все коэффициенты ее

C j , с^ , . , с-

были неположительными.

 

Примечание 2. При устранении так

называемого "вырождения",

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

мизации оно ни в коем случае нѳ может уменьшаться, а при миними­ зации - не может увеличиваться.

Допустим, что среди коэффициентов Çj , с 2

имеются отрицательные коэффициенты. Из этих отрицательных чисел

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

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

увеличению функции цели. Предположим,

что таковым является

с' ,

Тогда полагаем х-> ^ О, а все остальные

свободные переменные

У

по-

У

 

 

прежнему имеют нужавыѳ значения. Б этом случае значение функции

цели (4.7)

возрастает.

 

Итак,

переменную х-

необходимо из свободных переменных пѳ-

рѳвести в

число базисных

переменных. Однако х- можно увеличивать

 

 

У

только до

тех пор, пока

впервые не обратится в нуль какая-либо

из базисных переменных (4.4), а остальные базисные переменные

сохранят свои неотрицательные значения. Находим значения базис­

ных переменных из системы (4.ь)

при условии,

что

х«

ê

0,

а

все

 

 

 

У

 

 

 

 

остальные свободные переменные

іт х , ,

і> . |

,

х;,;

,

хп

 

2

у

 

 

У

'

 

по-прежнему нули. Тогда будем иметь:

 

 

 

*rt+I =

* I

-

aT i X.

 

 

 

 

 

 

 

 

 

 

 

 

 

хЛ+2 =

»2

-

 

4

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(4.8)

 

x n+u

=

a i

-

 

4-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x n+t =

bx. -

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hm - a n r X :

 

 

 

 

 

 

 

 

 

 

 

Первой обратиться в нуль

та из переменных

x i l +

I

, x n

+ 2

 

X + (

п

, для которой

отношение свободного

члена к коэффициенту

при переменной, вводимой в базис, является наименьшим. Будем

обозначать

эти отношения буквой 9 •

 

 

 

 

 

 

 

 

 

 

Отыскиваем

минимальное

симплексное

отношение,

то есть пм.п Ѳ:

nu. Л3

m Lui

f

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а-

 

a-,

 

 

 

а

 

 

 

 

 

 

При этом отыскиваем отношения только к положительным коэффи­

циентам,

тан как, если

какое-либо а £ ^ - ^ °> 1 0

увеличение

х^ вы­

зывает только

лишь возрастание базисной

переменной

x n +

t ,

а при

а ^

= 0,

переменная .xn +t

н

е

меняется.

 

 

 

 

 

 

 

 

 

Допустим,

что наименьшее

значение

Q

будет

в і

-том уравне-

нии, то

есть

 

Піі-пѲ =

^_

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а -

 

 

 

 

 

 

 

 

 

 

 

 

Тогда

коэффициент

а--

будем называть

генеральным

элементом.

 

Установив

 

генеральный

элеыент,

нужно

переходить

ко второму

базисному

решению. Для этого Х' из свободных

переменных

нужно

перевести

в базисные,

а х и +

 

из базисных - в свободные.

 

 

 

Для того,чтобы X

из свободных

переменных перевести в базис­

ные, нужно исключить его из остальных

уравнений системы

(4.5).При

использовании метода Кордана-Гаусеа

процесс исключения

переменной

х-

из всех

уравнений,

кроме L - r o уравнения,системы

(4.5)

выпол-

няется без особых

затруднений.

 

 

 

 

 

 

 

 

 

Разделим все члены і-то

уравнения

системы

(4,5)

на генераль­

ный элемент:

 

 

 

 

 

 

 

 

 

 

 

 

(4.9)

Хт +

X? + . . . .+ - -

Х- т +

I о х- + — а — х + т + . . .

•*• +

a

 

n

a-- п + "-

 

а,-

 

 

 

 

 

Уравнение,

полученное в результате деления обеих его частей «

на генеральный

элемент,

будем называть

направляющим.

 

Например,

для того,чтобы исключить х-

из і

-го уравнения,

нужно

умножить

направляющее

уравнение

(4.9)

на

(- a t .

) :

 

 

а.

а, .

а 0 а т

 

а.-

а>.;

 

а^.і а*.

(4.10)

 

 

-Хт -

«

X? -

•••

1

г

- а г Х ;

*

 

 

%

 

1

a L >

2

 

a . .

 

 

t, k

a

 

a.

a,

 

 

а^і.

 

в-.

a t -

 

 

 

' X L+I

a, ,

 

"

 

a -

V L

"

a ~ "

"

 

 

 

*

 

LJ-

 

 

 

Cj-

 

 

 

 

 

 

 

 

Затем

полученный

результат

(4.10)

почленно складываем с соот­

ветствующими

членами

t, - го уравнения

системы (4.5) и получаем:

Аналогично исключается х^ из остальных уравнений системы (4.5).

Далее, исключая х,- из функции цели (4.7), получим (4.12):

Г

! В результате вычислений получим второе базисное рѳшение(4.ІЗ).

-

36

-

_

*і а.

 

а.

 

-

и ••J

a..

a .

..-J.

- В;

(4.13)

X-

 

 

 

 

i

4-

 

 

 

V l + I

= B.

4 t Ii

 

"

LH

 

 

 

B t

-

ft а ^

 

 

 

 

4

При этом функция цели принимает значение I ( X ) = с - с ' - Получив второе базисное решение, если оно не будет оптималь­

ным,повторяем цикл вычислений аналогичным образом до тех пор,пока не получим оптимального (в рассматриваемом случае - максимального)

результата.

 

 

 

 

 

При к пользовании метода последовательного улучшения плана

 

для решения конкретных задач процесс решения проще выполнять а

 

симплексных таблицах.

 

 

 

 

 

Ознакомимся с- алгоритмом вычислений в симплексных

таблицах.

 

I .

Сосіавляѳм симплексную таблицу

(таблица 4.1) ,

заполняя

ее

коэффициентами из системы ограничений

(4.5) и функции цели (4.2).

При этом

коэффициенты функции цели

(4.2)

записываются в таблицу

с

противоположными знаками (кроме с 0

) , ю

есть C j , с 2 ,

. . . , с '

 

• л -

 

 

 

 

'

 

Знаки коэффициентов системы ограничений (4.5) при заполнении

таблицы

не изменяются.

 

 

 

 

 

'Базисные Свобод­ перемен­ ные

ные члены

Хп и

e,

 

. . .

h

...

 

 

k-,

 

 

h

Ail

Xil-L+I

 

UL-w

 

 

• • *

 

êt

 

" L ( x )

 

с,

- 37 -

Таблица 4.1

 

...

 

 

 

 

X -

 

 

Ѳ

й а

 

 

1

0 ...

0

 

0

0

Ö»a

...

a w

0

I

• --

0 ...

0 ...

0

ÖL2

...

 

o"

 

•1

-

0 ...

0

 

 

 

J . . ... ... ... ... ... ...

 

...

...

 

0

0 ....

0 ...

0

0

 

...

 

0

0 ...

0

 

0

0

...

 

 

.... ... ...

 

...

F

...

...

...

flmn 0

0

 

0 ...

1

г..

fltn

0

0

• ••

0

 

...

0

с:.

 

C'n

0

 

 

o" r ; "b

0

Строку сишілексной таблицы,содержащую коэффициенты функции

цели с 0

,

с j

, с'2

с^.

c'a , будем называть индексной.

2.

h

индексной строке анализируем коэффициенты C j , с£, . . . ,

с':

 

а'(\ .

Если хотя

бы один

из этих коэффициентов отрицателен,

я

 

 

 

 

 

то полученное решение оптимальным не является (при решении на мак­ симум). Из отрицательных коэффициентов индексной строки выбираем наибольший по абсолютной величине. Предположим, что этот коэффициент содержится в j_ -м столбце. Этот столбец таблицы будем называть клю­ чевым.

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

3. Вычисляем симплексные отношение Q в последнем столбце таб­ лицы, при этом находим отношения свободных членов только к положи­ тельным коэффициентам -го столбца. Из всех значений 9 выбираем наименьшее. Строку, в которой находится минимальное значение Ѳ , будем называіь ключевой.

- 38 - 4. На пересечении ключевого столбца и ключевой строки нахо­

дим генеральный элемент.

5. Определив гвнеральный элемент, переходим к составлению

второй симплексной таблицы, при этом выполняем следующие действия:

а)

свободную

переменную xj,

переводим

в базисные, а базисная

переменная Х ц ^

перейдет

в

свободные;

 

б)

заполняем

строку

с

вновь

введенной

базисной переменной Ху ;

эту строку будем называть направляющей. Для этого все коэффициенты ключевой строки предыдущей симплексной таблицы делим на генераль­ ный элемент;

в) для перевода х- из свободных переменных в базисные нуяно исключить ее из всех строк, кроме I -той. Для этого накапливаем

нули во всех остальных клеткахJ.-го столбца таблицы ( 4 . 2 ) путем умножения всех коэффициентов направляющей строки на соответствую­ щие коэффициенты^ -го столбца, взятые с противоположным знаком,

предыдущей симплексной таблицы ( 4 . 1 ) и сложения полученных чисел

с соответствующими коэффициентами строк той же таблицы. Так,напри­

мер, для получения нуля в

строке t столбца j , умножаем направляю­

щую строку на (-

atу

).

 

В результате

указанного выше алгоритма получим вторую симплек­

сную таблицу (табл. 4 . 2 ) :

(см.стр.37)

Процесс вычислений продолжаем в симплексных таблицах до по­

лучения оптимального

решения.

Прежде чем перейти к рассмотрению конкретного примера,рассмот­

рим правила работы со

столбцом контрольных сумм. Эти правила поз­

воляют

контролировать

процесс вычислений на каждой итерации (одном

цикле

вычислений), то

есть

при переходе от одной симплексной таб­

лицы к другой.

Симплексные таблицы дополняются еще одним столбцом - столбцом контрольных сумм. В -том отолбцв я исходной симплексной таблице

С в о б о д н ы е •

перемен - ЧЛЕНЫ \ Х1

і

'ч ;" %

*•*

- • • i

X •

Ч-і и "

 

V

ч

 

a

- л*»"і/'

n

• • •

QiAJ

 

^

êi Chi л

 

 

0

ft. ЙѴ

 

« t -

 

ас/

 

 

Ut. $mjft

Oi, finj

n

ш

'

J %

1

 

 

i

 

 

1

Х1

*

r

 

X . ,

 

К •

 

0

-

 

 

 

0

..eu

i

 

 

 

 

 

%

 

 

 

 

 

 

0 -

0

 

 

 

1

4

У

 

 

 

 

 

 

 

0 j -

n

Яі'*,0t

0 ...

%

 

 

 

 

°ы

0

0 ...

L

 

 

i

!

 

 

%

flaut«.;

л

i

л

ûùnÛi.t.:0

 

fly

 

 

UWI П •

0

 

' °u

...

0

 

0

0

 

0

0

...

Ô

0

...

0

0

 

0

 

... 0

0

0 ...

 

... i

...

û

(fil e».-...

Û»*" 0І 0

0- ... -On

0

...

1

 

 

/>' />' Clin

- Si

0.

 

0

4

~s

0

0 ...

 

 

 

 

*4

 

 

i

Соседние файлы в папке книги из ГПНТБ