Научная статья на тему 'Симплексный метод без циклов'

Симплексный метод без циклов Текст научной статьи по специальности «Математика»

CC BY
90
29
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Сеисов Ю. Б., Гелдиев Х. А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Симплексный метод без циклов»

СеисовЮ.Б.1, ГелдиевХ.А.2©

'Доктор физико-математических наук, профессор; 2кандидат физико-математических наук, докторант, Физико-математический институт Академии наук Туркменистана

СИМПЛЕКСНЫЙ МЕТОД БЕЗ ЦИКЛОВ

Аннотация

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

1. Описание метода

Предлагаемый метод [3] последовательных приближений к решению задачи ЛП заключается в следующем. Исходная задача ЛП решается симплекс-методом до тех пор, пока он оказывается эффективным. Имеется в виду следующее. Если найденный на последнем шаге опорный план удовлетворяет критерию оптимальности ,то решение задачи завершается. Если же,несмотря на вырожденность опорного плана, удается найти новый,, лучший'' опорный план, вводя некоторый небазисный векторЛ? в базис, то процесс применения симплекс-метода продолжается. Наконец, если приходим к вырожденному режиму в нашем смысле,то используется описанный в [3] метод. Принципиальная новизна метода заключается в том, что возникающая при этом ситуация не может быть разрешена заменой лишь одного базисного вектора на небазисный. Идея одновременного ввода двух или пакета небазисных векторов не нова [2] . Предлагаемая нами методика осуществляет выбор нужных небазисных векторов целенаправленно, и в этом заключается эффективность подхода.

Итак, пусть на каком-то этапе вычислений приходим к системе :

Х1 + а1,т+1Хт+1 + ■ ■ ■ + а1п Хп= 0 ,

^ Ха + а^т+1 Хт+1 + ■ ■ ■ + апх П = 0 , (1)

Хk+1 + ®А+1,т+1 Хт+1 + ■ ■ ■ + пХп= bk+1

хт + ат,т+1Хт+1+ ■ ■ ■ + атпХп Ьт.

\

Координаты > 0 0 = к -Ь1, ш) Опорный план образует вектор

Критерий оптимальности L(X) преобразуем с учетом первых Ауравнений системы (1)

Ь(Х) = (С, Х)= ЦХ) = (С,Х) = ^ ¡Х] = X ,х, + ;=?+! 3х3 =

т " "

= ¡ = 1 , (Ь1 - ; = т+1 1рс])+ ;=т+1 ]Х] = т т

Iс Xе

= Ы , ь, + ад="■+!)'»= I («I , -Ы ам, =

71

=ЦХ0) +>=™+1 рС].

©Сеисов Ю.Б., Гелдиев Х.А., 2012 г.

AL = L(X) -L(X0) =

]л]-

(2)

(3)

Обозначив х0 = , щ = л ;, равенство (2) запишем в виде уравнения Хо + + ао,т+1%т+1 + ■ ■ ■ + аоп Хп= 0 (4)

Это уравнение вместе с первыми ^уравнениями системы (1) полностью совпадают с системой уравнений для вариаций [ 1 ] X; = "в ; 1 = 1. К

х1 = Ь1л--в1 г = к-\-1,т,

X: — I — т + 1.Л.

в производной задаче, метод решения которой был изложен в [3]. Пусть решением производной задачи является

д о = (До , Цо> о,

* , = , ц,- > 0, / ,

^,= 0, 7=fc+Ln5 i

(5)

поэтому

^ О = Но9 ,

* ,= о, 7

i =к +

¿ + j,

(6)

Являются возможными вариациями при любом в — 0 .Подставив эти значения в систему (4), имеем

Д <Р + аф Р = 0,

Р id + + aLjP- Р = 0,

Щ1 1

j Í jCljj.

р =0,

Эти равенства будут выполняться автоматически при 0 > 0, так как возможные вариации (5) были найдены как решения производной задачи.Выпишем оставшиеся уравнения системы (1) при подстановке значений (6) .

Хк+1 = Ък+Г ®к+Ц \i-ft ,

<

Ч

Ху=Ьу~ ÜVJ\\P ,(7)

Хщ t)m Cifjij^lj1

