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

книги / Системы экстремального управления

..pdf
Скачиваний:
10
Добавлен:
19.11.2023
Размер:
33.28 Mб
Скачать

где

а.

 

 

са 1г~а.. (* ^ /)»

ап

II

 

Для удобства запишем это уравнение в векторной форме:

 

X = СХ + D,

(13.1.3)

где X = (%,

ж„); D = (eZj,

dn), С — матрица

вида

 

 

Ос12 с1з ... Cin

Cgi 0

с 23 . . . Cgn

(13.1.4)

 

 

^îil ^"п2 ^n3 • • • О

Будем решать систему (13.1.3) методом последова­ тельных приближений:

XN = C X N-1 + D,

(13.1.5)

где в качестве исходного вектора можно взять, например,

вектор D,

т. е. Х 0 = D.

 

 

Если последовательность приближений Х0, Xlt Х 2, ...

Х^,

сходится,

т. е. имеет

предел

 

X * =

lim X N,

(13.1.6)

 

 

N — оо

 

то этот предел является решением исходной системы (13.1.3). Действительно, переходя к пределу (N -> оо) в обеих частях равенства (13.1.5), получаем выражение

X* = СХ* + О,

(13.1.7)

которое подтверждает, что предельный вектор X* является решением.

Рассмотрим условия сходимости процесса итераций [13.1]. Этот процесс сходится к решению, если выполняется

хотя бы одно из 2п неравенств:

2

Ы

< 1

(î =

1,.. . ,п),

 

i=l

 

 

 

>

(13.1.8)

п

 

 

 

2

ы

< *

(/ =

î , .. .,п).

 

;=i

 

 

 

 

 

Как видно, сходимость при этом не зависит от начальных условий Х0.

Блок-схема алгоритма итераций представлена на рис. 13.1.1. Здесь прямоугольником обозначено определение вектора СХ, а круг с перекрестием представляет собой операцию суммирования СХ + D.

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

лений. Однако при работе по­ Рис. 13.1.1. Блок-схема мето­

следовательнымобразом, как,

да итерации.

например, при

вычислениях

сторона

алгоритма

на современной

ЦВМ, эта полезная

итераций остается неиспользованной.

расчета

открывает

Более того,

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

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

§13.2. Метод Зайделя

Вметоде используется идея последовательности расчетов. Смысл его сводится к тому, что при определении

на N-м шаге i-й координаты x\N) следует использовать не только результаты предыдущего (JV — 1)-го шага, но и

уже полученные на этом N-м шаге значения x[N\ ...

x[-i- Естественно, что такая мера увеличивает ско­ рость сходимости процесса поиска.

Формулы для расчета по методу Зайделя имеют сле­

дующий

естественный вид:

 

 

4 W) =

+ с » # - » +

... + с1пх{п~1] +

dx,

x{N) = с214 Ю-f C234 W-1) +

• • • + C in^_1> + d2l

= _ £ r il£ l^ ~Ь cn2x ^ ~4~ • • • ~f~ Cn,n-l%n-l +

dn.

(13.2.1)

Здесь для наглядности подчеркнуты члены, построенные уже в соответствии с методом Зайделя.

Сходимость этого метода, как правило, превышает сходимость метода итераций.

Рассмотрим подробнее вопрос о сходимости метода Зайделя. Этот метод сходится всегда, если решаемая система линейных уравнений (13.1.1) порождена поло­ жительно определенной квадратичной формой, т. е. если минимизируемая функция качества имеет эллиптический характер (11.4.20). Это обстоятельство является чрезвы­ чайно ценным для решения задач оптимизации и делает метод Зайделя достаточно универсальным методом опти­ мизации объектов, хорошо аппроксимируемых квадра­ тичной формой.

Рассмотрим особенности поведения этого метода в про­ странстве оптимизируемых параметров. На рис. 13.2.1 представлена плоскость параметров двумерного объекта

(*1 , х2).

На рис. 13.2.1, о показан один этап процесса итера­

ций. В исходной точке XN-X = (a:iw-1), определяются координаты-следующей точки Х п. Эти координаты (точки

1 и 2)

определяются независимо друг от друга, что харак­

терно

для метода итераций.

 

 

На рис. 13.2.1, б показаны два варианта определения

X N для метода

Зайделя. Ввиду того,

что при

расчетах

по этому методу значения координат х\

зависят

от пре­

дыдущих (1,2,

., i—1-го), то, вообще говоря, результат

XN зависит от порядка вычислений, что хорошо видно

па рис. 13.2.1, б.

Как видно, эффективность применения метода Зай­ деля существенно зависит от выбора порядка обращения к оптимизируемым координатам. В одном случае резуль­ тирующее на N-м шаге состояние X N будет ближе к экс­ тремуму, а в другом — дальше. Поэтому естественно

Рис. 13.2.1» Иллюстрация работы методов итерации (а) Зайделя

(б) в пространстве параметров.

выбирать такой порядок обращения к координатам, ко торый быстрее всего приводит к цели.

Таким методом является метод релаксации. Это даль нейшее развитие метода Зайделя.

§ 13.3. Метод релаксации

