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

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

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

Из равенств (244) и (245) легко вывести рекуррентное соотно­

шение для градиентов функции

 

в последующих

итерациях:

= Лх‘'+1 + b = Лхг + 6 _ а (Л/ +1 =

дд U0

■а[As(+1

 

 

 

дх

 

 

(247)

 

 

 

 

 

 

Учитывая выражение функции q (х) и положительную опре­

деленность матрицы А, преобразуем

условие

(246)

к виду

a i s>* (Ах1+ b ~ a tAsl+l) ~ « is,t

 

= 0,

/ =

1,

2,

. . ., t;

(si+l)* (Я ? + Ь - а ^ +

1) =

(У+Т

 

=

0.

 

Очевидно, что из условия —^

-

=4=0 следует а г =4=0.

Поэтому

вышеприведенное условие можно

представить в виде

 

 

=/ = 1, 2, . . і + 1; I - 0, 1, 2 , . . . (248)

Сопоставляя равенство (248) и тождество

дд(*0

si+l - £ ß k \

дх

которое следует из формулы (245), получим

( - ^ ) * Д М = о , , +

Иначе говоря, при реализации итерационной процедуры (245) векторы градиентов в различных итерациях взаимно ортогональны. Это указывает на конечность данной процедуры, так как в я-мер- ном пространстве не может существовать более чем я взаимно ортогональных векторов, т. е. итерационная процедура должна закончиться не более, чем за я шагов. Условие (248) при / = 1, 2, . . ., і можно также представить в виде

W

= Ы У [ Ц р -

-

« А ‘+‘) =

- « , (*')•

= 0;

 

/= = 1 , 2 , . . . , / .

*

 

Следовательно,

 

 

 

 

 

(si)* A s 1

=

0; і Ф і .

 

(249)

Это означает, что направления движения в различных итера­ циях процедуры (245) взаимно Л-ортогональны [98].

107

Используя равенство (249), определим параметры ß/ и вектор

c . i + 1 .

(s0‘

 

 

4

т

+ і

I**) =

 

= WY;A

дд (xty

+ .ß f/ ( s / ) * ^ =

0;

/ =

1, 2, . . . .

і.

 

дх

 

 

 

 

 

 

 

 

 

Отсюда, используя формулу (247), получим выражение для

искомых параметров:

 

 

 

 

 

 

 

 

 

(; у

л dq(xty

I

dq(xty

dqjx1

ty Y

dq(xty

 

^

дх

l

дх

 

 

dx

)

dx

 

 

(sty* As1

 

 

aj-i (s’Y As’

 

 

Принимая во внимание условие ортогональности, окончательно

получим:

 

 

 

 

 

 

 

 

 

 

 

ß/ =

0, / =

1,

2 ............. і

1;

 

 

 

 

dq (xty V I dq (xty \

 

 

 

 

 

 

ß! =

dx

 

dx

' =

ß £.

 

(250)

 

 

щ . 1 (s1)* A s 1

 

 

 

 

 

 

Выражение для параметра а, можно получить, подставляя

формулы (245) и (247)

в условие (248):

 

 

 

 

 

О =

Щр( S ' .r =

J

(*Sд<£ ±r

 

-

 

= * М

Л * ' ) =

 

д х

 

 

 

 

 

 

 

 

 

- ( т ?

11 р+г ѵ1)

 

w^ A s * .

дх

дх

— а

(s*)*Tis*.

' dq (Xl~ty \* dq (xl~ty

 

Следовательно,

/ dq (х‘~-ty)*dq(x‘-ty

а і - і

\

дх

/

дх

 

 

 

sl*As{

 

 

 

 

 

 

(251) следует

 

 

/

dq(xty

) * (

dq (xty

\

ßi

[

дх

) {

dx

j

( dq (xe~ty )* (d q (x ‘~ t y V

 

 

 

дх

 

дх

 

(251)

(252)

108

Подставляя выражения (250), (251), (252) в формулу (245), получим окончательные соотношения для метода сопряженных градиентов:

г*-И

я“1 = X ~ a iSl+1, і =

где

 

dq ( х 1)

2

1

 

 

а.

д х

 

R. —

 

(8{+'Уа*<+1’

^

0, 1, 2, , . .,

d q ( x ‘ )

 

дх

(253)

d q { x l *) 2 > f

д х

і — 1, 2, . . ., S1 -

dq (л:0)

д х

Расчетные формулы (253) могут оказаться неудобными, так как для их использования требуется знание матрицы вторых произ­ водных А при вычислении а,-. Учитывая выражение (246), можно представить формулы (253) в виде:

1 _ д д ( х ° )

д х

. г+і _

дд(У)

Р,«*-

д х

dq ( х 1)

2

 

д х

2 ’

 

dq (У “ 1)

 

д х

 

 

q (X1_cc.si+1) = min q(xl —asi+1).

а

В эти формулы матрица А не входит, но при реализации ре­ куррентной последовательности требуется вычисление градиента функции q (X) и определение точки минимума функции q (х) в на­

правлении s‘+1.

Из последних соотношений следует, что рассматриваемый метод может быть применен к функции произвольного типа [129]. Ана­ лиз сходимости показывает, что метод сопряженных градиентов имеет примерно, такую же широкую область сходимости, что и метод наискорейшего спуска, но скорость сходимости квадратич­ ная. В случае применения метода к неквадратичным функциям це­ лесообразно время от времени производить «обновление», метода

т. е. после ряда итераций (порядка п) в точке хк вновь выбирать

k + i _ _ d F j x k )

I-7 7 ’ 63J-

д х

Метод сопряженных градиентов относится к группе методов сопряженных направлений. Другие методы этой группы являются

109

более сложными в реализации, но имеют повышенную скорость сходимости [124, 119].

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

точек X1 и X2 и произвольного 0

А sg; 1

имеет место неравенство

F (Ах1 + (1 — А) X2) <

АF (х1) +

(1 — А) F (х2),

(254)

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

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

6. Минимизация функций при наличии ограничений. Условия оптимальности

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

образом:

требуется выбрать вектор-параметр х+ = (хі1-, x t ,

■ ■ ■

. . ., x t )

из условия

минимума

заданной

функции F 0 (х)

при

наличии

ограничений:

 

 

 

 

 

f ; (х)

О, і ~

1 , 2 , . . . ,

т.

(255)

Обозначив через D множество точек «-мерного евклидова про­ странства Еп, для которых удовлетворяется условие (255), пред­ ставим задачу нелинейного программирования в виде

F0(x+) = minF0(y).

(256)

y£D

 

Задача (256) оказывается качественно более трудной по сравне­ нию с задачей безусловной минимизации, в соответствии с чем условия оптимальности для задачи (256) имеют более сложную формулировку, чем условия (217).

Ограничение (255) в виде системы неравенств является общим случаем ограничений. В частности, ограничение типа равенства

h (х) = О

ПО

всегда может быть представлено в виде двух ограничений типа не­ равенств:

h (х) О,

— h (X) -п 0.

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

Метод штрафных функций, примененный для решения задач (255) и (256), состоит в сведении исходной задачи к безусловной минимизации нагруженной функции Ф (х, а):

 

т

 

Ф (х, а) = F0{x) +

£ Ф К Fi (*)),

(257)

 

І—1

 

где ер (а, г) — произвольная непрерывно дифференцируемая функ­ ция, удовлетворяющая условию

Ііш ф (а, z) = I

0

2 ^

\

оо,

2 > 0.

Одним из возможных вариантов функции ф (а, г) является

Ф(а, г) = 4: е“2.

Тогда выражение для нагруженной функции Ф (х, а) будет

иметь вид

т

 

Ф ( X, а) = F0 ( X) + 2 4 -

t aF‘ ix).

(258)

 

 

1=1

 

 

Естественно ожидать, что при достаточно больших значениях

параметра

а наличие в формуле (257)

нагрузочных

слагаемых

Ф (а, Ft (х)) приводит к тому,

что точка минимума х+ должна вы­

бираться

внутри области D.

Действие

нагрузочных

слагаемых

будет соответствовать штрафу, накладываемому за нарушение на­ ложенных ограничений.

Рассмотрим параметрическую задачу безусловной минимиза­ ции функции Ф (х, а), определяемой формулой (257), по пара­ метру X в функции параметра а. Точка минимума х (а) этой функ­

ции будет зависеть от а. Предположим,

что, существует такая по­

следовательность {а/}, что Ііш аі = оо.

При этом последователь-

/->00

 

ность (а')} имеет предел

 

lim X (а') = X “ ,

(259)

/ -> с о

 

причем

 

Ііш Ф (х (аі), а і) <

оо.

/->СQ

 

111

Тогда в соответствии с теоремой о методе штрафных функций [56] точка л:- принадлежит множеству (255) и является решением задачи (256). При этом

Fq(х~) = lim Ф (х (аі), а');

(260)

/->со

ж- = х+.

Сформулированная теорема позволяет получить решение ис­ ходной задачи нелинейного программирования в виде предела решения задачи безусловной минимизации функции (257). Для определения минимума функции (257) можно применить один из численных методов, изложенных в п. 1—5 настоящей главы.

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

Тогда очевидно, что для точки минимума этой функции должно

выполняться

условие

 

 

 

 

 

 

 

дФ(х’, а')

__ dF0 (x') .

V I

ос/>. (xi)

dF (xf) _

n

 

 

 

dx

 

dx

i=I

 

 

dx

 

 

 

 

 

 

 

 

 

 

 

где для

краткости

обозначено

х1

х (аі).

Предположим,

что

функции

dF- (х)

(і = 0, 1, 2, . . .,

т)

непрерывны.

Тогда,

пе­

 

реходя к пределу в равенстве (260) и учитывая формулу (259), получим

д Р

о ( * + )

/п

lim (ea,F‘ (*/}) дРі (*+)

п

(261)

+ У

 

дх

Ы

дх

 

 

Обозначим

 

і->а

 

 

 

 

 

 

 

limea/F‘ (хі) = K t ,

(262)

/->00

 

тогда легко видеть, что

Kt = 0, если /C(*+) < 0;

Kt Зг 0, если Ft (х+) = 0.

Можно показать, что предел (262) существует, если множество D, задаваемое системой ограничений (255), содержит хотя бы одну внутреннюю точку (условие Слейтера). С учетом принятых обо­ значений равенство (261) может быть представлено в следующем виде:

По теореме о методе штрафных функций точка х+ удовлетворяет ограничениям (255). Поэтому условие для А,+ можно представить в более компактном виде:

2

Я-^.(л:+) = 0;

І—\

(264)

#5 *0, i = 1 , 2, . . т.

Это условие принято называть «условием дополняющей не­ жесткости».

Таким образом, необходимым условием оптимальности точки х+ в задачах (255), (256) в предположении наличия хотя бы одной внутренней точки в области D является существование системы

неотрицательных параметров I t , Xt, . . ., Х+, для которых удов­ летворяются условия (263), (264). Это утверждение составляет содержание основной теоремы нелинейного программирования —• теоремы Куна-Таккера в дифференциальной форме [115, 138].

Легко увидеть, что теорема Куна-Таккера является обобще­ нием необходимого условия безусловного минимума. В самом деле, если точка х+содержится внутри области D, т. е. Ft (х+) <0, (г = 1, 2, . . ., т), то из условий (263), (264) автоматически следует

^oW _ 0

дх ~ *

Поясним математический смысл параметров Xf, Х+, . . ., Х+.

Рассмотрим некоторое обобщение задачи (255), (256). Пусть тре­ буется определить х+ из условия

 

 

F0(x+) =

min F0(x),

 

 

 

 

 

XCZD(б)

 

где область D (б) задана системой ограничений

 

Ft (х) + 6, < 0 ,

(г = 1 , 2 , . . . , т).

 

Очевидно, что точка минимума х+ и соответствующее значение

функции будут

зависеть от

вектор-параметра б = (б1,

б2, . . .

• • 6J:

 

 

 

 

 

х+ =

(б),

Fо (х+) = Fо (х+ (б)).

 

Оказывается,

имеет место равенство

 

, +

dF0(x+(6))

 

{ k = l , 2, . .., т),

(265)

** "

 

dbk

 

 

 

 

 

которое означает, что параметр Х£ характеризует чувствитель­

ность минимального значения функции к ограничению Fk (х) + + 8k = 0 при 6 = 0. Это вполне согласуется с условием (264),

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

нулевой чувствительности значения F (х+)

к ограничениям,

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

8 А. М. Батков

ИЗ

Действительно, построим нагруженную функцию Ф

(х, а, 8)

в виде

 

т

 

Ф (*,а, б) = (*)-{- 2 4 - e a(F' W+6i).

(266)

і=і

 

Точка минимума этой функции z+зависит от параметров а и б:

z+ = z+ (а, б).

В соответствии с теоремой о методе штрафных функций имеем

1ішФ(г+(а/, б), аі) — F0 (х+(8)).

у->оэ

Дифференцируя это равенство по параметру бА и учитывая, что z+минимизирует Ф (х, а, б), получим

т

4

= ж ;™ ф (г* <“ '• «>■

« > = "

 

= lim

ф ' І ’

6), Ы, 6) =

=

11Ш(

бф (2+ (аі, б), аі, б)'

dz+ (а/,

б)

 

dz

 

Щ

 

/-»•оо I

 

 

 

дФ (z+ (а/,

6),

а/, б) ) _

1 іт еа і (Fk (z+ (аі, 6)+6Ä)

 

дбк

J

 

 

 

Положив б =

0 и учитывая принятое обозначение (262), окон­

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

 

 

 

 

 

dFо (* + (б))

,

k

1, 2, ..

ш,

 

36k

 

 

 

6=0

 

 

 

что и требовалось доказать.

Для задачи выпуклого нелинейного программирования, т. е. в предположении, что функции Ft (х) (і = О, 1 , 2, . . ., т) вы­ пуклы, необходимое условие оптимальности (263) или (264) можно представить в более симметричном виде. Построим функцию Лаг­ ранжа:

т

 

L(x,X) = F0( x ) + % X iFi(x).

(267)

£—1

 

Так как по предположению Ft (х), (і = О, 1, 2, . . ., т) — вы­ пуклые функции, то при Хі О = 1, 2, . . ., т) функция L (х, К) также выпукла по х. Из условия (263) следует, что

dL (х+, Х+)

_

п

дх

~

и -

114

Поэтому в соответствии с тем, что L (х, Я) выпукла по х, имеет место условие

L (x \ Я+) < L (x, Я+),

(268)

причем это условие удовлетворяется для любой точки п-мерногс пространства Еп. С другой стороны, так как точка х+принадлежит области D, т. е. для нее удовлетворяется система ограничений (255), то для совокупности неотрицательных параметров Я(. = 1, 2 , . . ., т) выполняется условие

L (х+, Я) < L (х+, Я+), Я(-^:0, { = 1, 2, . . ., т.

(269)

Объединяя формулы (268) и (269), получаем, что если при ре­ шении задачи выпуклого программирования окажется, что в об­ ласти D содержится хотя бы одна внутренняя точка, то для опти­ мального решения х+ можно найти такую совокупность неотри­

цательных параметров Я = я^, яt , . . . , Я+, при которой выпол­ няется неравенство

L (х+, Я)

<

L (х+, Я+) с

L (х,

Я+),

(270)

Яг

0,

г = 1, 2,

. . ., т.

 

Это означает, что функция Лагранжа L

(х, Я) в точке (х+, Я+)

имеет седловую точку.

 

 

 

 

 

Условие (270) может быть представлено в виде

 

min max L (х,

Я) =

L (х+, Я+) = max min L (х, Я).

(271)

X Я > 0

 

 

Х > 0

X

 

Соотношения (270) или (271) представляют собой необходимое условие оптимальности для задачи выпуклого нелинейного про­ граммирования (теорема Куна-Таккера). Легко показать, что эти соотношения одновременно являются достаточным условием оп­ тимальности для задачи нелинейного программирования (255), (256) общего вида при отсутствии требований выпулкости функ­ ций Ft (х) (і = 0, 1, 2 . . ., т) и выполнения условия Слейтера [46]. Действительно, из неравенства (270) следует

т

 

F0 (*+) +

 

S

XiF i (х + ) <

Fo (■*+) +

 

 

+

 

 

І~\

 

 

 

 

т

 

(*+)< FoW +

т

(*)•

(272)

1=1

 

І=S1

 

ъ xt Fi

 

 

xt Fi

 

 

Так как левое неравенство справедливо для любого

Я ^ 0,

то, очевидно, должны выполняться условия

 

 

 

Fe (х+) < 0 ,

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

 

 

 

 

£ Я + /С (* +) =

0.

 

(273)

 

 

 

 

І= 1

Поскольку для любого допустимого вектора х, принадлежащего области D, определяемой условием (255), имеет место условие

8*

115

т

I i X t F ( x ) < 0, то из правой части неравенства (272) и условия

і=і

(273) следует:

т

Fo (х) > F0 (х+) - У і г р . {х) ^ р о (х+).

і = 1

Для любой точки X d D. Это неравенство и доказывает доста­ точность условия (270) для оптимальности точки х+в общей задаче нелинейного программирования.

7. Градиентные методы решения задач нелинейного программирования

Впредыдущем параграфе были выведены необходимые условия оптимальности (263), (264) или (270), для задачи нелинейного про­ граммирования. Используя эти условия, в очень редких случаях удается получить аналитическим методом решение реальных задач. Однако, анализируя условия оптимальности, можно по­ строить некоторые итерационные процедуры, которые дают воз­ можность найти численное приближенное решение.

Вчастности, Эрроу и Гурвиц [115] предложили определять оптимальное решение задачи (255), (256) как седловую точку функции Лагранжа (267) в соответствии с необходимым и доста­ точным условием (270). Для случая строгой выпуклости [109]

функций F( (х), (і — 0, 1,2, . . ., т) и в предположении выпол­ нения условия Слейтера ими было доказано, что решение системы дифференциальных уравнений

dx

_____

dL (X, Я)

_

d f0 (*)

т

дР[ (х) .

УД .

dt

 

дх

 

дх

2 ^ 1

дх ’

 

 

 

 

 

і=і

 

^ - =

U h

) ^ ^ r

=

H h ) F t (x),

1= 1,

2, . . ., т

сходится к точному решению задачи нелинейного программиро­ вания при t —» оо:

Ііш X (t) = X*

£->• со

независимо от

выбранных начальных условий х (t0), Яу- (t0)

is 0, / = 1, 2 ,

. . ., т, где 1 ) — обозначает единичную функцию

скалярной переменной у. На основании этого предлагается ите­ рационная процедура следующего вида:

хг+і = X1■

dFa (х1)

гп

dFj (xl)

+ £ * /

 

дх

дх

Яу-+1 =

 

/=I

( 274)

шах (О, Ц -f- pFj (*1)},

/ = 1, 2,

m:

i — 0, 1.

2,

116

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