Теперь для соблюдения ограничений х, > 0, i к-hl, т выберем 0 из условия

0 i = min {b¡ í/ и , ciij> 0, i=k + m,} = bv/avj\ij. (8)

Так как bv > 0, то ^ ;> 0.

Таким образом, при ® =3 ^оказывается

х/ = * 0= |io0 ,> 0, L>0) _

х,# * 9 j > 0, i = L А,__(9)

х,# = й,- <mi3. </,,//•а:л.ь> ■ >!>(). i=k +1, m. /

xV# = 0.

Новый опорный планимеет вид

Xi= (х*,. . ,,х*, хк+1*. . ., xv.*,0, Ху+/, . . ., xj,0, . . . ,0), при этом

^ = Хо#=$ 0=\Х0Э }> 0.

Как видно из формул (9), число нулей в новом опорном плане может сократиться.

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

2. Совершенствованный симплекс - метод

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

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

LOrD = НС, хУ^тах

Ax=b (10)

x>0

Матрица Аи вектор b имеют вид

Добавим уравнения (4) к системе (10). В результате получим систему А*Х=Ь* (11)

Объектом рассмотрения в производной задаче является система, состоящая из первых (к+1) однородных уравнений системы (11).

Метод решения производной задачи (назовем его S-методом), описанный в [3], позволяет указать «разрешающий» элемент ащ, 0 < V < А , т+1 < / < п, который необходимо элементарными преобразованиями превратить в 1, а остальные элементы/-го столбца обратить в ноль, то есть

¿ = у. и

При этом преобразовании у-й (0<у<£) столбец, состоящий из единственного ненулевого элемента 1 на пересечении у-го столбца и у-й строки, перестает быть таковым. Теперь мы имеем дело с системой

Л**х = Ь*, (12)

. ** у *

где матрица Л имеет следующую структуру, а вектор Ь сохраняется неизменным.

Ащ* =

1 ЩЩ ...... ...... а0,т+1 0 ■■■ а0,п

1 а1,\; ............ а1,т+1 0 ■■■ а1,п

1 • 0 *

......... ау,т+1 1 ...

. 1 0

ак,у 1 ■•• ■..... °-к;т+1 0 - ак,п

0 - 1 ...... ак+1,т+1 " ак+1,Ц ак+1,п

0 ... - 0 ...... ... ' 1 1 9т,(1 9т.п

\

Ь*г4

Щ+1

/ у™)

Заметим, что ничто нам не мешает преобразовать систему (12) так, чтобы элементы а!>, (1 = к,+ 1,т ) ^ также обратились в ноль. Для этого необходимо из ьго уравнения системы (12) вычесть у-е уравнение, предварительно умноженное на . При этом коэффициенты (¿ = (&+1,т), = (т + 1,п) ) соответствующим образом

изменятся. Изменятся также коэффициенты , О в систему

"О. Система (12) преобразуется

Л х

Ь*

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

_

/ 1 а0 V ...... ...... а0,т+1 0 ■■ а0,п

1 а1у ............ а1,т+1 0 ■■ а1 ,п

1 ; ■ 0

® ■:,/ у ац,т+1 1 ■

. 1 0

ак,у ...... ак,т+1 0 ак,п

ак+1,у •■• ... 1 ...... ак+1,т+1 0 ак + 1,п

\о ... :■■ у ...... ... 1 °т,т+1 0

0

; Ъ* =

0

РЩ1

У Ъш )

Замечание 1. При решении производной задачи на каждой итерации производилась нормировка вектора А* с последующим пересчетом переменных Х1,

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

Замечание 2. Сделанные выше выкладки приводят к выводу о том, что выделенный при решении производный задачи разрешающий элемент можно

рассматривать как разрешающий элемент при рассмотрении исходной задачи ЛП.

