Методы оптимизации
УДК 519.3
В.Г. Овчинников
АЛГОРИТМ ТИПА ПОКООРДИНАТНОГО СПУСКА НА ОБЛАДАЮЩЕМ СВОЙСТВОМ УСИЛЕННОЙ ЗАМЕНЫ МНОЖЕСТВЕ ТОЧЕК КООРДИНАТНОЙ РЕШЕТКИ
Для задачи минимизации сепарабельной координатно-выпуклой функции на конечном и обладающем свойством усиленной замены множестве точек координатной решетки предлагается и обосновывается алгоритм типа покоординатного спуска.
Введение. В настоящей работе продолжены исследования работ [1-4]. Для нахождения решения основной задачи (задачи минимизации сепарабельной координатно-выпуклой функции на конечном и обладающем свойством усиленной замены множестве точек координатной решетки) рассматривается семейство вспомогательных задач, устанавливаются лемма о связи между оптимальными решениями этих задач (аналог леммы 1 из работы[5]), лемма о соотношениях между их оптимальными значениями (аналог леммы 2 той же работы) и с помощью этих лемм показывается, как эффективный (в терминологии для матроидов [6] - «жадный») алгоритм покоординатного спуска и подход к его обоснованию для задачи [5] используются в их некоторой модификации для основной задачи.
Определения. В дальнейшем будут использоваться обозначения и терминология работ
[1-4].
Под координатной решеткой (Г, р) понимается множество {(х^ . . . , Хп): х е Г, ". е с отношением порядка, определяемым условием: (х1,...,хп) Р (у1,...,уп) тогда и только тогда, когда х. р. у. , V/ е N = {1,2,...,п}, где Г - цепь с отношением порядка р ., в которой конечны все интервалы [а., ]= {х. е Г. : а. р. х. р. }, т.е. | [а., ]| <¥. Следовательно, для всякой точ-
ки х = (х1,...,хп) решетки и любого индекса у е N, если элемент х'у не минимален, существует единственная точка т}- (х) = (хгТу,..., хпТу), где х*у = х1 при . Ф у и х у - элемент, непосредственно предшествующий ху в цепи Гу , а если ху не максимален - существует единственная точка ж у (х) = (х,^у,..., хж), где хРу = х. при . Ф у и хр - элемент, непосредственно следующий за ху в цепи Гу
Сепарабельной координатно-выпуклой функцией (СКВФ) называем заданную на множест-
п
ве точек решетки р) функцию Д(х) = ^ Д (х.), для которой всякий ее . - градиент
.=1
Д(ж. (х)) - Д(х) не убывает при переходе от х к точке ж. (х).
Лемма 1. Для СКВФ Д(х) выполняются следующие условия:
^у ^ Уу Р у^у ) ^ (У;Ру)- (У} ^ ^ )- Ду ^у^, ^ ^ е ^ ^ е N .
Доказательство. Из условий Уу ,Лу еГу, Лу ФУу РуЛу следует, что Уу не максимален в Гу и
уЖ е Гу, Лу не минимален в Гу и е Гу, |[у;-,Лу]|> 2.
При | [уу, Лу ]| = 2 из определения уЖ имеем У ужу Ф У у Р у У ужу Р у Л у и поэтому У у11 = Лу , а
из определения Лу1 имеем Уу Ру Лу1 Ру Лу Ф Лу^1 и потому Лу^1 = Уу . Отсюда следует, что при к = 1 установлена справедливость следующего предложения.
Предложение Т(к). Для СКВФ Д(х) выполняются следующие условия:
(уу Р уЛу ) л([уу , Лу ]| = к +1) ^ Ду (у/)- Ду (уу )£ Ду (лу )- Ду "Уу , Лу е Гу , "у е N .
= т +1.
У, Уу ] я Уу ]| = т +1 , ^е Гу .
Выбирая натуральное т , для которого справедливо Т(т), азатем полагая к = т +1 и выбирая по произволу индекс у е N и элементы ху, у у е Гу из условий
х] Р у У у, |[х;, У] ]| = к +1 = т + 2, покажем, что Д. (х/у)- Д (х. )< Д (уу)- Д (у/У), т.е. установим справедливость предложения Т (т +1) и, таким образом, по индукции, получим лемму.
Из условий выбора ху, у у е Гу, т.е. из соотношений ху Р у у у, | [ху-, у у ]| = т + 2, следует, что
хУ Ф уу, У е Г], х]ж Ф хУ Р ] х]ж Р ] у], |[ху, уу ]| =1 + |[хЛ уу ]| ,
Положим zJ = хуЛу . Из предыдущего абзаца имеем ^Р ууу ,
Отсюда с помощью предложения Т(т) , справедливого по выбору т, получаем
Ду (Уу)- ду (?у )£ Ду (уу )- Ду (у/у).
Из равенства zJ = хуж и определения Д(х) имеем
Ду У )- Ду(х]) < Ду У )- Ду (г у).
Отсюда и из предыдущего неравенства следует требуемое неравенство. Лемма доказана. Аналогично проверяется и следующая лемма.
Лемма 2. Если точки у решетки (Г, р) и индексы у , к удовлетворяют включениям у е I(у,л), к е I(л,у) , то у Ф к и равенства ху = Ууж, хк = Укт, хх = ух , "5 е N\ {у , к}, покоординатно задают такую точку х решетки (Г, р) , что х = ж у (тк (у)) .
Свойство усиленной замены. Для множества Q точек решетки (Г, р) следующее свойство замены - это усиленный вариант известной аксиомы Штейница о замене (см. 6.10 (И) [7]): для любой пары х,у различных точек множества Q и всякого индекса у е I(х, у) = { . е N: х. Р. у., х. Ф у.} найдется такой индекс к е I(у, х), что ж у (тк (х)) е Q и
жк (т. (у)) е Q .
В случае, когда решетку (^ р) образуют булевы п - векторы, этим свойством обладает множество Q характеристических векторов баз в матроиде М(Ы) (ср. с упражнением У1.1.9 на странице 312 [7]).
Задача А. Основной задачей настоящей статьи является следующая задача.
При предположениях, что Д(х) есть СКВФ, а множество Q точек решетки (Г, р) является конечным и обладает свойством усиленной замены, требуется минимизировать Д (х) на множестве Q, т.е. найти такую точку х е Q , что Д(х) = т.п{Д(у): у е Q}.
Для нахождения решения этой задачи рассмотрим семейство вспомогательных задач следующего вида.
Задача АтХь (от). Для индекса т собственного подмножества Ь с N\ {т }, точки х множества Q и параметра ат е РтхЬ ={ут : у = (у1,...,уп) е Q, . е Ь ^ у. = х, V. е N} названная
вспомогательная задача формулируется следующим образом.
При предположениях задачи А требуется минимизировать Д (х) на множестве
QmX£ (ат) = {(у1 ,...,уп) е Q :ут = °т,. е Ь ^ у. = х{, V. е N }, т.е. найти такую точку
Л е ^ (°т ) , что Д (Л) = ¥шЬ (°т ) , где (ат )= в ): у е ^ (<Тт )}.
Лемма 3 (ср. с леммой 1 [5]). Если для функции Д(х) и множества Q точек решетки (Г, р) выполняются предположения задачи А, х - точка множества Q, а индекс т е N и подмножество индексов Ь удовлетворяют строгому включению Ь с N \ {т }, то справедливы следующие предложения о связи между решениями вспомогательных задач:
1. Если параметр гт е РтХЬ и точка л е QmX£ (гт) удовлетворяют равенст-
ву Д(л) = ¥Хь (гт), и, кроме того, выполняется включение г Т е Рт Ь , то найдутся такой индекс у е N и такая точка у е Q, что
у е Q Хь (ст Тт ), Д (у) = Е (ст Тт ), у. = Л ж , у = Л Тт , у = Л , "5 е N \ {], т}, т Ф ] £ Ь .
^т \ т /’ ^ ' т \ т /’ у у ’ т т ’я я7 V7 ^
2. Если параметр гт е РтХЬ и точка Л е QXL (гт) удовлетворяют равенст-
ву Д ( л) = ¥Хь (&т), и, кроме того, выполняется включение & ж е РтХЬ , то найдутся такой индекс у е N и такая точка у е Q, что
у е Q Хь (и ж ), Д(у) = Е Хь (г Лт ), у . = л Ту , у = л Лт , у = л , "я е N \ {], т}, т Ф ] £ Ь .
х-'т \ т ' тут/’] у ’ т т ’я я’ I/’ ^
Доказательство. При условиях леммы докажем, что справедливо предложение 1 (справедливость предложения 2 доказывается аналогично).
Из условий леммы имеем л е QmXL (гт), Д(л) = ЕтХЬ&т ), гтТт е РХь . Из последнего включения следует, что множество QmXL &тТт) является непустым. Из этого множества, как подмножества конечного множества Q,, выберем такую точку и е QmXL (гтТт), что Д(и) = Е Хь (г Тт ).
тт
Из включений и е Q %Ь (г Тт ), л е Q %Ь (г ) имеем и е Q, л е Q , и = г Тт , л = г . Отт т т т т т т т
сюда (по определению гтТт ) получаем ит Ртлт Ф ит, т е I(и,л), и Ф л . Так как по условиям леммы множество Q обладает свойством усиленной замены, то для различных точек и , л множества Q по индексу т е I(и,л) найдется такой индекс у е I(л,и), что ж> т (Т] (и))е Q ,
жу (Тт (л))е Q . Заметим, что из включений и е QmXL (¡Гтт ), Л е QmXL (гт) следует также, что у,т £ Ь . Полагая здесь у = ж (тт(л)), у = жт(гу.(и)), с помощью леммы 2 находим:
у. = л Пу, у = л Тт , у = л , у. = и Ту, у = и Пт , у = и , "я е N \ {], т}, т Ф ] £ Ь . (1)
у у 7 т т ’ я я ^ ^ у у 7 у т т ’ ^ я я’ V 7 /5 ^ ч/
Из (1) с помощью равенств и = г Тт , л = г (имеющихся по выбору и и л), равенства
т т т т
жт
ит т = Гт , вытекающего из них, как при доказательстве леммы 1, получаем у. = л Жу , у. = и Ту , у = г Тт = и , у = г = л , у = л , у = и , "я е N \ {], т}, т Ф ] £ Ь .(2)
у У У У т т т ’ ^ т т т 7 я я7 ^ V7./’ ^
Поэтому у е QmXL (гтТт ), у е QmXL (гт). Отсюда непосредственно, т.е. с помощью определений
’е Q Хь (г т т ), у е Q х\- .
•2-'т \ т г ^ ^т \ т)
Е Хь (г тт) и Е Хь (г ), следует Д(у) > Е (г т т ), Д(у) > Е (г ), и, таким образом, с учет \ т / т \ т / •' ^ \ ' т \ т ^ ' т \ т/7 ’ г ? J
том выбора точек и и л имеем
Д (У) > (^тТт )= /(и) . Д(у) > ЕтХ‘ (г„)= Д(л). (3)
Отсюда и из (1) следует, что для доказательства леммы достаточно получить неравенство
Д(у) < Д(и). (4)
По выбору функции Д (х), используя (2), получаем
Д(У) = Д(Л) + Ду (уу )- Ду (лу )+ Дт (ут )- Дт (лт ) = Д(л) + Ду (л^^ )- Ду (лу )+ Дт (с7т ^ )- Дт (с7т )'•
Отсюда, используя неравенство Д (л) < Д (у) , имеющееся в (3), с помощью (2) получаем
Д(у) < Д(у) + Ду )- Ду (л] )+ Дт (гтТт )- Дт ((Тт ) = Д(и) + Ду ^] )- Ду (<У )+ Дт Ьт )- Дт ^т ) +
+ Д] (л] жУ )- Д] (ЛУ ) + Дт (гтТ т )- Дт (гт ) = Д(и)+ Д] («уТ У )- Д] (<У )+ Дт (гт )- Дт (гтТ” )+
+ Д] (лж )- Д] (Лу )+ Дт (гтТт )- Дт ((7т ) = Д(и) + Д] (и]Т )- Д] (и] )+ Д] )- Д] (лу ) .
Таким образом, имеем
Д(У)£ Д(и)+ Д] (и/])- Д] (и] )+ Д] (л(ж )- Д] (Л] ).
Замечая теперь, что индекс у выбирался из включения у е I(л,и), т.е. условий л . Р . и . Ф л .,
с помощью леммы 1 получаем Д.)- Д]■ (л)< Д. (и.)- Д. (ир ) . Отсюда и из предыдущего
неравенства следует требуемое неравенство (4). Лемма доказана.
Лемма 4 (ср. с леммой 2 [5]). Если для функции Д(х) и множества Q точек решетки (Г, р) выполняются предположения задачи А, х - точка множества Q, а индекс т и подмножество индексов Ь удовлетворяют строгому включению Ь с N \ {т }, то (гт) является выпуклой
функцией параметра г т е РтХЬ, т.е.
(в Р о Фв )л([|9 ,о ]с Р Хь Е Хь [в жт )-Е Хь (в )< Е Хь (о )-Е Хь [о тт ) , "в ,о е Г .
V т т т т/ Н т7 т J— т / т \ т / т \ т/ т \ т/ т \ т /7 т7 т т
Доказательство. Для доказательства леммы достаточно убедиться, что разность Е Хь (в Пт )-Е Хь (в ) не убывает при переходе от параметра в е Р к параметру в Пт е Р
т \т / т \ т/ ^ г г ^ г г т т г г* т т
(поскольку с помощью этого свойства заключение леммы получается аналогично доказательству леммы 1).
Полагая г = в Пт и, следовательно, получая в = г Тт , выразим указанное свойство с пот т 7 у ^ т т ’ г ^
мощью неравенства Е х (г )- Е (г Тт )< Е (г Пт )- Е (г ) или равносильного ему нера-
г т \ т/ т \ т / т \ т / т \ т / г г
венства Е Хь (г Жт )- 2Е Хь (г )+Е Хь (г Тт )> 0 ,предполагая, что {г Тт ,г ,г Жт }с Р , т.е.
т \ т / т \ т/ т \ т / г ’ \ т 7 т7 т 7— т ’
при предположении, что множества Q Хь (г Тт ), Q Хь (г ), Q Хь (г Лт ) не пусты. Таким обра-
1 1 ’ ^т \ т /’ ^т \ т/ ’ \ т / -1 1
зом, для доказательства леммы достаточно при указанном предположении получить неравенство
Е ^ [г жт )- 2Е Хь (г )+Е Хь [г тт )> 0 . (5)
т \ т / т \ т/ т \ т / 4 '
Поскольку множество Q Хь (тт) является подмножеством конечного множества, найдется такая точка л е Q Хь (г ), что Д(л) = Е Хь (г ).
\ т/7 и \ / т \ т/
По предложению 1 леммы 3 найдутся такой индекс у е N и такая точка у е Q, что
у е Q (г Тт ), Д (у) = Е Хь (г Тт ), у. = л ж , у = л Тт , у = л , "я е N \ {], т}, т Ф ] £ Ь . (6)
^т ут/’^'7 тут / ] ] т т ’ я я7 V7 ^ ч/
По предложению 2 леммы 3 найдутся такой индекс к е N и такая точка и е Q, что
и е Q Хь (г Пт ), Д(и) = Е Хь (г Пт ), и, = л,Тк , и = л Пт , и = л , "я е N \ {к,т}, т Ф к £ Ь . (7)
•^т \ т / ’ ^ т \ т / к к ’ т т 7 я я7 V7./’ ^ ч/
Поэтому
(ГТт ) - 2 ЕтХЬ (Г т ) + Е„ХЬ (Гт"т ) = [ Д(У) - Д(^) ] + [ Д(и )-ДМ ] =
= [ Ду (л] жу )- Ду (л] )+ Дт (лтР )- Дт (л т ) ] + [ Дк )- Дк (лк )+ Дт (лт^ )- Дт (л т )] =
= [ Ду )- Д] (л] )] + [ Дк (лкТк )- Дк (лк ) ] + [ Дт (лт^ )- 2 Дт (Лт )+ Дт (лт^ )] .
Поскольку здесь слагаемое [ Д (л Тт )- 2 Д (л )+ Д (л ж )] неотрицательно по выбору
^ ь ^ т\ т / т\ т/ т\ т /л г г *
функции Д (х), из предыдущего выражения получаем следующее неравенство
Е Хь [г тт ) - 2Е Хь (г )+Е Хь [г жт )> Д.)- Д.(л )+ Дк [лкТк)- Дк (л. ). (8)
тут/ т \ т / тут/ ] \ ] / ]\ ] / ''кук/'-'кх к / ч/
Поскольку при ]=к правая часть этого неравенства неотрицательна по выбору функции Д (х), то в этом случае требуемое неравенство (5) и лемма очевидны. Поэтому считаем , что у Ф к, и с учетом этого равенства (6) и (7), представляющие по координатам точки и и у , перепишем в следующем виде.
у . = ■>, у,_ = , Ут = ”, у„ = , "я е N \ {у, к, т}, у Ф к ФтФ у.
ж. Т
У = ,У . 1 , У = Л , У = Л т , У = Л ,
у ] к к ’ т т 7 я я7
и у = л , и,_ = л/' , ит = л.,.'" ”, ия = е N \ {у, к, т}, {у, к, т}П Ь = 0. (9)
Из этих равенств и определений I (у, и), I (и, у) последовательно получаем:
{т}с !(у, и), {у, к}с I(u, у) , !(у, и)П I(u, у)=0, {т}= I(y, и), {у, к}=I(u, у) .
С помощью этих равенств по свойству усиленной замены множества Q для различных точек и и у, выбранных из условий (6) и (7), по индексу у е {у,к}= I(и,у)находим такой индекс I е I(у,и) = {т}, что ж . (тт (и )) = ж . (т1 (и))е Q. Полагая у = ж . (тт (и )) , по лемме 2 имеем:
у, = и,ж , ук = ик ,ут = итТт , уя = ия, " е N\{у,к,т}, {у,к,т}ПЬ = 0. (10)
;ти (8). Из (9) и (10) имеем: у . = и 1 = л 1, у = и = Л к , у = и ‘т = л , у = и = л , "я е N \ {/,к,т}. (11)
, / / ’ ^ к к к ’ ^ т т т 7 ^ я я я7 V 7 7 / ч/
ж, т
, . - ~ . 1 , у, = и. , у = и ' , , - ^
/ / ’ к к ’ "т т ^ у я я
Покажем теперь, неотрицательность правой части (8). Из (9) и (10) имеем:
ж, ж, Т к Т
. 1 = л . 1, у = и = Л, к , у = и ‘
/ / / к к к ’ ^ т т т 7 ^ я я я
С помощью этих равенств из включения л е QmXL (гт ) и равенства {у,к, т}П Ь = 0
,т П Ь = 0 следует,
что у е QmXL (гт). Отсюда по выбору л имеем Д(у) > Д(л). С помощью этого неравенства из (11) по выбору функции Д(х) следует Ду (У)- Ду (л/)+ Дк(лр)- Дк(лк) = Д(у) - Д(л) > 0.
Теперь из (8) вытекает требуемое неравенство (5). Лемма доказана.
Из доказанных лемм вытекают следствия.
Дополнительные обозначения. Ниже используются следующие обозначения:
Е ={у е N : у £ Ь, у Ф т, Я, (Т/ (х))е Q}, Л,1 = Д/ {хР )- Д/ (х/ )+ Дт (хтПт )- Д, (х, ),
Е&Т ={еЕ :лр <°} ,
ЕЛ ={е N :у £ Ь,у Ф т,ж/(тт (х))е Q}, Л/Л = Дкх? )- Д/(х/ )+ Дт (х т т )- Дт (хт ),
Елж = {/еЕж :Л/Л <0} ,
Следствие 1. Если х - решение задачи А Хь (х ), то Е ,Т Ф 0^ Е Хь (х )> Е Хь (х Пт ),
т т Л т т т т
Елж Ф 0^ ЕХь (х )> ЕХь [х Тт )
Л т \ т / тут/
Доказательство. Из включения у е ЕЛ , т.е. условий у е N, у £ Ь, у Ф т,ж; Дт. (х))е Q ,
Д/ (х/Т )- Д/ (х/)+ Дт (х т т )- Дт (хт)< 0, следует д(ж т (т/ (х)))< Д(х) = ^ (xm), и поскольку
у £ Ь , т £ Ь , то жт(р..(х))е QmXL [хтЛт ) и потому ЕтХь [хтЛт )< Д{жт(р(х))) и, следовательно,
Е Хь (х Лт )< Е Хь (х ). Этим получено первое заключение следствия и так как второе - получат т т т
ется аналогично, следствие доказано.
Следствие 2. Если х - решение задачи А,Хь (хт), то из множеств ЕЛТ ,Елж непустым может быть только одно.
Доказательство. Из допущения ЕЛ Ф0ФЕЛжпо следствию 1 имеем
Е Хь (х Пт )- 2Е Хь (х )+ Е Хь (х Тт )< 0 вопреки лемме 4. Следствие доказано.
т т т т т т
Задача А ь .При предположениях задачи А требуется минимизировать Д(х) на множестве
хЬ ( ) хЬ
Q ={(у1,...,уп) е Q :,. е Ь ^ у = х ,". е N }, т.е. найти такую точку л е Q , что
Д (л) = тт^Д (у): у е Q
Следствие 3. Если х - решение задачи А,Хь (хт) и ЕЛТ =0= ЕЛж, то х - решение
АХЬ
задачи А .
Следствие 4. Если х - решение задачи А,Хь (Xт) и ЕЛ =0, то х - решение задачи миними-
Хь
зации Д(л) при условиях л е Q , х Р л .
ттт
Следствие 5. Если х - решение задачи А,Хь (хт) и ЕЛж =0, то х - решение задачи миними-
хь
зации Д(л) при условиях л е Q , л Р х .
-^’ттт
Замечание. С помощью лемм 3, 4 и следствий 1-5 обосновывается следующий алгоритм для нахождения решения задачи А.
Алгоритм а(х°,ф).В приводимом ниже описании используются: х - стартовая точка
множества Q,, (р - задаваемая на множестве всех подмножеств из N функция выбора из каждого подмножества его элемента.
Ш а г 1. Положить х=х , Ь =М{ ) }, 1=2.
Ш а г I.
Подшаг 0. Если =п+1 (Ь=0), объявить х искомым решением и остановиться.
В противном случае положить т=р(Ы) и заменить Ь на Ь\{т}; сформи-
JT t J—? Р
ровать множества ЕА , ЕА .
Если Е&Т =0 л Е&п =0 идти на Увеличение t .
В противном случае: при Е&т Ф0 положить 1=t
при Е&п Ф0 положить 1=p, m=t; положить к=1.
я
Подшаг к. Сформировать множество Е .
я
Если Е =0, идти на Увеличение t.
я я я I
В противном случае положить M = min D. : j е Е i.
я
Если M > 0, идти на Увеличение t.
я я я
В противном случае определить индекс i из условий i е Е , А. = M
я. и
заменить х. на х. 1 , x на x '
г г ’ m m
увеличить к на 1.
m
Увеличение ґ. Заменить ґ на ґ+1.
Справедливо следующее утверждение.
Теорема. При предположениях задачи А алгоритм А^х ,ф ] находит ее решение х из любой стартовой точки х при всякой функции выбора ф.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Емеличев В.А., Овчинников В.Г. Симметричные суперматроиды / Докл. АН БССР, 1983. Т. 27. № 5. С. 389-391.
2. Емеличев В.А., Овчинников В.Г. К теории экстремума на координатных решетках // Докл. АН БССР. 1983. Т.27. № 7. С. 581-583.
3. Овчинников В.Г. Об одном свойстве подмножеств координатной решетки, на которых локальный и глобальный экстремумы координатно-выпуклой функции совпадают // Изв. АН БССР. Сер. Физ.-мат. науки. 1984. № 5.
С. 113 / Ред. журнал «Изв. АН БССР. Сер. Физ.-мат.н.» Минск.1983. 6с.: Библ. 4 назв. Рукопись деп. в ВИНИТИ 09.01.84 № 245-84Деп.
4. Емеличев В.А., Овчинников В.Г. К теории оптимизации на антицепях, обладающих свойством замены Швейни-ца // Кибернетика, 1985. № 2. С. 55-58.
5. Овчинников В.Г. Об одной задаче целочисленного программирования // Кибернетика, 1976. № 1. С. 131-135.
6. ПападимитриуХ., Стайглиц К Комбинаторная оптимизация. Алгоритмы и сложность. М: Мир, 1985. 512с.
7. Айгнер.М. Комбинаторная теория. М.: Мир,1982. 556 с.
Поступила 24.12.2003 г.