Преобразуем исходную систему уравнений (13.1.2). Для этого введем обозначения

*>1=

— хг +

с12я2 +

+ с1пх п “Ь

--- О’

 

02 — с21д?1 —

*4“

+ с2пхп “Ь ^2 ^

О»

(13.3.1)

^ 71

^ T ll^ l "1™

^ 712^2 “ Ь

~ ~ Х П + d n ----

0 .

 

Бели в правые части этих выражений подставить коорди­ наты точки Xiv-i, то величины 0(^ -1) (i = 1 , , . п) покажут

степень несоответствия точки X этой системе урав­ нений на (N — 1)-м этапе решения. Задачей каждого шага является удовлетворение системе (13.3.1). Поэтому естественно при последовательном расчете начать с того уравнения, для которого ôh по модулю больше, т. е.

|0{'v-‘'| = max {|в,!я-1)|).

(13.3.2)

Из этого уравнения определяется х^ , которое затем подставляется в остальные уравнения, заменяя В результате получаем новые значения невязок 0 ^

(i = 1, п), где Ô^V) = 0. Следующим шагом опреде­ ляется наибольшая по модулю невязка и т. д. Блок-схема этого алгоритма по­ казана на рис. 13.3.1. Здесь прямо­ угольниками обозначены основные опе­ рации метода релаксации: определение невязок, выделение наибольшей по мо­ дулю невязки и определение соответ­ ствующей компоненты.

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

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

Рис. 13.3.1. Блок- уравнений (13.2.1), рассмотренном в

схема алгоритма предыдущем параграфе.

релаксации.

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

впрактике оптимизации часто приходится встречаться

собъектами иного характера, когда система уравнений (13.0.1) является нелинейной.

Рассмотрим методы решения этой, более сложной, задачи.

§ 13.4. Метод Ньютона

Пусть решаемая система уравнений имеет вид

 

dxi

=

fi fai, х%,... , Æn)

=

О,

 

д0_

=

/2 fall %4l • • • 1З'п)

"

(13.4.1)

 

дхч

 

Ж

 

fn fall *®2) • • • 1 %п)

О»

 

дх„

где fi, /2,

., fn — известные

функции.

Перейдем к векторной форме. Система (13.4.1) запи­

сывается в

виде

 

 

 

 

 

 

где

grad Q ( X ) =

F (X ) =

О,

(13.4.2)

 

 

 

 

 

 

 

 

F =

(fi, h,

 

fn)-

 

(13.4.3)

Пусть XN — приближенное

решение

уравнения (13.4.2)

на N-м шаге и пусть X* — точное решение (F (X*) — 0).

Тогда вектор невязки равен

 

 

 

 

 

 

 

Е = X* -

X N.

 

(13.4.4)

Подставляя полученное отсюда выражение X* = X N + Е

в(13.4.2), разлагая F в ряд Тейлора по малой невязке Е

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

лучаем

F (X N) +

F1(X N) E = 0,

(13.4.5)

где F' — матрица Якоби,

 

 

 

 

dfi

dfi

 

df1

grad f i

 

dxi

дхг '

'"

дхп

 

grad /2

(13.4.6)

F' =

 

 

 

3/n

 

 

 

dU

 

 

grad/n

 

dxi

ÔX2

'•

дхп

 

Разрешим уравнение (13.4.5) относительно

В символи­

ческой форме запишем

 

 

 

 

 

Е =

Е (X N).

 

(13.4.7)

340 Основы поисковых Не т о д о Н ОПТИМИЗАЦИИ [fri.

Теперь, подставляя это выражение в (13.4.4), получаем решение в виде рекуррентной формулы:

X N+1 = X N + Е (XN).

(13.4.8)

В качестве иллюстрации рассмотрим подробнее два слу­

чая: п = 1 и

п — 2.

С л у ч а й

п = 1. Надо решить уравнение вида / (х) =

*= 0. Пусть xN — JV-e приближение, которое отличается

от точного

х* на величину е =

х* хц.

Подставляя

х* = XN +

е в уравнение / (х*) =

0 и разлагая его в ряд

Тейлора но невязке е, получим

 

 

 

 

 

 

 

/ (**) = 1(*w) +

6 -35- +

" I r ià +

• ♦•

 

 

Ограничиваясь первым порядком малости, имеем / (XN) +

+ в/' (хлг) = 0, откуда е =

^

, оценка решения

на

 

 

 

 

f

)

 

 

(N + 1)-мшаге принимает вид xN+l = xN

 

. Это и есть

 

 

вид

 

/

(*JV)

для

 

 

формулы

 

(13.4.7)

 

 

ге = 1.

(Напомним, что

в

 

 

этом случае метод эквивален­

 

 

тен методу касательных (§3.2).)

 

 

Матрица Якоби (13.4.6) в

 

 

этом случае имеет вырожден­

 

 

ный вид:

 

 

 

 

Ряс. 13.4.1. Иллюстрация при­

Метод Ньютона для п = 1

менения метода Ньютона для

хорошо иллюстрируется гра­

п= 1.

 

 

фически. На рис. 13.4.1 по­

 

 

казаны

три шага процесса.

