УДК 519.85 ББК 22.18
ВВОД В ОБЛАСТЬ ДОПУСТИМЫХ РЕШЕНИЙ МЕТОДОМ ВНУТРЕННИХ ТОЧЕК1
Зоркальцев В. И.2
(Институт систем энергетики им. Л.А. Мелентьева СО РАН, Иркутск)
Рассматривается алгоритм внутренних точек решения задачи линейного программирования, содержащий два этапа вычислений. На первом этапе осуществляется ввод в область допустимых по ограничениям задачи решений. На втором этапе -оптимизация в области допустимых решений. Процесс ввода в область допустимых решений представлен как оптимизация в области допустимых решений расширенной задачи линейного программирования путем добавления только одной новой переменной. Основная цель статьи - дать теоретическое обоснование процесса ввода в область допустимых решений при предположении о невырожденности расширенной задачи.
Ключевые слова: метод внутренних точек, линейное программирование .
1. Введение
В начале 1970-х годов на базе алгоритма внутренних точек И.И. Дикина [1] был разработан алгоритм [8] решения задачи линейного программирования, в котором процесс ввода в область допустимых решений исходной задачи представлялся как
1 Исследования выполняются при финансовой поддержке РФФИ Грант № 15-07-07412а.
2 Валерий Иванович Зоркальцев, доктор технических наук, заведующий лабораторией Института систем энергетики им.Л.А. Мелентьтева (у11вгк@таИ. ги).
процедура оптимизации в области допустимых решений расширенной задачи. Расширение осуществлялось путем добавления только одной новой переменной. В разработанных ранее алгоритмах, в том числе в алгоритмах симплекс-метода и внутренних точек [1], при вводе в область допустимых решений осуществлялась оптимизация в области допустимых решений расширенной задачи, получаемой в результате добавления новых переменных по числу, равному количеству ограничений-равенств (для задачи линейного программирования в стандартной форме).
Одна из особенностей алгоритма [8] состояла в том, что в нем в процессе ввода в область допустимых решений учитывалась целевая функция исходной задачи. Это позволяло получить первое допустимое решение близкое к оптимальному. Использовались также новое правило выбора шага улучшения решения и более общий способ задания весовых коэффициентов во вспомогательной задаче выбора направления улучшения решения. В данной статье рассматривается алгоритм с аксиоматически определяемыми условиями на выбор весовых коэффициентов. Такой подход для непрерывных аналогов алгоритмов внутренних точек использовался Ю.Г. Евтушенко [5].
Естественно, что при вводе в область допустимых решений можно и не учитывать целевую функцию исходной задачи, условно полагая ее на этом этапе вычислений равной нулю. Такие два варианта алгоритмов внутренних точек (учитывающие и не учитывающие целевую функцию на этапе ввода в область допустимых решений) были рассмотрены в монографии [4]. В этой монографии были также отражены накопленные в 70-х годах прошлого века результаты практического использования алгоритмов внутренних точек в моделях энергетики.
В дальнейшем, начиная с середины 80-х годов прошлого столетия, рассматриваемые здесь алгоритмы внутренних точек привлекли повышенное внимание во всем мире. В качестве исторически первых публикаций по этим алгоритмам за рубежом можно выделить статьи [17-21]. К настоящему времени в результате многих независимых сравнительных экспериментальных исследований и полученных теоретических результатов
было установлено, что алгоритмы внутренних точек обладают высокой (в том числе по сравнению с алгоритмами симплекс -метода) вычислительной эффективность.
Теоретическое обоснование алгоритмов осуществлено к настоящему времени для процессов оптимизации в области допустимых решений. В частности, в работах [2, 10, 12] это было сделано при предположении о невырожденности исходной задачи линейного программирования. В работах [9, 13] это было сделано для некоторых частных случаев, без использования предположения о невырожденности. Основная цель данной статьи - изложить теоретическое обоснование процесса ввода в область допустимых решений без учета целевой функции исходной задачи при условии невырожденности расширенной задачи. При этом будем использовать и излагать результаты из препринта [11].
Используемые обозначения. Множества номеров компонент вектора у е Я" с нулевыми, положительными, отрицательными и ненулевыми значениями обозначим
Jo(У) = {У : Уу = 0}, J+ (У) = {У: у > 0}, •Г- (у) = {У: У У < 0}, J (у) = J+ (у) и J- (у) .
Набор номеров J(y) будем называть носителем вектора у.
Соотношение строгого включения одного множества в другое (включено и не совпадает) будем обозначать символом с. Для нестрогого включения (включено и возможно совпадение) будем использовать символ с.
Следуя Рокафеллару [15], относительно внутренними точками выпуклой области Q из Я" будем называть внутренние точки этой области относительно минимального (не сужаемого) линейного многообразия, ее содержащего. Множество относительно внутренних точек образует относительную внутренность, которую будем обозначать п Q.
2. Свойства взаимно двойственных задач линейного программирования
Рассмотрим проблему поиска векторов из множеств
(1) X = Argmin{cTx: x е X},
(2) U = Argmax{bTu :u eU}, где
(3) X = {x e Rn; Ax = b, x > 0},
(4) U = {u e Rn; g(u) > 0},
(5) g(u) = с - ATu .
Заданы матрица A размера m x n, векторы b e Rm, c e Rn при некоторых целых положительных n и m.
Множества X, U составляют оптимальные решения, множества X, U - допустимые решения взаимно двойственных задач линейного программирования. Для определенности будем считать, что поиск вектора из X является исходной задачей линейного программирования. Поиск вектора из U является двойственной задачей.
Введем множества рецессивных направлений исходной и двойственной задач:
(6) X = {^ e Rn: As = 0, cTs < 0},
(7) U = {veRm : ATv<0, bTv> 0}.
Согласно теоремам об альтернативных системах линейных неравенств (см., например, [14]) априори известно, что одно и только одно из множеств X, U пусто. Также известно, что из множеств X, U одно пусто, а другое не пусто. Эти факты позволяют использовать множества X , U для построения конструктивных критериев выявления случаев отсутствия допустимых решений у рассматриваемых задач линейного программирования.
Приводимое ниже утверждение обобщает установленные ранее факты о свойствах взаимно двойственных задач линейного программирования.
Теорема 1. Возможен один из четырех случаев.
1. X Ф0 , U Ф0. Тогда X = 0, U = 0 и, поскольку оптимальные решения находятся среди допустимых, X = 0,
U = 0.
2. X Ф0 , U = 0. Тогда U = 0, U = 0, X Ф0, X = 0, поскольку линейная функция cTx не ограничена снизу на области X .
3. X = 0, U Ф0 . Тогда X = 0, X = 0, U Ф0, U = 0, поскольку функция bTu не ограничена сверху на области U.
4. X = 0, U = 0, X Ф0 , U Ф0, X Ф0 , U Ф0. Для любых x е X, u е U выполняется неравенство
(8) bTu < сТx.
Для оптимальных решений x е X, u eU выполняются равенство
(9) bTu = сТ x
и условие дополняющей нежесткости
(10) J(x) с J0(g(u)), J(g(y)) с Jo(x).
Для относительно внутренних точек оптимальных решений x е riX, u е riU условия дополняющей нежесткости выполняется в строгой форме
(11) J(x) = J0(g(u)), J(g(u)) = J0(x).
Замечания. Первые три случая в теореме 1 называются в работах И.И. Еремина и его коллег [6, 7] несобственными задачами линейного программирования I, II и III рода. Как показали результаты массовых экспериментальных расчетов А.Ю. Филатова [16], факт наличия векторов в множествах рецессивных направлений позволяет при использовании алгоритмов внутренних точек очень оперативно и, что немаловажно, вполне обосновано выявлять ситуации отсутствия решения у задач линейного программирования.
В (10), так же как и в (11), избыточно приведены по два равносильных условия. Условия (11) могут служить конструктивным критерием для выявления относительно внутренних точек оптимальных решений. Рассматриваемые далее алгорит-
мы внутренних точек обладают особенностью вырабатывать именно такие решения. Это дает ряд преимуществ, подробно рассмотренных в [4, 9, 10, 14].
3. Задача ввода в область допустимых решений
Пусть имеется (любым способом выбран) вектор х° > 0 из Rn. Вычислим для него вектор невязок ограничений-равенств
(12) r = b - Ax0.
Рассмотрим задачу линейного программирования с (n + 1)-й переменной
(13) ß^min, Ax + ßr = b, x> 0, ß> 0. Дополнительной переменной здесь является величина ß.
Значения х = х°, ß = 1 являются допустимыми для этой задачи.
Итак, априори известно, что множество допустимых решений задачи (13) не пусто. Значение ее целевой функции по условиям задачи ограничено снизу. Следовательно, эта задача имеет оптимальные решения. То есть для задачи (13) первые три ситуации в теореме 1 не могут реализоваться. Двойственная к (13) задача имеет вид
(14) bTu ^ max, ATu < 0, rTu < 1.
Поскольку для задач (13), (14) имеет место только четвертый случай теоремы 1, то двойственная задача (14) также имеет допустимые и оптимальные решения.
Отметим, что при любом х е X данный вектор х и значение ß = 0 будут составлять допустимое и, более того, оптимальное решение задачи (13). Если же оптимальное решение задачи (13) достигается при ß > 0, то множество Xпусто.
Определение. Вектор х е Rn и величина ß > 0, удовлетворяющие условиям задачи (13), будем называть стационарным решением этой задачи, если при некотором u е Rm выполняются соотношения
m
(15) I ггиг = 1, i=1
(16) J(x) с J0 (ATu).
В качестве пояснения отметим, что в приведенном определении вектор и может и не удовлетворять условиям двойственной задачи (14). Если же условия двойственной задачи выполняются,
АТи < 0,
то пара х, в будет оптимальным решением расширенной задачи (13). Вектор и будет оптимальным решением двойственной задачи. Соотношения (15), (16) будут выражать, с учетом неравенства в > 0, условие дополняющей нежесткости.
Если при этом условие (16) выполняется в строгой форме
(17) J (х) = (АТи),
то пара х, в будет составлять относительно внутреннюю точку оптимальных решений задачи (13). Вектор и будет относительно внутренней точкой оптимальных решений двойственной задачи (14).
Определение. Задачу (13) будем называть невырожденной, если для ее любого стационарного решения х, в существует единственный вектор и е Ят, при котором выполняются для данных х, в условия (15), (16).
4. Вычислительный процесс
Рассматривается алгоритм, вырабатывающий последовательность векторов хк > 0 из Я" по правилу
(18) хк+1 = хк sk, к = 0,1, 2,...
Здесь к - номер итерации, sk - вектор Я" направления улучшения решения, Хк - величина шага движения по направлению sk. Неравенство х > 0 для вектора х означает, что все компоненты х положительные.
Стартовая точка х0 > 0 может быть задана любым способом. Например, можно положить х/ = 1, ] = 1, ..., ".
Вспомогательная задача поиска направления улучшения решения. Вектор sk определяется как результат решения задачи минимизации квадратичной, сепарабальной строго выпуклой функции при линейных ограничениях равенствах:
(19) F (s) ^ min, As = rk,
где
1 n
(20) Fk (s) = cTs + - X (s} )2/d^
\2 I jk
~ X Vsj ' • dj 2 j=1
(21) rk = b - Axk,
dj1 - положительные весовые коэффициенты, удовлетворяющие при некоторых непрерывных функциях ä, ä неравенствам
(22) ä(xk) < dk <ä(xk), j = 1,..., n .
Для функции ä, ä должны выполняться условия: 0 < ä(a) < ä(a), У а > 0;
(23) ä(a) <Ma,
при любом а е (0, s] для некоторых s > 0, M > 0. В частности можно воспользоваться следующим правилом:
(24) dj = (xj)p, j = 1,...,n
при заданном p > 1.
Особая ситуация. Вспомогательная задача (19) может не иметь решения только из-за того, что несовместны ее ограничения. А это будет в том и только в том случае, если несовместна система линейных уравнений
(25) Ax = b .
Тогда X = 0. Ситуация несовместности системы (25) выявляется сразу же на нулевой итерации.
Представление вспомогательной задачи в виде проблемы безусловной минимизации квадратичной выпуклой функции. Применяя к вспомогательной задаче (19) метод множителей Лагранжа, получаем расчетные формулы:
(26) sk = dkgk, j = 1,..., n , где
(27) gk = g(uk),
(28) uk = arg min Фк (u), u е Rm,
- n m
(29) Фk(u) = -Xdk(gj(u))2-XrS .
2 j=1 i=K
Основной вычислительной проблемой является решение задачи безусловной оптимизации (28). Приравнивая градиент функции Фк к нулевому вектору, приходим к равносильной (28) проблеме поиска решения системы линейных уравнений с симметричной неотрицательно определенной матрицей:
(30) (ADkAT)u = ADkс + rk, где
(31) Dk = diagdk
- диагональная матрица размера n с коэффициентами dk на диагонали.
Векторы sk, gk приведенными правилами определяются однозначно. Неединственное значение может иметь только вектор uk, если rank A < m. Далее будем считать, что rank A = m, и поэтому вектор uk определяется однозначно из задачи (28) и системы (30).
Правило выбора шага. Сначала вычисляем значение
(32) 4 = У mm{-x;k /sk; j е J (sk)}
при заданном
(33) у е (0, 1) . Затем полагаем
(34) 4= min{1, 4}, если rk Ф 0;
(35) 1к = Хк, если rk = 0 .
Из (32), (34), (35) следует, что
(36) xk+1 > (1 -у)хк .
Поэтому, в силу (33), из неравенства x0 > 0 следует, что xk > 0 для всех k = 0, 1, 2, ....
Особая ситуация. Если J-(sk) = 0, то по правилу (32) нельзя вычислить Хк . В такой ситуации при гк Ф 0 следует предположить Хк = 1.
При = 0, т.е. когда Xе е X, возможны два случая. Если sk = 0, то X = X. Тогда g = 0. Векторы xk, uk будут находиться, соответственно, в riX и в riU . Вычисления заканчиваются.
Если sk Ф 0, то X = 0, так как sk е X . То есть имеем второй случай в теореме 1. По направлению sk можно неограниченно уменьшать значение целевой функции исходной задачи линейного программирования, не выходя из области ее допустимых решений.
Далее считаем, что рассмотренная особая ситуация не возникает и по приведенным правилам вырабатывается бесконечная последовательность векторов Хк, ик, ¿к.
Теорема 2. Для вычислительного процесса (18) выполняется равенство
(37) гк+1 = (1 )гк, к = 0,1, 2,...
Доказательство. Используя последовательно определение (21), рекуррентное соотношение (18), условие задачи (19) и снова определение (21), имеем:
гк+1 = Ь - Ахк+1 = Ь - Л(хк + 4sk) = Ь - Ахк -\Аък = гк - 4гк.
Что и требовалось установить.
Два этапа вычислительного процесса. Согласно правилу вычисления шага (32)-(35), если Г Ф 0, то Хк е (0, 1]. Из (37) следует, что абсолютные значения всех компонент вектора невязок ограничений равенств сократятся после итеративного перехода (18). Это означает, что рассматриваемый вычислительный процесс осуществляет ввод в область допустимых решений исходной задачи линейного программирования.
Причем если на данной итерации Хк = 1, то согласно (37) гк+1 = 0. То есть в таком случае Х+1 е X. Ввод в область допустимых решений будет осуществлен. Предметом дальнейших исследований в этой статье будет случай, когда Хк < 1 для всех к = 0, 1, 2, ....
Отметим, что если Г = 0, то согласно (37) на всех последующих итерациях вектор невязок ограничений-равенств будет нулевой. Будет происходить процесс оптимизации в области допустимых решений. Этот процесс был исследован для рассматриваемого здесь класса алгоритмов в [10, 12].
5. Сходимость процесса ввода в область допустимых решений
Далее будем исследовать процесс ввода в область допустимых решений не учитывающий целевую функцию исходной задачи. Полагаем
(38) с = 0 .
Рассматривается случай, когда на всех итерациях
(39) 0 < 1, k = 0,1,2,...,
(40) rk Ф 0, k = 0,1, 2,...
Непосредственно из (37), (39) следует, что существует вектор
(41) r = lim rk .
k ^ад
Причем у векторов Г при всех k один и тот же носитель. Более того, они имеют одни и те же наборы положительных и отрицательных компонент. На всех итерациях выполняются неравенства
rk > rk+1 > r > 0, i е J+ (r0), rk < rk+1 < r < 0, i е J- (r0).
При этом не исключается, что одно из множеств J+(r0) или J_(r0) может быть пустым. Не исключается ситуация r = 0 .
Эквивалентный вычислительный процесс. Положим
k-1
(42) ß0 = 1, ßk =П(1 -К), k = 1, 2,...
т=0
Из (39)следует
(43) ßk >ßk+1 >ß> 0, k = 0,1, 2,..., где
(44) ß = lim ßk .
k ^ад
Причем
(45) r = ßr0, rk = ßkr0, k = 0,1, 2,... Положим
(48) ^ £ (Sj )2 /dk ^ min, As = r0.
(46) ~k =± sk, ~ =ßkXk .
ßk
Итеративный переход (18) равносилен следующему
(47) xk+1 = xk +~ksk .
Из (19), (38), (45)-(47) следует, что вектор ~k является результатом решения задачи
1 n 2£Т
Причем согласно (21), (45), (46)
(49) rk+1 = rk -I,r0.
Следовательно
k-1
(50) rk = r0 -(£I)r0.
i=0
Доказательство первого из приводимых ниже вспомогательных утверждений имеется в [9, 10, 12]. Второе доказывается стандартно.
Лемма 1. В любом линейном многообразии L из Rn существует ограниченная область Q(L), которой принадлежит вектор
n
y(h) = argmin{£ h} (y} )2 : y e L}
j=i
при любых заданных весовых коэффициентах hj > 0, j = 1, ..., n.
Лемма 2. Если в итеративном процессе (47) величины I образуют сходящийся ряд, последовательность векторов {~s k } ограничена, то последовательность векторов {xk} сходится при k ^ да.
Из (48), учитывая, что dk > 0, j = 1,..., n , и из леммы 1 следует ограниченность последовательности векторов {~k} . Из (41), (50) следует сходимость ряда £1 . Из леммы 2 вытекает
Теорема 3. При выполнении условий (38)-(40) вычислительный процесс (18) вырабатывает сходящуюся последовательность векторов xk. Существует
(51) х = lim xk .
k ^ад
Поскольку Xk > 0, то X > 0 . При этом r = b — AX .
Заметим, что в полученном доказательстве сходимости последовательности векторов xk условие на выбор весовых коэффициентов в полной мере не использовалось. Использовался только факт положительности значений dk на всех итерациях.
6. Сходимость к стационарному решению
В данном разделе, используя более полно условия на выбор весовых коэффициентов, докажем, что вектор X вместе с величиной ß составляют стационарное решение задачи (13).
Вторая модификация вычислительного процесса. Пусть
k
вектор y и величина ak составляют оптимальное решение задачи
1 п
(52) -1 (yj )2/ dj -a^ min
2 j=1
при условии
(53) Ay -ar0 = 0. Из (48)следует
(54) yk =a~k, k = 0,1, 2,... Следовательно, при
(55) Pk =~k/ak итеративный переход
(56) xk+1 = xk + pkyk, k = 0,1, 2,...
будет равносилен (18) и (47). При этом, согласно (49),
(57) rk+1 = rk -pkakr0. В силу (41)
(58) lim Pkak = 0 .
k ^ад
Согласно (32), (34), (39), (46), (55)
- А
(59) pk = у min{ -j: j е J- (/)} .
y j
Двойственная к (52), (53) задача. Обозначим через hk, vk векторы из Rn, Rm, являющиеся решением следующей задачи оптимизации: 1 h
(60) - Xdk (hj )2 ^ min
2 j=i
при условии
(61) h - ATv = 0,
(62) (r0)To = 1.
Задача (60)-(62) является к двойственной к задаче (52), (53). Вектор hk состоит из множителей Лагранжа ограничений (53). В свою очередь вектор yk состоит из множителей Лагранжа ограничений (61), величина ak является множителем Лагранжа ограничения (62).
Из условий оптимальности для задач (52), (53) и (60)-(62) вытекают равенства
(63) yk = Dkhk ,
h
(64) X (У] )2/ dk =*k ,
j=i k
(65) X d] (h] )2 = % .
j=i
Из леммы 1, примененной к задаче (60)-(62), следует ограниченность векторов hk. Итак, при некотором Mi > 0
Щ <M, j = n, k = 0, 1, 2,...
В силу (63)
<M, j = 1,...,n, k = 0, 1, 2,...
У)
d.k
Вследствие ограниченности последовательности векторов [/] можем считать, что неравенство (23) при данном М > 0 выполняется для всех а из интервала значений компонент векторов Xе. Из условий (22), (23) следует, что
yj
dj 1
j >-—, j = 1,...,n .
My j MM1 В силу (59)
(66) pk>^—, k = 0, 1, 2,... k MM!
Из (58) получаем
(67) lim ak= 0 .
k ^o
Согласно (65)
n
(68) lim У dj(hj)2 = 0 .
k j j j
Из сходимости последовательность векторов {х^} и условия на выбор весовых коэффициентов (22), (23) следует ограниченность последовательности векторов {dк}. Следовательно, существует ограниченное множество их предельных при к ^ o значений. И, по условиям (22), (23), любой предельный при к ^ o вектор d этой последовательности обладает свойствами:
(69) dj > 0, если Xj > 0;
(70) dj = 0, если X} = 0 .
Из ограниченности последовательности векторов {hk} и условия rank A = m следует, в силу (61), ограниченность последовательности векторов {ик}. Это влечет существование предельных при к ^ o значений последовательности векторов {ик}. Пусть v - предельное значение некоторой последовательности векторов {ик} при к ^ o, к е K, K с {к = 0, 1, 2, ...}. Для данного вектора будет выполняться условие (62),
(71) (r °)tv= 1,
поскольку оно выполнялось для всех ик, к е K. Из (61) следует, что векторы h при к ^ o, к е K будут сходиться к значению
(72) h = ATV .
Из (68)-(72) следует, что вектор X и величина ß являются стационарным решением задачи (13).
>
Итак, в развитии теоремы 3 получили доказательство следующего утверждения.
Теорема 4. Вычислительный процесс (18) при выполнении условий (38)-(40) вырабатывает последовательности векторов Xе и величин ßk, сходящиеся при k ^ да к значениям X, ß, которые являются стационарным решением задачи (13).
7. Сходимость к оптимальному решению при условии невырожденности расширенной задачи
Предположение о невырожденности задачи (13) при r = r0 позволяет усилить приведенный выше результат. Из этого предположения вытекает единственность предельных значений последовательности векторов {uk}, {hk} в случае если ß > 0 : (73) lim hk = h ,
k ^да
lim vk = v .
k ^да
Предположим, что hj > 0 для некоторого j е J(h) . Согласно условию дополняющей нежесткости, j е Ja (X). Вместе с тем, в силу (73) начиная с некоторой итерации на всех последующих hk > 0. Из (63) следует, что на этих итерациях yk > 0. Из (56) получаем, что для данного j величина X ■ должна быть положительной, что противоречит ранее установленному.
Итак, доказано, что hj < 0 для всех j е J0 (X) . Поскольку
h ■ = 0 для j е J(X), то векторы h , v являются допустимыми и, следовательно, оптимальными решениями задачи (14) при r = r0. Векторы X и величина ß будут оптимальными решениями задачи (13) при r = r0.
Итак, доказана.
Теорема 5. Пусть для вычислительного процесса (18) выполняются условия (38)-(40), задача (13) при r = r0 невырожденная. Тогда последовательности векторов Xе и величин ßk
сходятся при к ^ да к значениям х, /, являющимися оптимальным решением задачи (13).
8. Замечания
1. При реализации изложенного здесь вычислительного процесса выполнение ограничений-равенств следует требовать только с некоторой точностью. Если при вычислении по правилу (21) вектора невязок ограничений-равенств при некотором малом £> 0 выполняется неравенство ||г к|| < £, то следует положить Г = 0 и, используя фактическое значение с Ф 0, начать осуществлять процесс оптимизации в области допустимых решений.
Согласно теореме 2, при точном выполнении всех вычислительных операций на всех последующих итерациях должно также выполняться неравенство ||г к|| < £ для вектора невязок, вычисляемого по правилу (21).
2. Из-за погрешности вычисления, в том числе при решении вспомогательной задачи выбора направления корректировки решения, абсолютные значения вектора невязок гк, вычисляемого по формуле (21) на этапе оптимизации, могут возрасти. Если возникает ситуация ||г к|| > £, то следует перейти к корректировке в область допустимых решений, полагая на этой итерации вектор Г равным его значению, вычисленному по правилу (21). При этом шаг Хк на данной итерации должен быть ограничен сверху единицей.
3. Представленное в данной статье теоретическое обоснование вычислительного процесса позволяет в какой-то мере объяснить, почему этот процесс должен приводить к вводу в область допустимых решений задачи линейного программирования. Это обоснование нельзя считать полным уже потому, что оно дано при предположении о невырожденности расширенной задачи ввода в область допустимых решений, хотя здесь используется одно из самых слабых определений невырожденности. Выполнение предположения о невырожденности трудно (практически невозможно) проверить априори. К тому же задачи
линейного программирования нередко имеют вырожденное стационарное решение.
Уместно отметить, что термин «стационарное решение» для ситуаций, аналогичных рассматриваемым в данной статье, был предложен Ю.Г. Евтушенко [5]. Стационарные решения можно интерпретировать как обобщение понятия «базисное решение», традиционно используемое при описаниях алгоритмов симплекс-метода. Используемое в данной статье условие невырожденности можно воспринимать как расширение условия невырожденности «базисных решений», используемых при обосновании алгоритмов симплекс-метода.
В качестве пояснений можно также отметить, что используемое определение невырожденности задачи (13) означает единственность оптимального решения двойственной задачи (14).
Заметим, что в приведенном обосновании нам потребовалась невырожденность только одного стационарного решения -пары X, / . Сходимость векторов хк и величин [вк к их предельным значениям, обладающим свойством стационарности, доказывается здесь без использования условия невырожденности.
Принципиально важным является обоснование алгоритмов без искусственных предположений о невырожденности. Такое обоснование для процесса оптимизации в области допустимых решений было дано в [9] для алгоритма с весовыми коэффициентами (24) при р = 1. В [22] было дано обоснование процесса оптимизации в области допустимых решений без использования предположений о невырожденности для алгоритма с весовыми коэффициентами (24) при р = 2 и при дополнительном ограничении уе (0, 2/3). В [11, 13] было дано обоснование для семейства алгоритмов с весовыми коэффициентами (24) для р е (0, 3] при уе (0, 2/(р + 1)]. В [11] ошибочно утверждалось, что данное обоснование справедливо при всех р > 1.
В результате указанных исследований алгоритмов с весовыми коэффициентами (24) были теоретически обоснованы важные свойства этих алгоритмов. В том числе доказано, что эти алгоритмы приводят к относительно внутренним точкам оптимальных решений и имеют линейную скорость сходимости,
причем для р > 0 асимптотически зависящую только от величины (1 - у). Получено обоснование ранее экспериментально установленного факта более быстрой сходимости двойственных оценок к относительно внутренней точки оптимальных решений двойственной задачи, чем скорость сходимости монотонно улучшаемых решений исходной задачи. Можно надеяться, что приведенные и другие интересные факты можно будет распространить на рассмотренный в данной статье процесс ввода в область допустимых решений алгоритмами с весовыми коэффициентами (24).
4. Приведенное здесь обоснование является не полным и потому, что не доказан факт сходимости пар хк, вк к относительно внутренней точке оптимальных решений расширенной задачи (13). Это важно, в том числе из-за того, что оптимизация в области допустимых решений задачи (1) обсуждаемыми здесь алгоритмами должна осуществляться в относительной внутренности этой области. Не получена также оценка скорости сходимости.
Рассмотрим подмножество алгоритмов, для которых при заданных весовых коэффициентов выполняется более сильное, чем (23) условие. Потребуем, чтобы при некоторых £ > 0, М> 0 для всех а > 0, в > 0, а < £, а / в < £ выполнялось неравенство
а (а) а
< М—.
а(Р) Р
Это условие выполняется и для весовых коэффициентов (24) при всех р > 1.
Анонсируем, отталкиваясь от результатов, приведенных в [10, 12], следующие дополнительные утверждения для алгоритмов с усиленным условием на выбор весовых коэффициентов:
1) предельные значения х, Р будут находиться в относительной внутренней области оптимальных решений задачи (13);
2) при некоторых К > 0, со е (0, 1) будет выполняться неравенство
\\хк - х\\ < Как .
Это неравенство означает линейную скорость сходимости по-
к
следовательности векторов хк.
5. Следует отметить также необходимость развития теоретического обоснования алгоритмов на случай, когда при вводе в
область допустимых решений учитывается целевая функция
исходной задачи, т.е. при с Ф 0.
Литература
1. ДИКИН И.И. Итеративное решение задачи линейного и квадратичного программирования // Докл. АН СССР. -1967. - Т. 174. - С. 747-748.
2. ДИКИН И.И. О сходимости одного итерационного процесса // Управляемость системы. - 1974. - Вып. 12. - С. 54-60.
3. ДИКИН И.И. Метод внутренних точек в линейном и нелинейном программировании. - М.: КРАСАНДР, 2010. - 120 с.
4. ДИКИН И.И., ЗОРКАЛЬЦЕВ В.И. Итеративное решение задач математического программирования: алгоритмы, методы внутренних точек. - Новосибирск: Наука, 1980. -144 с.
5. ЕВТУШЕНКО Ю.Г. Методы решения экстремальных задач и их применения в системах оптимизации. - М.: Наука, 1982. - 432 с.
6. ЕРЕМИН И.И., МАЗУРОВ В.Д., АСТАФЬЕВ Н.Н. Несобственные задачи линейного и выпуклого программирования. - М.: Наука, 1983. - 336 с.
7. ЕРЕМИН И.И. Теория линейной оптимизации. - Екатеринбург: НММ УрО РАН, 1998. - 312 с.
8. ЗОРКАЛЬЦЕВ В.И. Итеративный алгоритм решения задачи линейного программирования // Алгоритмы и программы решения задач линейной алгебры и математического программирования. - Иркутск: СЭИ СО НА СССР, 1998. - С. 77-89.
9. ЗОРКАЛЬЦЕВ В.И. Относительная внутренняя точка оптимальных решений. - Сыктывкар: Коми филиал АН СССР, 1986. - 48 с.
10. ЗОРКАЛЬЦЕВ В.И. Методы прогнозирования и анализа эффективности функционирования системы топливоснабжения. - М.: Наука, 1988. - 144 с.
11. ЗОРКАЛЬЦЕВ В.И. Обоснование семейства проективных алгоритмов (процесса ввода в область допустимых решений и оптимизации в допустимой области). - Иркутск, СЭИ СО РАН, 1995. - 34 с.
12. ЗОРКАЛЬЦЕВ В.И. Обоснование алгоритмов внутренних точек // Журнал вычисл. матем. и матем. физики. - 1999. -Т. 34, №2. - С. 208-221.
13. ЗОРКАЛЬЦЕВ В.И. Класс алгоритмов внутренних точек // Журнал вычисл. матем. и матем. физики. - 2009. - Т. 49, №12. - С. 1-18.
14. ЗОРКАЛЬЦЕВ В.И., КИСЕЛЕВА М.А. Системы линейных неравенств (уч. пособие). - Иркутск: ИГУ, 2008. - 140 с.
15. РОКАФЕЛЛАР Р. Выпуклый анализ. - М.: Мир, 1973. -469 с.
16. ФИЛАТОВ А.Ю. Развитие алгоритмов внутренних точек и их приложение к системам неравенств. - Дисс. на соискание ученой степени канд. физ.-матем. наук. - Иркутск: ИГУ, 2001. - 124 с.
17. BARNES E.R. A Variation on Karmarkar's Algorithm for solving linear problems // Report. - IBM Boston Research Centre. -May, 1986.
18. KARMARKAR N.A. New Polynomical Time Algorithm for Linear Programming // Combinatorica. - 1984. - №4. -P. 373-395.
19. MITCHELL J.E., TODD M.J. On the Relations in the Affine and Projective Variant of Karmarkar's Linear Programming Algorithm: Technical Report. - Ithaca: School of Operat. Res. Industr. Eng. College of Engineering Cornell Univ. - 1986. -№4.
20. VANDERBEY R.J., MECHETOV M.S., FREEDMAN B.A.
A modification of Karmarkar 's Linear Programming Algorithm. - Holmdel, NJ: AT&T Bell Laboratories, 1985.
21. WEI ZI-LUAN. An interior point Method for Linear Programming // Journ. Comput. Mathematics. - October, 1987.
22. TSUCHIYA T. Global convergence of the affine scaling methods for degenerate linear programming problems // Research Memorandum. - No. 373. - Tokyo: Institute of Statistical Mathematics, 1990. - 34 p.
OF ENTERING INTO THE FEASIBLE SOLUTIONS REGION THE INTERIOR POINT METHOD
Valery Zorkaltsev, Valeriy Zorkaltsev, Melentiev Energy Systems Institute SB of RAS, Doctor of Science (Irkutsk, Lermontov St., 130, vizork@mail.ru).
Abstract: The interior point algorithm for a linear programming problem is considered. This algorithm consists of two stages. On the first stage we enter to the region of feasible solutions given the specified constraints. The second stage is optimization over the feasible region. The entering into the feasible region is represented as an extended linear programming problem by adding only one new variable. The main goal of the paper is to provide a theoretical justification of the process of entering into the feasible region under assumption of non-degeneracy of the extended problem.
Keywords: interior point method, linear programming.
Статья представлена к публикации членом редакционной коллегии М.В. Губко.
Поступила в редакцию 14.09.2015.
Опубликована 31.12.2016.