Замечание 3. Решение производной задачи заканчивается или утверждением отсутствия возможных вариаций на очередном шаге, что означает и неулучшаемость найденного опорного плана, то есть его оптимальность, или указанием возможной вариации. Последнее выражается тем, что элементы некоторого столбца13^ в производной задаче оказываются неположительными (1,г — величинами, а а ^ .

Сделанные замечания приводят к следующему правилу.

При возникновении вырожденного режима следует рассмотреть производную задачу, решать её S-методом, который указывает последовательно разрешающие элементы на каждой итерации. Необходимо именно эти элементы последовательно рассматривать как разрешающие элементы исходной задачи ЛП.

На последнем шаге решения производной задачи при обнаружении отмеченного выше столбца с неположительными элементами со строго отрицательным

необходимо продолжить применение симплекс-метода, считая выбранным столбец для ввода в базис, при этом разрешающий элемент уже выбирается согласно алгоритму стандартного симплекс-метода. Этот очередной шаг обязательно будет эффективным, поскольку а0р>О и ¿,>0 (' = к + 1.ту

Пример:

¿Ос) = Юл-! - 57х-~ 9х3-24хА^тах

Ответ:

X« = (1,0,1,0,2)

о : 10 -57 -э -24 0

Ь XI Х2 ХЗ Х4 *5 Хб Х7 ха хе а

° 0,5 -5,5 -2,5 9 1 1 0 0 0

0 0,5 ь -0,5 1 0 0 1 0 0 0

1 -2 1 1 2 1 0 0 1 0

2 -1 2 1 -1 ■0,5 0 0 0 1

1 гп

0 10 -57 ■9 -24 0

ь XI Х2 х3 Х4 *5 1 » ха Х9 а

0 1. -п 13 1 1 0 0 0 0

0 0 4 2 -а -1 0 1 0 0 0 1

1 0 21 -9 38 5 0 0 1 0 100000

2 0 -9 -4 17 1,5 0 с 0 1 100000

10 -57 -9 -24 0 1 ° 0 0 0

0 10 -57 -9 -24 0 1 2

ь XI X2 X3 X4 X5 X6 X7 X8 X9 a ;

0 -1 -2 -0,5 1 2,5 0 0 о

0 0 2\ 1 -as 0 0,5 0 0 о

1 0 -3 1 о 1 0,5 0 4,5 1 0 ЮОООО

1 0 -1 ! о 1 -0,5 о г 0 t 100000

10 i-57 1 -9 -24 \a " 0 1 0 0 0 1

0 10 -57 -9 -24 0 3

ь XI X2 ХЗ X4 X5 X6 X7 X8 X9 a

1 l| -4 Oi 0 0 1 ? 1 0 ЮОООО

1 ol -1 1 0 5 1 0 ЮОООО

2 o| 6 0 4 1 0 9 2 0 I

3 о -4 0 3 0 1 0 6,5 1 1 100000

о 1 -26 0 . .42 ° 0 -25 -1 0

Решение этого примера находится на 3-м шаге. При использовании, например, широко известного пакета программ МАТЛАБ [4] пришлось затратить 9 шагов. Важно отметить, что количество математических операций , осуществляемых на каждом шаге , сопоставимо с числом операций, потребных в классическом симплекс-методе.

Эффективность предлагаемого S-метода решения задач ЛП обусловлена использованием:

- лежащего в основе симплекс-метода перехода к новому опорному плану путем замены одного единственного базисного вектора на каждом шаге,

- нового критерия выбора небазисного вектора для ввода в базис ,

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

Высокая эффективность S-метода подтверждается сравнением с методами, использованными в широко известных пакетах прикладных программ «МАТЛАБ», QSB и др.

Литература

1.Сеисов Ю.Б., Гелдиев Х.А. Критерий оптимальности вырожденных режимов.Фундаментальные и прикладные проблемы науки.Том 1.-Материалы VI Международного симпозиума.-М.:РАН,2011. 3-11стр.

2. Габасов Р., Кириллова Ф.М. Методы линейного программирование^.! Общие задачи. -Минск: Издательство БГУ, 1977.

3.Сеисов Ю. Б. , Гелдиев Х. А. Выход из вырожденного режима в линейном программировании.Научно-исследовательские практики современности:сб.научн. трудов.-Ростов-на-Дону: Научноесотрудничество,2011.-151-167стр.

4.Ferris, M.C., Mangasarian, O.L.,Wrigt S.J.(2007), 'Linear Programming with MATLAB', MPS - SIAM Series on Optimization, 67-69.

i Надоели баннеры? Вы всегда можете отключить рекламу.