Он заключается в проведении касательной к

 

кривой

/ (х)

в точке X N

и определении точки пересечения этой каса­

тельной с осью абсцисс, что и дает следующее значение XN+1 - Наглядно видна скорость сходимости метода: уже хй довольно хорошо определяет решение х*. Наибольшие

затраты связаны

с определением

производной f ( X N )

на каждом шаге

процесса. Внимательно рассматривая

рис. 13.4.5, нетрудно заметить,

что для сходимости

можно ограничиться вычислением

производной только

в одной исходной

точке /' (х0). Для этого достаточно

положить f ( X N ) =

/' (ж0). Процесс

такого рода показан

на рис. 13.4.2, где хорошо видно, что он сходится, хотя и

не столь интенсивно как на рис. 13.4.1.

на

(N + 1)-м

Формула

для

определения решения

шаге этим методом

 

 

 

f (XN) rp

имеет вид х^+1 — х ^ ----,,,

. . Такой

упрощенный

метод

назван

 

7

 

 

 

 

модифицированным

методом

 

 

 

Ньютона.

 

2. Систе­

 

 

 

С л у ч а й л =

 

 

 

ма уравнений в этом случае

 

 

 

имеет

вид

Д (ælt х2) = О,

 

 

 

h (xi>xi) =

Пусть (xî, Xi)

 

 

 

точное решение этой системы,

 

 

 

а (аГ,

xïN)) — оценка

этого

 

 

 

решения на N-м шаге. Оче­

Рис. 13.4.2.

Модификация

видно,

что

хх = XiN) + ех,

метода Ньютона с

постоянным

xl = 4 W)+ e2i где ®i и E2 —

наклоном.

малые

невязки. Подставляя

 

 

 

эти выражения в исходные уравнения, разлагая их в ряд

Тейлора по 8Х и

е2

и

ограничиваясь

первым порядком

малости,

получаем

линейные

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

невязок:

 

 

 

 

 

 

 

 

 

A ( 4 i

\

х ^ )

 

+ S i f i x t

+ в2/ 1*, = О,

 

.W

^iV)

"1"

eifixi 4" ®2/г*« —

 

/. (4

 

 

 

где fix. — частные

производные:

 

 

/

_

dh

 

(i, / = 1,2).

 

Uxi ~~

 

 

 

 

*i=*l

 

 

 

 

 

 

 

 

 

 

 

 

 

 

л*г-—x*2(JV)

 

 

Разрешая

эти уравнения относительно

и е2:

 

 

8i =-- Ei (4ю, 4t°),

 

 

 

е2 =

е2 (х(х \

x{N)),

 

получаем оценку решения на (N + 1)-м шаге

А " * 1' = 4 " ’ +

( 4 " ’, 4 !4 ),

4 К+1Л = xf> +

8а (4«, 4">).

Матрица Якоби (13.4.6) в этом случае имеет вид

df1 a/i

a*i 5x2 grad h(x[N\ xiN))

au au grad/2(4'V), 4 N))

дх\ дх2

Рассмотрим один частный случай, когда система урав­ нений (13.4.1) линейна и имеет вид (13.1.1). Тогда мат­ рица Якоби (13.4.6) не зависит от исходного состояния Х0 и равна

Дц Û12 . . . Д1п

F =

®П1 Дп2 • • • ^ПП

Систему (13.4.5) после естественных преобразований мож­ но представить в виде

%1 (40) +

ег) +

Дхй(40) +

еа) +

+

д1п (4i0) +

 

 

 

 

 

 

+ еп) = ^1»

 

ûm (40) +

Sx) - f

дп2 (4 0) +

е2) +

+

Дпп (4 0) 4 -е„)=

6П.

Но это и есть решаемая система, где X* = Z 0 +

Е. Таким

образом,

в линейном случае

метод

Ньютона

приводит

к решению за один шаг.

Этого следовало ожидать,

так

как разложение линейной функции в ряд Тейлора, огра­ ничено линейными членами, и система уравнений (13.4.5) точно определяет положение экстремума X* = Х 0 Е.

Указанное вовсе не означает, что в линейном случае следует применять именно этот метод, а не рассмотрен­ ные выше методы итераций Зайделя и релаксации. Дело в том, что решение линейной системы входит в метод Ньютона как одна из операций, которые следует повто­ рять на каждом шаге. Поэтому метод Ньютона, попросту, не позволяет решать линейных задач. Это — метод реше­ ния существенно нелинейных систем.

Метод Ньютона довольно быстро сходится и обычно на втором-третьем шаге дает вполне удовлетворительную оценку решения поставленной задачи. Однако очень важным при этом является выбор исходного состояния Х 0. Оно всегда должно быть достаточно близко к решению X*, тогда процесс сойдется:

lim X N= X *.

(13.4.9)

JŸ-WO

 

Если исходное состояние Х0 выбрано неудачно, процесс может разойтись. Эта зависимость успеха от начальных условйй требует осторожности при работе с методом Нью­ тона.

Заметим, что процесс всегда сходится, независимо от начальных условий, если исходная функция Q {X) вы­ пукла, т. е. удовлетворяет условию (2.3.10).