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

книги из ГПНТБ / Методы оптимизации в статистических задачах управления

..pdf
Скачиваний:
19
Добавлен:
20.10.2023
Размер:
8.04 Mб
Скачать

где параметр р > О характеризует размер шага. Значение шага выбирается экспериментально. В алгоритме (274) существенное значение имеет выпуклость функций Ft (х), 1 = 0, 1, 2, . . ., т. В общем случае метод может не иметь сходимости. Иногда удается задачу с невыуклыми функциями Ft (х) свести к задаче с выпук­ лыми функциями путем эквивалентной замены исходных огра­ ничений:

 

Ft (х) < 0 ,

і = 1 , 2 , . . . , т

 

системой

ограничений

 

 

 

 

 

 

 

Ф,- (F i (*))

о,

 

если для

скалярной функции

ф,- (у)

удовлетворяются условия:

Фі (У)• < 0 при у <

0;

[у) =

0 при у = 0; фг (у) >

0 при у >

> 0, і — 1, 2, . . . .

т.

Функции ф,- {у) выбираются

из условия

выпуклости Fi {х) = ф; (F{ (х)).

Другой вариант градиентного метода был предложен Удзава [115]. В этом методе используется условие оптимальности (271), исходя из которого можно определять оптимальное решение как

решение максиминной задачи:

 

L (X (А,), Л) =

min L (X, А);

 

X

L (х А+), А+) = max L (х (А,), А) = max min L (х, А);

1 > 0

% > 0 X

х+ = х(А+).

Метод Удзава удобно применять, когда с помощью аналити­ ческих методов нетрудно вычислить минимум значения L (х, А) по X в функции параметра А, т. е. функцию

L (X (А), А) = min L (х, А).

X

Значение А+ определяется как предел решения системы диф­ ференциальных уравнений:

~jj~ — 1 ( Ц д1(хдх : Л ) = 1 ( Ч р і (*

(*•));

X/ (і0) > 0,

/ = 1, 2 , . . ., т;

 

А+ =

lim А (t).

 

 

t~>со

 

Соответствующая итерационная процедура имеет вид:

А/+1 = max (0, Xl,+1 + pF; (* (А*))};

Х°і^0, j =

1, 2, . . ., от;

(275)

L (х (АО, АО = min L (х, АО;

 

X

 

А+ = Нт АО х+ = х (А+).

і-> со

117

Реализация метода по указанной процедуре оказывается слож­ нее, чем по процедуре (274), так как в методе Удзава на каждом шаге необходимо решать задачу максимизации функции L (х, К1) по х. Однако этот метод не требует условия выпуклости функций F{ (х) (і = 0, 1, 2, . . ., т). Аналогичный метод предлагался [84].

Следует обратить внимание, что в работе Удзава [115] доказы­ вается сходимость дискретных методов только при достаточно малом значении параметра^.

Метод Эрроу-Гурвица и метод Удзава являются по существу градиентными методами определения седловой точки для функции Лагранжа L (х, X).

В работе Розена [144] предлагается метод проектирования градиентов, который обобщает градиентный метод на случай минимизации функций при наличии ограничений. При изложении метода мы будем следовать в основном работам [67, 72]. Рассмо­ трим вначале случай ограничения типа равенства. Пусть требуется минимизировать F0 (х):

F0 (х+) =

min F0 (х),

 

где область D задана системой нелинейных соотношений

 

Фг (х) = 0; і = 1,

2, . . ., т; т < п.

(276)

Зададимся точкой начального приближения х°, причем вполне возможно, что ф (х°) ф 0. Обозначим через 6л; приращение аргу­ мента. Линейная часть приращения функций F0 (х) и <р (х) будет иметь вид:

F0(х® +

6х) - F0(х°)« £

6х/;

(х° +

6х) — ф, (х°)«* ^

д^ х ) Ьх/\

 

/=1

'

і = 1, 2 , . . ., т.

Наложим ограничения на квадрат модуля вектора 6х и опреде­ лим вектор 6х из условия минимума линейного приращения функ­ ции F о (х) при ограничении в виде заданной линейной части при­ ращения вектора ф:

 

 

А8х = 8ф,

(277)

где через

А

обозначена матрица [т, п]

с элементами {А)ц =

_

_ ß

качестве величины бф можно выбрать —ф (х°) или

118

—УФ (л:0), где 0 < у < 1 . Итак, будем определять вектор бх из условия

{ д Г ~ )

8х==тт>

 

(бл;)* бх = с;

_

Лбх =

бф.

 

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

бх = б]Х + б2х =

t (Е - А* (АА*)-1 А) -dF°d(f

) ■+

 

+ А* (АА*)-1бф,

(278)

6jX = t(E

А*(АА*)~1А) дР(,д{х0) ;

(279)

б2х = А* (АА*)-1 бф;

(280)

Е — единичная матрица.

Параметр t в выражении (278) определяется из условия фикси­ рованной длины вектора бх:

(бх)* бх = с.

Приращение бхх называется градиентной составляющей при­ ращения, б2х — компенсационной составляющей приращения. Эти названия объясняются тем, что справедливы равенства:

y46jX = 0, Лб2х = бф.

Пользуясь выражениями (279) и (280), легко показать, что составляющие приращения бх взаимно ортогональны:

2х)* бхх = (бф)* (АА*)-1At (Е — А* (АА*)-1 A)

=

- (бф)* t [ (A4*)-1 А (АА*)-1 АА* (АА*)-1 A]

= 0.

1 Приращение б2х направлено на уменьшение расхождения в выполнении ограничений (276), а бхх смещает точку в сторону уменьшения функции F 0 (х). Наличие составляющей б2х может привести к увеличению значения функции Е 0 при конечных зна­ чениях параметра t, так что в общем случае метод не является монотонным.

В процессе выполнения итерации необходимо задаваться зна­ чениями t и бф. Вначале рекомендуется [72] при t = 0 прибли­ зиться к ограничению ф (х) = 0, не добиваясь точного его выпол-

119

нения, если функция ф (х) нелинейная, так как в последующих итерациях это равенство будет нарушаться из-за криволиней­ ное™ поверхности ф (х) = 0. Затем совершается несколько шагов при бф = 0 в направлении проекции градиента на плоскость, ка­ сательную к ограничениям. Параметр t может выбираться по ана­ логии с методом наискорейшего спуска. По-видимому, здесь может оказаться также рациональным использование метода сопряжен­ ных градиентов, реализация которого практически не сложнее реализации метода наискорейшего спуска.

Если наряду с ограничениями типа равенства (276) имеются ограничения в виде системы неравенств

Fs (х) < 0 , s = 1, 2........../,

(281)

то реализация метода проектирования градиентов несколько усложняется. В этом случае, задавшись, как и прежде, точкой начального приближения х°, вычисляем градиентную состав­ ляющую 8^ :

бх( X) = {Е А* (ЛЛ*)-1 А)

.

Далее по очереди анализируем все I ограничений (281). Для

этого вычисляем

 

 

бF.

dFs (*°)

 

dxk &ixk-

 

 

к=1

 

Если бFs < 0, то в результате итерации

точка х1, вероятно,

будет стремиться приблизиться или еще более углубиться в область Ф3 (х) < 0. Поэтому на этом шаге итерации ограничение s будем пока игнорировать. Если бFs > 0, то, исключая s-e ограничение из системы (281), необходимо подключить к системе (276) огра­

ничение

Fs (х) = 0.

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

Аналогичным образом проводятся следующие итерации. Не­ сколько последних итераций нужно осуществлять, ориентируясь только на выполнение всех требуемых ограничений (276) и (281).

8. Метод возможных направлений

Метод проектирования градиентов хорошо приспособлен для ограничений типа равенств, но его реализация усложняется при наличии ограничений в виде неравенств. В 1959 г. Г. Збйтендейком был разработан метод возможных направлений, который^близок

120

по идее к градиентному методу, но лучше приспособлен к случаю наличия ограничений типа равенства [36]. Независимо этот метод был разработан С. И. Зуховицким [37].

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

Fo(x)= Іі PiXi

(282)

J=l

 

при наличии системы нелинейных ограничений

Ft (х) < О, і = 1, 2, . . ., т.

(283)

Нетрудно показать, что общая задача нелинейного программи­ рования (255), (256) легко может быть сведена к канонической форме (282), (283). Действительно, задача (255), (256) эквива­ лентна задаче

 

 

 

= min хп+и

(284)

 

 

 

xClDi

 

где

через х

обозначен (п +

1)-мерный вектор

с координатами

X =

(х, хп+1),

а область D x задается системой

ограничений

 

 

Ft (х) < 0,

і — 1 , 2 , . . ., т;

 

 

 

F0(х) —х„+1 < 0.

 

 

Пусть решение экстремальной задачи (284),

(285) есть точка

х+ = (х+, Х++\)- Тогда точка х+ есть решение задачи (255), (256).

Действительно, предположим противное, т. е. что существует

точка

Х + + а Dтакая, что F0 (х++) F0 (^+)- В этом случае

для точки Х + + = (х++, F0 (х++))

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

(285),

и так как

 

 

F0 (X++) <

F0 (х+),

то точка х+ не есть оптимальная для задачи (284), (285). Это про­

тиворечит исходному предположению об оптимальности х+ для задачи (284), (285). Противоречие доказывает факт оптималь­ ности х+ для задачи (255), (256).

Совершенно аналогичным способом доказывается, что если х+

.есть решение задачи (255),

(256), то точка х+ = (х+, F0 (х+))

есть решение задачи (284),

(285).

Но задача (284), (285) является частным случаем задачи в ка­ нонической форме (282), (283). Следовательно, любая задача нелинейного программирования может быть сведена к канониче­ ской форме путем увеличения размерности пространства незави­ симой переменной на единицу.

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

121

которая лежит внутри области D, определяемой системой огра­ ничений (283)

Ft (х°) < 0 , і = 1, 2, . . т,

(286)

и выбираем некоторое положительное число 8lt с помощью кото­ рого разобьем всю систему ограничений (286) на две группы. К первой группе относятся ограничения, удовлетворяющие ус­ ловию

Fi (-О +

0>

и ко второй группе относятся ограничения

FI (х°) + б1 > 0.

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

Задаемся далее положительным значением к г и выбираем на­

правление движения

=

( ^ ,

%2 , ■■.,

Ѣп) из условия минимума

приращения

функции

 

 

 

 

 

 

 

 

 

ЬР0= Ъ Р ііі

 

(287)

 

 

 

 

 

 

і=і

 

 

при наличии

ограничения

нормировки

 

 

 

15,1 с

1,

 

і

= 1, 2 ,

. . ., п

(288)

и системы неравенств для ограничении второй группы

 

 

 

V

d F j

( х 0) ?

 

(289)

 

 

 

 

 

 

 

 

 

k = l

 

dxk

 

 

 

 

 

 

 

 

 

 

 

Введение положительного параметра А,, объясняется нелиней­

ностью системы ограничений

(283). За счет введения к у

точка

х° + Ѣ+t с большей

вероятностью будет удовлетворять условию

 

 

Fj (х°

+ 5 + 0 < 0

 

для ограничений второй группы при произвольном положитель­ ном t.

Из условий (287)—(289) видно, что задача выбора направле­ ния движения 5+ является задачей линейного программирования и может быть решена одним из разработанных алгоритмов, на­ пример симплекс-методом [26, 116]. После ее решения могут пред­ ставиться три случая:

1) S F p C - A ;

2)

— by < ÖF0 < 0;

3)

0 < 8F0.

В первом случае точка х1, получаемая в результате осуществле­

ния итерации, определяется выражением

 

X1 = х° + t%+,

(290)

122

где положительный скаляр t вычисляется из условия принадлеж­ ности точки хх границе области I. Иначе говоря, скаляр t выби­ рается как максимальное значение, при котором еще х1 удовлетво­ ряет системе ограничений (283).

Во втором случае, как и в первом, строится точка х1, но при осуществлении следующей итерации вместо значений бх и Хг используются параметры ÖJ2 и XJ2. Это означает, что точка х° находится недалеко от точки минимума.

Третий случай указывает на отсутствие направления £, удо­ влетворяющего условиям (288) и (289), при которых функция бF0 убывает. Из этого следует, что если значения Sj и ^ достаточно малы, то точка х° оптимальна. В противном случае необходимо

параметр А,а уменьшить. При этом вместо параметра

вво­

дится параметр XJ2 или, если этого недостаточно,

Ях/4

и т. д.

 

Все последующие итерации осуществляются аналогично пер­ вой. Итерационная процедура заканчивается при достижении

определенных достаточно

малых

значений параметров

б

и X.

изложении

метода

было сделано предположение,

что

При

х° 6 D,

т. е. для х°

удовлетворяются все ограничения из системы

неравенств (283). Это предположение не вызывает существенных затруднений, так как обычно, вникнув в сущность решаемой экстремальной задачи, бывает нетрудно найти точку x0£ D . В то же время эта задача может быть решена и формальным ма­ тематическим методом, например на основе использования того же метода возможных направлений.

Действительно, предположим, что для точки у0, которая была выбрана в качестве начального приближения, не удовлетворяется некоторое k-e ограничение из системы .

Fk (у0) > 0.

Тогда рассмотрим задачу минимизации Fk (х) при условии вы­ полнения тех неравенств из системы (283), для которых F{ (у0) < 0. Эта задача может решаться, например, методом возможных на­ правлений при сведении ее к каноническому виду общим примером, изложенному в настоящем параграфе, или методом линеаризации функции. Процедура минимизации продолжается до тех пор, пока значение Fk (у) не станет отрицательным. Далее аналогич­ ным приемом добиваемся выполнения и всех других неравенств из системы (283).

NКак видно из изложения, метод возможных направлений яв­ ляется достаточно сложным в реализации. В то же время, как по­ казывает практика, он во многих случаях дает хорошую сходи­ мость и поэтому широко используется. Одним из недостатков метода является невозможность его применения для случая огра­ ничений типа равенств.

123

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

Рассмотрение этой группы методов начнем с метода отсека­ ющих плоскостей [135]. Пусть требуется решить задачу выпуклого нелинейного программирования, записанную в канонической форме:

 

(х) =

Е

р л ;

 

Fi (X ) < 0 ,

 

І=1

, 2 , . . ., т;

(291)

i'

= l

F о (х+) =

min Fо (х),

 

 

 

Х!цР

 

где Fi (х) (і = 1 , 2 , . . .,

т) — выпуклые функции.

 

Метод отсекающих плоскостей основан на следующем свойстве

выпуклых

функций

[109]:

 

 

 

 

 

Ф (У) +

2

(хі — РіХ

Ф (X).

 

(292)

 

 

ь=і

 

 

 

 

Из этого неравенства следует, что

область

S T,

задаваемая

системой

линейных

неравенств

 

 

 

 

Ft И

+ 2 Т

Г (*. -

хі) <

0,

(293)

 

j = 1, 2, . . ., 7;

sI = 1, 2, . . ., m,

 

построенной на основе линеаризации неравенств (291) области D

в произвольной системе точек х1, х2, ...

., хТ содержит область

D с= S T.

 

 

 

 

 

 

Действительно, используя неравенство (292), а также тот факт, что функция Fi (х) выпукла, легко показать, что если точка г принадлежит области D, т. е. удовлетворяет системе ограниче­ ний (291), то г также удовлетворяет системе ограничений (293).

Алгоритм метода заключается в следующем. Задаемся некото­ рой совокупностью точек х1, х2, . . ., хти строим систему ограни­ чений (293). Далее решаем задачу линейного программирования, которая состоит в минимизации F0 (х) на области 5 Г. При этом в процессе выбора точек х1, х2, . . хт необходимо позаботиться о том, чтобы задача линейного программирования имела бы конеч­ ное решение. Пусть решением задачи линейного программиро­ вания является точка хт+1.

Если хт+1 £ D, то очевидно, что хг+1 является точным опти­ мальным решением исходной задачи (291). Если хт+1 $ D, т. е.

124

если некоторые неравенства в (291) не удовлетворяются, то к си­ стеме ограничений (293) добавляются ограничения

 

Fi (xT+l) + 2

dFiifxP

(xi -

J +1) < 0

(294)

 

i=i

1

 

 

 

для всех значений /, при которых F,- (хт+1) > 0. На следующей

итерации

определяется точка хг+2

как

точка минимума

F0 (х)

в области

5 Г+1, задаваемой

системой ограничений (291) и (294).

Очевидно, что хг+1 $ S r+ь

Задачу линейного программирования

на каждом шаге удобно решать двойственным симплекс-методом, так как этот метод хорошо приспособлен к решению задачи ли­ нейного программирования с растущим числом ограничений

[26, 116].

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

Метод допускает простое обобщение в тех случаях, когда функции F{ (х) не дифференцируемые, однако требование вы­ пуклости является необходимым.

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

Близким по идее, но свободным от указанных недостатков является метод аппроксимации границ области, предложенной В. П. Булатовым [72]. Алгоритм метода состоит в следующем. Предположим, что требуется решить задачу нелинейного выпук­ лого программирования в канонической форме. Пусть х° точка есть внутренняя точка в области D. Построим некоторый много­ гранник S lt включающий в себя множество D. Простейшим много­

гранником может оказаться

параллелепипед

 

at

< х£ < bt. -

(295)

На первом шаге решим задачу минимизации функции F0 (х) на многограннике S x. Решение задачи обозначим q1. Это решение, как и в предыдущем методе, удобно определять двойственным симплекс-методом. Затем соединим точки х° и q1 отрезом прямой линии и определим точку х1 пересечения этого отрезка с границей области D:

X1 = х° + Ц (q1х°).

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

Ft (х° + Ц (q1 -

X0)) = 0.

Очевидно, что F0 (qx) и F 0 (х1)

дают соответственно нижнюю

и верхнюю оценку истинного значения минимума функции

Fo (Q1) С F0 (х+)

< F0 (X1).

125

На следующем шаге строится новый многогранник <S2, который задается совместно системой неравенств (295) и неравенством, определяемым касательной плоскостью к границе области в точке X1. Это неравенство имеет вид

dFj (<i)

 

 

2 d x s

 

(Xs x\) «£ 0,

(296)

s = 1

 

 

 

где значение г выбирается

из условия

 

 

Р,- (х1) = 0.

(297)

Очевидно, что к системе неравенств (295) нужно добавить не­ сколько неравенств (296), если равенство (297) выполняется одно­ временно для нескольких значений г. При определении точки х2,

как и в первой итерации,

будет использоваться та же внутренняя

точка

х°.

 

 

 

 

 

 

 

В процессе реализации итерационной процедуры будут по­

лучены последовательности точек \q{\ и {хг}. Очевидно,

что по­

следовательность {F0 (q1)}

монотонно

убывает,

так как

S i+1с:

с S/,

і =

1, 2,

. . .

В результате совершения

k итераций будет

получена

следующая

оценка:

 

 

 

где

 

 

 

F о (qk) < Fо (х+)

< ak,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ak = min F0 (xs).

 

 

Таким образом, при использовании метода аппроксимации

границ

области

удается

получить

последовательность

точек

X1Q. D

и последовательность нижних оценок минимального зна­

чения F 0 (х+), благодаря чему можно обоснованно решать

вопрос

о выборе числа

итераций.

 

 

 

 

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

10. Задача минимизации функций в условиях помех

Раньше при изложении численных методов минимизации пред­ полагалось, что в процессе вычисления или измерения значений функции, градиента и т. д. ошибки отсутствуют. Однако в некото­ рых случаях, например, когда значение минимизируемой функции вычисляется методом статистического моделирования или опреде­ ляется путем прямых измерений, ошибки измерения оказываются значительными и их необходимо учитывать. К настоящему времени имеется значительное число работ, посвященных анализу влияния случайных возмущений на сходимость и точность детерминиро­ ванных методов оптимизации [66, 100, 102]. С другой стороны,

126

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